@charset "UTF-8";
@property --gradient-degrees {
    syntax: "<angle>";
    inherits: false;
    initial-value: 0deg;
}
*,
::after,
::before {
    box-sizing: border-box;
}
@media (prefers-reduced-motion: no-preference) {
    :root {
        scroll-behavior: smooth;
    }
}
body {
    margin: 0;
    font-family: var(--bs-body-font-family);
    font-size: var(--bs-body-font-size);
    font-weight: var(--bs-body-font-weight);
    line-height: var(--bs-body-line-height);
    color: var(--bs-body-color);
    text-align: var(--bs-body-text-align);
    background-color: var(--bs-body-bg);
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
hr {
    margin: 1rem 0;
    color: inherit;
    background-color: currentColor;
    border: 0;
    opacity: 0.25;
}
hr:not([size]) {
    height: 1px;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top: 0;
    margin-bottom: 0.5rem;
    font-weight: 500;
    line-height: 1.2;
}
h1 {
    font-size: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
    h1 {
        font-size: 2.5rem;
    }
}
h2 {
    font-size: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
    h2 {
        font-size: 2rem;
    }
}
h3 {
    font-size: calc(1.3rem + 0.6vw);
}
@media (min-width: 1200px) {
    h3 {
        font-size: 1.75rem;
    }
}
h4 {
    font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
    h4 {
        font-size: 1.5rem;
    }
}
h5 {
    font-size: 1.25rem;
}
h6 {
    font-size: 1rem;
}
p {
    margin-top: 0;
    margin-bottom: 1rem;
}
abbr[data-bs-original-title],
abbr[title] {
    text-decoration: underline dotted;
    cursor: help;
    text-decoration-skip-ink: none;
}
address {
    margin-bottom: 1rem;
    font-style: normal;
    line-height: inherit;
}
ol,
ul {
    padding-left: 2rem;
}
dl,
ol,
ul {
    margin-top: 0;
    margin-bottom: 1rem;
}
ol ol,
ol ul,
ul ol,
ul ul {
    margin-bottom: 0;
}
dt {
    font-weight: 700;
}
dd {
    margin-bottom: 0.5rem;
    margin-left: 0;
}
blockquote {
    margin: 0 0 1rem;
}
b,
strong {
    font-weight: bolder;
}
small {
    font-size: 0.875em;
}
mark {
    padding: 0.2em;
    background-color: #fcf8e3;
}
sub,
sup {
    position: relative;
    font-size: 0.75em;
    line-height: 0;
    vertical-align: baseline;
}
sub {
    bottom: -0.25em;
}
sup {
    top: -0.5em;
}
a {
    color: #1cabe2;
    text-decoration: underline;
}
a:hover {
    color: #1689b5;
}
a:not([href]):not([class]),
a:not([href]):not([class]):hover {
    color: inherit;
    text-decoration: none;
}
code,
kbd,
pre,
samp {
    font-family: var(--bs-font-monospace);
    font-size: 1em;
    direction: ltr;
    unicode-bidi: bidi-override;
}
pre {
    display: block;
    margin-top: 0;
    margin-bottom: 1rem;
    overflow: auto;
    font-size: 0.875em;
}
pre code {
    font-size: inherit;
    color: inherit;
    word-break: normal;
}
code {
    font-size: 0.875em;
    color: #d63384;
    word-wrap: break-word;
}
a > code {
    color: inherit;
}
kbd {
    padding: 0.2rem 0.4rem;
    font-size: 0.875em;
    color: #fff;
    background-color: #212529;
    border-radius: 0.2rem;
}
kbd kbd {
    padding: 0;
    font-size: 1em;
    font-weight: 700;
}
figure {
    margin: 0 0 1rem;
}
img,
svg {
    vertical-align: middle;
}
table {
    caption-side: bottom;
    border-collapse: collapse;
}
caption {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    color: #6c757d;
    text-align: left;
}
th {
    text-align: inherit;
    text-align: -webkit-match-parent;
}
tbody,
td,
tfoot,
th,
thead,
tr {
    border-color: inherit;
    border-style: solid;
    border-width: 0;
}
label {
    display: inline-block;
}
button {
    border-radius: 0;
}
button:focus:not(:focus-visible) {
    outline: 0;
}
button,
input,
optgroup,
select,
textarea {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}
button,
select {
    text-transform: none;
}
[role="button"] {
    cursor: pointer;
}
select {
    word-wrap: normal;
}
select:disabled {
    opacity: 1;
}
[list]::-webkit-calendar-picker-indicator {
    display: none;
}
[type="button"],
[type="reset"],
[type="submit"],
button {
    -webkit-appearance: button;
}
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled),
button:not(:disabled) {
    cursor: pointer;
}
::-moz-focus-inner {
    padding: 0;
    border-style: none;
}
textarea {
    resize: vertical;
}
fieldset {
    min-width: 0;
    padding: 0;
    margin: 0;
    border: 0;
}
legend {
    float: left;
    width: 100%;
    padding: 0;
    margin-bottom: 0.5rem;
    font-size: calc(1.275rem + 0.3vw);
    line-height: inherit;
}
@media (min-width: 1200px) {
    legend {
        font-size: 1.5rem;
    }
}
legend + * {
    clear: left;
}
::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-fields-wrapper,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-minute,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-text,
::-webkit-datetime-edit-year-field {
    padding: 0;
}
::-webkit-inner-spin-button {
    height: auto;
}
[type="search"] {
    outline-offset: -2px;
    -webkit-appearance: textfield;
}
::-webkit-search-decoration {
    -webkit-appearance: none;
}
::-webkit-color-swatch-wrapper {
    padding: 0;
}
::file-selector-button {
    font: inherit;
}
::-webkit-file-upload-button {
    font: inherit;
    -webkit-appearance: button;
}
output {
    display: inline-block;
}
iframe {
    border: 0;
}
summary {
    display: list-item;
    cursor: pointer;
}
progress {
    vertical-align: baseline;
}
[hidden] {
    display: none !important;
} /*!
 * Bootstrap Grid v5.1.3 (https://getbootstrap.com/)
 * Copyright 2011-2021 The Bootstrap Authors
 * Copyright 2011-2021 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */
:root {
    --bs-blue: #0d6efd;
    --bs-indigo: #6610f2;
    --bs-purple: #6f42c1;
    --bs-pink: #d63384;
    --bs-red: #dc3545;
    --bs-orange: #fd7e14;
    --bs-yellow: #ffc107;
    --bs-green: #198754;
    --bs-teal: #20c997;
    --bs-cyan: #0dcaf0;
    --bs-white: #fff;
    --bs-gray: #6c757d;
    --bs-gray-dark: #343a40;
    --bs-gray-100: #f8f9fa;
    --bs-gray-200: #e9ecef;
    --bs-gray-300: #dee2e6;
    --bs-gray-400: #ced4da;
    --bs-gray-500: #adb5bd;
    --bs-gray-600: #6c757d;
    --bs-gray-700: #495057;
    --bs-gray-800: #343a40;
    --bs-gray-900: #212529;
    --bs-primary: #1cabe2;
    --bs-secondary: rgb(31, 44, 95);
    --bs-success: #198754;
    --bs-info: #0dcaf0;
    --bs-warning: #ffc107;
    --bs-danger: #dc3545;
    --bs-light: #f8f9fa;
    --bs-dark: #212529;
    --bs-primary-rgb: 28, 171, 226;
    --bs-secondary-rgb: 31, 44, 95;
    --bs-success-rgb: 25, 135, 84;
    --bs-info-rgb: 13, 202, 240;
    --bs-warning-rgb: 255, 193, 7;
    --bs-danger-rgb: 220, 53, 69;
    --bs-light-rgb: 248, 249, 250;
    --bs-dark-rgb: 33, 37, 41;
    --bs-white-rgb: 255, 255, 255;
    --bs-black-rgb: 0, 0, 0;
    --bs-body-color-rgb: 33, 37, 41;
    --bs-body-bg-rgb: 255, 255, 255;
    --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
    --bs-body-font-family: var(--bs-font-sans-serif);
    --bs-body-font-size: 1rem;
    --bs-body-font-weight: 400;
    --bs-body-line-height: 1.5;
    --bs-body-color: #212529;
    --bs-body-bg: #fff;
}
.container,
.container-fluid,
.container-lg,
.container-md,
.container-sm,
.container-xl,
.container-xxl {
    width: 100%;
    padding-right: var(--bs-gutter-x, 15px);
    padding-left: var(--bs-gutter-x, 15px);
    margin-right: auto;
    margin-left: auto;
}
@media (min-width: 576px) {
    .container,
    .container-sm {
        max-width: 540px;
    }
}
@media (min-width: 768px) {
    .container,
    .container-md,
    .container-sm {
        max-width: 720px;
    }
}
@media (min-width: 992px) {
    .container,
    .container-lg,
    .container-md,
    .container-sm {
        max-width: 960px;
    }
}
@media (min-width: 1200px) {
    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl {
        max-width: 1140px;
    }
}
@media (min-width: 1400px) {
    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {
        max-width: 1320px;
    }
}
.row {
    --bs-gutter-x: 30px;
    --bs-gutter-y: 0;
    display: flex;
    flex-wrap: wrap;
    margin-top: calc(-1 * var(--bs-gutter-y));
    margin-right: calc(-0.5 * var(--bs-gutter-x));
    margin-left: calc(-0.5 * var(--bs-gutter-x));
}
.row > * {
    box-sizing: border-box;
    flex-shrink: 0;
    width: 100%;
    max-width: 100%;
    padding-right: calc(var(--bs-gutter-x) * 0.5);
    padding-left: calc(var(--bs-gutter-x) * 0.5);
    margin-top: var(--bs-gutter-y);
}
.col {
    flex: 1 0 0%;
}
.row-cols-auto > * {
    flex: 0 0 auto;
    width: auto;
}
.row-cols-1 > * {
    flex: 0 0 auto;
    width: 100%;
}
.row-cols-2 > * {
    flex: 0 0 auto;
    width: 50%;
}
.row-cols-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
}
.row-cols-4 > * {
    flex: 0 0 auto;
    width: 25%;
}
.row-cols-5 > * {
    flex: 0 0 auto;
    width: 20%;
}
.row-cols-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
}
.col-auto {
    flex: 0 0 auto;
    width: auto;
}
.col-1 {
    flex: 0 0 auto;
    width: 4.16666667%;
}
.col-2 {
    flex: 0 0 auto;
    width: 8.33333333%;
}
.col-3 {
    flex: 0 0 auto;
    width: 12.5%;
}
.col-4 {
    flex: 0 0 auto;
    width: 16.66666667%;
}
.col-5 {
    flex: 0 0 auto;
    width: 20.83333333%;
}
.col-6 {
    flex: 0 0 auto;
    width: 25%;
}
.col-7 {
    flex: 0 0 auto;
    width: 29.16666667%;
}
.col-8 {
    flex: 0 0 auto;
    width: 33.33333333%;
}
.col-9 {
    flex: 0 0 auto;
    width: 37.5%;
}
.col-10 {
    flex: 0 0 auto;
    width: 41.66666667%;
}
.col-11 {
    flex: 0 0 auto;
    width: 45.83333333%;
}
.col-12 {
    flex: 0 0 auto;
    width: 50%;
}
.col-13 {
    flex: 0 0 auto;
    width: 54.16666667%;
}
.col-14 {
    flex: 0 0 auto;
    width: 58.33333333%;
}
.col-15 {
    flex: 0 0 auto;
    width: 62.5%;
}
.col-16 {
    flex: 0 0 auto;
    width: 66.66666667%;
}
.col-17 {
    flex: 0 0 auto;
    width: 70.83333333%;
}
.col-18 {
    flex: 0 0 auto;
    width: 75%;
}
.col-19 {
    flex: 0 0 auto;
    width: 79.16666667%;
}
.col-20 {
    flex: 0 0 auto;
    width: 83.33333333%;
}
.col-21 {
    flex: 0 0 auto;
    width: 87.5%;
}
.col-22 {
    flex: 0 0 auto;
    width: 91.66666667%;
}
.col-23 {
    flex: 0 0 auto;
    width: 95.83333333%;
}
.col-24 {
    flex: 0 0 auto;
    width: 100%;
}
.offset-1 {
    margin-left: 4.16666667%;
}
.offset-2 {
    margin-left: 8.33333333%;
}
.offset-3 {
    margin-left: 12.5%;
}
.offset-4 {
    margin-left: 16.66666667%;
}
.offset-5 {
    margin-left: 20.83333333%;
}
.offset-6 {
    margin-left: 25%;
}
.offset-7 {
    margin-left: 29.16666667%;
}
.offset-8 {
    margin-left: 33.33333333%;
}
.offset-9 {
    margin-left: 37.5%;
}
.offset-10 {
    margin-left: 41.66666667%;
}
.offset-11 {
    margin-left: 45.83333333%;
}
.offset-12 {
    margin-left: 50%;
}
.offset-13 {
    margin-left: 54.16666667%;
}
.offset-14 {
    margin-left: 58.33333333%;
}
.offset-15 {
    margin-left: 62.5%;
}
.offset-16 {
    margin-left: 66.66666667%;
}
.offset-17 {
    margin-left: 70.83333333%;
}
.offset-18 {
    margin-left: 75%;
}
.offset-19 {
    margin-left: 79.16666667%;
}
.offset-20 {
    margin-left: 83.33333333%;
}
.offset-21 {
    margin-left: 87.5%;
}
.offset-22 {
    margin-left: 91.66666667%;
}
.offset-23 {
    margin-left: 95.83333333%;
}
.g-0,
.gx-0 {
    --bs-gutter-x: 0;
}
.g-0,
.gy-0 {
    --bs-gutter-y: 0;
}
.g-1,
.gx-1 {
    --bs-gutter-x: 0.25rem;
}
.g-1,
.gy-1 {
    --bs-gutter-y: 0.25rem;
}
.g-2,
.gx-2 {
    --bs-gutter-x: 0.5rem;
}
.g-2,
.gy-2 {
    --bs-gutter-y: 0.5rem;
}
.g-3,
.gx-3 {
    --bs-gutter-x: 1rem;
}
.g-3,
.gy-3 {
    --bs-gutter-y: 1rem;
}
.g-4,
.gx-4 {
    --bs-gutter-x: 1.5rem;
}
.g-4,
.gy-4 {
    --bs-gutter-y: 1.5rem;
}
.g-5,
.gx-5 {
    --bs-gutter-x: 3rem;
}
.g-5,
.gy-5 {
    --bs-gutter-y: 3rem;
}
@media (min-width: 576px) {
    .col-sm {
        flex: 1 0 0%;
    }
    .row-cols-sm-auto > * {
        flex: 0 0 auto;
        width: auto;
    }
    .row-cols-sm-1 > * {
        flex: 0 0 auto;
        width: 100%;
    }
    .row-cols-sm-2 > * {
        flex: 0 0 auto;
        width: 50%;
    }
    .row-cols-sm-3 > * {
        flex: 0 0 auto;
        width: 33.3333333333%;
    }
    .row-cols-sm-4 > * {
        flex: 0 0 auto;
        width: 25%;
    }
    .row-cols-sm-5 > * {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-sm-6 > * {
        flex: 0 0 auto;
        width: 16.6666666667%;
    }
    .col-sm-auto {
        flex: 0 0 auto;
        width: auto;
    }
    .col-sm-1 {
        flex: 0 0 auto;
        width: 4.16666667%;
    }
    .col-sm-2 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }
    .col-sm-3 {
        flex: 0 0 auto;
        width: 12.5%;
    }
    .col-sm-4 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }
    .col-sm-5 {
        flex: 0 0 auto;
        width: 20.83333333%;
    }
    .col-sm-6 {
        flex: 0 0 auto;
        width: 25%;
    }
    .col-sm-7 {
        flex: 0 0 auto;
        width: 29.16666667%;
    }
    .col-sm-8 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }
    .col-sm-9 {
        flex: 0 0 auto;
        width: 37.5%;
    }
    .col-sm-10 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }
    .col-sm-11 {
        flex: 0 0 auto;
        width: 45.83333333%;
    }
    .col-sm-12 {
        flex: 0 0 auto;
        width: 50%;
    }
    .col-sm-13 {
        flex: 0 0 auto;
        width: 54.16666667%;
    }
    .col-sm-14 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }
    .col-sm-15 {
        flex: 0 0 auto;
        width: 62.5%;
    }
    .col-sm-16 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }
    .col-sm-17 {
        flex: 0 0 auto;
        width: 70.83333333%;
    }
    .col-sm-18 {
        flex: 0 0 auto;
        width: 75%;
    }
    .col-sm-19 {
        flex: 0 0 auto;
        width: 79.16666667%;
    }
    .col-sm-20 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }
    .col-sm-21 {
        flex: 0 0 auto;
        width: 87.5%;
    }
    .col-sm-22 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }
    .col-sm-23 {
        flex: 0 0 auto;
        width: 95.83333333%;
    }
    .col-sm-24 {
        flex: 0 0 auto;
        width: 100%;
    }
    .offset-sm-0 {
        margin-left: 0;
    }
    .offset-sm-1 {
        margin-left: 4.16666667%;
    }
    .offset-sm-2 {
        margin-left: 8.33333333%;
    }
    .offset-sm-3 {
        margin-left: 12.5%;
    }
    .offset-sm-4 {
        margin-left: 16.66666667%;
    }
    .offset-sm-5 {
        margin-left: 20.83333333%;
    }
    .offset-sm-6 {
        margin-left: 25%;
    }
    .offset-sm-7 {
        margin-left: 29.16666667%;
    }
    .offset-sm-8 {
        margin-left: 33.33333333%;
    }
    .offset-sm-9 {
        margin-left: 37.5%;
    }
    .offset-sm-10 {
        margin-left: 41.66666667%;
    }
    .offset-sm-11 {
        margin-left: 45.83333333%;
    }
    .offset-sm-12 {
        margin-left: 50%;
    }
    .offset-sm-13 {
        margin-left: 54.16666667%;
    }
    .offset-sm-14 {
        margin-left: 58.33333333%;
    }
    .offset-sm-15 {
        margin-left: 62.5%;
    }
    .offset-sm-16 {
        margin-left: 66.66666667%;
    }
    .offset-sm-17 {
        margin-left: 70.83333333%;
    }
    .offset-sm-18 {
        margin-left: 75%;
    }
    .offset-sm-19 {
        margin-left: 79.16666667%;
    }
    .offset-sm-20 {
        margin-left: 83.33333333%;
    }
    .offset-sm-21 {
        margin-left: 87.5%;
    }
    .offset-sm-22 {
        margin-left: 91.66666667%;
    }
    .offset-sm-23 {
        margin-left: 95.83333333%;
    }
    .g-sm-0,
    .gx-sm-0 {
        --bs-gutter-x: 0;
    }
    .g-sm-0,
    .gy-sm-0 {
        --bs-gutter-y: 0;
    }
    .g-sm-1,
    .gx-sm-1 {
        --bs-gutter-x: 0.25rem;
    }
    .g-sm-1,
    .gy-sm-1 {
        --bs-gutter-y: 0.25rem;
    }
    .g-sm-2,
    .gx-sm-2 {
        --bs-gutter-x: 0.5rem;
    }
    .g-sm-2,
    .gy-sm-2 {
        --bs-gutter-y: 0.5rem;
    }
    .g-sm-3,
    .gx-sm-3 {
        --bs-gutter-x: 1rem;
    }
    .g-sm-3,
    .gy-sm-3 {
        --bs-gutter-y: 1rem;
    }
    .g-sm-4,
    .gx-sm-4 {
        --bs-gutter-x: 1.5rem;
    }
    .g-sm-4,
    .gy-sm-4 {
        --bs-gutter-y: 1.5rem;
    }
    .g-sm-5,
    .gx-sm-5 {
        --bs-gutter-x: 3rem;
    }
    .g-sm-5,
    .gy-sm-5 {
        --bs-gutter-y: 3rem;
    }
}
@media (min-width: 768px) {
    .col-md {
        flex: 1 0 0%;
    }
    .row-cols-md-auto > * {
        flex: 0 0 auto;
        width: auto;
    }
    .row-cols-md-1 > * {
        flex: 0 0 auto;
        width: 100%;
    }
    .row-cols-md-2 > * {
        flex: 0 0 auto;
        width: 50%;
    }
    .row-cols-md-3 > * {
        flex: 0 0 auto;
        width: 33.3333333333%;
    }
    .row-cols-md-4 > * {
        flex: 0 0 auto;
        width: 25%;
    }
    .row-cols-md-5 > * {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-md-6 > * {
        flex: 0 0 auto;
        width: 16.6666666667%;
    }
    .col-md-auto {
        flex: 0 0 auto;
        width: auto;
    }
    .col-md-1 {
        flex: 0 0 auto;
        width: 4.16666667%;
    }
    .col-md-2 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }
    .col-md-3 {
        flex: 0 0 auto;
        width: 12.5%;
    }
    .col-md-4 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }
    .col-md-5 {
        flex: 0 0 auto;
        width: 20.83333333%;
    }
    .col-md-6 {
        flex: 0 0 auto;
        width: 25%;
    }
    .col-md-7 {
        flex: 0 0 auto;
        width: 29.16666667%;
    }
    .col-md-8 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }
    .col-md-9 {
        flex: 0 0 auto;
        width: 37.5%;
    }
    .col-md-10 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }
    .col-md-11 {
        flex: 0 0 auto;
        width: 45.83333333%;
    }
    .col-md-12 {
        flex: 0 0 auto;
        width: 50%;
    }
    .col-md-13 {
        flex: 0 0 auto;
        width: 54.16666667%;
    }
    .col-md-14 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }
    .col-md-15 {
        flex: 0 0 auto;
        width: 62.5%;
    }
    .col-md-16 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }
    .col-md-17 {
        flex: 0 0 auto;
        width: 70.83333333%;
    }
    .col-md-18 {
        flex: 0 0 auto;
        width: 75%;
    }
    .col-md-19 {
        flex: 0 0 auto;
        width: 79.16666667%;
    }
    .col-md-20 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }
    .col-md-21 {
        flex: 0 0 auto;
        width: 87.5%;
    }
    .col-md-22 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }
    .col-md-23 {
        flex: 0 0 auto;
        width: 95.83333333%;
    }
    .col-md-24 {
        flex: 0 0 auto;
        width: 100%;
    }
    .offset-md-0 {
        margin-left: 0;
    }
    .offset-md-1 {
        margin-left: 4.16666667%;
    }
    .offset-md-2 {
        margin-left: 8.33333333%;
    }
    .offset-md-3 {
        margin-left: 12.5%;
    }
    .offset-md-4 {
        margin-left: 16.66666667%;
    }
    .offset-md-5 {
        margin-left: 20.83333333%;
    }
    .offset-md-6 {
        margin-left: 25%;
    }
    .offset-md-7 {
        margin-left: 29.16666667%;
    }
    .offset-md-8 {
        margin-left: 33.33333333%;
    }
    .offset-md-9 {
        margin-left: 37.5%;
    }
    .offset-md-10 {
        margin-left: 41.66666667%;
    }
    .offset-md-11 {
        margin-left: 45.83333333%;
    }
    .offset-md-12 {
        margin-left: 50%;
    }
    .offset-md-13 {
        margin-left: 54.16666667%;
    }
    .offset-md-14 {
        margin-left: 58.33333333%;
    }
    .offset-md-15 {
        margin-left: 62.5%;
    }
    .offset-md-16 {
        margin-left: 66.66666667%;
    }
    .offset-md-17 {
        margin-left: 70.83333333%;
    }
    .offset-md-18 {
        margin-left: 75%;
    }
    .offset-md-19 {
        margin-left: 79.16666667%;
    }
    .offset-md-20 {
        margin-left: 83.33333333%;
    }
    .offset-md-21 {
        margin-left: 87.5%;
    }
    .offset-md-22 {
        margin-left: 91.66666667%;
    }
    .offset-md-23 {
        margin-left: 95.83333333%;
    }
    .g-md-0,
    .gx-md-0 {
        --bs-gutter-x: 0;
    }
    .g-md-0,
    .gy-md-0 {
        --bs-gutter-y: 0;
    }
    .g-md-1,
    .gx-md-1 {
        --bs-gutter-x: 0.25rem;
    }
    .g-md-1,
    .gy-md-1 {
        --bs-gutter-y: 0.25rem;
    }
    .g-md-2,
    .gx-md-2 {
        --bs-gutter-x: 0.5rem;
    }
    .g-md-2,
    .gy-md-2 {
        --bs-gutter-y: 0.5rem;
    }
    .g-md-3,
    .gx-md-3 {
        --bs-gutter-x: 1rem;
    }
    .g-md-3,
    .gy-md-3 {
        --bs-gutter-y: 1rem;
    }
    .g-md-4,
    .gx-md-4 {
        --bs-gutter-x: 1.5rem;
    }
    .g-md-4,
    .gy-md-4 {
        --bs-gutter-y: 1.5rem;
    }
    .g-md-5,
    .gx-md-5 {
        --bs-gutter-x: 3rem;
    }
    .g-md-5,
    .gy-md-5 {
        --bs-gutter-y: 3rem;
    }
}
@media (min-width: 992px) {
    .col-lg {
        flex: 1 0 0%;
    }
    .row-cols-lg-auto > * {
        flex: 0 0 auto;
        width: auto;
    }
    .row-cols-lg-1 > * {
        flex: 0 0 auto;
        width: 100%;
    }
    .row-cols-lg-2 > * {
        flex: 0 0 auto;
        width: 50%;
    }
    .row-cols-lg-3 > * {
        flex: 0 0 auto;
        width: 33.3333333333%;
    }
    .row-cols-lg-4 > * {
        flex: 0 0 auto;
        width: 25%;
    }
    .row-cols-lg-5 > * {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-lg-6 > * {
        flex: 0 0 auto;
        width: 16.6666666667%;
    }
    .col-lg-auto {
        flex: 0 0 auto;
        width: auto;
    }
    .col-lg-1 {
        flex: 0 0 auto;
        width: 4.16666667%;
    }
    .col-lg-2 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }
    .col-lg-3 {
        flex: 0 0 auto;
        width: 12.5%;
    }
    .col-lg-4 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }
    .col-lg-5 {
        flex: 0 0 auto;
        width: 20.83333333%;
    }
    .col-lg-6,
    main.page .page-content .row-text.row-blocks .text-content:first-of-type,
    main.page .page-content .row-text.row-blocks .text-content:last-of-type {
        flex: 0 0 auto;
        width: 25%;
    }
    .col-lg-7 {
        flex: 0 0 auto;
        width: 29.16666667%;
    }
    .col-lg-8,
    main.post .row-media.row-blocks.right .text-content {
        flex: 0 0 auto;
        width: 33.33333333%;
    }
    .col-lg-9,
    main.page .page-content .row-media .text-content,
    main.post .row-media.row-blocks .text-content,
    main.post .row-text.row-blocks .text-content {
        flex: 0 0 auto;
        width: 37.5%;
    }
    .col-lg-10,
    main.page .page-content .row-full.row-media .media-content,
    main.page .page-content .row-media .media-content,
    main.page .page-content .row-media.right .text-content {
        flex: 0 0 auto;
        width: 41.66666667%;
    }
    .col-lg-11 {
        flex: 0 0 auto;
        width: 45.83333333%;
    }
    .col-lg-12,
    main.job .page-content .row-text.row-blocks .text-content:first-of-type,
    main.job .page-content .row-text.row-blocks .text-content:last-of-type,
    main.post .row-media.row-blocks .media-content,
    main.sustainability .page-content .row-text.row-blocks .text-content:first-of-type,
    main.sustainability .page-content .row-text.row-blocks .text-content:last-of-type {
        flex: 0 0 auto;
        width: 50%;
    }
    .col-lg-13 {
        flex: 0 0 auto;
        width: 54.16666667%;
    }
    .col-lg-14 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }
    .col-lg-15 {
        flex: 0 0 auto;
        width: 62.5%;
    }
    .col-lg-16,
    main.job .page-content .row-full .text-content,
    main.page .page-content .row-full .media-content,
    main.sustainability .page-content .row-full .text-content {
        flex: 0 0 auto;
        width: 66.66666667%;
    }
    .col-lg-17 {
        flex: 0 0 auto;
        width: 70.83333333%;
    }
    .col-lg-18,
    main.job .page-content .row-full .media-content,
    main.page .page-content .row-full .text-content,
    main.sustainability .page-content .row-full .media-content {
        flex: 0 0 auto;
        width: 75%;
    }
    .col-lg-19 {
        flex: 0 0 auto;
        width: 79.16666667%;
    }
    .col-lg-20,
    main.page.job .page-content .row-full .text-content {
        flex: 0 0 auto;
        width: 83.33333333%;
    }
    .col-lg-21 {
        flex: 0 0 auto;
        width: 87.5%;
    }
    .col-lg-22,
    main.post .row-full .media-content,
    main.post .row-full .text-content {
        flex: 0 0 auto;
        width: 91.66666667%;
    }
    .col-lg-23 {
        flex: 0 0 auto;
        width: 95.83333333%;
    }
    .col-lg-24 {
        flex: 0 0 auto;
        width: 100%;
    }
    .offset-lg-0 {
        margin-left: 0;
    }
    .offset-lg-1,
    main.page .page-content .row-full.row-media .media-content,
    main.page .page-content .row-media .media-content,
    main.page .page-content .row-media.right .text-content,
    main.post .row-full .media-content,
    main.post .row-full .text-content,
    main.post .row-media.row-blocks .media-content,
    main.post .row-media.row-blocks .text-content,
    main.post .row-text.row-blocks .text-content {
        margin-left: 4.16666667%;
    }
    .offset-lg-2,
    main.page .page-content .row-full .text-content,
    main.page .page-content .row-media .text-content,
    main.page .page-content .row-media.right .media-content,
    main.page .page-content .row-text.row-blocks .text-content:last-of-type,
    main.page.job .page-content .row-full .text-content {
        margin-left: 8.33333333%;
    }
    .offset-lg-3,
    main.post .row-text.row-blocks .text-content:nth-of-type(2) {
        margin-left: 12.5%;
    }
    .offset-lg-4,
    main.job .page-content .row-full .media-content,
    main.job .page-content .row-full .text-content,
    main.page .page-content .row-full .media-content,
    main.sustainability .page-content .row-full .media-content,
    main.sustainability .page-content .row-full .text-content {
        margin-left: 16.66666667%;
    }
    .offset-lg-5,
    main.page .page-content .row-text.row-blocks .text-content:first-of-type {
        margin-left: 20.83333333%;
    }
    .offset-lg-6 {
        margin-left: 25%;
    }
    .offset-lg-7 {
        margin-left: 29.16666667%;
    }
    .offset-lg-8 {
        margin-left: 33.33333333%;
    }
    .offset-lg-9 {
        margin-left: 37.5%;
    }
    .offset-lg-10 {
        margin-left: 41.66666667%;
    }
    .offset-lg-11 {
        margin-left: 45.83333333%;
    }
    .offset-lg-12 {
        margin-left: 50%;
    }
    .offset-lg-13 {
        margin-left: 54.16666667%;
    }
    .offset-lg-14 {
        margin-left: 58.33333333%;
    }
    .offset-lg-15 {
        margin-left: 62.5%;
    }
    .offset-lg-16 {
        margin-left: 66.66666667%;
    }
    .offset-lg-17 {
        margin-left: 70.83333333%;
    }
    .offset-lg-18 {
        margin-left: 75%;
    }
    .offset-lg-19 {
        margin-left: 79.16666667%;
    }
    .offset-lg-20 {
        margin-left: 83.33333333%;
    }
    .offset-lg-21 {
        margin-left: 87.5%;
    }
    .offset-lg-22 {
        margin-left: 91.66666667%;
    }
    .offset-lg-23 {
        margin-left: 95.83333333%;
    }
    .g-lg-0,
    .gx-lg-0 {
        --bs-gutter-x: 0;
    }
    .g-lg-0,
    .gy-lg-0 {
        --bs-gutter-y: 0;
    }
    .g-lg-1,
    .gx-lg-1 {
        --bs-gutter-x: 0.25rem;
    }
    .g-lg-1,
    .gy-lg-1 {
        --bs-gutter-y: 0.25rem;
    }
    .g-lg-2,
    .gx-lg-2 {
        --bs-gutter-x: 0.5rem;
    }
    .g-lg-2,
    .gy-lg-2 {
        --bs-gutter-y: 0.5rem;
    }
    .g-lg-3,
    .gx-lg-3 {
        --bs-gutter-x: 1rem;
    }
    .g-lg-3,
    .gy-lg-3 {
        --bs-gutter-y: 1rem;
    }
    .g-lg-4,
    .gx-lg-4 {
        --bs-gutter-x: 1.5rem;
    }
    .g-lg-4,
    .gy-lg-4 {
        --bs-gutter-y: 1.5rem;
    }
    .g-lg-5,
    .gx-lg-5 {
        --bs-gutter-x: 3rem;
    }
    .g-lg-5,
    .gy-lg-5 {
        --bs-gutter-y: 3rem;
    }
}
@media (min-width: 1200px) {
    .col-xl {
        flex: 1 0 0%;
    }
    .row-cols-xl-auto > * {
        flex: 0 0 auto;
        width: auto;
    }
    .row-cols-xl-1 > * {
        flex: 0 0 auto;
        width: 100%;
    }
    .row-cols-xl-2 > * {
        flex: 0 0 auto;
        width: 50%;
    }
    .row-cols-xl-3 > * {
        flex: 0 0 auto;
        width: 33.3333333333%;
    }
    .row-cols-xl-4 > * {
        flex: 0 0 auto;
        width: 25%;
    }
    .row-cols-xl-5 > * {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-xl-6 > * {
        flex: 0 0 auto;
        width: 16.6666666667%;
    }
    .col-xl-auto {
        flex: 0 0 auto;
        width: auto;
    }
    .col-xl-1 {
        flex: 0 0 auto;
        width: 4.16666667%;
    }
    .col-xl-2 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }
    .col-xl-3 {
        flex: 0 0 auto;
        width: 12.5%;
    }
    .col-xl-4 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }
    .col-xl-5 {
        flex: 0 0 auto;
        width: 20.83333333%;
    }
    .col-xl-6 {
        flex: 0 0 auto;
        width: 25%;
    }
    .col-xl-7 {
        flex: 0 0 auto;
        width: 29.16666667%;
    }
    .col-xl-8,
    main.post .row-media.row-blocks.right .text-content {
        flex: 0 0 auto;
        width: 33.33333333%;
    }
    .col-xl-9,
    main.post .row-media.row-blocks .text-content {
        flex: 0 0 auto;
        width: 37.5%;
    }
    .col-xl-10 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }
    .col-xl-11 {
        flex: 0 0 auto;
        width: 45.83333333%;
    }
    .col-xl-12,
    main.post .row-media.row-blocks .media-content {
        flex: 0 0 auto;
        width: 50%;
    }
    .col-xl-13 {
        flex: 0 0 auto;
        width: 54.16666667%;
    }
    .col-xl-14 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }
    .col-xl-15 {
        flex: 0 0 auto;
        width: 62.5%;
    }
    .col-xl-16 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }
    .col-xl-17 {
        flex: 0 0 auto;
        width: 70.83333333%;
    }
    .col-xl-18 {
        flex: 0 0 auto;
        width: 75%;
    }
    .col-xl-19 {
        flex: 0 0 auto;
        width: 79.16666667%;
    }
    .col-xl-20 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }
    .col-xl-21 {
        flex: 0 0 auto;
        width: 87.5%;
    }
    .col-xl-22 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }
    .col-xl-23 {
        flex: 0 0 auto;
        width: 95.83333333%;
    }
    .col-xl-24 {
        flex: 0 0 auto;
        width: 100%;
    }
    .offset-xl-0 {
        margin-left: 0;
    }
    .offset-xl-1 {
        margin-left: 4.16666667%;
    }
    .offset-xl-2 {
        margin-left: 8.33333333%;
    }
    .offset-xl-3 {
        margin-left: 12.5%;
    }
    .offset-xl-4 {
        margin-left: 16.66666667%;
    }
    .offset-xl-5 {
        margin-left: 20.83333333%;
    }
    .offset-xl-6 {
        margin-left: 25%;
    }
    .offset-xl-7 {
        margin-left: 29.16666667%;
    }
    .offset-xl-8 {
        margin-left: 33.33333333%;
    }
    .offset-xl-9 {
        margin-left: 37.5%;
    }
    .offset-xl-10 {
        margin-left: 41.66666667%;
    }
    .offset-xl-11 {
        margin-left: 45.83333333%;
    }
    .offset-xl-12 {
        margin-left: 50%;
    }
    .offset-xl-13 {
        margin-left: 54.16666667%;
    }
    .offset-xl-14 {
        margin-left: 58.33333333%;
    }
    .offset-xl-15 {
        margin-left: 62.5%;
    }
    .offset-xl-16 {
        margin-left: 66.66666667%;
    }
    .offset-xl-17 {
        margin-left: 70.83333333%;
    }
    .offset-xl-18 {
        margin-left: 75%;
    }
    .offset-xl-19 {
        margin-left: 79.16666667%;
    }
    .offset-xl-20 {
        margin-left: 83.33333333%;
    }
    .offset-xl-21 {
        margin-left: 87.5%;
    }
    .offset-xl-22 {
        margin-left: 91.66666667%;
    }
    .offset-xl-23 {
        margin-left: 95.83333333%;
    }
    .g-xl-0,
    .gx-xl-0 {
        --bs-gutter-x: 0;
    }
    .g-xl-0,
    .gy-xl-0 {
        --bs-gutter-y: 0;
    }
    .g-xl-1,
    .gx-xl-1 {
        --bs-gutter-x: 0.25rem;
    }
    .g-xl-1,
    .gy-xl-1 {
        --bs-gutter-y: 0.25rem;
    }
    .g-xl-2,
    .gx-xl-2 {
        --bs-gutter-x: 0.5rem;
    }
    .g-xl-2,
    .gy-xl-2 {
        --bs-gutter-y: 0.5rem;
    }
    .g-xl-3,
    .gx-xl-3 {
        --bs-gutter-x: 1rem;
    }
    .g-xl-3,
    .gy-xl-3 {
        --bs-gutter-y: 1rem;
    }
    .g-xl-4,
    .gx-xl-4 {
        --bs-gutter-x: 1.5rem;
    }
    .g-xl-4,
    .gy-xl-4 {
        --bs-gutter-y: 1.5rem;
    }
    .g-xl-5,
    .gx-xl-5 {
        --bs-gutter-x: 3rem;
    }
    .g-xl-5,
    .gy-xl-5 {
        --bs-gutter-y: 3rem;
    }
}
@media (min-width: 1400px) {
    .col-xxl {
        flex: 1 0 0%;
    }
    .row-cols-xxl-auto > * {
        flex: 0 0 auto;
        width: auto;
    }
    .row-cols-xxl-1 > * {
        flex: 0 0 auto;
        width: 100%;
    }
    .row-cols-xxl-2 > * {
        flex: 0 0 auto;
        width: 50%;
    }
    .row-cols-xxl-3 > * {
        flex: 0 0 auto;
        width: 33.3333333333%;
    }
    .row-cols-xxl-4 > * {
        flex: 0 0 auto;
        width: 25%;
    }
    .row-cols-xxl-5 > * {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-xxl-6 > * {
        flex: 0 0 auto;
        width: 16.6666666667%;
    }
    .col-xxl-auto {
        flex: 0 0 auto;
        width: auto;
    }
    .col-xxl-1 {
        flex: 0 0 auto;
        width: 4.16666667%;
    }
    .col-xxl-2 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }
    .col-xxl-3 {
        flex: 0 0 auto;
        width: 12.5%;
    }
    .col-xxl-4 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }
    .col-xxl-5 {
        flex: 0 0 auto;
        width: 20.83333333%;
    }
    .col-xxl-6,
    main.page .page-content .row-media .text-content,
    main.page .page-content .row-media.right .text-content {
        flex: 0 0 auto;
        width: 25%;
    }
    .col-xxl-7 {
        flex: 0 0 auto;
        width: 29.16666667%;
    }
    .col-xxl-8,
    main.job .page-content .row-text.row-blocks .text-content:first-of-type,
    main.job .page-content .row-text.row-blocks .text-content:last-of-type,
    main.page .page-content .row-media .media-content,
    main.sustainability .page-content .row-text.row-blocks .text-content:first-of-type,
    main.sustainability .page-content .row-text.row-blocks .text-content:last-of-type {
        flex: 0 0 auto;
        width: 33.33333333%;
    }
    .col-xxl-9 {
        flex: 0 0 auto;
        width: 37.5%;
    }
    .col-xxl-10 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }
    .col-xxl-11 {
        flex: 0 0 auto;
        width: 45.83333333%;
    }
    .col-xxl-12 {
        flex: 0 0 auto;
        width: 50%;
    }
    .col-xxl-13 {
        flex: 0 0 auto;
        width: 54.16666667%;
    }
    .col-xxl-14,
    main.page .page-content .row-full .text-content {
        flex: 0 0 auto;
        width: 58.33333333%;
    }
    .col-xxl-15 {
        flex: 0 0 auto;
        width: 62.5%;
    }
    .col-xxl-16,
    main.page .page-content .row-full.row-media .media-content,
    main.page.job .page-content .row-full .text-content {
        flex: 0 0 auto;
        width: 66.66666667%;
    }
    .col-xxl-17 {
        flex: 0 0 auto;
        width: 70.83333333%;
    }
    .col-xxl-18 {
        flex: 0 0 auto;
        width: 75%;
    }
    .col-xxl-19 {
        flex: 0 0 auto;
        width: 79.16666667%;
    }
    .col-xxl-20 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }
    .col-xxl-21 {
        flex: 0 0 auto;
        width: 87.5%;
    }
    .col-xxl-22 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }
    .col-xxl-23 {
        flex: 0 0 auto;
        width: 95.83333333%;
    }
    .col-xxl-24 {
        flex: 0 0 auto;
        width: 100%;
    }
    .offset-xxl-0 {
        margin-left: 0;
    }
    .offset-xxl-1,
    main.page .page-content .row-media .media-content,
    main.page .page-content .row-media.right .text-content {
        margin-left: 4.16666667%;
    }
    .offset-xxl-2 {
        margin-left: 8.33333333%;
    }
    .offset-xxl-3 {
        margin-left: 12.5%;
    }
    .offset-xxl-4,
    main.job .page-content .row-text.row-blocks .text-content:first-of-type,
    main.page .page-content .row-full.row-media .media-content,
    main.page .page-content .row-media.right .media-content,
    main.page.job .page-content .row-full .text-content,
    main.sustainability .page-content .row-text.row-blocks .text-content:first-of-type {
        margin-left: 16.66666667%;
    }
    .offset-xxl-5,
    main.page .page-content .row-full .text-content,
    main.page .page-content .row-media .text-content {
        margin-left: 20.83333333%;
    }
    .offset-xxl-6 {
        margin-left: 25%;
    }
    .offset-xxl-7 {
        margin-left: 29.16666667%;
    }
    .offset-xxl-8 {
        margin-left: 33.33333333%;
    }
    .offset-xxl-9 {
        margin-left: 37.5%;
    }
    .offset-xxl-10 {
        margin-left: 41.66666667%;
    }
    .offset-xxl-11 {
        margin-left: 45.83333333%;
    }
    .offset-xxl-12 {
        margin-left: 50%;
    }
    .offset-xxl-13 {
        margin-left: 54.16666667%;
    }
    .offset-xxl-14 {
        margin-left: 58.33333333%;
    }
    .offset-xxl-15 {
        margin-left: 62.5%;
    }
    .offset-xxl-16 {
        margin-left: 66.66666667%;
    }
    .offset-xxl-17 {
        margin-left: 70.83333333%;
    }
    .offset-xxl-18 {
        margin-left: 75%;
    }
    .offset-xxl-19 {
        margin-left: 79.16666667%;
    }
    .offset-xxl-20 {
        margin-left: 83.33333333%;
    }
    .offset-xxl-21 {
        margin-left: 87.5%;
    }
    .offset-xxl-22 {
        margin-left: 91.66666667%;
    }
    .offset-xxl-23 {
        margin-left: 95.83333333%;
    }
    .g-xxl-0,
    .gx-xxl-0 {
        --bs-gutter-x: 0;
    }
    .g-xxl-0,
    .gy-xxl-0 {
        --bs-gutter-y: 0;
    }
    .g-xxl-1,
    .gx-xxl-1 {
        --bs-gutter-x: 0.25rem;
    }
    .g-xxl-1,
    .gy-xxl-1 {
        --bs-gutter-y: 0.25rem;
    }
    .g-xxl-2,
    .gx-xxl-2 {
        --bs-gutter-x: 0.5rem;
    }
    .g-xxl-2,
    .gy-xxl-2 {
        --bs-gutter-y: 0.5rem;
    }
    .g-xxl-3,
    .gx-xxl-3 {
        --bs-gutter-x: 1rem;
    }
    .g-xxl-3,
    .gy-xxl-3 {
        --bs-gutter-y: 1rem;
    }
    .g-xxl-4,
    .gx-xxl-4 {
        --bs-gutter-x: 1.5rem;
    }
    .g-xxl-4,
    .gy-xxl-4 {
        --bs-gutter-y: 1.5rem;
    }
    .g-xxl-5,
    .gx-xxl-5 {
        --bs-gutter-x: 3rem;
    }
    .g-xxl-5,
    .gy-xxl-5 {
        --bs-gutter-y: 3rem;
    }
}
.d-inline {
    display: inline !important;
}
.d-inline-block {
    display: inline-block !important;
}
.d-block {
    display: block !important;
}
.d-grid {
    display: grid !important;
}
.d-table {
    display: table !important;
}
.d-table-row {
    display: table-row !important;
}
.d-table-cell {
    display: table-cell !important;
}
.d-flex {
    display: flex !important;
}
.d-inline-flex {
    display: inline-flex !important;
}
.d-none {
    display: none !important;
}
.flex-fill {
    flex: 1 1 auto !important;
}
.flex-row {
    flex-direction: row !important;
}
.flex-column {
    flex-direction: column !important;
}
.flex-row-reverse {
    flex-direction: row-reverse !important;
}
.flex-column-reverse {
    flex-direction: column-reverse !important;
}
.flex-grow-0 {
    flex-grow: 0 !important;
}
.flex-grow-1 {
    flex-grow: 1 !important;
}
.flex-shrink-0 {
    flex-shrink: 0 !important;
}
.flex-shrink-1 {
    flex-shrink: 1 !important;
}
.flex-wrap {
    flex-wrap: wrap !important;
}
.flex-nowrap {
    flex-wrap: nowrap !important;
}
.flex-wrap-reverse {
    flex-wrap: wrap-reverse !important;
}
.justify-content-start {
    justify-content: flex-start !important;
}
.justify-content-end {
    justify-content: flex-end !important;
}
.justify-content-center {
    justify-content: center !important;
}
.justify-content-between {
    justify-content: space-between !important;
}
.justify-content-around {
    justify-content: space-around !important;
}
.justify-content-evenly {
    justify-content: space-evenly !important;
}
.align-items-start {
    align-items: flex-start !important;
}
.align-items-end {
    align-items: flex-end !important;
}
.align-items-center {
    align-items: center !important;
}
.align-items-baseline {
    align-items: baseline !important;
}
.align-items-stretch {
    align-items: stretch !important;
}
.align-content-start {
    align-content: flex-start !important;
}
.align-content-end {
    align-content: flex-end !important;
}
.align-content-center {
    align-content: center !important;
}
.align-content-between {
    align-content: space-between !important;
}
.align-content-around {
    align-content: space-around !important;
}
.align-content-stretch {
    align-content: stretch !important;
}
.align-self-auto {
    align-self: auto !important;
}
.align-self-start {
    align-self: flex-start !important;
}
.align-self-end {
    align-self: flex-end !important;
}
.align-self-center {
    align-self: center !important;
}
.align-self-baseline {
    align-self: baseline !important;
}
.align-self-stretch {
    align-self: stretch !important;
}
.order-first {
    order: -1 !important;
}
.order-0 {
    order: 0 !important;
}
.order-1,
main.page .page-content .row-media.right .text-content,
main.post .row-media.row-blocks.right .text-content {
    order: 1 !important;
}
.order-2 {
    order: 2 !important;
}
.order-3 {
    order: 3 !important;
}
.order-4 {
    order: 4 !important;
}
.order-5 {
    order: 5 !important;
}
.order-last {
    order: 6 !important;
}
.m-0 {
    margin: 0 !important;
}
.m-1 {
    margin: 0.25rem !important;
}
.m-2 {
    margin: 0.5rem !important;
}
.m-3 {
    margin: 1rem !important;
}
.m-4 {
    margin: 1.5rem !important;
}
.m-5 {
    margin: 3rem !important;
}
.m-auto {
    margin: auto !important;
}
.mx-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
}
.mx-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
}
.mx-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
}
.mx-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
}
.mx-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
}
.mx-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
}
.contact-layer .left .text-content,
.mx-auto,
main.about .values h3,
main.front {
    margin-right: auto !important;
    margin-left: auto !important;
}
.my-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
.my-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
}
.my-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
}
.my-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
}
.my-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
}
.my-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
}
.my-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
}
.mt-0 {
    margin-top: 0 !important;
}
.mt-1 {
    margin-top: 0.25rem !important;
}
.mt-2 {
    margin-top: 0.5rem !important;
}
.mt-3 {
    margin-top: 1rem !important;
}
.mt-4 {
    margin-top: 1.5rem !important;
}
.mt-5 {
    margin-top: 3rem !important;
}
.mt-auto {
    margin-top: auto !important;
}
.me-0 {
    margin-right: 0 !important;
}
.me-1 {
    margin-right: 0.25rem !important;
}
.me-2 {
    margin-right: 0.5rem !important;
}
.me-3 {
    margin-right: 1rem !important;
}
.me-4 {
    margin-right: 1.5rem !important;
}
.me-5 {
    margin-right: 3rem !important;
}
.me-auto {
    margin-right: auto !important;
}
.mb-0 {
    margin-bottom: 0 !important;
}
.mb-1 {
    margin-bottom: 0.25rem !important;
}
.mb-2 {
    margin-bottom: 0.5rem !important;
}
.mb-3 {
    margin-bottom: 1rem !important;
}
.mb-4 {
    margin-bottom: 1.5rem !important;
}
.mb-5 {
    margin-bottom: 3rem !important;
}
.mb-auto {
    margin-bottom: auto !important;
}
.ms-0 {
    margin-left: 0 !important;
}
.ms-1 {
    margin-left: 0.25rem !important;
}
.ms-2 {
    margin-left: 0.5rem !important;
}
.ms-3 {
    margin-left: 1rem !important;
}
.ms-4 {
    margin-left: 1.5rem !important;
}
.ms-5 {
    margin-left: 3rem !important;
}
.ms-auto {
    margin-left: auto !important;
}
@media (min-width: 576px) {
    .d-sm-inline {
        display: inline !important;
    }
    .d-sm-inline-block {
        display: inline-block !important;
    }
    .d-sm-block {
        display: block !important;
    }
    .d-sm-grid {
        display: grid !important;
    }
    .d-sm-table {
        display: table !important;
    }
    .d-sm-table-row {
        display: table-row !important;
    }
    .d-sm-table-cell {
        display: table-cell !important;
    }
    .d-sm-flex {
        display: flex !important;
    }
    .d-sm-inline-flex {
        display: inline-flex !important;
    }
    .d-sm-none {
        display: none !important;
    }
    .flex-sm-fill {
        flex: 1 1 auto !important;
    }
    .flex-sm-row {
        flex-direction: row !important;
    }
    .flex-sm-column {
        flex-direction: column !important;
    }
    .flex-sm-row-reverse {
        flex-direction: row-reverse !important;
    }
    .flex-sm-column-reverse {
        flex-direction: column-reverse !important;
    }
    .flex-sm-grow-0 {
        flex-grow: 0 !important;
    }
    .flex-sm-grow-1 {
        flex-grow: 1 !important;
    }
    .flex-sm-shrink-0 {
        flex-shrink: 0 !important;
    }
    .flex-sm-shrink-1 {
        flex-shrink: 1 !important;
    }
    .flex-sm-wrap {
        flex-wrap: wrap !important;
    }
    .flex-sm-nowrap {
        flex-wrap: nowrap !important;
    }
    .flex-sm-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }
    .justify-content-sm-start {
        justify-content: flex-start !important;
    }
    .justify-content-sm-end {
        justify-content: flex-end !important;
    }
    .justify-content-sm-center {
        justify-content: center !important;
    }
    .justify-content-sm-between {
        justify-content: space-between !important;
    }
    .justify-content-sm-around {
        justify-content: space-around !important;
    }
    .justify-content-sm-evenly {
        justify-content: space-evenly !important;
    }
    .align-items-sm-start {
        align-items: flex-start !important;
    }
    .align-items-sm-end {
        align-items: flex-end !important;
    }
    .align-items-sm-center {
        align-items: center !important;
    }
    .align-items-sm-baseline {
        align-items: baseline !important;
    }
    .align-items-sm-stretch {
        align-items: stretch !important;
    }
    .align-content-sm-start {
        align-content: flex-start !important;
    }
    .align-content-sm-end {
        align-content: flex-end !important;
    }
    .align-content-sm-center {
        align-content: center !important;
    }
    .align-content-sm-between {
        align-content: space-between !important;
    }
    .align-content-sm-around {
        align-content: space-around !important;
    }
    .align-content-sm-stretch {
        align-content: stretch !important;
    }
    .align-self-sm-auto {
        align-self: auto !important;
    }
    .align-self-sm-start {
        align-self: flex-start !important;
    }
    .align-self-sm-end {
        align-self: flex-end !important;
    }
    .align-self-sm-center {
        align-self: center !important;
    }
    .align-self-sm-baseline {
        align-self: baseline !important;
    }
    .align-self-sm-stretch {
        align-self: stretch !important;
    }
    .order-sm-first {
        order: -1 !important;
    }
    .order-sm-0 {
        order: 0 !important;
    }
    .order-sm-1 {
        order: 1 !important;
    }
    .order-sm-2 {
        order: 2 !important;
    }
    .order-sm-3 {
        order: 3 !important;
    }
    .order-sm-4 {
        order: 4 !important;
    }
    .order-sm-5 {
        order: 5 !important;
    }
    .order-sm-last {
        order: 6 !important;
    }
    .m-sm-0 {
        margin: 0 !important;
    }
    .m-sm-1 {
        margin: 0.25rem !important;
    }
    .m-sm-2 {
        margin: 0.5rem !important;
    }
    .m-sm-3 {
        margin: 1rem !important;
    }
    .m-sm-4 {
        margin: 1.5rem !important;
    }
    .m-sm-5 {
        margin: 3rem !important;
    }
    .m-sm-auto {
        margin: auto !important;
    }
    .mx-sm-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
    .mx-sm-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }
    .mx-sm-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }
    .mx-sm-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }
    .mx-sm-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }
    .mx-sm-5 {
        margin-right: 3rem !important;
        margin-left: 3rem !important;
    }
    .mx-sm-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }
    .my-sm-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
    .my-sm-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }
    .my-sm-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }
    .my-sm-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }
    .my-sm-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }
    .my-sm-5 {
        margin-top: 3rem !important;
        margin-bottom: 3rem !important;
    }
    .my-sm-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }
    .mt-sm-0 {
        margin-top: 0 !important;
    }
    .mt-sm-1 {
        margin-top: 0.25rem !important;
    }
    .mt-sm-2 {
        margin-top: 0.5rem !important;
    }
    .mt-sm-3 {
        margin-top: 1rem !important;
    }
    .mt-sm-4 {
        margin-top: 1.5rem !important;
    }
    .mt-sm-5 {
        margin-top: 3rem !important;
    }
    .mt-sm-auto {
        margin-top: auto !important;
    }
    .me-sm-0 {
        margin-right: 0 !important;
    }
    .me-sm-1 {
        margin-right: 0.25rem !important;
    }
    .me-sm-2 {
        margin-right: 0.5rem !important;
    }
    .me-sm-3 {
        margin-right: 1rem !important;
    }
    .me-sm-4 {
        margin-right: 1.5rem !important;
    }
    .me-sm-5 {
        margin-right: 3rem !important;
    }
    .me-sm-auto {
        margin-right: auto !important;
    }
    .mb-sm-0 {
        margin-bottom: 0 !important;
    }
    .mb-sm-1 {
        margin-bottom: 0.25rem !important;
    }
    .mb-sm-2 {
        margin-bottom: 0.5rem !important;
    }
    .mb-sm-3 {
        margin-bottom: 1rem !important;
    }
    .mb-sm-4 {
        margin-bottom: 1.5rem !important;
    }
    .mb-sm-5 {
        margin-bottom: 3rem !important;
    }
    .mb-sm-auto {
        margin-bottom: auto !important;
    }
    .ms-sm-0 {
        margin-left: 0 !important;
    }
    .ms-sm-1 {
        margin-left: 0.25rem !important;
    }
    .ms-sm-2 {
        margin-left: 0.5rem !important;
    }
    .ms-sm-3 {
        margin-left: 1rem !important;
    }
    .ms-sm-4 {
        margin-left: 1.5rem !important;
    }
    .ms-sm-5 {
        margin-left: 3rem !important;
    }
    .ms-sm-auto {
        margin-left: auto !important;
    }
}
@media (min-width: 768px) {
    .d-md-inline {
        display: inline !important;
    }
    .d-md-inline-block {
        display: inline-block !important;
    }
    .d-md-block {
        display: block !important;
    }
    .d-md-grid {
        display: grid !important;
    }
    .d-md-table {
        display: table !important;
    }
    .d-md-table-row {
        display: table-row !important;
    }
    .d-md-table-cell {
        display: table-cell !important;
    }
    .d-md-flex {
        display: flex !important;
    }
    .d-md-inline-flex {
        display: inline-flex !important;
    }
    .d-md-none {
        display: none !important;
    }
    .flex-md-fill {
        flex: 1 1 auto !important;
    }
    .flex-md-row {
        flex-direction: row !important;
    }
    .flex-md-column {
        flex-direction: column !important;
    }
    .flex-md-row-reverse {
        flex-direction: row-reverse !important;
    }
    .flex-md-column-reverse {
        flex-direction: column-reverse !important;
    }
    .flex-md-grow-0 {
        flex-grow: 0 !important;
    }
    .flex-md-grow-1 {
        flex-grow: 1 !important;
    }
    .flex-md-shrink-0 {
        flex-shrink: 0 !important;
    }
    .flex-md-shrink-1 {
        flex-shrink: 1 !important;
    }
    .flex-md-wrap {
        flex-wrap: wrap !important;
    }
    .flex-md-nowrap {
        flex-wrap: nowrap !important;
    }
    .flex-md-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }
    .justify-content-md-start {
        justify-content: flex-start !important;
    }
    .justify-content-md-end {
        justify-content: flex-end !important;
    }
    .justify-content-md-center {
        justify-content: center !important;
    }
    .justify-content-md-between {
        justify-content: space-between !important;
    }
    .justify-content-md-around {
        justify-content: space-around !important;
    }
    .justify-content-md-evenly {
        justify-content: space-evenly !important;
    }
    .align-items-md-start {
        align-items: flex-start !important;
    }
    .align-items-md-end {
        align-items: flex-end !important;
    }
    .align-items-md-center {
        align-items: center !important;
    }
    .align-items-md-baseline {
        align-items: baseline !important;
    }
    .align-items-md-stretch {
        align-items: stretch !important;
    }
    .align-content-md-start {
        align-content: flex-start !important;
    }
    .align-content-md-end {
        align-content: flex-end !important;
    }
    .align-content-md-center {
        align-content: center !important;
    }
    .align-content-md-between {
        align-content: space-between !important;
    }
    .align-content-md-around {
        align-content: space-around !important;
    }
    .align-content-md-stretch {
        align-content: stretch !important;
    }
    .align-self-md-auto {
        align-self: auto !important;
    }
    .align-self-md-start {
        align-self: flex-start !important;
    }
    .align-self-md-end {
        align-self: flex-end !important;
    }
    .align-self-md-center {
        align-self: center !important;
    }
    .align-self-md-baseline {
        align-self: baseline !important;
    }
    .align-self-md-stretch {
        align-self: stretch !important;
    }
    .order-md-first {
        order: -1 !important;
    }
    .order-md-0 {
        order: 0 !important;
    }
    .order-md-1 {
        order: 1 !important;
    }
    .order-md-2 {
        order: 2 !important;
    }
    .order-md-3 {
        order: 3 !important;
    }
    .order-md-4 {
        order: 4 !important;
    }
    .order-md-5 {
        order: 5 !important;
    }
    .order-md-last {
        order: 6 !important;
    }
    .m-md-0 {
        margin: 0 !important;
    }
    .m-md-1 {
        margin: 0.25rem !important;
    }
    .m-md-2 {
        margin: 0.5rem !important;
    }
    .m-md-3 {
        margin: 1rem !important;
    }
    .m-md-4 {
        margin: 1.5rem !important;
    }
    .m-md-5 {
        margin: 3rem !important;
    }
    .m-md-auto {
        margin: auto !important;
    }
    .mx-md-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
    .mx-md-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }
    .mx-md-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }
    .mx-md-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }
    .mx-md-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }
    .mx-md-5 {
        margin-right: 3rem !important;
        margin-left: 3rem !important;
    }
    .mx-md-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }
    .my-md-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
    .my-md-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }
    .my-md-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }
    .my-md-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }
    .my-md-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }
    .my-md-5 {
        margin-top: 3rem !important;
        margin-bottom: 3rem !important;
    }
    .my-md-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }
    .mt-md-0 {
        margin-top: 0 !important;
    }
    .mt-md-1 {
        margin-top: 0.25rem !important;
    }
    .mt-md-2 {
        margin-top: 0.5rem !important;
    }
    .mt-md-3 {
        margin-top: 1rem !important;
    }
    .mt-md-4 {
        margin-top: 1.5rem !important;
    }
    .mt-md-5 {
        margin-top: 3rem !important;
    }
    .mt-md-auto {
        margin-top: auto !important;
    }
    .me-md-0 {
        margin-right: 0 !important;
    }
    .me-md-1 {
        margin-right: 0.25rem !important;
    }
    .me-md-2 {
        margin-right: 0.5rem !important;
    }
    .me-md-3 {
        margin-right: 1rem !important;
    }
    .me-md-4 {
        margin-right: 1.5rem !important;
    }
    .me-md-5 {
        margin-right: 3rem !important;
    }
    .me-md-auto {
        margin-right: auto !important;
    }
    .mb-md-0 {
        margin-bottom: 0 !important;
    }
    .mb-md-1 {
        margin-bottom: 0.25rem !important;
    }
    .mb-md-2 {
        margin-bottom: 0.5rem !important;
    }
    .mb-md-3 {
        margin-bottom: 1rem !important;
    }
    .mb-md-4 {
        margin-bottom: 1.5rem !important;
    }
    .mb-md-5 {
        margin-bottom: 3rem !important;
    }
    .mb-md-auto {
        margin-bottom: auto !important;
    }
    .ms-md-0 {
        margin-left: 0 !important;
    }
    .ms-md-1 {
        margin-left: 0.25rem !important;
    }
    .ms-md-2 {
        margin-left: 0.5rem !important;
    }
    .ms-md-3 {
        margin-left: 1rem !important;
    }
    .ms-md-4 {
        margin-left: 1.5rem !important;
    }
    .ms-md-5 {
        margin-left: 3rem !important;
    }
    .ms-md-auto {
        margin-left: auto !important;
    }
}
@media (min-width: 992px) {
    .d-lg-inline {
        display: inline !important;
    }
    .d-lg-inline-block {
        display: inline-block !important;
    }
    .d-lg-block {
        display: block !important;
    }
    .d-lg-grid {
        display: grid !important;
    }
    .d-lg-table {
        display: table !important;
    }
    .d-lg-table-row {
        display: table-row !important;
    }
    .d-lg-table-cell {
        display: table-cell !important;
    }
    .d-lg-flex {
        display: flex !important;
    }
    .d-lg-inline-flex {
        display: inline-flex !important;
    }
    .d-lg-none {
        display: none !important;
    }
    .flex-lg-fill {
        flex: 1 1 auto !important;
    }
    .flex-lg-row {
        flex-direction: row !important;
    }
    .flex-lg-column {
        flex-direction: column !important;
    }
    .flex-lg-row-reverse {
        flex-direction: row-reverse !important;
    }
    .flex-lg-column-reverse {
        flex-direction: column-reverse !important;
    }
    .flex-lg-grow-0 {
        flex-grow: 0 !important;
    }
    .flex-lg-grow-1 {
        flex-grow: 1 !important;
    }
    .flex-lg-shrink-0 {
        flex-shrink: 0 !important;
    }
    .flex-lg-shrink-1 {
        flex-shrink: 1 !important;
    }
    .flex-lg-wrap {
        flex-wrap: wrap !important;
    }
    .flex-lg-nowrap {
        flex-wrap: nowrap !important;
    }
    .flex-lg-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }
    .justify-content-lg-start {
        justify-content: flex-start !important;
    }
    .justify-content-lg-end {
        justify-content: flex-end !important;
    }
    .justify-content-lg-center {
        justify-content: center !important;
    }
    .justify-content-lg-between {
        justify-content: space-between !important;
    }
    .justify-content-lg-around {
        justify-content: space-around !important;
    }
    .justify-content-lg-evenly {
        justify-content: space-evenly !important;
    }
    .align-items-lg-start {
        align-items: flex-start !important;
    }
    .align-items-lg-end {
        align-items: flex-end !important;
    }
    .align-items-lg-center {
        align-items: center !important;
    }
    .align-items-lg-baseline {
        align-items: baseline !important;
    }
    .align-items-lg-stretch {
        align-items: stretch !important;
    }
    .align-content-lg-start {
        align-content: flex-start !important;
    }
    .align-content-lg-end {
        align-content: flex-end !important;
    }
    .align-content-lg-center {
        align-content: center !important;
    }
    .align-content-lg-between {
        align-content: space-between !important;
    }
    .align-content-lg-around {
        align-content: space-around !important;
    }
    .align-content-lg-stretch {
        align-content: stretch !important;
    }
    .align-self-lg-auto {
        align-self: auto !important;
    }
    .align-self-lg-start {
        align-self: flex-start !important;
    }
    .align-self-lg-end {
        align-self: flex-end !important;
    }
    .align-self-lg-center {
        align-self: center !important;
    }
    .align-self-lg-baseline {
        align-self: baseline !important;
    }
    .align-self-lg-stretch {
        align-self: stretch !important;
    }
    .order-lg-first {
        order: -1 !important;
    }
    .order-lg-0 {
        order: 0 !important;
    }
    .order-lg-1 {
        order: 1 !important;
    }
    .order-lg-2 {
        order: 2 !important;
    }
    .order-lg-3 {
        order: 3 !important;
    }
    .order-lg-4 {
        order: 4 !important;
    }
    .order-lg-5 {
        order: 5 !important;
    }
    .order-lg-last {
        order: 6 !important;
    }
    .m-lg-0 {
        margin: 0 !important;
    }
    .m-lg-1 {
        margin: 0.25rem !important;
    }
    .m-lg-2 {
        margin: 0.5rem !important;
    }
    .m-lg-3 {
        margin: 1rem !important;
    }
    .m-lg-4 {
        margin: 1.5rem !important;
    }
    .m-lg-5 {
        margin: 3rem !important;
    }
    .m-lg-auto {
        margin: auto !important;
    }
    .mx-lg-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
    .mx-lg-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }
    .mx-lg-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }
    .mx-lg-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }
    .mx-lg-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }
    .mx-lg-5 {
        margin-right: 3rem !important;
        margin-left: 3rem !important;
    }
    .mx-lg-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }
    .my-lg-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
    .my-lg-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }
    .my-lg-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }
    .my-lg-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }
    .my-lg-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }
    .my-lg-5 {
        margin-top: 3rem !important;
        margin-bottom: 3rem !important;
    }
    .my-lg-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }
    .mt-lg-0 {
        margin-top: 0 !important;
    }
    .mt-lg-1 {
        margin-top: 0.25rem !important;
    }
    .mt-lg-2 {
        margin-top: 0.5rem !important;
    }
    .mt-lg-3 {
        margin-top: 1rem !important;
    }
    .mt-lg-4 {
        margin-top: 1.5rem !important;
    }
    .mt-lg-5 {
        margin-top: 3rem !important;
    }
    .mt-lg-auto {
        margin-top: auto !important;
    }
    .me-lg-0 {
        margin-right: 0 !important;
    }
    .me-lg-1 {
        margin-right: 0.25rem !important;
    }
    .me-lg-2 {
        margin-right: 0.5rem !important;
    }
    .me-lg-3 {
        margin-right: 1rem !important;
    }
    .me-lg-4 {
        margin-right: 1.5rem !important;
    }
    .me-lg-5 {
        margin-right: 3rem !important;
    }
    .me-lg-auto {
        margin-right: auto !important;
    }
    .mb-lg-0 {
        margin-bottom: 0 !important;
    }
    .mb-lg-1 {
        margin-bottom: 0.25rem !important;
    }
    .mb-lg-2 {
        margin-bottom: 0.5rem !important;
    }
    .mb-lg-3 {
        margin-bottom: 1rem !important;
    }
    .mb-lg-4 {
        margin-bottom: 1.5rem !important;
    }
    .mb-lg-5 {
        margin-bottom: 3rem !important;
    }
    .mb-lg-auto {
        margin-bottom: auto !important;
    }
    .ms-lg-0 {
        margin-left: 0 !important;
    }
    .ms-lg-1 {
        margin-left: 0.25rem !important;
    }
    .ms-lg-2 {
        margin-left: 0.5rem !important;
    }
    .ms-lg-3 {
        margin-left: 1rem !important;
    }
    .ms-lg-4 {
        margin-left: 1.5rem !important;
    }
    .ms-lg-5 {
        margin-left: 3rem !important;
    }
    .ms-lg-auto {
        margin-left: auto !important;
    }
}
@media (min-width: 1200px) {
    .d-xl-inline {
        display: inline !important;
    }
    .d-xl-inline-block {
        display: inline-block !important;
    }
    .d-xl-block {
        display: block !important;
    }
    .d-xl-grid {
        display: grid !important;
    }
    .d-xl-table {
        display: table !important;
    }
    .d-xl-table-row {
        display: table-row !important;
    }
    .d-xl-table-cell {
        display: table-cell !important;
    }
    .d-xl-flex {
        display: flex !important;
    }
    .d-xl-inline-flex {
        display: inline-flex !important;
    }
    .d-xl-none {
        display: none !important;
    }
    .flex-xl-fill {
        flex: 1 1 auto !important;
    }
    .flex-xl-row {
        flex-direction: row !important;
    }
    .flex-xl-column {
        flex-direction: column !important;
    }
    .flex-xl-row-reverse {
        flex-direction: row-reverse !important;
    }
    .flex-xl-column-reverse {
        flex-direction: column-reverse !important;
    }
    .flex-xl-grow-0 {
        flex-grow: 0 !important;
    }
    .flex-xl-grow-1 {
        flex-grow: 1 !important;
    }
    .flex-xl-shrink-0 {
        flex-shrink: 0 !important;
    }
    .flex-xl-shrink-1 {
        flex-shrink: 1 !important;
    }
    .flex-xl-wrap {
        flex-wrap: wrap !important;
    }
    .flex-xl-nowrap {
        flex-wrap: nowrap !important;
    }
    .flex-xl-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }
    .justify-content-xl-start {
        justify-content: flex-start !important;
    }
    .justify-content-xl-end {
        justify-content: flex-end !important;
    }
    .justify-content-xl-center {
        justify-content: center !important;
    }
    .justify-content-xl-between {
        justify-content: space-between !important;
    }
    .justify-content-xl-around {
        justify-content: space-around !important;
    }
    .justify-content-xl-evenly {
        justify-content: space-evenly !important;
    }
    .align-items-xl-start {
        align-items: flex-start !important;
    }
    .align-items-xl-end {
        align-items: flex-end !important;
    }
    .align-items-xl-center {
        align-items: center !important;
    }
    .align-items-xl-baseline {
        align-items: baseline !important;
    }
    .align-items-xl-stretch {
        align-items: stretch !important;
    }
    .align-content-xl-start {
        align-content: flex-start !important;
    }
    .align-content-xl-end {
        align-content: flex-end !important;
    }
    .align-content-xl-center {
        align-content: center !important;
    }
    .align-content-xl-between {
        align-content: space-between !important;
    }
    .align-content-xl-around {
        align-content: space-around !important;
    }
    .align-content-xl-stretch {
        align-content: stretch !important;
    }
    .align-self-xl-auto {
        align-self: auto !important;
    }
    .align-self-xl-start {
        align-self: flex-start !important;
    }
    .align-self-xl-end {
        align-self: flex-end !important;
    }
    .align-self-xl-center {
        align-self: center !important;
    }
    .align-self-xl-baseline {
        align-self: baseline !important;
    }
    .align-self-xl-stretch {
        align-self: stretch !important;
    }
    .order-xl-first {
        order: -1 !important;
    }
    .order-xl-0 {
        order: 0 !important;
    }
    .order-xl-1 {
        order: 1 !important;
    }
    .order-xl-2 {
        order: 2 !important;
    }
    .order-xl-3 {
        order: 3 !important;
    }
    .order-xl-4 {
        order: 4 !important;
    }
    .order-xl-5 {
        order: 5 !important;
    }
    .order-xl-last {
        order: 6 !important;
    }
    .m-xl-0 {
        margin: 0 !important;
    }
    .m-xl-1 {
        margin: 0.25rem !important;
    }
    .m-xl-2 {
        margin: 0.5rem !important;
    }
    .m-xl-3 {
        margin: 1rem !important;
    }
    .m-xl-4 {
        margin: 1.5rem !important;
    }
    .m-xl-5 {
        margin: 3rem !important;
    }
    .m-xl-auto {
        margin: auto !important;
    }
    .mx-xl-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
    .mx-xl-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }
    .mx-xl-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }
    .mx-xl-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }
    .mx-xl-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }
    .mx-xl-5 {
        margin-right: 3rem !important;
        margin-left: 3rem !important;
    }
    .mx-xl-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }
    .my-xl-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
    .my-xl-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }
    .my-xl-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }
    .my-xl-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }
    .my-xl-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }
    .my-xl-5 {
        margin-top: 3rem !important;
        margin-bottom: 3rem !important;
    }
    .my-xl-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }
    .mt-xl-0 {
        margin-top: 0 !important;
    }
    .mt-xl-1 {
        margin-top: 0.25rem !important;
    }
    .mt-xl-2 {
        margin-top: 0.5rem !important;
    }
    .mt-xl-3 {
        margin-top: 1rem !important;
    }
    .mt-xl-4 {
        margin-top: 1.5rem !important;
    }
    .mt-xl-5 {
        margin-top: 3rem !important;
    }
    .mt-xl-auto {
        margin-top: auto !important;
    }
    .me-xl-0 {
        margin-right: 0 !important;
    }
    .me-xl-1 {
        margin-right: 0.25rem !important;
    }
    .me-xl-2 {
        margin-right: 0.5rem !important;
    }
    .me-xl-3 {
        margin-right: 1rem !important;
    }
    .me-xl-4 {
        margin-right: 1.5rem !important;
    }
    .me-xl-5 {
        margin-right: 3rem !important;
    }
    .me-xl-auto {
        margin-right: auto !important;
    }
    .mb-xl-0 {
        margin-bottom: 0 !important;
    }
    .mb-xl-1 {
        margin-bottom: 0.25rem !important;
    }
    .mb-xl-2 {
        margin-bottom: 0.5rem !important;
    }
    .mb-xl-3 {
        margin-bottom: 1rem !important;
    }
    .mb-xl-4 {
        margin-bottom: 1.5rem !important;
    }
    .mb-xl-5 {
        margin-bottom: 3rem !important;
    }
    .mb-xl-auto {
        margin-bottom: auto !important;
    }
    .ms-xl-0 {
        margin-left: 0 !important;
    }
    .ms-xl-1 {
        margin-left: 0.25rem !important;
    }
    .ms-xl-2 {
        margin-left: 0.5rem !important;
    }
    .ms-xl-3 {
        margin-left: 1rem !important;
    }
    .ms-xl-4 {
        margin-left: 1.5rem !important;
    }
    .ms-xl-5 {
        margin-left: 3rem !important;
    }
    .ms-xl-auto {
        margin-left: auto !important;
    }
}
@media (min-width: 1400px) {
    .d-xxl-inline {
        display: inline !important;
    }
    .d-xxl-inline-block {
        display: inline-block !important;
    }
    .d-xxl-block {
        display: block !important;
    }
    .d-xxl-grid {
        display: grid !important;
    }
    .d-xxl-table {
        display: table !important;
    }
    .d-xxl-table-row {
        display: table-row !important;
    }
    .d-xxl-table-cell {
        display: table-cell !important;
    }
    .d-xxl-flex {
        display: flex !important;
    }
    .d-xxl-inline-flex {
        display: inline-flex !important;
    }
    .d-xxl-none {
        display: none !important;
    }
    .flex-xxl-fill {
        flex: 1 1 auto !important;
    }
    .flex-xxl-row {
        flex-direction: row !important;
    }
    .flex-xxl-column {
        flex-direction: column !important;
    }
    .flex-xxl-row-reverse {
        flex-direction: row-reverse !important;
    }
    .flex-xxl-column-reverse {
        flex-direction: column-reverse !important;
    }
    .flex-xxl-grow-0 {
        flex-grow: 0 !important;
    }
    .flex-xxl-grow-1 {
        flex-grow: 1 !important;
    }
    .flex-xxl-shrink-0 {
        flex-shrink: 0 !important;
    }
    .flex-xxl-shrink-1 {
        flex-shrink: 1 !important;
    }
    .flex-xxl-wrap {
        flex-wrap: wrap !important;
    }
    .flex-xxl-nowrap {
        flex-wrap: nowrap !important;
    }
    .flex-xxl-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }
    .justify-content-xxl-start {
        justify-content: flex-start !important;
    }
    .justify-content-xxl-end {
        justify-content: flex-end !important;
    }
    .justify-content-xxl-center {
        justify-content: center !important;
    }
    .justify-content-xxl-between {
        justify-content: space-between !important;
    }
    .justify-content-xxl-around {
        justify-content: space-around !important;
    }
    .justify-content-xxl-evenly {
        justify-content: space-evenly !important;
    }
    .align-items-xxl-start {
        align-items: flex-start !important;
    }
    .align-items-xxl-end {
        align-items: flex-end !important;
    }
    .align-items-xxl-center {
        align-items: center !important;
    }
    .align-items-xxl-baseline {
        align-items: baseline !important;
    }
    .align-items-xxl-stretch {
        align-items: stretch !important;
    }
    .align-content-xxl-start {
        align-content: flex-start !important;
    }
    .align-content-xxl-end {
        align-content: flex-end !important;
    }
    .align-content-xxl-center {
        align-content: center !important;
    }
    .align-content-xxl-between {
        align-content: space-between !important;
    }
    .align-content-xxl-around {
        align-content: space-around !important;
    }
    .align-content-xxl-stretch {
        align-content: stretch !important;
    }
    .align-self-xxl-auto {
        align-self: auto !important;
    }
    .align-self-xxl-start {
        align-self: flex-start !important;
    }
    .align-self-xxl-end {
        align-self: flex-end !important;
    }
    .align-self-xxl-center {
        align-self: center !important;
    }
    .align-self-xxl-baseline {
        align-self: baseline !important;
    }
    .align-self-xxl-stretch {
        align-self: stretch !important;
    }
    .order-xxl-first {
        order: -1 !important;
    }
    .order-xxl-0 {
        order: 0 !important;
    }
    .order-xxl-1 {
        order: 1 !important;
    }
    .order-xxl-2 {
        order: 2 !important;
    }
    .order-xxl-3 {
        order: 3 !important;
    }
    .order-xxl-4 {
        order: 4 !important;
    }
    .order-xxl-5 {
        order: 5 !important;
    }
    .order-xxl-last {
        order: 6 !important;
    }
    .m-xxl-0 {
        margin: 0 !important;
    }
    .m-xxl-1 {
        margin: 0.25rem !important;
    }
    .m-xxl-2 {
        margin: 0.5rem !important;
    }
    .m-xxl-3 {
        margin: 1rem !important;
    }
    .m-xxl-4 {
        margin: 1.5rem !important;
    }
    .m-xxl-5 {
        margin: 3rem !important;
    }
    .m-xxl-auto {
        margin: auto !important;
    }
    .mx-xxl-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
    .mx-xxl-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }
    .mx-xxl-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }
    .mx-xxl-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }
    .mx-xxl-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }
    .mx-xxl-5 {
        margin-right: 3rem !important;
        margin-left: 3rem !important;
    }
    .mx-xxl-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }
    .my-xxl-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
    .my-xxl-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }
    .my-xxl-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }
    .my-xxl-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }
    .my-xxl-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }
    .my-xxl-5 {
        margin-top: 3rem !important;
        margin-bottom: 3rem !important;
    }
    .my-xxl-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }
    .mt-xxl-0 {
        margin-top: 0 !important;
    }
    .mt-xxl-1 {
        margin-top: 0.25rem !important;
    }
    .mt-xxl-2 {
        margin-top: 0.5rem !important;
    }
    .mt-xxl-3 {
        margin-top: 1rem !important;
    }
    .mt-xxl-4 {
        margin-top: 1.5rem !important;
    }
    .mt-xxl-5 {
        margin-top: 3rem !important;
    }
    .mt-xxl-auto {
        margin-top: auto !important;
    }
    .me-xxl-0 {
        margin-right: 0 !important;
    }
    .me-xxl-1 {
        margin-right: 0.25rem !important;
    }
    .me-xxl-2 {
        margin-right: 0.5rem !important;
    }
    .me-xxl-3 {
        margin-right: 1rem !important;
    }
    .me-xxl-4 {
        margin-right: 1.5rem !important;
    }
    .me-xxl-5 {
        margin-right: 3rem !important;
    }
    .me-xxl-auto {
        margin-right: auto !important;
    }
    .mb-xxl-0 {
        margin-bottom: 0 !important;
    }
    .mb-xxl-1 {
        margin-bottom: 0.25rem !important;
    }
    .mb-xxl-2 {
        margin-bottom: 0.5rem !important;
    }
    .mb-xxl-3 {
        margin-bottom: 1rem !important;
    }
    .mb-xxl-4 {
        margin-bottom: 1.5rem !important;
    }
    .mb-xxl-5 {
        margin-bottom: 3rem !important;
    }
    .mb-xxl-auto {
        margin-bottom: auto !important;
    }
    .ms-xxl-0 {
        margin-left: 0 !important;
    }
    .ms-xxl-1 {
        margin-left: 0.25rem !important;
    }
    .ms-xxl-2 {
        margin-left: 0.5rem !important;
    }
    .ms-xxl-3 {
        margin-left: 1rem !important;
    }
    .ms-xxl-4 {
        margin-left: 1.5rem !important;
    }
    .ms-xxl-5 {
        margin-left: 3rem !important;
    }
    .ms-xxl-auto {
        margin-left: auto !important;
    }
}
@media print {
    .d-print-inline {
        display: inline !important;
    }
    .d-print-inline-block {
        display: inline-block !important;
    }
    .d-print-block {
        display: block !important;
    }
    .d-print-grid {
        display: grid !important;
    }
    .d-print-table {
        display: table !important;
    }
    .d-print-table-row {
        display: table-row !important;
    }
    .d-print-table-cell {
        display: table-cell !important;
    }
    .d-print-flex {
        display: flex !important;
    }
    .d-print-inline-flex {
        display: inline-flex !important;
    }
    .d-print-none {
        display: none !important;
    }
}
@font-face {
    font-family: "Libre Franklin";
    font-style: normal;
    font-weight: 100;
    src: url(../fonts/libre-franklin-v13-latin-ext_latin-100.eot);
    src: local(""), url(../fonts/libre-franklin-v13-latin-ext_latin-100.eot?#iefix) format("embedded-opentype"), url(../fonts/libre-franklin-v13-latin-ext_latin-100.woff2) format("woff2"),
        url(../fonts/libre-franklin-v13-latin-ext_latin-100.woff) format("woff"), url(../fonts/libre-franklin-v13-latin-ext_latin-100.ttf) format("truetype"),
        url(../fonts/libre-franklin-v13-latin-ext_latin-100.svg#LibreFranklin) format("svg");
}
@font-face {
    font-family: "Libre Franklin";
    font-style: normal;
    font-weight: 200;
    src: url(../fonts/libre-franklin-v13-latin-ext_latin-200.eot);
    src: local(""), url(../fonts/libre-franklin-v13-latin-ext_latin-200.eot?#iefix) format("embedded-opentype"), url(../fonts/libre-franklin-v13-latin-ext_latin-200.woff2) format("woff2"),
        url(../fonts/libre-franklin-v13-latin-ext_latin-200.woff) format("woff"), url(../fonts/libre-franklin-v13-latin-ext_latin-200.ttf) format("truetype"),
        url(../fonts/libre-franklin-v13-latin-ext_latin-200.svg#LibreFranklin) format("svg");
}
@font-face {
    font-family: "Libre Franklin";
    font-style: normal;
    font-weight: 300;
    src: url(../fonts/libre-franklin-v13-latin-ext_latin-300.eot);
    src: local(""), url(../fonts/libre-franklin-v13-latin-ext_latin-300.eot?#iefix) format("embedded-opentype"), url(../fonts/libre-franklin-v13-latin-ext_latin-300.woff2) format("woff2"),
        url(../fonts/libre-franklin-v13-latin-ext_latin-300.woff) format("woff"), url(../fonts/libre-franklin-v13-latin-ext_latin-300.ttf) format("truetype"),
        url(../fonts/libre-franklin-v13-latin-ext_latin-300.svg#LibreFranklin) format("svg");
}
@font-face {
    font-family: "Libre Franklin";
    font-style: normal;
    font-weight: 500;
    src: url(../fonts/libre-franklin-v13-latin-ext_latin-500.eot);
    src: local(""), url(../fonts/libre-franklin-v13-latin-ext_latin-500.eot?#iefix) format("embedded-opentype"), url(../fonts/libre-franklin-v13-latin-ext_latin-500.woff2) format("woff2"),
        url(../fonts/libre-franklin-v13-latin-ext_latin-500.woff) format("woff"), url(../fonts/libre-franklin-v13-latin-ext_latin-500.ttf) format("truetype"),
        url(../fonts/libre-franklin-v13-latin-ext_latin-500.svg#LibreFranklin) format("svg");
}
@font-face {
    font-family: "Libre Franklin";
    font-style: normal;
    font-weight: 600;
    src: url(../fonts/libre-franklin-v13-latin-ext_latin-600.eot);
    src: local(""), url(../fonts/libre-franklin-v13-latin-ext_latin-600.eot?#iefix) format("embedded-opentype"), url(../fonts/libre-franklin-v13-latin-ext_latin-600.woff2) format("woff2"),
        url(../fonts/libre-franklin-v13-latin-ext_latin-600.woff) format("woff"), url(../fonts/libre-franklin-v13-latin-ext_latin-600.ttf) format("truetype"),
        url(../fonts/libre-franklin-v13-latin-ext_latin-600.svg#LibreFranklin) format("svg");
}
@font-face {
    font-family: "Libre Franklin";
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/libre-franklin-v13-latin-ext_latin-regular.eot);
    src: local(""), url(../fonts/libre-franklin-v13-latin-ext_latin-regular.eot?#iefix) format("embedded-opentype"), url(../fonts/libre-franklin-v13-latin-ext_latin-regular.woff2) format("woff2"),
        url(../fonts/libre-franklin-v13-latin-ext_latin-regular.woff) format("woff"), url(../fonts/libre-franklin-v13-latin-ext_latin-regular.ttf) format("truetype"),
        url(../fonts/libre-franklin-v13-latin-ext_latin-regular.svg#LibreFranklin) format("svg");
}
@font-face {
    font-family: "Libre Franklin";
    font-style: normal;
    font-weight: 700;
    src: url(../fonts/libre-franklin-v13-latin-ext_latin-700.eot);
    src: local(""), url(../fonts/libre-franklin-v13-latin-ext_latin-700.eot?#iefix) format("embedded-opentype"), url(../fonts/libre-franklin-v13-latin-ext_latin-700.woff2) format("woff2"),
        url(../fonts/libre-franklin-v13-latin-ext_latin-700.woff) format("woff"), url(../fonts/libre-franklin-v13-latin-ext_latin-700.ttf) format("truetype"),
        url(../fonts/libre-franklin-v13-latin-ext_latin-700.svg#LibreFranklin) format("svg");
}
.text-center,
main .numbers {
    text-align: center;
}
.text-right {
    text-align: right;
}
.text-upper {
    text-transform: uppercase;
}
.text-lower {
    text-transform: lowercase;
}
.text-primary {
    color: #1cabe2;
}
strong {
    font-weight: 500;
}
em {
    font-style: italic;
}
ul {
    margin: 0;
    padding: 0;
}
ul li {
    list-style: none;
}
h1,
h2,
h3,
h4,
p {
    word-break: break-word;
}
.section-title,
main header.content-header h2,
main header.form-header h2,
main.front .about h1,
main.front .about h2,
main.service .services-grid h2,
main.solution .services-grid h2,
main.solution section.contact-us header h2,
main.solution section.process .process-intro h2,
main.solution section.segments h2,
section.calculator header h2 {
    font-size: 3.5rem;
    font-weight: 600;
    color: #1f2c5f;
}
@media (max-width: 1024px) {
    .section-title,
    main header.content-header h2,
    main header.form-header h2,
    main.front .about h1,
    main.front .about h2,
    main.service .services-grid h2,
    main.solution .services-grid h2,
    main.solution section.contact-us header h2,
    main.solution section.process .process-intro h2,
    main.solution section.segments h2,
    section.calculator header h2 {
        font-size: 2rem;
        font-weight: 600;
    }
}
.lazyBg {
    position: relative;
}
.lazyBg > img {
    height: 1px;
    position: absolute;
}
.lazyBg.h-auto {
    height: 100%;
}
@media (max-width: 768px) {
    .lazyBg.h-auto {
        height: 50vh;
    }
}
img {
    max-width: 100%;
    height: auto;
}
figure.fit {
    height: 1px;
    overflow: hidden;
}
figure.h_65 {
    padding-bottom: 65%;
}
figure.square {
    padding-bottom: 100%;
}
figure.cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.main-offset {
    width: auto;
}
@media (max-width: 1024px) {
    .main-offset {
        margin-left: 20px;
        margin-right: 20px;
    }
}
@media (min-width: 1200px) {
    .main-offset {
        margin-left: 87px;
        margin-right: 87px;
    }
}
@media (max-width: 1024px) {
    .sm-margin {
        width: auto;
        margin-left: 20px;
        margin-right: 20px;
    }
}
.no-gutters {
    margin-right: 0;
    margin-left: 0;
}
.no-gutters > .col,
.no-gutters > [class*="col-"] {
    padding-right: 0;
    padding-left: 0;
}
.box-shadow {
    box-shadow: 10px 10px 40px rgba(73, 139, 170, 0.3019607843);
}
.grid_1_2,
.job-item {
    display: grid;
    grid-template-columns: 1fr 2fr;
}
@media (max-width: 1199px) {
    .grid_1_2,
    .job-item {
        grid-template-columns: 1fr;
    }
    .grid_1_2 .lazyBg,
    .job-item .lazyBg {
        height: 25vh;
        min-height: 300px;
    }
}
.px-0,
header.site-header .container {
    padding-left: 0;
    padding-right: 0;
}
.px-3vw {
    padding-left: 3vw;
    padding-right: 3vw;
}
.py-6 {
    padding-top: 60px;
    padding-bottom: 60px;
}
.pt-6 {
    padding-top: 60px;
}
.pb-6 {
    padding-bottom: 60px;
}
.mt-6 {
    margin-top: 60px;
}
.mb-6 {
    margin-bottom: 60px;
}
@media (max-width: 1199px) {
    .mb-6 {
        margin-bottom: 30px;
    }
}
.bg-white {
    background: #fff;
}
.bg-half-white {
    background: linear-gradient(to bottom, #fff 50%, transparent 50%);
}
.bg-light {
    background: #f6f6f6;
}
figure {
    display: block;
    margin: 0;
}
.h-8 {
    min-height: 800px;
}
@media (max-width: 1024px) {
    .show-md {
        display: none !important;
    }
    .pb-6 {
        padding-bottom: 30px;
    }
    .sm-px-2 {
        padding-left: 20px;
        padding-right: 20px;
    }
    .sm-order-2 {
        order: 2;
    }
}
@media (min-width: 1025px) {
    .hide-md {
        display: none !important;
    }
    .md-bg-white {
        background: #fff;
    }
}
@media (max-width: 1199px) {
    .show-lg {
        display: none !important;
    }
}
@media (max-width: 1400px) {
    .show-xl {
        display: none !important;
    }
}
@media (min-width: 768px) {
    .md-bg-white {
        background: #fff;
    }
}
@media (min-width: 1200px) {
    .hide-lg {
        display: none !important;
    }
    .lg-pt-6 {
        padding-top: 60px;
    }
    .lg-pl-0 {
        padding-left: 0;
    }
    .lg-pr-0 {
        padding-right: 0;
    }
    .lg-bg-white {
        background: #fff;
    }
    .lg-text-center {
        text-align: center;
    }
    .lg-text-right {
        text-align: right;
    }
}
.mb-0 {
    margin-bottom: 0;
}
.mb-3 {
    margin-bottom: 30px !important;
}
.grid-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.fluentform form .ff-el-form-control,
.fluentform form input[type="email"],
.fluentform form input[type="number"],
.fluentform form input[type="password"],
.fluentform form input[type="search"],
.fluentform form input[type="tel"],
.fluentform form input[type="text"],
.fluentform form select,
.fluentform form textarea,
form .ff-el-form-control,
form input[type="email"],
form input[type="number"],
form input[type="password"],
form input[type="search"],
form input[type="tel"],
form input[type="text"],
form select,
form textarea {
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: -0.4px;
    color: #0087c7;
    background: #fff;
    box-shadow: 3px 3px 20px rgba(0, 0, 0, 0.1607843137);
    border-radius: 5px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 100%;
    margin-bottom: 14px;
}
.fluentform form textarea,
form textarea {
    width: 100%;
    resize: none;
    min-height: 150px;
}
.fluentform form .ff-el-group,
form .ff-el-group {
    margin-bottom: 0;
}
.fluentform form .ff_file_upload_holder,
form .ff_file_upload_holder {
    border: 1px solid #ddd;
    margin-top: 20px;
}
.fluentform form .ff_file_upload_holder .ff_upload_btn.ff-btn,
form .ff_file_upload_holder .ff_upload_btn.ff-btn {
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: -0.4px;
    color: #1f2c5f;
    background: 0 0;
}
input::-webkit-inner-spin-button,
input::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
input[type="number"] {
    -moz-appearance: textfield;
}
.ff-el-form-check {
    margin-top: 10px;
}
.ff-el-form-check label.ff_tc_label {
    position: relative;
    padding-left: 45px;
    display: block !important;
}
.ff-el-form-check label.ff_tc_label a,
.ff-el-form-check label.ff_tc_label p {
    font-size: 1.3rem !important;
    letter-spacing: -0.4px;
    color: #fff;
    margin-bottom: 0;
}
.ff-el-form-check label.ff_tc_label a:hover {
    text-decoration: underline;
}
.ff-el-form-check label.ff_tc_label .ff_tc_checkbox {
    position: absolute;
}
.ff-el-form-check label.ff_tc_label:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 20px;
    width: 20px;
    border: none;
    background: #f6f6f6;
    box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.1607843137);
    border-radius: 2px;
    transition: 0.2s all ease-in;
    z-index: 1;
}
.ff-el-form-check label.ff_tc_label > span {
    width: 45px;
}
.ff-el-form-check label.ff_tc_label input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}
.ff-el-form-check.ff_item_selected label.ff_tc_label:after {
    content: "";
    position: absolute;
    border-top: 2px solid #0087c7;
    border-left: 2px solid #0087c7;
    top: 4px;
    left: 7px;
    width: 6px;
    height: 10px;
    transform: rotate(225deg);
    transform-origin: center;
    z-index: 4;
}
.check-field label {
    display: block;
    position: relative;
    padding-left: 40px;
    font-size: 1.3rem;
    font-weight: 400;
    letter-spacing: -0.4px;
    color: #1f2c5f;
}
.check-field label:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 20px;
    width: 20px;
    border: none;
    background: #fff;
    border-radius: 2px;
    transition: 0.2s all ease-in;
    z-index: 1;
}
.check-field input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}
.check-field input[type="checkbox"]:checked ~ label:after {
    content: "";
    background: 0 0;
    position: absolute;
    top: 2px;
    left: 7px;
    width: 6px;
    height: 11px;
    border-left: 2px solid #1f2c5f;
    border-top: 2px solid #1f2c5f;
    transform: rotate(225deg);
    z-index: 1;
}
.check-field--lg {
    display: inline-block;
    margin: 30px auto;
}
.check-field--lg label {
    font-size: 2.5rem;
    font-weight: 500;
    line-height: 20px;
}
@media (max-width: 768px) {
    .check-field--lg label {
        font-size: 1.7rem;
        font-weight: 500;
    }
}
.search-form {
    display: flex;
    margin-right: 50px;
}
.search-form button {
    background: 0 0;
    margin-left: 4px;
    box-shadow: none;
    border: none;
}
.fluentform .ff-message-success {
    border: none;
    text-align: center;
    box-shadow: none;
    color: #1f2c5f;
}
.contact-layer .fluentform .ff-message-success {
    color: #fff;
}
.solutions {
    margin-bottom: 30px;
    background: #fff;
}
.solutions .section-title,
.solutions main header.content-header h2,
.solutions main header.form-header h2,
.solutions main.front .about h1,
.solutions main.front .about h2,
.solutions main.service .services-grid h2,
.solutions main.solution .services-grid h2,
.solutions main.solution section.contact-us header h2,
.solutions main.solution section.process .process-intro h2,
.solutions main.solution section.segments h2,
.solutions section.calculator header h2,
main header.content-header .solutions h2,
main header.form-header .solutions h2,
main.front .about .solutions h1,
main.front .about .solutions h2,
main.service .services-grid .solutions h2,
main.solution .services-grid .solutions h2,
main.solution section.contact-us header .solutions h2,
main.solution section.process .process-intro .solutions h2,
main.solution section.segments .solutions h2,
section.calculator header .solutions h2 {
    padding: 30px;
}
.solutions .tabs .view-all {
    display: inline-flex;
    align-items: center;
    height: 100px;
    padding-left: 4vw;
}
.solutions .tab-links li.tab-link {
    height: 100px;
    border-bottom: 1px solid #f6f6f6;
    display: flex;
    align-items: center;
    padding-left: 4vw;
    cursor: pointer;
    transition: 0.25s all ease-in-out;
}
.solutions .tab-links li.tab-link svg {
    height: 57px;
    width: auto;
    margin-right: 20px;
}
.solutions .tab-links li.tab-link a {
    font-size: 1.7rem;
    font-weight: 500;
    position: relative;
    color: #fff;
    line-height: 1;
    line-height: 1.5;
    color: #0087c7;
    text-decoration: none;
}
.solutions .tab-links li.tab-link a:before {
    content: "";
    background: url(../img/arrow-right-blue.svg) no-repeat center;
    background-size: 15px;
    width: 15px;
    height: 14px;
    position: absolute;
    right: 50px;
    top: 50%;
    transform: translateY(-50%);
    opacity: 0;
    transition: 0.3s all ease-in;
}
.solutions .tab-links li.tab-link a:hover {
    color: #fff;
}
.solutions .tab-links li.tab-link a:before {
    background: url(../img/arrow-right-white.svg) no-repeat center;
}
.solutions .tab-links li.tab-link.active,
.solutions .tab-links li.tab-link:hover {
    background: #1cabe2;
}
.solutions .tab-links li.tab-link.active a,
.solutions .tab-links li.tab-link:hover a {
    color: #fff;
}
.solutions .tab-links li.tab-link.active a:before,
.solutions .tab-links li.tab-link:hover a:before {
    right: -50px;
    opacity: 1;
}
.solutions .tab-links li.tab-link.active svg path,
.solutions .tab-links li.tab-link:hover svg path {
    fill: #fff;
}
@media (max-width: 1199px) {
    .solutions .tab-links li.tab-link.active a:before {
        right: -36px;
        background: url(../img/sm-arrow-right.svg) no-repeat center;
    }
}
@media (min-width: 1200px) {
    .solutions .tab-links {
        height: 80vh;
        max-height: 800px;
        overflow: auto;
    }
    .solutions .tab-links li.tab-link svg {
        margin-right: 36px;
    }
    .solutions .tab-links li.tab-link.active,
    .solutions .tab-links li.tab-link:hover {
        padding-left: 6vw;
    }
}
.solutions .tab-panels .tab-panel {
    display: none;
    position: relative;
}
.solutions .tab-panels .tab-panel:first-of-type {
    display: block;
}
.solutions .tab-panels .tab-panel__content {
    color: #fff;
    z-index: 5;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    position: relative;
    height: 100%;
    width: 100%;
    transition: 0.5s all ease-in-out;
    max-width: 500px;
    max-height: 800px;
    padding: 4vw;
}
.solutions .tab-panels .tab-panel__content:before {
    content: "";
    --gradient-degrees: 210deg;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: transparent conic-gradient(from var(--gradient-degrees) at 50% 50%, rgba(28, 171, 226, 0.9) 0, rgba(0, 135, 199, 0.9) 100%);
    transition: --gradient-degrees 1s ease-out;
}
@media (min-width: 1200px) {
    .solutions .tab-panels .tab-panel__content:hover:before {
        --gradient-degrees: 398deg;
        background: transparent conic-gradient(from var(--gradient-degrees) at 50% 50%, rgba(28, 171, 226, 0.7) 0, rgba(0, 135, 199, 0.7) 100%);
    }
}
.solutions .tab-panels .tab-panel__content:hover {
    max-width: 636px;
    padding: 5vw;
}
.solutions .tab-panels .tab-panel__content > * {
    position: relative;
}
.solutions .tab-panels .tab-panel__content h1,
.solutions .tab-panels .tab-panel__content h2,
.solutions .tab-panels .tab-panel__content h3,
.solutions .tab-panels .tab-panel__content p {
    max-width: 340px;
}
.solutions .tab-panels .tab-panel__content h2 {
    font-size: 3.5rem;
    font-weight: 600;
    color: #f6f6f6;
    margin-bottom: 40px;
}
.solutions .tab-panels .tab-panel__content p {
    font-size: 1.7rem;
    font-weight: 400;
    margin-bottom: 40px;
}
@media (min-width: 1025px) {
    .solutions {
        margin-bottom: 80px;
    }
    .solutions .section-title,
    .solutions main header.content-header h2,
    .solutions main header.form-header h2,
    .solutions main.front .about h1,
    .solutions main.front .about h2,
    .solutions main.service .services-grid h2,
    .solutions main.solution .services-grid h2,
    .solutions main.solution section.contact-us header h2,
    .solutions main.solution section.process .process-intro h2,
    .solutions main.solution section.segments h2,
    .solutions section.calculator header h2,
    main header.content-header .solutions h2,
    main header.form-header .solutions h2,
    main.front .about .solutions h1,
    main.front .about .solutions h2,
    main.service .services-grid .solutions h2,
    main.solution .services-grid .solutions h2,
    main.solution section.contact-us header .solutions h2,
    main.solution section.process .process-intro .solutions h2,
    main.solution section.segments .solutions h2,
    section.calculator header .solutions h2 {
        padding: 4vw 4vw 50px;
    }
}
@media (min-width: 1200px) {
    .solutions .tab-panel {
        height: 80vh;
        max-height: 800px;
        overflow: hidden;
    }
}
.arrow-link,
.contact-layer button.ff-btn-submit,
.page-content form .ff-el-group button.ff-btn-submit,
main.service .faq footer a,
main.service .services-grid .sub-service .item__content a.inquiry,
main.solution .faq footer a,
main.solution .services-grid .sub-service .item__content a.inquiry,
main.solution .text-content a.inquiry {
    position: relative;
    color: #1f2c5f;
    line-height: 1;
    font-size: 2rem;
    font-weight: 600;
}
.arrow-link:before,
.contact-layer button.ff-btn-submit:before,
.page-content form .ff-el-group button.ff-btn-submit:before,
main.service .faq footer a:before,
main.service .services-grid .sub-service .item__content a.inquiry:before,
main.solution .faq footer a:before,
main.solution .services-grid .sub-service .item__content a.inquiry:before,
main.solution .text-content a.inquiry:before {
    content: "";
    background: url(../img/arrow-right-blue.svg) no-repeat center;
    background-size: 15px;
    width: 15px;
    height: 14px;
    position: absolute;
    right: 50px;
    top: 50%;
    transform: translateY(-50%);
    opacity: 0;
    transition: 0.3s all ease-in;
}
.arrow-link:hover,
.contact-layer button.ff-btn-submit:hover,
.page-content form .ff-el-group button.ff-btn-submit:hover,
main.service .faq footer a:hover,
main.service .services-grid .sub-service .item__content a.inquiry:hover,
main.solution .faq footer a:hover,
main.solution .services-grid .sub-service .item__content a.inquiry:hover,
main.solution .text-content a.inquiry:hover {
    color: #1f2c5f;
}
.arrow-link:before,
.contact-layer button.ff-btn-submit:before,
.page-content form .ff-el-group button.ff-btn-submit:before,
main.service .faq footer a:before,
main.service .services-grid .sub-service .item__content a.inquiry:before,
main.solution .faq footer a:before,
main.solution .services-grid .sub-service .item__content a.inquiry:before,
main.solution .text-content a.inquiry:before {
    opacity: 1;
    right: -25px;
}
.arrow-link:hover:before,
.contact-layer button.ff-btn-submit:hover:before,
.page-content form .ff-el-group button.ff-btn-submit:hover:before,
main.service .faq footer a:hover:before,
main.service .services-grid .sub-service .item__content a.inquiry:hover:before,
main.solution .faq footer a:hover:before,
main.solution .services-grid .sub-service .item__content a.inquiry:hover:before,
main.solution .text-content a.inquiry:hover:before {
    right: -30px;
}
.arrow-link--boxed,
.arrow-link--white,
.contact-layer button.ff-btn-submit,
.page-content form .ff-el-group button.ff-btn-submit,
main.calculator .page-content button.ff-btn-submit,
main.contact .form-block button.ff-btn-submit,
main.service .faq footer a,
main.service .services-grid .sub-service .item__content a.inquiry,
main.solution .faq footer a,
main.solution .services-grid .sub-service .item__content a.inquiry,
main.solution .text-content a.inquiry {
    color: #fff;
}
.arrow-link--boxed:before,
.arrow-link--white:before,
.contact-layer button.ff-btn-submit:before,
.page-content form .ff-el-group button.ff-btn-submit:before,
main.calculator .page-content button.ff-btn-submit:before,
main.contact .form-block button.ff-btn-submit:before,
main.service .faq footer a:before,
main.service .services-grid .sub-service .item__content a.inquiry:before,
main.solution .faq footer a:before,
main.solution .services-grid .sub-service .item__content a.inquiry:before,
main.solution .text-content a.inquiry:before {
    background: url(../img/arrow-right-white.svg) no-repeat center;
}
.arrow-link--boxed:hover,
.arrow-link--white:hover,
.contact-layer button.ff-btn-submit:hover,
.page-content form .ff-el-group button.ff-btn-submit:hover,
main.calculator .page-content button.ff-btn-submit:hover,
main.contact .form-block button.ff-btn-submit:hover,
main.service .faq footer a:hover,
main.service .services-grid .sub-service .item__content a.inquiry:hover,
main.solution .faq footer a:hover,
main.solution .services-grid .sub-service .item__content a.inquiry:hover,
main.solution .text-content a.inquiry:hover {
    color: #fff;
}
.arrow-link--boxed,
main.service .services-grid .sub-service .item__content a.inquiry,
main.solution .services-grid .sub-service .item__content a.inquiry,
main.solution .text-content a.inquiry {
    position: relative;
    background: #1cabe2;
    padding: 18px 50px 18px 30px;
}
.arrow-link--boxed:before,
main.service .services-grid .sub-service .item__content a.inquiry:before,
main.solution .services-grid .sub-service .item__content a.inquiry:before,
main.solution .text-content a.inquiry:before {
    right: 20px;
}
.arrow-link--boxed:hover:before,
main.service .services-grid .sub-service .item__content a.inquiry:hover:before,
main.solution .services-grid .sub-service .item__content a.inquiry:hover:before,
main.solution .text-content a.inquiry:hover:before {
    right: 15px;
}
.arrow-link--right {
    display: block;
    text-align: right;
    margin-right: 40px;
}
@media (max-width: 1024px) {
    .arrow-link,
    .contact-layer button.ff-btn-submit,
    .page-content form .ff-el-group button.ff-btn-submit,
    main.service .faq footer a,
    main.service .services-grid .sub-service .item__content a.inquiry,
    main.solution .faq footer a,
    main.solution .services-grid .sub-service .item__content a.inquiry,
    main.solution .text-content a.inquiry {
        font-size: 1.5rem;
        font-weight: 600;
    }
}
.view-more button {
    width: 40px;
    height: 40px;
    background: #1cabe2;
    border: 1px solid transparent;
    box-shadow: none;
    position: relative;
}
.view-more button:after,
.view-more button:before {
    content: "";
    position: absolute;
    background: #fff;
}
.view-more button:after,
.view-more button:before {
    width: 16px;
    height: 2px;
    top: 19px;
    left: 12px;
    transition: 0.3s all ease-in-out;
}
@media (max-width: 1024px) {
    .view-more button {
        width: 30px;
        height: 30px;
    }
    .view-more button:before {
        width: 12px;
        top: 12px;
        left: 8px;
    }
    .view-more button:after {
        height: 13px;
        left: 13px;
        top: 7px;
        width: 2px;
    }
}
@media (min-width: 1200px) {
    .view-more button:after {
        transform: rotate(90deg);
    }
    .view-more button:hover:before {
        transform: rotate(180deg);
    }
    .view-more button:hover:after {
        top: 14px;
        transform: rotate(180deg);
    }
}
footer button {
    font-size: 1.5rem;
    font-weight: 600;
    background: #1cabe2;
    border: 1px solid #1cabe2;
    color: #fff;
    text-align: center;
    padding: 13px 20px;
}
.news-item figure {
    position: relative;
    overflow: hidden;
    height: 25vh;
}
.news-item figure:before {
    --gradient-degrees: 238deg;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: transparent conic-gradient(from var(--gradient-degrees) at 50% 50%, #1f2c5f 0, #0087c7 100%);
    transition: --gradient-degrees 0.5s linear, opacity 0.3s linear;
    z-index: 1;
    opacity: 0;
}
.news-item figure img {
    height: auto;
    width: 100%;
    max-width: 100%;
    transition: 0.3s all ease-in-out;
}
.news-item a {
    display: block;
    height: 100%;
    background: #f8f9fa;
}
.news-item__content {
    padding: 30px 4vw;
    color: #1f2c5f;
}
.news-item__content .date {
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1;
}
.news-item__content h3 {
    font-size: 1.7rem;
    font-weight: 600;
    position: relative;
    transition: 0.25s all ease-in;
    margin-bottom: 30px;
}
.news-item__content h3:before {
    content: "";
    position: absolute;
    top: 7px;
    left: -15px;
    height: 16px;
    width: 16px;
    background: url(../img/arrow-right-blue.svg) no-repeat center;
    background-size: 16px;
    z-index: 1;
    opacity: 0;
    transition: 0.25s all ease-in;
}
.news-item__content h3:before {
    top: 50%;
    transform: translateY(-50%);
}
.news-item__content p {
    color: #4e4e4f;
}
.news-item__content .excerpt {
    max-height: 120px;
    line-height: 1.6;
    overflow: hidden;
}
@media (min-width: 1200px) {
    .news-item figure {
        height: 280px;
    }
    .news-item figure img {
        height: 280px;
        width: 100%;
        object-fit: cover;
        max-width: unset;
    }
    .news-item:hover a {
        background: #fff;
        box-shadow: 10px 10px 30px rgba(73, 139, 170, 0.3019607843);
    }
    .news-item:hover figure:before {
        --gradient-degrees: 398deg;
        opacity: 0.7;
    }
    .news-item:hover img {
        transform: scale(1.1);
    }
    .news-item:hover h3 {
        padding-left: 10px;
    }
    .news-item:hover h3:before {
        opacity: 1;
    }
}
@media (max-width: 1024px) {
    .news-item {
        background: #fff;
    }
    .news-item.box-shadow {
        box-shadow: none;
    }
    .news-item__content {
        padding: 20px;
    }
    .news-item h3 {
        font-size: 1.3rem;
        font-weight: 600;
        margin-bottom: 12px;
    }
    .news-item .date {
        font-size: 1.3rem;
        font-weight: 300;
        color: #0087c7;
    }
}
@media (max-width: 1400px) {
    .news-item__content h2 {
        font-size: clamp(20px, 1.5vw, 25px);
    }
}
.page-links {
    margin-top: 30px;
}
.card {
    display: grid;
    margin-bottom: 30px;
    transition: 0.3s all ease-in-out;
}
.card .card-content {
    padding: 8vh 4vw;
}
.card .card-content h2 {
    position: relative;
    transition: 0.25s all ease-in;
}
.card .card-content h2:before {
    content: "";
    position: absolute;
    top: 7px;
    left: -15px;
    height: 16px;
    width: 16px;
    background: url(../img/arrow-right-blue.svg) no-repeat center;
    background-size: 16px;
    z-index: 1;
    opacity: 0;
    transition: 0.25s all ease-in;
}
.card .card-content p {
    margin: 0;
}
.card a {
    display: block;
}
.card figure {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
@media (max-width: 1024px) {
    .card .card-content h2 {
        font-size: 1.7rem;
        font-weight: 300;
        margin-bottom: 20px;
    }
    .card p {
        font-size: 1.4rem;
        font-weight: 300;
    }
}
@media (max-width: 1400px) {
    .card .card-content {
        padding: 6vh 2vw;
    }
}
@media (min-width: 1024px) {
    .card--horizontal {
        grid-template-columns: 40% 60%;
    }
}
@media (min-width: 1200px) {
    .card:hover {
        box-shadow: 10px 10px 30px rgba(73, 139, 170, 0.3019607843);
        background: #fff;
    }
    .card:hover h2 {
        padding-left: 10px;
    }
    .card:hover h2:before {
        opacity: 1;
    }
}
.breadcrumb {
    font-size: 1.3rem;
    font-weight: 200;
    letter-spacing: -0.4px;
    color: #1f2c5f;
    margin-bottom: 30px;
}
.breadcrumb a {
    font-size: 1.3rem;
    font-weight: 400;
    color: #1f2c5f;
}
.breadcrumb.mobile {
    margin-bottom: 20px;
}
.breadcrumb.mobile a {
    position: relative;
    padding-left: 12px;
}
.breadcrumb.mobile a:before {
    content: "";
    position: absolute;
    top: 5px;
    left: 0;
    border-left: 2px solid #1f2c5f;
    border-top: 2px solid #1f2c5f;
    width: 7px;
    height: 7px;
    transform: rotate(-45deg);
}
main.service .breadcrumb.mobile {
    margin-top: 20px;
}
main.solution .breadcrumb.mobile {
    margin-top: 0;
}
main.blog .breadcrumb.mobile,
main.job .breadcrumb.mobile,
main.product .breadcrumb.mobile,
main.sustainability .breadcrumb.mobile {
    margin-top: 30px;
}
.video-player {
    position: relative;
    cursor: pointer;
}
.video-player .preview,
.video-player iframe,
.video-player video {
    display: block;
    width: 100%;
    height: auto;
    margin-bottom: 30px;
}
.video-player .play-icon {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    width: 100px;
    height: 70px;
    display: flex;
    background: rgba(246, 246, 246, 0.5);
    z-index: 1;
    transition: 0.25s all ease-in-out;
}
.video-player .play-icon span.triangle {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
}
.video-player .play-icon span.triangle:before {
    content: "";
    position: absolute;
    top: 16px;
    left: 40px;
    border: 20px solid transparent;
    border-left: 28px solid #1f2c5f;
}
@media (min-width: 1200px) {
    .video-player .preview,
    .video-player iframe,
    .video-player video {
        min-height: 450px;
    }
    .video-player:hover .play-icon {
        background: rgba(246, 246, 246, 0.7);
    }
}
.sticky-submenu nav ul {
    position: relative;
    padding: 20px;
    margin: 0;
    display: flex;
}
.sticky-submenu nav ul li {
    position: relative;
    padding: 0;
}
.sticky-submenu nav ul li a {
    display: inline-block;
    font-size: 1.5rem;
    font-weight: 600;
    letter-spacing: -0.45px;
    color: #1f2c5f;
    padding: 0 30px;
}
.sticky-submenu nav ul li:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: -20px;
    width: 100%;
    height: 2px;
    background: 0 0;
    transition: 0.25s background ease-in-out;
}
.sticky-submenu nav ul li:first-child a {
    padding: 0 30px 0 0;
}
.sticky-submenu nav ul li.current:before,
.sticky-submenu nav ul li:hover:before {
    background: #0087c7;
}
.sticky-submenu nav ul li.current a,
.sticky-submenu nav ul li:hover a {
    color: #0087c7;
}
@media (max-width: 768px) {
    .sticky-submenu {
        display: none;
    }
}
.pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-bottom: 7vh;
}
.pagination .current {
    font-size: 1.5rem;
    font-weight: 400;
    background: #f6f6f6;
    text-align: center;
    width: 44px;
    height: 44px;
    padding-top: 12px;
}
.pagination a {
    font-size: 1.5rem;
    font-weight: 400;
    display: inline-block;
    color: #1f2c5f;
    margin: 0 30px;
}
.pagination .next,
.pagination .prev {
    width: 17px;
    height: 17px;
}
.pagination .prev {
    background: url(../img/slider-arrow-left.svg) center no-repeat;
}
.pagination .next {
    background: url(../img/slider-arrow-right.svg) center no-repeat;
}
@media (min-width: 1200px) {
    .pagination a:hover {
        transform: translateY(-3px);
    }
}
.job-item {
    margin-top: 30px;
    box-shadow: 10px 10px 30px rgba(73, 139, 170, 0.3);
}
.job-item-desc {
    padding: 30px;
}
.job-item h4 {
    font-size: 1.7rem;
    font-weight: 600;
    color: #1f2c5f;
    margin-bottom: 30px;
}
.job-item p {
    font-size: 1.3rem;
    font-weight: 400;
    line-height: 1.4;
    color: #4e4e4f;
}
@media (min-width: 1200px) {
    .job-item-desc {
        padding: 30px 60px;
    }
}
::-webkit-scrollbar {
    width: 5px;
}
::-webkit-scrollbar-track {
    background: #f1f1f1;
}
::-webkit-scrollbar-thumb {
    background: #1f2c5f;
}
::-webkit-scrollbar-thumb:hover {
    background: #1f2c5f;
}
@media (min-width: 1200px) {
    main.segments aside {
        max-height: 800px;
        overflow: auto;
    }
}
.modal {
    display: none;
    position: fixed;
    z-index: 120;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(197, 198, 200, 0.8);
    text-align: center;
    align-items: center;
}
.modal .modal-content {
    position: relative;
    margin: auto;
    padding: 0;
    width: 90%;
    max-width: 1280px;
}
.modal .modal-content img {
    max-height: 80vh;
    max-width: 100%;
    height: auto;
}
.modal .close {
    position: absolute;
    top: 0;
    right: 0;
    width: 40px;
    height: 40px;
    background: rgba(255, 255, 255, 0.8);
    cursor: pointer;
}
.modal .close:after,
.modal .close:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 24px;
    height: 3px;
    transform: translate(-50%, -50%) rotate(45deg);
    background: #1cabe2;
    transform-origin: center;
}
.modal .close:after {
    transform: translate(-50%, -50%) rotate(-45deg);
}
#galleryModal .modal-content .next,
#galleryModal .modal-content .prev {
    display: block;
    position: absolute;
    top: 50%;
    width: 35px;
    height: 35px;
    background: #1cabe2;
    color: #fff;
    cursor: pointer;
    transform: translateY(-50%);
}
#galleryModal .modal-content .next:after,
#galleryModal .modal-content .prev:after {
    content: "";
    position: absolute;
    top: 13px;
    left: 10px;
    width: 10px;
    height: 10px;
    border-left: 3px solid #fff;
    border-top: 3px solid #fff;
    transform: rotate(135deg);
    transform-origin: center;
    opacity: 0.8;
}
#galleryModal .modal-content .next:hover:after,
#galleryModal .modal-content .prev:hover:after {
    opacity: 1;
}
#galleryModal .modal-content .prev {
    left: 0;
}
#galleryModal .modal-content .prev:after {
    left: 14px;
    transform: rotate(-45deg);
}
#galleryModal .modal-content .next {
    right: 0;
}
#galleryModal .gallery-slide .index {
    position: fixed;
    color: #fff;
    padding: 8px 12px;
    bottom: 0;
    right: 0;
}
main .swiper-container--scrollbar {
    padding-bottom: 120px;
}
main .swiper-container--scrollbar.swiper-container-horizontal > .swiper-scrollbar {
    bottom: 80px;
    left: 0;
    width: calc(100% - 12vw);
    background: rgba(31, 44, 95, 0.2);
    border-radius: 0;
}
main .swiper-container--scrollbar.swiper-container-horizontal > .swiper-scrollbar .swiper-scrollbar-drag {
    background: #1f2c5f;
}
.contact-layer main .swiper-container--scrollbar button.ff-btn-submit,
.page-content form .ff-el-group main .swiper-container--scrollbar button.ff-btn-submit,
main .swiper-container--scrollbar .arrow-link,
main .swiper-container--scrollbar .contact-layer button.ff-btn-submit,
main .swiper-container--scrollbar .page-content form .ff-el-group button.ff-btn-submit,
main.service .faq footer .swiper-container--scrollbar a,
main.service .services-grid .sub-service .item__content .swiper-container--scrollbar a.inquiry,
main.service .swiper-container--scrollbar .faq footer a,
main.service .swiper-container--scrollbar .services-grid .sub-service .item__content a.inquiry,
main.solution .faq footer .swiper-container--scrollbar a,
main.solution .services-grid .sub-service .item__content .swiper-container--scrollbar a.inquiry,
main.solution .swiper-container--scrollbar .faq footer a,
main.solution .swiper-container--scrollbar .services-grid .sub-service .item__content a.inquiry,
main.solution .swiper-container--scrollbar .text-content a.inquiry,
main.solution .text-content .swiper-container--scrollbar a.inquiry {
    position: absolute;
    right: 40px;
    bottom: 72px;
    display: block;
    background: #f6f6f6;
    padding: 0 0 0 4vw;
    z-index: 51;
}
@media (max-width: 1024px) {
    main .swiper-container--scrollbar {
        padding-bottom: 60px;
    }
    main .swiper-container--scrollbar.swiper-container-horizontal > .swiper-scrollbar {
        bottom: 36px;
    }
    .contact-layer main .swiper-container--scrollbar button.ff-btn-submit,
    .page-content form .ff-el-group main .swiper-container--scrollbar button.ff-btn-submit,
    main .swiper-container--scrollbar .arrow-link,
    main .swiper-container--scrollbar .contact-layer button.ff-btn-submit,
    main .swiper-container--scrollbar .page-content form .ff-el-group button.ff-btn-submit,
    main.service .faq footer .swiper-container--scrollbar a,
    main.service .services-grid .sub-service .item__content .swiper-container--scrollbar a.inquiry,
    main.service .swiper-container--scrollbar .faq footer a,
    main.service .swiper-container--scrollbar .services-grid .sub-service .item__content a.inquiry,
    main.solution .faq footer .swiper-container--scrollbar a,
    main.solution .services-grid .sub-service .item__content .swiper-container--scrollbar a.inquiry,
    main.solution .swiper-container--scrollbar .faq footer a,
    main.solution .swiper-container--scrollbar .services-grid .sub-service .item__content a.inquiry,
    main.solution .swiper-container--scrollbar .text-content a.inquiry,
    main.solution .text-content .swiper-container--scrollbar a.inquiry {
        bottom: 30px;
    }
}
.swiper-container .swiper-button-next:after,
.swiper-container .swiper-button-prev:after {
    content: "";
    background-size: 17px;
    width: 17px;
    height: 17px;
}
.swiper-container .swiper-button-next:after {
    background: url(../img/slider-arrow-right.svg) no-repeat center;
}
.swiper-container .swiper-button-prev:after {
    background: url(../img/slider-arrow-left.svg) no-repeat center;
}
@media (min-width: 1200px) {
    .swiper-scrollbar-drag:hover {
        cursor: pointer;
    }
}
@media (max-width: 1199px) {
    .gallery-slider {
        margin: 0 -15px 40px -15px;
    }
}
@media (min-width: 1200px) {
    .gallery-slider {
        height: 600px;
        margin: 60px auto;
        max-width: 1200px;
    }
    .gallery-slider .swiper-slide {
        opacity: 0.25;
        display: flex;
        flex-direction: column;
        height: 100%;
        justify-content: center;
        padding-bottom: 120px;
        padding-top: 100px;
        transform: scale(0.8);
        transition: 0.8s all ease-in-out;
    }
    .gallery-slider .swiper-slide figure {
        margin: 0;
    }
    .gallery-slider .swiper-slide-active {
        padding-top: 60px;
        padding-bottom: 60px;
        opacity: 1;
        z-index: 1;
        transform: scale(1.8);
    }
    .gallery-slider .swiper-slide-active figure img {
        box-shadow: 5px 5px 15px rgba(73, 139, 170, 0.3019607843);
    }
    .gallery-slider .swiper-button-next {
        right: 10%;
    }
    .gallery-slider .swiper-button-prev {
        left: 10%;
    }
}
html {
    width: 100%;
    height: 100%;
    font-size: 62.5%;
}
body,
html {
    scroll-behavior: smooth;
}
body {
    margin: 0;
    padding: 0;
    width: 100%;
    font-size: 15px;
    overflow-x: hidden;
    font-family: "Libre Franklin";
    background: #f6f6f6;
    position: relative;
}
body:before {
    opacity: 0;
    transition: 0.25s opacity ease-in-out;
}
body.layer:before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #c5c6c8;
    opacity: 0.8;
    z-index: 99;
}
@media (max-width: 1024px) {
    body.layer {
        overflow: hidden;
    }
}
* {
    box-sizing: border-box;
}
:focus {
    outline: 0;
}
a {
    text-decoration: none;
    transition: 0.25s all ease-in-out;
}
@media (-webkit-device-pixel-ratio: 1.5) {
    * {
        zoom: 0.96;
    }
}
@media (-webkit-device-pixel-ratio: 1.25) {
    * {
        zoom: 0.98;
    }
}
.preload * {
    -webkit-transition: none !important;
    -moz-transition: none !important;
    -ms-transition: none !important;
    -o-transition: none !important;
}
main {
    margin-top: 65px;
    width: auto;
}
@media (max-width: 1024px) {
    main {
        margin-left: 20px;
        margin-right: 20px;
    }
}
@media (min-width: 1200px) {
    main {
        margin-left: 87px;
        margin-right: 87px;
    }
}
main .header-image {
    margin-bottom: 30px;
}
main.koolituskeskkond .header-image {
    margin-bottom: 0px;
}
@media (min-width: 1200px) {
    main {
        margin-top: 125px;
    }
    main .header-image {
        min-height: 400px;
    }
}
.page-content h1,
.page-content h2,
.page-content h4,
.page-content h5,
.page-content ol,
.page-content p,
.page-content ul {
    margin-bottom: 30px;
}
.page-content h1 {
    font-size: clamp(25px, 2vw, 35px);
    font-weight: 600;
    color: #1f2c5f;
}
.page-content h2 {
    font-size: clamp(20px, 1.5vw, 25px);
    font-weight: 300;
    color: #1f2c5f;
}
.page-content h3 {
    font-size: 2rem;
    font-weight: 600;
    color: #1f2c5f;
    margin-bottom: 40px;
}
.page-content ol,
.page-content p,
.page-content ul {
    font-size: 1.7rem;
    font-weight: 400;
    line-height: 1.5;
    color: #4e4e4f;
}

.page-content ul li {
    position: relative;
    padding-left: 44px;
    padding-bottom: 15px;
}

.page-content ul li:before {
    content: "";
    position: absolute;
    top: 8px;
    left: 0;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #1cabe2;
}

.page-content ul > li ul {
    margin-top: 15px;
}

.page-content ul > li ul li:before {
    background: 0 0;
    border: 1px solid #1cabe2;
}
@media (max-width: 1024px) {

    .page-content ul li {
        padding-left: 25px;
    }
}
.page-content form .ff-el-group input[type="email"],
.page-content form .ff-el-group input[type="text"],
.page-content form .ff-el-group textarea {
    border: none;
    border-bottom: 1px solid #ddd;
    border-radius: 0;
    box-shadow: none;
}
.page-content form .ff-el-group .ff-el-form-check-label.ff_tc_label:before {
    box-shadow: none;
    background: 0 0;
    border: 1px solid #efefef;
    border-radius: 2px;
}
.page-content form .ff-el-group .ff-el-form-check-label .ff_t_c a,
.page-content form .ff-el-group .ff-el-form-check-label .ff_t_c p {
    letter-spacing: -0.4px;
    color: #1f2c5f;
}
.page-content form .ff-el-group .ff-el-form-check.ff_item_selected label.ff_tc_label:after {
    border-color: #1f2c5f;
}
.page-content form .ff-el-group button.ff-btn-submit {
    font-size: 2rem;
    font-weight: 600;
    line-height: 1;
    background: #1cabe2;
    text-transform: none;
    margin-top: 40px;
    border: none;
    padding: 16px 36px;
    padding-right: 65px;
    transform: none;
}
.page-content form .ff-el-group button.ff-btn-submit:before {
    right: 30px;
}
.page-content form .ff-el-group button.ff-btn-submit:hover:before {
    right: 20px;
}
@media (max-width: 1024px) {
    .page-content h1 {
        font-size: 2.2rem;
        font-weight: 600;
    }
    .page-content h2 {
        font-size: 1.7rem;
        font-weight: 300;
    }
    .page-content h3 {
        font-size: 1.7rem;
        font-weight: 400;
    }
    .page-content ol,
    .page-content p,
    .page-content ul {
        font-size: 1.4rem;
        font-weight: 400;
        line-height: 1.35;
    }
    .page-content ol li,
    .page-content ul li {
        padding-left: 20px;
    }
    .page-content ol li:before,
    .page-content ul li:before {
        top: 3px;
    }
}
@media (min-width: 1025px) {
    .page-content .row {
        margin-bottom: 60px;
    }
}
main header.content-header {
    text-align: center;
    color: #1f2c5f;
    padding-top: 30px;
}
main header.content-header h2 {
    margin-bottom: 30px;
}
main header.content-header p {
    color: #1f2c5f;
}
@media (max-width: 1024px) {
    main header.content-header {
        text-align: left;
    }
}
main header.form-header {
    position: relative;
    text-align: center;
}
@media (max-width: 1024px) {
    main header.form-header {
        text-align: left;
        background: #1cabe2;
        padding: 30px;
    }
    main header.form-header h2,
    main header.form-header h3 {
        font-size: 2rem;
        font-weight: 600;
        margin: auto auto 30px;
    }
    main header.form-header h2,
    main header.form-header h3,
    main header.form-header p {
        color: #fff;
    }
    main header.form-header p {
        font-size: 1.8rem;
        font-weight: 300;
    }
    main header.form-header:before {
        content: "";
        position: absolute;
        bottom: -15px;
        right: 50px;
        width: 44px;
        height: 44px;
        background: #1cabe2;
        transform: rotate(45deg);
    }
    main header.form-header h2,
    main header.form-header h3,
    main header.form-header p {
        position: relative;
        color: #fff;
    }
    main header.form-header p {
        margin-bottom: 0;
    }
}
main .numbers {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 570px;
    position: relative;
    color: #fff;
    margin-bottom: 30px;
    padding-bottom: 8vh;
    padding-top: 8vh;
}
main .numbers:before {
    --gradient-degrees: -120deg;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: transparent conic-gradient(from var(--gradient-degrees) at 50% 50%, #1cabe2 0, #0087c7 100%);
    opacity: 0.9;
    transition: --gradient-degrees 1s linear;
}
main .numbers > * {
    position: relative;
}
main .numbers .section-title,
main .numbers header.content-header h2,
main .numbers header.form-header h2,
main .numbers section.calculator header h2,
main header.content-header .numbers h2,
main header.form-header .numbers h2,
main.front .about .numbers h1,
main.front .about .numbers h2,
main.front .numbers .about h1,
main.front .numbers .about h2,
main.service .numbers .services-grid h2,
main.service .services-grid .numbers h2,
main.solution .numbers .services-grid h2,
main.solution .numbers section.contact-us header h2,
main.solution .numbers section.process .process-intro h2,
main.solution .numbers section.segments h2,
main.solution .services-grid .numbers h2,
main.solution section.contact-us header .numbers h2,
main.solution section.process .process-intro .numbers h2,
main.solution section.segments .numbers h2,
section.calculator header main .numbers h2 {
    font-size: 4.2rem;
    font-weight: 600;
    color: #fff;
    width: 100%;
}
@media (max-width: 1199px) {
    main .numbers .section-title,
    main .numbers header.content-header h2,
    main .numbers header.form-header h2,
    main .numbers section.calculator header h2,
    main header.content-header .numbers h2,
    main header.form-header .numbers h2,
    main.front .about .numbers h1,
    main.front .about .numbers h2,
    main.front .numbers .about h1,
    main.front .numbers .about h2,
    main.service .numbers .services-grid h2,
    main.service .services-grid .numbers h2,
    main.solution .numbers .services-grid h2,
    main.solution .numbers section.contact-us header h2,
    main.solution .numbers section.process .process-intro h2,
    main.solution .numbers section.segments h2,
    main.solution .services-grid .numbers h2,
    main.solution section.contact-us header .numbers h2,
    main.solution section.process .process-intro .numbers h2,
    main.solution section.segments .numbers h2,
    section.calculator header main .numbers h2 {
        font-size: 3rem;
    }
}
@media (max-width: 767px) {
    main .numbers .section-title,
    main .numbers header.content-header h2,
    main .numbers header.form-header h2,
    main .numbers section.calculator header h2,
    main header.content-header .numbers h2,
    main header.form-header .numbers h2,
    main.front .about .numbers h1,
    main.front .about .numbers h2,
    main.front .numbers .about h1,
    main.front .numbers .about h2,
    main.service .numbers .services-grid h2,
    main.service .services-grid .numbers h2,
    main.solution .numbers .services-grid h2,
    main.solution .numbers section.contact-us header h2,
    main.solution .numbers section.process .process-intro h2,
    main.solution .numbers section.segments h2,
    main.solution .services-grid .numbers h2,
    main.solution section.contact-us header .numbers h2,
    main.solution section.process .process-intro .numbers h2,
    main.solution section.segments .numbers h2,
    section.calculator header main .numbers h2 {
        font-size: 2.3333333333rem;
        font-size: clamp(12px, 5vw, 60px);
    }
}
main .numbers .number {
    font-size: 4.2rem;
    font-weight: 600;
    margin-bottom: 40px;
}
@media (max-width: 1199px) {
    main .numbers .number {
        font-size: 3rem;
    }
}
@media (max-width: 767px) {
    main .numbers .number {
        font-size: 2.3333333333rem;
        font-size: clamp(12px, 5vw, 60px);
    }
}
main .numbers p {
    font-size: 1.7rem;
    font-weight: 400;
    max-width: 150px;
    margin: auto;
}
main .numbers.visible:before {
    --gradient-degrees: 69deg;
    opacity: 0.7;
}
@media (min-width: 1024px) {
    main .numbers {
        margin-bottom: 60px;
    }
    main .numbers .section-title,
    main .numbers header.content-header h2,
    main .numbers header.form-header h2,
    main .numbers section.calculator header h2,
    main header.content-header .numbers h2,
    main header.form-header .numbers h2,
    main.front .about .numbers h1,
    main.front .about .numbers h2,
    main.front .numbers .about h1,
    main.front .numbers .about h2,
    main.service .numbers .services-grid h2,
    main.service .services-grid .numbers h2,
    main.solution .numbers .services-grid h2,
    main.solution .numbers section.contact-us header h2,
    main.solution .numbers section.process .process-intro h2,
    main.solution .numbers section.segments h2,
    main.solution .services-grid .numbers h2,
    main.solution section.contact-us header .numbers h2,
    main.solution section.process .process-intro .numbers h2,
    main.solution section.segments .numbers h2,
    section.calculator header main .numbers h2 {
        text-align: center;
    }
    main .numbers .row {
        width: 100%;
        max-width: 1400px;
    }
}
@media (max-width: 768px) {
    main .numbers .col {
        flex: 1 0 100%;
        display: flex;
        padding: 50px;
    }
    main .numbers .col .number {
        font-size: 2.5rem;
        font-weight: 600;
        text-align: center;
        width: 50%;
        margin: 0 40px 0 0;
    }
    main .numbers .col p {
        font-size: 1.4rem;
        font-weight: 400;
        text-align: left;
        letter-spacing: -0.4px;
    }
}
.row-media .media-content a {
    display: block;
}
.row-media .media-content .lazyBg {
    height: 100%;
}
.row-media .text-content {
    padding-top: 8vh;
    padding-bottom: 8vh;
}
@media (max-width: 1199px) {
    .row-media .lazyBg {
        min-height: 30vh;
    }
}
@media (min-width: 1200px) {
    .row-media .media-content a {
        height: 100%;
    }
}
@media (max-width: 768px) {
    main .page-content {
        margin-bottom: 30px;
        padding-bottom: 30px;
    }
    main .page-content .text-content {
        padding: 10px 30px;
    }
    main .page-content .media-content {
        padding-left: 0;
        padding-right: 0;
    }
}
@media (min-width: 1024px) and (max-width: 1199px) {
    .contact-layer main .page-content button.ff-btn-submit,
    main .page-content .arrow-link,
    main .page-content .contact-layer button.ff-btn-submit,
    main .page-content form .ff-el-group button.ff-btn-submit,
    main.service .faq footer .page-content a,
    main.service .page-content .faq footer a,
    main.service .page-content .services-grid .sub-service .item__content a.inquiry,
    main.service .services-grid .sub-service .item__content .page-content a.inquiry,
    main.solution .faq footer .page-content a,
    main.solution .page-content .faq footer a,
    main.solution .page-content .services-grid .sub-service .item__content a.inquiry,
    main.solution .page-content .text-content a.inquiry,
    main.solution .services-grid .sub-service .item__content .page-content a.inquiry,
    main.solution .text-content .page-content a.inquiry {
        margin-bottom: 20px;
    }
}
.page-content .text-content img.alignright {
    margin-bottom: 40px;
}
@media (min-width: 1200px) {
    .page-content .text-content img.alignright {
        float: right;
        margin-left: 40px;
    }
}
.top-bar {
    background: #f6f6f6;
    display: flex;
    height: 45px;
    justify-content: flex-end;
    align-items: center;
    padding: 9px 0;
}
.top-bar .search-form {
    margin-right: 0;
}
.top-bar .search-form input[type="search"],
.top-bar .search-form input[type="text"] {
    background: #fff;
    border-radius: 13px;
    height: 26px;
    border: none;
    box-shadow: none;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: -0.3px;
    color: #0087c7;
    width: 200px;
    padding: 10px;
    margin-bottom: 0;
}
.top-bar .search-form button svg .cls-1 {
    fill: none;
}
.top-bar .search-form button svg .cls-2 {
    fill: #1cabe2;
}
.top-bar .wpml-ls-legacy-list-horizontal {
    padding: 0;
    margin-left: 50px;
}
.top-bar a {
    font-size: 1.3rem;
    font-weight: 400;
    line-height: 1.2;
    display: flex;
    align-items: center;
    letter-spacing: -0.39px;
    color: #1f2c5f;
    margin-left: 50px;
}
.top-bar a svg {
    margin-right: 10px;
    height: 15px;
    width: auto;
}
.top-bar a svg .cls-1 {
    fill: none;
}
.top-bar a svg .cls-2 {
    fill: #1cabe2;
}
.top-bar a svg path {
    fill: #1cabe2;
}
@media (max-width: 1249px) {
    .top-bar {
        display: none;
    }
}
@media (min-width: 1250px) {
    .top-bar {
        padding-right: 4.1677vw;
    }
}
nav.side-menu {
    position: fixed;
    left: 0;
    z-index: 10;
}
@media (max-width: 1199px) {
    nav.side-menu {
        bottom: 0;
        width: 100%;
        box-shadow: -5px -5px 20px rgba(73, 139, 170, 0.3019607843);
    }
    nav.side-menu ul {
        display: flex;
        justify-content: space-between;
    }
    nav.side-menu ul li {
        flex: 1 1 50%;
    }
    nav.side-menu ul a {
        font-size: 1rem;
        font-weight: 600;
        text-transform: uppercase;
        color: #1f2c5f;
        display: block;
        width: 100%;
        padding: 15px;
        z-index: 1;
        text-align: center;
    }
    nav.side-menu ul svg {
        margin-right: 10px;
    }
    nav.side-menu ul svg .icon-cls-2 {
        fill: #1cabe2;
    }
    nav.side-menu .address,
    nav.side-menu .email {
        display: none;
    }
    nav.side-menu .phone {
        background: #fff;
        color: #1f2c5f;
    }
    nav.side-menu .inquiry {
        color: #fff;
        z-index: 5;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        position: relative;
        height: 100%;
        width: 100%;
        transition: 0.5s all ease-in-out;
        height: auto;
    }
    nav.side-menu .inquiry:before {
        content: "";
        --gradient-degrees: 210deg;
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        background: transparent conic-gradient(from var(--gradient-degrees) at 50% 50%, #1cabe2 0, #0087c7 100%);
        transition: --gradient-degrees 1s ease-out;
    }
}
@media (max-width: 1199px) and (min-width: 1200px) {
    nav.side-menu .inquiry:hover:before {
        --gradient-degrees: 398deg;
        background: transparent conic-gradient(from var(--gradient-degrees) at 50% 50%, rgba(28, 171, 226, 0.7) 0, rgba(0, 135, 199, 0.7) 100%);
    }
}
@media (max-width: 1199px) {
    nav.side-menu .inquiry span {
        color: #fff;
        margin: auto;
    }
}
@media (min-width: 1200px) {
    nav.side-menu {
        top: 50%;
        width: 55px;
        transform: translateY(-50%);
    }
    nav.side-menu ul li {
        margin-bottom: 10px;
    }
    nav.side-menu ul li a {
        color: #fff;
        z-index: 5;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        position: relative;
        height: 100%;
        width: 100%;
        transition: 0.5s all ease-in-out;
        width: 55px;
        height: 55px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    nav.side-menu ul li a:before {
        content: "";
        --gradient-degrees: 210deg;
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        background: transparent conic-gradient(from var(--gradient-degrees) at 50% 50%, #1cabe2 0, #0087c7 100%);
        transition: --gradient-degrees 1s ease-out;
    }
}
@media (min-width: 1200px) and (min-width: 1200px) {
    nav.side-menu ul li a:hover:before {
        --gradient-degrees: 398deg;
        background: transparent conic-gradient(from var(--gradient-degrees) at 50% 50%, rgba(28, 171, 226, 0.7) 0, rgba(0, 135, 199, 0.7) 100%);
    }
}
@media (min-width: 1200px) {
    nav.side-menu ul li a:before {
        --gradient-degrees: 225deg;
        z-index: -1;
    }
}
@media (min-width: 1200px) {
    nav.side-menu ul li a svg path {
        fill: #fff;
    }
}
@media (min-width: 1200px) {
    nav.side-menu ul li.inquiry a {
        height: 230px;
    }
    nav.side-menu ul li.inquiry a:before {
        --gradient-degrees: 180deg;
    }
    nav.side-menu ul li.inquiry a:hover:before {
        --gradient-degrees: 360deg;
    }
    nav.side-menu ul li.inquiry a span {
        font-size: 1.4rem;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 2.8px;
        line-height: 0.8;
        display: block;
        width: 230px;
        text-align: center;
        transform: rotate(-90deg);
    }
}
@media (min-width: 1200px) {
    nav.side-menu ul li.phone span {
        display: none;
    }
}
@media (min-width: 1200px) {
    .wpml-ls-current-language a {
        color: #1cabe2;
    }
}
header.site-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background: #fff;
    z-index: 99;
    transition: 0.3s all ease-in-out;
}
header.site-header a {
    text-decoration: none;
}
header.site-header .menuTrigger {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 20;
    width: 32px;
    height: 32px;
    margin: 0 auto;
    cursor: pointer;
    display: none;
}
header.site-header .menuTrigger .inner {
    background: #1cabe2;
    box-shadow: 0 -10px #1cabe2, 0 10px #1cabe2;
    height: 2px;
    margin: -6px auto;
    position: relative;
    top: 50%;
    width: 25px;
    transition: 0.25s all ease-in;
}
header.site-header .menuTrigger .inner:after,
header.site-header .menuTrigger .inner:before {
    content: "";
    position: absolute;
    height: 2px;
    width: 0;
    opacity: 0;
    transition: 0.25s opacity ease-in;
}
header.site-header nav ul.menu {
    padding: 0;
    margin: 0;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
}
header.site-header nav ul.menu li {
    position: relative;
}
header.site-header nav ul.menu li a {
    display: block;
    font-size: 1.5rem;
    font-weight: 600;
    letter-spacing: -0.45px;
    color: #1f2c5f;
    transition: 0.25s all ease-in-out;
}
header.site-header nav ul.menu li.mega-menu-item .second-menu a {
    color: #fff;
}
header.site-header nav ul.menu li.mega-menu-item > .sub-menu {
    display: none;
}
header.site-header nav .wpml-ls {
    text-align: right;
    padding: 0;
}
header.site-header nav .wpml-ls ul li a {
    font-size: 1.3rem;
    font-weight: 500;
    color: #1c1c1c;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    padding: 0 0 0 10px;
}
header.site-header nav .wpml-ls ul li.wpml-ls-current-language a {
    color: #1cabe2;
}
header.site-header.is-open {
    transform: none;
    height: 100%;
    overflow-y: visible;
}
header.site-header.is-open .menuTrigger .inner {
    background: 0 0;
    box-shadow: none;
}
header.site-header.is-open .menuTrigger .inner:after,
header.site-header.is-open .menuTrigger .inner:before {
    width: 100%;
    background: #1cabe2;
    top: 0;
    left: 0;
    opacity: 1;
}
header.site-header.is-open .menuTrigger .inner:before {
    transform: rotate(45deg);
}
header.site-header.is-open .menuTrigger .inner:after {
    transform: rotate(-45deg);
}
@media (max-width: 1249px) {
    header.site-header {
        width: 100%;
        height: 65px;
        overflow: hidden;
        padding: 0 20px;
        box-shadow: 5px 5px 20px rgba(73, 139, 170, 0.3);
    }
    header.site-header .menuTrigger {
        display: block;
    }
    header.site-header .row {
        height: 100%;
    }
    header.site-header nav {
        flex-wrap: wrap;
        padding-top: 80px;
        padding-bottom: 20px;
    }
    header.site-header nav .menu-menu-container,
    header.site-header nav .menu-menu-ru-container,
    header.site-header nav .menu-menu-en-container {
        width: 100%;
    }
    body .wpml-ls-legacy-list-horizontal .wpml-ls-item {
        padding: 0 10px;
    }
    header.site-header nav .sub-menu {
        display: none;
    }
    header.site-header nav ul.menu {
        display: none;
        width: 100%;
    }
    header.site-header nav ul.menu li {
        border-bottom: 1px solid #f6f6f6;
    }
    header.site-header nav ul.menu li.menu-item-has-children {
        background: #f6f6f6;
        border-color: #fff;
    }
    header.site-header nav ul.menu li.menu-item-has-children:after {
        content: "";
        position: absolute;
        top: 28px;
        right: 30px;
        width: 8px;
        height: 8px;
        border-top: 2px solid #1cabe2;
        border-left: 2px solid #1cabe2;
        transform: rotate(225deg);
    }
    header.site-header nav ul.menu li.menu-item-has-children .sub-menu a {
        background: #fff;
        padding-left: 40px;
        font-size: 1.3rem;
        font-weight: 500;
    }
    header.site-header nav ul.menu li.menu-item-open:after {
        transform: rotate(45deg);
    }
    header.site-header nav ul.menu li.mega-menu-item {
        background: #f6f6f6;
    }
    header.site-header nav ul.menu li.mega-menu-item:after {
        transform: rotate(135deg);
    }
    header.site-header nav ul.menu a {
        padding: 20px 30px;
    }
    header.site-header .logo {
        position: fixed;
        top: 0;
        left: 0;
        padding-top: 16px;
        padding-bottom: 10px;
        background: #fff;
        overflow: hidden;
        z-index: 10;
    }
    header.site-header .logo img,
    header.site-header .logo svg {
        height: 38px;
        width: auto;
    }
    header.site-header .header-bottom {
        padding-left: 30px;
        padding-right: 30px;
    }
    header.site-header .header-bottom .search-form {
        margin: 40px 0 30px 0;
    }
    header.site-header .header-bottom .search-form input[type="search"],
    header.site-header .header-bottom .search-form input[type="text"] {
        background: #f8f9fa;
        height: 35px;
        border: none;
        border-radius: 0;
        box-shadow: none;
        font-size: 1rem;
        font-weight: 400;
        line-height: 1.2;
        letter-spacing: -0.3px;
        color: #1cabe2;
        width: 100%;
        padding: 12px 20px;
        margin-bottom: 0;
    }
    header.site-header .header-bottom svg .cls-1 {
        fill: none;
    }
    header.site-header .header-bottom svg .cls-2 {
        fill: #1cabe2;
    }
    header.site-header .header-bottom .bottom-links {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        align-items: center;
    }
    header.site-header .header-bottom .bottom-links a.link {
        color: #1f2c5f;
        font-size: 1.2rem;
        font-weight: 600;
    }
    header.site-header .header-bottom .wpml-ls-legacy-list-horizontal a {
        font-size: 1.3rem;
        font-weight: 400;
        padding: 0 0 10px 0;
        letter-spacing: -0.4px;
    }
    header.site-header.scroll {
        box-shadow: 10px 10px 20px rgba(73, 139, 170, 0.3);
    }
    header.site-header.scroll .logo svg {
        transform: translate(-60px, 12px);
    }
    header.site-header.is-open {
        background: #fff;
        height: 100%;
    }
    header.site-header.is-open nav {
        display: flex;
    }
    header.site-header.is-open nav .wpml-ls {
        display: block;
    }
    header.site-header.is-open nav ul.menu {
        display: block;
    }
}
@media (min-width: 1250px) {
    header.site-header {
        width: auto;
    }
}
@media (min-width: 1250px) and (max-width: 1024px) {
    header.site-header {
        margin-left: 20px;
        margin-right: 20px;
    }
}
@media (min-width: 1250px) and (min-width: 1200px) {
    header.site-header {
        margin-left: 87px;
        margin-right: 87px;
    }
}
@media (min-width: 1250px) {
    header.site-header > .row {
        height: 80px;
        align-items: flex-end;
    }
}
@media (min-width: 1250px) {
    header.site-header .logo {
        overflow: hidden;
        margin-bottom: 10px;
    }
    header.site-header .logo svg {
        transition: 0.3s all ease-in;
    }
}
@media (min-width: 1250px) {
    header.site-header nav {
        padding-right: 30px;
    }
}
@media (min-width: 1250px) {
    header.site-header ul.menu {
        align-items: center;
    }
}
@media (min-width: 1250px) {
    header.site-header ul.menu > li > a {
        padding: 0 20px 25px;
        padding-left: 3vw;
    }
    header.site-header ul.menu > li.current-menu-item:not(.mega-menu-item) a,
    header.site-header ul.menu > li.current_page_ancestor:not(.mega-menu-item) a {
        color: #0087c7;
    }
    header.site-header ul.menu > li.current-menu-item > a:hover,
    header.site-header ul.menu > li:hover > a:hover {
        color: #0087c7;
    }
}
@media (min-width: 1250px) {
    header.site-header ul.menu li.menu-item-has-children {
        position: relative;
    }
    header.site-header ul.menu li.menu-item-has-children:before {
        content: "";
        position: absolute;
        top: 5px;
        right: 0;
        border-top: 2px solid #0087c7;
        border-left: 2px solid #0087c7;
        width: 8px;
        height: 8px;
        transform: rotate(225deg);
        transition: 0.25s all ease-in;
    }
    header.site-header ul.menu li.menu-item-has-children:hover:before {
        top: 8px;
        transform: rotate(45deg);
    }
    header.site-header ul.menu li.menu-item-has-children:not(.mega-menu-item) .sub-menu {
        display: none;
        position: absolute;
        top: 100%;
        left: 2vw;
        width: 100%;
        min-width: 240px;
        background: #fff;
        z-index: 10;
        padding: 10px 20px;
    }
    header.site-header ul.menu li.menu-item-has-children:not(.mega-menu-item) .sub-menu li a {
        display: block;
        line-height: 1.5;
        padding-bottom: 10px;
    }
    header.site-header ul.menu li.menu-item-has-children:not(.mega-menu-item):hover .sub-menu {
        display: block;
    }
    header.site-header ul.menu li:last-child a {
        padding-right: 0;
    }
}
@media (min-width: 1250px) {
    header.site-header.scroll {
        margin: auto;
        padding-top: 0;
        padding-bottom: 0;
        box-shadow: 10px 10px 30px rgba(73, 139, 170, 0.3019607843);
    }
    header.site-header.scroll .top-bar {
        display: none;
    }
    header.site-header.scroll .mega-menu {
        top: 80px;
    }
    header.site-header.scroll .logo svg {
        transform: translateY(30px);
    }
}
.site-header nav .mega-menu {
    position: fixed;
    top: 124px;
    left: 0;
    right: 0;
    max-height: calc(100vh - 120px);
    overflow: auto;
    display: none;
    background: #fff;
    z-index: 200;
    width: auto;
}
@media (max-width: 1024px) {
    .site-header nav .mega-menu {
        margin-left: 20px;
        margin-right: 20px;
    }
}
@media (min-width: 1200px) {
    .site-header nav .mega-menu {
        margin-left: 87px;
        margin-right: 87px;
    }
}
@media (min-width: 1250px) {
    .site-header nav .mega-menu__actions {
        display: none;
    }
    .site-header nav .mega-menu .second-menu {
        background: #1cabe2;
        padding: 4vw 3vw;
    }
    .site-header nav .mega-menu .second-menu h2 {
        font-size: 2.5rem;
        font-weight: 600;
        line-height: 1.2;
        color: #fff;
        margin-bottom: 27px;
        padding-bottom: 27px;
        border-bottom: 1px solid #3bc9ff;
    }
    .site-header nav .mega-menu .second-menu ul li {
        font-size: 1.5rem;
        font-weight: 600;
        line-height: 1.25;
        color: #fff;
        padding-bottom: 30px;
        transition: 0.25s all ease-in-out;
    }
    .site-header nav .mega-menu .second-menu ul li:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        background: url(../img/arrow-right-white.svg) no-repeat left center;
        background-size: 16px;
        width: 16px;
        height: 16px;
        opacity: 0;
        transition: 0.25s all ease-in-out;
    }
    .site-header nav .mega-menu .second-menu ul li a {
        display: block;
        font-size: inherit;
        color: inherit;
    }
    .site-header nav .mega-menu .second-menu ul li.active,
    .site-header nav .mega-menu .second-menu ul li:hover {
        position: relative;
        padding-left: 26px;
    }
    .site-header nav .mega-menu .second-menu ul li.active:before,
    .site-header nav .mega-menu .second-menu ul li:hover:before {
        opacity: 1;
    }
    .site-header nav .mega-menu .mega-menu-items {
        padding: 4vw 4vw 0;
        padding-bottom: 20px;
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .site-header nav .mega-menu .mega-menu-items .close {
        position: absolute;
        top: calc(4vw + 14px);
        right: 4vw;
        width: 14px;
        height: 14px;
        cursor: pointer;
    }
    .site-header nav .mega-menu .mega-menu-items .close:after,
    .site-header nav .mega-menu .mega-menu-items .close:before {
        content: "";
        position: absolute;
        width: 100%;
        height: 2px;
        background: #ddd;
        top: 0;
        left: 0;
    }
    .site-header nav .mega-menu .mega-menu-items .close:before {
        transform: rotate(45deg);
    }
    .site-header nav .mega-menu .mega-menu-items .close:after {
        transform: rotate(-45deg);
    }
    .site-header nav .mega-menu .third-menu-title {
        display: none;
        font-size: 2rem;
        font-weight: 600;
        line-height: 1;
        margin-bottom: 30px;
        color: #1f2c5f;
        border-bottom: 1px solid #efefef;
        padding-bottom: 30px;
    }
    .site-header nav .mega-menu .third-menu-title.active {
        display: block;
    }
    .site-header nav .mega-menu .third-menu {
        display: none;
    }
    .site-header nav .mega-menu .third-menu.active {
        display: flex;
        flex-wrap: wrap;
        gap: 40px;
    }
    .site-header nav .mega-menu .third-menu li {
        width: auto;
        max-width: 230px;
        font-size: 1.5rem;
        font-weight: 500;
        line-height: 1.25;
        color: #1f2c5f;
    }
    .site-header nav .mega-menu .third-menu li span {
        min-height: 40px;
        display: inline-block;
    }
    .site-header nav .mega-menu .third-menu li .children {
        margin-top: 12px;
    }
    .site-header nav .mega-menu .third-menu li .children li a {
        font-size: 1.5rem;
        font-weight: 400;
        display: block;
        line-height: 1.1;
        letter-spacing: -0.45px;
        color: #636366;
        padding-bottom: 15px;
    }
    .site-header nav .mega-menu .solutions-menu {
        background: #f6f6f6;
        padding: 30px 4vw;
    }
    .site-header nav .mega-menu .solutions-menu .solutions-title {
        font-size: 1.8rem;
        font-weight: 600;
        color: #1f2c5f;
        margin-bottom: 35px;
    }
    .site-header nav .mega-menu .solutions-menu img,
    .site-header nav .mega-menu .solutions-menu svg {
        width: 57px;
        height: auto;
        margin-right: 10px;
    }
    .site-header nav .mega-menu .solutions-menu a {
        font-size: 1.7rem;
        font-weight: 500;
    }
    .site-header nav .mega-menu .solutions-menu a.primary {
        color: #0087c7;
    }
    .site-header nav .mega-menu .solutions-menu span {
        color: #1cabe2;
    }
    .site-header nav .mega-menu .campaign-area {
        padding-top: 20px;
        border-top: 1px solid #eee;
        margin-top: 30px;
    }
    .site-header nav .mega-menu .campaign-area .campaign-row {
        display: none;
        flex-wrap: wrap;
        background: #1cabe2;
        color: #fff;
    }
    .site-header nav .mega-menu .campaign-area .campaign-row.current {
        display: flex;
    }
    .site-header nav .mega-menu .campaign-area .lazyBg {
        height: auto;
    }
    .site-header nav .mega-menu .campaign-area h2 {
        font-size: 1.7rem;
        font-weight: 600;
        display: flex;
        flex-direction: column;
        justify-content: center;
        border-right: 1px solid #3bc9ff;
        padding-right: 20px;
    }
    .site-header nav .mega-menu .campaign-area h2,
    .site-header nav .mega-menu .campaign-area p {
        margin-top: 32px;
        margin-bottom: 32px;
    }
    .site-header nav .mega-menu .view-all-link {
        font-size: 1.3rem;
        font-weight: 400;
        letter-spacing: -0.4px;
        color: #0087c7;
    }
}
@media (max-width: 1249px) {
    .site-header nav .mega-menu {
        width: 100%;
        height: calc(100% - 240px);
        top: 80px;
        transition: 0.3s all ease-in;
        transform: translateX(100%);
        background: #fff;
        z-index: 100;
        margin-left: 0;
        margin-right: 0;
    }
    .site-header nav .mega-menu .campaign-area,
    .site-header nav .mega-menu .solutions-menu {
        display: none;
    }
    .site-header nav .mega-menu__actions {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-left: 20px;
        margin-right: 20px;
        background: #f8f9fa;
        height: 60px;
    }
    .site-header nav .mega-menu__actions button {
        position: relative;
        flex: 1 1 auto;
        border: none;
        background: 0 0;
        padding: 0 30px;
        font-size: 1.5rem;
        font-weight: 600;
        letter-spacing: -0.45px;
        color: #1f2c5f;
        text-align: left;
    }
    .site-header nav .mega-menu__actions button:before {
        content: "";
        position: absolute;
        top: calc(50% - 4px);
        left: 10px;
        width: 8px;
        height: 8px;
        border-top: 2px solid #1cabe2;
        border-left: 2px solid #1cabe2;
        transform: rotate(-45deg);
    }
    .site-header nav .mega-menu__actions a.view-all {
        font-size: 1.3rem;
        font-weight: 400;
        display: block;
        text-align: right;
        letter-spacing: -0.39px;
        color: #1cabe2;
        padding: 0 20px 0 6px;
    }
    .site-header nav .mega-menu > ul li {
        position: relative;
        font-size: 1.5rem;
        font-weight: 600;
        border-bottom: 1px solid #fff;
    }
    .site-header nav .mega-menu > ul li a {
        display: flex;
        align-items: center;
        text-align: left;
        color: #1f2c5f;
    }
    .site-header nav .mega-menu > ul li.has-children:after {
        content: "";
        position: absolute;
        top: 28px;
        right: 50px;
        width: 8px;
        height: 8px;
        border-top: 2px solid #1cabe2;
        border-left: 2px solid #1cabe2;
        transform: rotate(135deg);
    }
    .site-header nav .mega-menu > ul li.has-children > a {
        padding-left: 50px;
        font-size: 1.5rem;
        font-weight: 500;
    }
    .site-header nav .mega-menu > ul > li {
        display: block;
        border-bottom: 1px solid rgba(31, 44, 95, 0.6);
    }
    .site-header nav .mega-menu ul.children {
        position: fixed;
        top: 140px;
        left: 0;
        width: 100%;
        height: calc(100% - 60px);
        z-index: 20;
        background: #fff;
        transform: translateX(100%);
        transition: 0.25s all ease-in;
    }
    .site-header nav .mega-menu ul.children.active {
        transform: none;
    }
    .site-header nav .mega-menu.open {
        z-index: 101;
        transform: none;
        height: 100%;
        opacity: 1;
    }
}
.contact-layer {
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    background: #fff;
    z-index: 120;
    transform: translateX(-100%);
    transition: 0.4s transform ease-in-out;
}
.contact-layer.is-open {
    right: 0;
    margin: auto;
    transform: none;
    overflow: hidden;
}
.contact-layer .row {
    height: 100%;
    position: relative;
}
.contact-layer .left {
    background: linear-gradient(91deg, rgba(0, 135, 199, 0.8), rgba(28, 171, 226, 0.8));
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: center;
    color: #fff;
    position: relative;
    z-index: 2;
}
.contact-layer .left .text-content {
    width: 100%;
    max-width: 330px;
}
.contact-layer .left h2 {
    font-size: 2.5rem;
    font-weight: 600;
    line-height: 1.25;
    margin-bottom: 22px;
}
.contact-layer .left .close {
    position: absolute;
    top: 10vh;
    right: 5vw;
    background: 0 0;
    border: none;
    box-shadow: none;
}
.contact-layer .left .close:after,
.contact-layer .left .close:before {
    content: "";
    position: absolute;
    width: 15px;
    height: 2px;
    background: #fff;
    top: 0;
    left: 0;
    opacity: 1;
}
.contact-layer .left .close:before {
    transform: rotate(45deg);
}
.contact-layer .left .close:after {
    transform: rotate(-45deg);
}
.contact-layer .left .ff-el-group input,
.contact-layer .left .ff-el-group textarea {
    box-shadow: none;
    border-radius: 0;
}
.contact-layer button.ff-btn-submit {
    font-size: 1.4rem;
    font-weight: 600;
    color: #fff;
    letter-spacing: 2.8px;
    text-transform: uppercase;
    margin-top: 40px;
    border: none;
    background: 0 0;
    transform: translateX(-20px);
}
@media (max-width: 1199px) {
    .contact-layer {
        max-width: unset;
    }
}
@media (min-width: 1200px) {
    .contact-layer {
        top: 40px;
        height: calc(100% - 80px);
    }
}
footer.site-footer {
    position: relative;
    padding-top: 8vh;
    padding-bottom: 30px;
}
footer.site-footer.visible {
    --gradient-degrees: 430deg;
}
footer.site-footer h3 {
    font-size: 2rem;
    font-weight: 600;
    line-height: 1;
    color: #fff;
    margin-bottom: 6vh;
}
footer.site-footer .disclaimer,
footer.site-footer a {
    color: #fff;
}
footer.site-footer .contacts svg .icon-cls-2 {
    fill: #1cabe2;
}
footer.site-footer .socials img,
footer.site-footer .socials svg {
    margin-right: 32px;
}
footer.site-footer .socials .social-links {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.contact-layer footer.site-footer .socials button.ff-btn-submit,
.page-content form .ff-el-group footer.site-footer .socials button.ff-btn-submit,
footer.site-footer .socials .contact-layer button.ff-btn-submit,
footer.site-footer .socials .page-content form .ff-el-group button.ff-btn-submit,
footer.site-footer .socials button.arrow-link {
    padding-right: 40px;
    height: 44px;
    line-height: 0;
}
.contact-layer footer.site-footer .socials button.ff-btn-submit:before,
.page-content form .ff-el-group footer.site-footer .socials button.ff-btn-submit:before,
footer.site-footer .socials .contact-layer button.ff-btn-submit:before,
footer.site-footer .socials .page-content form .ff-el-group button.ff-btn-submit:before,
footer.site-footer .socials button.arrow-link:before {
    right: 10px;
}
footer.site-footer ul li {
    padding-bottom: 15px;
}
footer.site-footer ul li a {
    font-size: 1.5rem;
    font-weight: 500;
    color: #fff;
    text-decoration: none;
    line-height: 1.25;
}
footer.site-footer ul li img,
footer.site-footer ul li svg {
    margin-right: 18px;
    width: 24px;
    height: auto;
}
footer.site-footer ul.contacts li a {
    font-weight: 600;
}
footer.site-footer .disclaimer {
    margin-top: 8vh;
    font-size: 1.3rem;
    font-weight: 400;
    letter-spacing: -0.39px;
}
footer.site-footer .flex-column {
    display: flex;
}
footer.site-footer .logo-slider {
    margin-top: 50px;
    border-top: 1px solid rgba(246, 246, 246, 0.2);
}
footer.site-footer .logo-slider .swiper-wrapper {
    padding-top: 20px;
    align-items: center;
}
footer.site-footer .logo-slider img,
footer.site-footer .logo-slider svg {
    width: auto;
    height: auto;
    max-height: 50px;
    max-width: 100px;
}
footer.site-footer .logo-slider svg,
footer.site-footer .logo-slider svg path {
    fill: #fff;
}
@media (max-width: 1024px) {
    footer.site-footer {
        padding-bottom: 100px;
        background: transparent conic-gradient(from 29deg at 50% 67%, #0087c7 0, #1f2c5f 100%) 0 0 no-repeat padding-box;
    }
    footer.site-footer li.phone {
        display: none;
    }
    footer.site-footer .socials h3 {
        font-size: 1.5rem;
        font-weight: 600;
        margin-bottom: 20px;
        margin-top: 45px;
    }
    footer.site-footer .main-offset {
        margin-left: auto;
        margin-right: auto;
    }
    footer.site-footer .socials img,
    footer.site-footer .socials svg {
        margin-right: 20px;
    }
    footer.site-footer .socials .social-links button,
    footer.site-footer .socials .social-links > a {
        display: inline-block;
        margin-bottom: 20px;
    }
    footer.site-footer .disclaimer {
        margin-top: 40px;
        flex-wrap: nowrap;
        justify-content: space-between;
    }
    footer.site-footer .disclaimer div[class^="col-md"] {
        flex: 1 1 auto;
    }
    footer.site-footer .disclaimer .col-md-14 {
        max-width: 200px;
    }
}
@media (min-width: 1025px) {
    footer.site-footer {
        --gradient-degrees: 244deg;
        background: transparent conic-gradient(from var(--gradient-degrees) at 50% 50%, rgba(31, 44, 95, 0.85) 0, rgba(0, 135, 199, 0.85) 100%);
        transition: --gradient-degrees 0.6s linear;
    }
}
.otgs-development-site-front-end {
    display: none;
}
main .hero-slider {
    width: auto;
    overflow: hidden;
}
@media (max-width: 1024px) {
    main .hero-slider {
        margin-left: 20px;
        margin-right: 20px;
    }
}
@media (min-width: 1200px) {
    main .hero-slider {
        margin-left: 87px;
        margin-right: 87px;
    }
}
main .hero-slider .video-bg iframe,
main .hero-slider .video-bg video {
    position: absolute;
    display: block;
    right: 0;
    bottom: 0;
    min-width: 100%;
    min-height: 100%;
}
main .hero-slider .lazyBg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}
main .hero-slider .swiper-slide {
    height: 100%;
}
main .hero-slider.swiper-container-horizontal > .swiper-scrollbar {
    background: rgba(255, 255, 255, 0.5);
    border-radius: 0;
}
main .hero-slider.swiper-container-horizontal > .swiper-scrollbar .swiper-scrollbar-drag {
    background: #1cabe2;
}
@media (min-width: 1025px) {
    main .hero-slider.swiper-container-horizontal > .swiper-scrollbar {
        left: unset;
        right: 3vw;
        bottom: 40px;
        max-width: 414px;
    }
}
main.front .hero-slider .slide-content {
    padding: 30px 50px;
}
main.front .hero-slider .slide-content > * {
    position: relative;
}
main.front .hero-slider .slide-content h1,
main.front .hero-slider .slide-content h2 {
    font-size: 4.5rem;
    font-weight: 600;
    line-height: 1.1;
    color: #f6f6f6;
}
@media (max-width: 1199px) {
    main.front .hero-slider .slide-content h1,
    main.front .hero-slider .slide-content h2 {
        font-size: 3.2142857143rem;
    }
}
@media (max-width: 767px) {
    main.front .hero-slider .slide-content h1,
    main.front .hero-slider .slide-content h2 {
        font-size: 2.5rem;
        font-size: clamp(12px, 5vw, 60px);
    }
}
main.front .hero-slider .slide-content h1,
main.front .hero-slider .slide-content h2,
main.front .hero-slider .slide-content h3,
main.front .hero-slider .slide-content p {
    max-width: 340px;
    margin-bottom: 40px;
}
main.front .hero-slider .slide-content p {
    font-size: 1.7rem;
    font-weight: 400;
    line-height: 1.5;
}
@media (max-width: 1024px) {
    main.front .hero-slider {
        min-height: 470px;
    }
}
@media (max-width: 1024px) {
    main.front .hero-slider {
        margin: auto;
    }
    main.front .hero-slider figure {
        height: 15vh;
        min-height: 180px;
        overflow: hidden;
    }
    main.front .hero-slider .swiper-slide {
        height: auto;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        position: relative;
    }
    main.front .hero-slider .slide-content {
        background: conic-gradient(from 135deg at 50% 50%, #1cabe2 0, #0087c7 100%);
        color: #fff;
    }
    main.front .hero-slider .slide-content h2 {
        font-size: 2rem;
        font-weight: 600;
    }
    main.front .hero-slider .slide-content p {
        font-size: 1.4rem;
        font-weight: 400;
        max-height: 80px;
        overflow: hidden;
    }
    main.front .hero-slider.swiper-container-horizontal > .swiper-scrollbar {
        left: 10%;
        top: 150px;
        width: 80%;
    }
}
@media (min-width: 1025px) and (max-width: 1199px) {
    main.front .hero-slider figure {
        overflow: hidden;
    }
}
@media (min-width: 1025px) {
    main.front .hero-slider {
        height: 80vh;
        max-height: 820px;
    }
    main.front .hero-slider .slide-content {
        color: #fff;
        z-index: 5;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        position: relative;
        height: 100%;
        width: 100%;
        transition: 0.5s all ease-in-out;
        height: 80vh;
        max-height: 820px;
        max-width: 488px;
        padding: 0 3vw;
    }
    main.front .hero-slider .slide-content:before {
        content: "";
        --gradient-degrees: 210deg;
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        background: transparent conic-gradient(from var(--gradient-degrees) at 50% 50%, rgba(28, 171, 226, 0.9) 0, rgba(0, 135, 199, 0.9) 100%);
        transition: --gradient-degrees 1s ease-out;
    }
}
@media (min-width: 1025px) and (min-width: 1200px) {
    main.front .hero-slider .slide-content:hover:before {
        --gradient-degrees: 398deg;
        background: transparent conic-gradient(from var(--gradient-degrees) at 50% 50%, rgba(28, 171, 226, 0.7) 0, rgba(0, 135, 199, 0.7) 100%);
    }
}
@media (min-width: 1025px) {
    main.front .hero-slider .slide-content:hover {
        max-width: 636px;
        padding: 0 5vw;
    }
}
main.front .services-slider {
    width: auto;
}
@media (max-width: 1024px) {
    main.front .services-slider {
        margin-left: 20px;
        margin-right: 20px;
    }
}
@media (min-width: 1200px) {
    main.front .services-slider {
        margin-left: 87px;
        margin-right: 87px;
    }
}
main.front .about .services-slider h1,
main.front .about .services-slider h2,
main.front .services-slider .about h1,
main.front .services-slider .about h2,
main.front .services-slider .section-title,
main.front .services-slider header.content-header h2,
main.front .services-slider header.form-header h2,
main.front .services-slider main.service .services-grid h2,
main.front .services-slider main.solution .services-grid h2,
main.front .services-slider main.solution section.contact-us header h2,
main.front .services-slider main.solution section.process .process-intro h2,
main.front .services-slider main.solution section.segments h2,
main.front .services-slider section.calculator header h2,
main.front header.content-header .services-slider h2,
main.front header.form-header .services-slider h2,
main.service .services-grid main.front .services-slider h2,
main.solution .services-grid main.front .services-slider h2,
main.solution section.contact-us header main.front .services-slider h2,
main.solution section.process .process-intro main.front .services-slider h2,
main.solution section.segments main.front .services-slider h2,
section.calculator header main.front .services-slider h2 {
    margin: 7vh auto 30px 4vw;
}
main.front .services-slider .swiper-slide {
    height: auto;
}
main.front .services-slider .service-item {
    display: flex;
    flex-direction: column;
}
main.front .services-slider .service-item figure {
    margin: 0;
}
main.front .services-slider .service-item figure img {
    height: 25vw;
}
main.front .services-slider .service-item__content {
    background: #fff;
    padding: 45px;
}
main.front .services-slider .service-item h2 {
    font-size: clamp(20px, 2vw, 25px);
    font-weight: 300;
    color: #1f2c5f;
    margin-bottom: 30px;
}
main.front .services-slider .service-item p {
    font-size: 1.7rem;
    font-weight: 400;
    line-height: 1.5;
    color: #4e4e4f;
}
@media (max-width: 1023px) {
    main.front .about .services-slider h1,
    main.front .about .services-slider h2,
    main.front .services-slider .about h1,
    main.front .services-slider .about h2,
    main.front .services-slider .section-title,
    main.front .services-slider header.content-header h2,
    main.front .services-slider header.form-header h2,
    main.front .services-slider main.service .services-grid h2,
    main.front .services-slider main.solution .services-grid h2,
    main.front .services-slider main.solution section.contact-us header h2,
    main.front .services-slider main.solution section.process .process-intro h2,
    main.front .services-slider main.solution section.segments h2,
    main.front .services-slider section.calculator header h2,
    main.front header.content-header .services-slider h2,
    main.front header.form-header .services-slider h2,
    main.service .services-grid main.front .services-slider h2,
    main.solution .services-grid main.front .services-slider h2,
    main.solution section.contact-us header main.front .services-slider h2,
    main.solution section.process .process-intro main.front .services-slider h2,
    main.solution section.segments main.front .services-slider h2,
    section.calculator header main.front .services-slider h2 {
        margin: 30px 0;
    }
}
@media (max-width: 1199px) {
    main.front .services-slider .service-item figure img {
        height: 40vw;
    }
    main.front .services-slider .service-item__content {
        padding: 20px;
    }
    main.front .services-slider .service-item__content h2 {
        font-size: 1.7rem;
        font-weight: 300;
    }
    main.front .services-slider .service-item__content p {
        font-size: 1.2rem;
        font-weight: 300;
        color: #4e4e4f;
    }
}
main.front .about h1,
main.front .about h2 {
    margin-bottom: 60px;
}
main.front .about h3 {
    font-size: 2.5rem;
    font-weight: 600;
    color: #1f2c5f;
}
main.front .about-content {
    margin-bottom: 50px;
}
main.front .about a.view-all {
    display: inline-block;
    transform: translateX(-35px);
}
main.front .about a.view-all:before {
    right: -10px;
}
@media (max-width: 1199px) {
    main.front .about {
        margin-bottom: 30px;
    }
    main.front .about .main-offset {
        margin-right: calc(-0.5 * var(--bs-gutter-x));
        margin-left: calc(-0.5 * var(--bs-gutter-x));
    }
    main.front .about .section-title,
    main.front .about h1,
    main.front .about h2,
    main.front .about main.solution section.contact-us header h2,
    main.front .about main.solution section.process .process-intro h2,
    main.front .about main.solution section.segments h2,
    main.solution section.contact-us header main.front .about h2,
    main.solution section.process .process-intro main.front .about h2,
    main.solution section.segments main.front .about h2 {
        margin-bottom: 0;
        padding: 30px 10px 60px;
        position: relative;
    }
    main.front .about .section-title:before,
    main.front .about h1:before,
    main.front .about h2:before,
    main.front .about main.solution section.contact-us header h2:before,
    main.front .about main.solution section.process .process-intro h2:before,
    main.front .about main.solution section.segments h2:before,
    main.solution section.contact-us header main.front .about h2:before,
    main.solution section.process .process-intro main.front .about h2:before,
    main.solution section.segments main.front .about h2:before {
        content: "";
        position: absolute;
        bottom: 30px;
        width: calc(100% + 30px);
        height: 1px;
        left: -15px;
        background: #ddd;
        z-index: 1;
    }
    main.front .about .about-block,
    main.front .about .jobs-block {
        padding-left: 30px;
        padding-right: 30px;
        margin-bottom: 30px;
    }
    main.front .about .about-block {
        padding-bottom: 30px;
        border-bottom: 1px solid #ddd;
    }
    main.front .about .about-block .about-link {
        text-align: right;
        padding-right: 30px;
    }
    main.front .about .jobs-block a.view-all {
        margin-top: 30px;
    }
    main.front .about .jobs-block a.view-all:before {
        right: -35px;
    }
    main.front .about .job-desc {
        padding: 30px;
    }
    main.front .about .job h4 {
        font-size: 1.3rem;
        font-weight: 600;
    }
    main.front .about .job p {
        font-size: 1.3rem;
        font-weight: 400;
    }
}
@media (min-width: 1200px) {
    main.front .about {
        padding-top: 68px;
        padding-bottom: 400px;
        background: #fff;
    }
    main.front .about .about-content p {
        font-size: 1.7rem;
        font-weight: 400;
        line-height: 1.5;
    }
    main.front .about .has-border {
        border-bottom: 1px solid #f6f6f6;
        margin-bottom: 30px;
    }
}
main.front .numbers {
    width: auto;
}
@media (max-width: 1024px) {
    main.front .numbers {
        margin-left: 20px;
        margin-right: 20px;
    }
}
@media (min-width: 1200px) {
    main.front .numbers {
        margin-left: 87px;
        margin-right: 87px;
    }
}
@media (min-width: 1200px) {
    main.front .numbers {
        transform: translateY(-300px);
        margin-bottom: -220px;
    }
}
@media (max-width: 1199px) {
    main.front .news {
        margin-bottom: 30px;
    }
    main.front .news .news-item a {
        background: #fff;
    }
    main.front .news .main-offset {
        margin-right: calc(-0.5 * var(--bs-gutter-x));
        margin-left: calc(-0.5 * var(--bs-gutter-x));
    }
    main.front .about .news h1,
    main.front .about .news h2,
    main.front .news .about h1,
    main.front .news .about h2,
    main.front .news .section-title,
    main.front .news header.content-header h2,
    main.front .news header.form-header h2,
    main.front .news main.service .services-grid h2,
    main.front .news main.solution .services-grid h2,
    main.front .news main.solution section.contact-us header h2,
    main.front .news main.solution section.process .process-intro h2,
    main.front .news main.solution section.segments h2,
    main.front .news section.calculator header h2,
    main.front header.content-header .news h2,
    main.front header.form-header .news h2,
    main.service .services-grid main.front .news h2,
    main.solution .services-grid main.front .news h2,
    main.solution section.contact-us header main.front .news h2,
    main.solution section.process .process-intro main.front .news h2,
    main.solution section.segments main.front .news h2,
    section.calculator header main.front .news h2 {
        margin: 30px 20px;
    }
    main.front .news .lazyBg,
    main.front .news figure {
        display: none;
    }
    main.front .news .row {
        background: #fff;
    }
    main.front .news .row div[class^="col-"] {
        padding-left: 0;
        padding-right: 0;
    }
    main.front .news .news-item {
        border-bottom: 1px solid #ddd;
    }
    main.front .news .news-item__content {
        padding-left: 30px;
    }
    main.front .news .main-news {
        border-top: 1px solid #ddd;
    }
    main.front .news .other-news a {
        grid-template-columns: 100%;
        margin-bottom: 0;
    }
    .contact-layer main.front .news button.ff-btn-submit,
    .page-content form .ff-el-group main.front .news button.ff-btn-submit,
    main.front .news .arrow-link,
    main.front .news .contact-layer button.ff-btn-submit,
    main.front .news .page-content form .ff-el-group button.ff-btn-submit,
    main.front .news main.service .faq footer a,
    main.front .news main.service .services-grid .sub-service .item__content a.inquiry,
    main.front .news main.solution .faq footer a,
    main.front .news main.solution .services-grid .sub-service .item__content a.inquiry,
    main.front .news main.solution .text-content a.inquiry,
    main.service .faq footer main.front .news a,
    main.service .services-grid .sub-service .item__content main.front .news a.inquiry,
    main.solution .faq footer main.front .news a,
    main.solution .services-grid .sub-service .item__content main.front .news a.inquiry,
    main.solution .text-content main.front .news a.inquiry {
        padding: 30px 0 30px 30px;
        display: inline-block;
        transform: translateX(-35px);
        margin-right: 20px;
    }
}
@media (min-width: 1200px) {
    main.front .news {
        background: #fff;
        padding-top: 68px;
        padding-bottom: 80px;
    }
    main.front .about .news h1,
    main.front .about .news h2,
    main.front .news .about h1,
    main.front .news .about h2,
    main.front .news .section-title,
    main.front .news header.content-header h2,
    main.front .news header.form-header h2,
    main.front .news main.service .services-grid h2,
    main.front .news main.solution .services-grid h2,
    main.front .news main.solution section.contact-us header h2,
    main.front .news main.solution section.process .process-intro h2,
    main.front .news main.solution section.segments h2,
    main.front .news section.calculator header h2,
    main.front header.content-header .news h2,
    main.front header.form-header .news h2,
    main.service .services-grid main.front .news h2,
    main.solution .services-grid main.front .news h2,
    main.solution section.contact-us header main.front .news h2,
    main.solution section.process .process-intro main.front .news h2,
    main.solution section.segments main.front .news h2,
    section.calculator header main.front .news h2 {
        margin-bottom: 12vh;
    }
    main.front .news figure img {
        width: 100%;
        object-fit: cover;
    }
    main.front .news .other-news .news-item a {
        display: flex;
        justify-content: space-between;
        align-items: center;
        height: 265px;
        overflow: hidden;
    }
    main.front .news .other-news .news-item a figure {
        width: 18vw;
        flex: 1 0 auto;
        height: 100%;
        object-fit: cover;
    }
    main.front .news .other-news .news-item {
        margin-bottom: 30px;
    }
    main.front .news .other-news .news-item:last-of-type {
        margin-bottom: 0;
    }
    main.front .news .other-news p {
        font-size: 1.3rem;
        font-weight: 400;
        line-height: 1.4;
    }
    .contact-layer main.front .news button.ff-btn-submit,
    .page-content form .ff-el-group main.front .news button.ff-btn-submit,
    main.front .news .arrow-link,
    main.front .news .contact-layer button.ff-btn-submit,
    main.front .news .page-content form .ff-el-group button.ff-btn-submit,
    main.front .news main.service .faq footer a,
    main.front .news main.service .services-grid .sub-service .item__content a.inquiry,
    main.front .news main.solution .faq footer a,
    main.front .news main.solution .services-grid .sub-service .item__content a.inquiry,
    main.front .news main.solution .text-content a.inquiry,
    main.service .faq footer main.front .news a,
    main.service .services-grid .sub-service .item__content main.front .news a.inquiry,
    main.solution .faq footer main.front .news a,
    main.solution .services-grid .sub-service .item__content main.front .news a.inquiry,
    main.solution .text-content main.front .news a.inquiry {
        margin-top: 30px;
    }
}
@media (min-width: 1400px) {
    main.front .news .other-news .news-item a {
        height: 250px;
    }
}
@media (min-width: 1200px) {
    main.front .main-news .news-item {
        height: 100%;
    }
    main.front .main-news figure,
    main.front .main-news img {
        height: 400px;
    }
    main.front .main-news p {
        font-size: 1.7rem;
        font-weight: 400;
    }
    main.front .other-news figure {
        height: 225px;
        overflow: hidden;
    }
}
main.service .page-content,
main.koolituskeskkond .page-content {
    width: auto;
}
@media (max-width: 1024px) {
    main.service .page-content,
    main.koolituskeskkond .page-content {
        margin-left: 20px;
        margin-right: 20px;
    }
}
@media (min-width: 1200px) {
    main.service .page-content,
    main.koolituskeskkond .page-content {
        margin-left: 87px;
        margin-right: 87px;
    }
}
@media (min-width: 769px) and (max-width: 1024px) {
    main.service .page-content,
    main.koolituskeskkond .page-content {
        padding-bottom: 24px;
    }
}
@media (min-width: 1024px) and (max-width: 1199px) {
    main.service > .bg-white.container-lg,
    main.service > .bg-white.container-md,
    main.service > .bg-white.container-sm,
    main.service > .bg-white.container-xl,
    main.service > .bg-white.container-xxl,
    main.service > .container-fluid.bg-white {
        padding-top: 30px;
    }
}
main.service .post-blocks {
    margin: 60px auto;
}
main.service .post-blocks .post-block {
    width: 100%;
    border: 1px solid #f6f6f6;
    padding: 30px;
    background: #fff;
    margin-bottom: 20px;
}
main.front .about main.service .post-blocks .post-block h1,
main.front .about main.service .post-blocks .post-block h2,
main.service .post-blocks .post-block .section-title,
main.service .post-blocks .post-block .services-grid h2,
main.service .post-blocks .post-block header.content-header h2,
main.service .post-blocks .post-block header.form-header h2,
main.service .post-blocks .post-block main.front .about h1,
main.service .post-blocks .post-block main.front .about h2,
main.service .post-blocks .post-block main.solution section.contact-us header h2,
main.service .post-blocks .post-block main.solution section.process .process-intro h2,
main.service .post-blocks .post-block main.solution section.segments h2,
main.service .post-blocks .post-block section.calculator header h2,
main.service .services-grid .post-blocks .post-block h2,
main.service header.content-header .post-blocks .post-block h2,
main.service header.form-header .post-blocks .post-block h2,
main.solution .services-grid main.service .post-blocks .post-block h2,
main.solution section.contact-us header main.service .post-blocks .post-block h2,
main.solution section.process .process-intro main.service .post-blocks .post-block h2,
main.solution section.segments main.service .post-blocks .post-block h2,
section.calculator header main.service .post-blocks .post-block h2 {
    margin-bottom: 60px;
}
@media (min-width: 1200px) {
    main.service .post-blocks {
        display: flex;
        gap: 30px;
    }
    main.service .post-blocks .post-block {
        width: 50%;
        padding: 4vw;
    }
    main.service .post-blocks .post-block .lazyBg,
    main.service .post-blocks .post-block img {
        height: 225px;
        width: auto;
    }
    main.service .post-blocks .post-block img {
        max-height: 225px;
        width: 100%;
        max-width: unset;
        object-fit: cover;
    }
    main.service .post-blocks .post-block:first-of-type {
        padding-left: calc(4vw + 87px);
    }
    main.service .post-blocks .post-block:last-of-type {
        padding-right: calc(4vw + 87px);
    }
}
main.service .post-slider article {
    display: grid;
    grid-template-columns: 45% 55%;
}
main.service .post-slider article .post-content {
    padding: 20px 50px 70px;
}
main.service .post-slider article .post-content p {
    font-size: 1.3rem;
    font-weight: 400;
    line-height: 1.4;
    color: #4e4e4f;
}
main.service .post-slider article .post-content p.date {
    color: #1f2c5f;
    margin-bottom: 10px;
}
main.service .post-slider article .post-content p.excerpt {
    height: 75px;
    overflow: hidden;
}
main.service .post-slider article .post-content h3 {
    font-size: 1.7rem;
    font-weight: 600;
    line-height: 1.5;
    color: #1f2c5f;
    margin-bottom: 16px;
}
main.service .post-slider .swiper-button-next,
main.service .post-slider .swiper-button-prev {
    bottom: 20px;
    top: unset;
}
main.service .post-slider .swiper-button-next {
    left: calc(45% + 100px);
}
main.service .post-slider .swiper-button-prev {
    left: calc(45% + 50px);
}
@media (max-width: 1199px) {
    main.service .post-slider article {
        grid-template-columns: 1fr;
    }
    main.service .post-slider article .post-content {
        padding: 25px 25px 70px;
    }
    main.service .post-slider article .lazyBg {
        height: 1px;
        padding-bottom: 50%;
        width: 100%;
    }
    main.service .post-slider .swiper-button-prev {
        left: 33%;
    }
    main.service .post-slider .swiper-button-next {
        right: 33%;
        left: unset;
    }
}
@media (min-width: 1200px) and (max-width: 1500px) {
    main.service .post-slider article {
        grid-template-columns: 1fr;
    }
    main.service .post-slider .swiper-button-prev {
        left: 35%;
    }
    main.service .post-slider .swiper-button-next {
        right: 35%;
        left: unset;
    }
}
main.service .services-grid {
    margin-bottom: 30px;
}
@media (min-width: 1200px) {
    main.service .page-content .text-content {
        padding: 60px 4vw;
    }
}
main.front .about main.solution h2,
main.service .services-grid main.solution h2,
main.solution .services-grid h2,
main.solution h2.section-title,
main.solution header.content-header h2,
main.solution header.form-header h2,
main.solution main.front .about h2,
main.solution main.service .services-grid h2,
main.solution section.calculator header h2,
main.solution section.contact-us header h2,
main.solution section.process .process-intro h2,
main.solution section.segments h2,
section.calculator header main.solution h2 {
    margin-top: 30px;
    margin-bottom: 60px;
}
main.solution .text-content a.inquiry {
    display: inline-block;
    margin-right: 0;
}
main.solution .text-content a.inquiry:hover {
    color: #fff;
}
main.solution .text-content a.inquiry:hover:before {
    right: 10px;
}
@media (min-width: 1200px) {
    main.solution .services-grid {
        margin-bottom: 9vh;
    }
}
@media (min-width: 1200px) {
    main.calculator .services-grid {
        margin-bottom: 0;
    }
    main.calculator header.content-header {
        margin-bottom: 60px;
    }
    main.calculator header.content-header h2 {
        margin-bottom: 30px;
    }
}
main.service,
main.solution,
main.koolituskeskkond {
    margin: 80px auto auto;
}
@media (min-width: 1200px) {
    main.service,
    main.solution,
    main.koolituskeskkond {
        margin: 135px auto auto;
    }
}
main.service .services-grid,
main.solution .services-grid {
    margin-top: 60px;
    width: auto;
}
@media (max-width: 1024px) {
    main.service .services-grid,
    main.solution .services-grid {
        margin-left: 20px;
        margin-right: 20px;
    }
}
@media (min-width: 1200px) {
    main.service .services-grid,
    main.solution .services-grid {
        margin-left: 87px;
        margin-right: 87px;
    }
}
main.service .services-grid .sub-service,
main.solution .services-grid .sub-service {
    display: flex;
    flex-wrap: wrap;
    box-shadow: 10px 10px 30px rgba(73, 139, 170, 0.3019607843);
    margin-bottom: 30px;
    overflow: hidden;
}
main.service .services-grid .sub-service .item__header,
main.solution .services-grid .sub-service .item__header {
    position: relative;
    padding: 6vh 4vw;
    padding-bottom: 80px;
}
main.service .services-grid .sub-service .item__header h2,
main.service .services-grid .sub-service .item__header h3,
main.solution .services-grid .sub-service .item__header h2,
main.solution .services-grid .sub-service .item__header h3 {
    font-size: clamp(20px, 1.5vw, 25px);
    font-weight: 300;
    margin-bottom: 30px;
    color: #1f2c5f;
}
main.service .services-grid .sub-service .item__header p,
main.solution .services-grid .sub-service .item__header p {
    color: #4e4e4f;
    margin-bottom: 0;
    font-size: clamp(14px, 1vw, 17px);
}
main.service .services-grid .sub-service .item__header .view-more,
main.solution .services-grid .sub-service .item__header .view-more {
    position: absolute;
    bottom: 25px;
    left: 4vw;
    text-align: right;
    width: calc(100% - 6vw);
}
main.service .services-grid .sub-service .item__header .view-more:before,
main.solution .services-grid .sub-service .item__header .view-more:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: calc(100% - 54px);
    height: 1px;
    background: #efefef;
}
main.service .services-grid .sub-service .item__content,
main.solution .services-grid .sub-service .item__content {
    padding: 5vh 4vw;
    display: none;
}
main.service .services-grid .sub-service .item__content a.inquiry:hover,
main.solution .services-grid .sub-service .item__content a.inquiry:hover {
    color: #fff;
}
main.service .services-grid .sub-service .item__content a.inquiry:hover:before,
main.solution .services-grid .sub-service .item__content a.inquiry:hover:before {
    right: 10px;
}
main.service .services-grid .sub-service .item__content ol li,
main.service .services-grid .sub-service .item__content ul li,
main.solution .services-grid .sub-service .item__content ol li,
main.solution .services-grid .sub-service .item__content ul li {
    position: relative;
    padding-left: 44px;
    padding-bottom: 15px;
}
main.service .services-grid .sub-service .item__content ol li:before,
main.service .services-grid .sub-service .item__content ul li:before,
main.solution .services-grid .sub-service .item__content ol li:before,
main.solution .services-grid .sub-service .item__content ul li:before {
    content: "";
    position: absolute;
    top: 8px;
    left: 0;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #1cabe2;
}
main.service .services-grid .sub-service .item__content ol > li ul,
main.service .services-grid .sub-service .item__content ul > li ul,
main.solution .services-grid .sub-service .item__content ol > li ul,
main.solution .services-grid .sub-service .item__content ul > li ul {
    margin-top: 15px;
}
main.service .services-grid .sub-service .item__content ol > li ul li:before,
main.service .services-grid .sub-service .item__content ul > li ul li:before,
main.solution .services-grid .sub-service .item__content ol > li ul li:before,
main.solution .services-grid .sub-service .item__content ul > li ul li:before {
    background: 0 0;
    border: 1px solid #1cabe2;
}
@media (max-width: 1024px) {
    main.service .services-grid .sub-service .item__content ol li,
    main.service .services-grid .sub-service .item__content ul li,
    main.solution .services-grid .sub-service .item__content ol li,
    main.solution .services-grid .sub-service .item__content ul li {
        padding-left: 25px;
    }
}
main.service .services-grid .sub-service .item__actions,
main.solution .services-grid .sub-service .item__actions {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    margin-top: 50px;
}
.contact-layer main.service .services-grid .sub-service .item__actions button.view-more.ff-btn-submit,
.contact-layer main.solution .services-grid .sub-service .item__actions button.view-more.ff-btn-submit,
.page-content form .ff-el-group main.service .services-grid .sub-service .item__actions button.view-more.ff-btn-submit,
.page-content form .ff-el-group main.solution .services-grid .sub-service .item__actions button.view-more.ff-btn-submit,
main.service .faq footer .services-grid .sub-service .item__actions a.view-more,
main.service .services-grid .sub-service .item__actions .contact-layer button.view-more.ff-btn-submit,
main.service .services-grid .sub-service .item__actions .faq footer a.view-more,
main.service .services-grid .sub-service .item__actions .item__content a.view-more.inquiry,
main.service .services-grid .sub-service .item__actions .page-content form .ff-el-group button.view-more.ff-btn-submit,
main.service .services-grid .sub-service .item__actions .view-more.arrow-link,
main.service .services-grid .sub-service .item__actions main.solution .text-content a.view-more.inquiry,
main.service .services-grid .sub-service .item__content .item__actions a.view-more.inquiry,
main.solution .faq footer .services-grid .sub-service .item__actions a.view-more,
main.solution .services-grid .sub-service .item__actions .contact-layer button.view-more.ff-btn-submit,
main.solution .services-grid .sub-service .item__actions .faq footer a.view-more,
main.solution .services-grid .sub-service .item__actions .item__content a.view-more.inquiry,
main.solution .services-grid .sub-service .item__actions .page-content form .ff-el-group button.view-more.ff-btn-submit,
main.solution .services-grid .sub-service .item__actions .text-content a.view-more.inquiry,
main.solution .services-grid .sub-service .item__actions .view-more.arrow-link,
main.solution .services-grid .sub-service .item__content .item__actions a.view-more.inquiry,
main.solution .text-content .services-grid .sub-service .item__actions a.view-more.inquiry {
    color: #0087c7;
}
.contact-layer main.service .services-grid .sub-service .item__actions button.view-more.ff-btn-submit:before,
.contact-layer main.solution .services-grid .sub-service .item__actions button.view-more.ff-btn-submit:before,
.page-content form .ff-el-group main.service .services-grid .sub-service .item__actions button.view-more.ff-btn-submit:before,
.page-content form .ff-el-group main.solution .services-grid .sub-service .item__actions button.view-more.ff-btn-submit:before,
main.service .faq footer .services-grid .sub-service .item__actions a.view-more:before,
main.service .services-grid .sub-service .item__actions .contact-layer button.view-more.ff-btn-submit:before,
main.service .services-grid .sub-service .item__actions .faq footer a.view-more:before,
main.service .services-grid .sub-service .item__actions .item__content a.view-more.inquiry:before,
main.service .services-grid .sub-service .item__actions .page-content form .ff-el-group button.view-more.ff-btn-submit:before,
main.service .services-grid .sub-service .item__actions .view-more.arrow-link:before,
main.service .services-grid .sub-service .item__actions main.solution .text-content a.view-more.inquiry:before,
main.service .services-grid .sub-service .item__content .item__actions a.view-more.inquiry:before,
main.solution .faq footer .services-grid .sub-service .item__actions a.view-more:before,
main.solution .services-grid .sub-service .item__actions .contact-layer button.view-more.ff-btn-submit:before,
main.solution .services-grid .sub-service .item__actions .faq footer a.view-more:before,
main.solution .services-grid .sub-service .item__actions .item__content a.view-more.inquiry:before,
main.solution .services-grid .sub-service .item__actions .page-content form .ff-el-group button.view-more.ff-btn-submit:before,
main.solution .services-grid .sub-service .item__actions .text-content a.view-more.inquiry:before,
main.solution .services-grid .sub-service .item__actions .view-more.arrow-link:before,
main.solution .services-grid .sub-service .item__content .item__actions a.view-more.inquiry:before,
main.solution .text-content .services-grid .sub-service .item__actions a.view-more.inquiry:before {
    background-image: url(../img/arrow-right-primary.svg);
}
main.service .services-grid .sub-service--expanded .item__header,
main.solution .services-grid .sub-service--expanded .item__header {
    padding-bottom: 6vh;
    font-size: 1.7rem;
    font-weight: 400;
}
main.service .services-grid .sub-service--expanded .view-more,
main.solution .services-grid .sub-service--expanded .view-more {
    display: none;
}
main.service .services-grid .sub-service--expanded .item__content,
main.service .services-grid .sub-service.is-active .item__content,
main.solution .services-grid .sub-service--expanded .item__content,
main.solution .services-grid .sub-service.is-active .item__content {
    display: block;
}
main.service .services-grid .sub-service--expanded .view-more button:after,
main.service .services-grid .sub-service.is-active .view-more button:after,
main.solution .services-grid .sub-service--expanded .view-more button:after,
main.solution .services-grid .sub-service.is-active .view-more button:after {
    width: 0;
}
@media (max-width: 1200px) {
    main.service .services-grid .sub-service .lazyBg,
    main.solution .services-grid .sub-service .lazyBg {
        height: 1px;
        padding-bottom: 50%;
        width: 100%;
    }
}
@media (max-width: 1024px) {
    main.service .services-grid .sub-service .item__header,
    main.solution .services-grid .sub-service .item__header {
        padding: 30px 30px 60px 30px;
    }
    main.service .services-grid .sub-service .item__header h3,
    main.solution .services-grid .sub-service .item__header h3 {
        font-size: 1.7rem;
        font-weight: 300;
    }
    main.service .services-grid .sub-service .item__header p,
    main.solution .services-grid .sub-service .item__header p {
        font-size: 1.4rem;
        font-weight: 300;
    }
    main.service .services-grid .sub-service .item__header .view-more,
    main.solution .services-grid .sub-service .item__header .view-more {
        left: 30px;
        width: calc(100% - 60px);
    }
    main.service .services-grid .sub-service .item__content ol,
    main.service .services-grid .sub-service .item__content p,
    main.service .services-grid .sub-service .item__content ul,
    main.solution .services-grid .sub-service .item__content ol,
    main.solution .services-grid .sub-service .item__content p,
    main.solution .services-grid .sub-service .item__content ul {
        font-size: 1.3rem;
        font-weight: 400;
    }
    main.service .services-grid .sub-service .item__actions,
    main.solution .services-grid .sub-service .item__actions {
        justify-content: space-between;
    }
    main.service .services-grid .sub-service .item__actions .view-more,
    main.solution .services-grid .sub-service .item__actions .view-more {
        margin-right: 30px;
    }
    main.service .services-grid .sub-service .item__actions .inquiry,
    main.solution .services-grid .sub-service .item__actions .inquiry {
        margin-left: auto;
    }
    main.service .services-grid .sub-service--expanded.has-content .item__header,
    main.solution .services-grid .sub-service--expanded.has-content .item__header {
        padding-bottom: 0;
    }
    main.service .services-grid .sub-service.has-content .item__content,
    main.solution .services-grid .sub-service.has-content .item__content {
        padding: 0 30px 30px 30px;
    }
}
@media (max-width: 480px) {
    main.service .services-grid .sub-service .item__actions .inquiry,
    main.solution .services-grid .sub-service .item__actions .inquiry {
        margin-left: 0;
    }
    main.service .services-grid .sub-service .item__actions .view-more,
    main.solution .services-grid .sub-service .item__actions .view-more {
        margin-bottom: 30px;
    }
}
main.service .faq,
main.solution .faq,
main.koolituskeskkond .faq {
    background: transparent conic-gradient(from 116deg at 50% 50%, #1f2c5f 0, #0087c7 100%);
    color: #fff;
    padding-top: 9vh;
    padding-bottom: 9vh;
}
main.service .faq h2,
main.solution .faq h2,
main.koolituskeskkond .faq h2 {
    font-size: 4.2rem;
    font-weight: 600;
    margin-bottom: 60px;
}
@media (max-width: 1199px) {
    main.service .faq h2,
    main.solution .faq h2,
    main.koolituskeskkond .faq h2 {
        font-size: 3rem;
    }
}
@media (max-width: 767px) {
    main.service .faq h2,
    main.solution .faq h2,
    main.koolituskeskkond .faq h2 {
        font-size: 2.3333333333rem;
        font-size: clamp(12px, 5vw, 60px);
    }
}
main.service .faq__item,
main.solution .faq__item,
main.koolituskeskkond .faq__item {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #3bc9ff;
    display: flex;
}
main.service .faq__item ol li,
main.service .faq__item ul li,
main.solution .faq__item ol li,
main.solution .faq__item ul li,
main.koolituskeskkond .faq__item ul li,
main.koolituskeskkond .faq__item ol li {
    position: relative;
    padding-left: 44px;
    padding-bottom: 15px;
}
main.service .faq__item ol li:before,
main.service .faq__item ul li:before,
main.solution .faq__item ol li:before,
main.solution .faq__item ul li:before,
main.koolituskeskkond .faq__item ol li:before,
main.koolituskeskkond .faq__item ul li:before  {
    content: "";
    position: absolute;
    top: 8px;
    left: 0;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #1cabe2;
}
main.service .faq__item ol > li ul,
main.service .faq__item ul > li ul,
main.solution .faq__item ol > li ul,
main.solution .faq__item ul > li ul,
main.koolituskeskkond .faq__item ol > li ul,
main.koolituskeskkond .faq__item ul > li ul {
    margin-top: 15px;
}
main.service .faq__item ol > li ul li:before,
main.service .faq__item ul > li ul li:before,
main.solution .faq__item ol > li ul li:before,
main.solution .faq__item ul > li ul li:before,
main.koolituskeskkond .faq__item ol > li ul li:before,
main.koolituskeskkond .faq__item ul > li ul li:before {
    background: 0 0;
    border: 1px solid #1cabe2;
}
@media (max-width: 1024px) {
    main.service .faq__item ol li,
    main.service .faq__item ul li,
    main.solution .faq__item ol li,
    main.solution .faq__item ul li,
    main.koolituskeskkond .faq__item ol li,
    main.koolituskeskkond .faq__item ul li {
        padding-left: 25px;
    }
}
main.service .faq__item .view-more,
main.solution .faq__item .view-more,
main.koolituskeskkond .faq__item .view-more  {
    margin-right: 34px;
}
main.service .faq__item .view-more button,
main.solution .faq__item .view-more button,
main.koolituskeskkond .faq__item .view-more button {
    width: 40px;
    height: 40px;
    background: #1cabe2;
    border: 1px solid #fff;
    box-shadow: none;
    position: relative;
}
main.service .faq__item .view-more button:after,
main.service .faq__item .view-more button:before,
main.solution .faq__item .view-more button:after,
main.solution .faq__item .view-more button:before {
    content: "";
    position: absolute;
    background: #fff;
}
main.service .faq__item .view-more button:after,
main.service .faq__item .view-more button:before,
main.solution .faq__item .view-more button:after,
main.solution .faq__item .view-more button:before,
main.koolituskeskkond .faq__item .view-more button:after,
main.koolituskeskkond .faq__item .view-more button:before  {
    width: 16px;
    height: 2px;
    top: 19px;
    left: 12px;
    transition: 0.3s all ease-in-out;
}
@media (max-width: 1024px) {
    main.service .faq__item .view-more button,
    main.solution .faq__item .view-more button,
    main.koolituskeskkond .faq__item .view-more button {
        width: 30px;
        height: 30px;
    }
    main.service .faq__item .view-more button:before,
    main.solution .faq__item .view-more button:before,
    main.koolituskeskkond .faq__item .view-more button:before {
        width: 12px;
        top: 12px;
        left: 8px;
    }
    main.service .faq__item .view-more button:after,
    main.solution .faq__item .view-more button:after,
    main.koolituskeskkond .faq__item .view-more button:after {
        height: 13px;
        left: 13px;
        top: 7px;
        width: 2px;
    }
}
@media (min-width: 1200px) {
    main.service .faq__item .view-more button:after,
    main.solution .faq__item .view-more button:after,
    main.koolituskeskkond .faq__item .view-more button:after {
        transform: rotate(90deg);
    }
    main.service .faq__item .view-more button:hover:before,
    main.solution .faq__item .view-more button:hover:before,
    main.koolituskeskkond .faq__item .view-more button:hover:before {
        transform: rotate(180deg);
    }
    main.service .faq__item .view-more button:hover:after,
    main.solution .faq__item .view-more button:hover:after,
    main.koolituskeskkond .faq__item .view-more button:hover:after {
        top: 14px;
        transform: rotate(180deg);
    }
}
main.service .faq__item .view-more button,
main.solution .faq__item .view-more button,
main.koolituskeskkond .faq__item .view-more button {
    background: 0 0;
}
main.service .faq__item .item__content,
main.solution .faq__item .item__content,
main.koolituskeskkond .faq__item .item__content {
    display: none;
}
main.service .faq__item iframe,
main.solution .faq__item iframe,
main.koolituskeskkond .faq__item iframe  {
    max-width: 100%;
}
@media (max-width: 480px) {
    main.service .faq__item iframe,
    main.solution .faq__item iframe,
    main.koolituskeskkond .faq__item iframe {
        height: 200px;
    }
}
main.service .faq__item h3,
main.solution .faq__item h3,
main.koolituskeskkond .faq__item h3 {
    font-size: 2rem;
    font-weight: 600;
    margin-top: 10px;
    cursor: pointer;
}
main.service .faq__item p,
main.solution .faq__item p,
main.koolituskeskkond .faq__item p {
    padding-top: 20px;
    padding-bottom: 0;
}
main.service .faq__item a,
main.solution .faq__item a,
main.koolituskeskkond .faq__item a {
    color: #fff;
    text-decoration: underline;
}
main.service .faq__item.is-active .view-more button:after,
main.solution .faq__item.is-active .view-more button:after,
main.koolituskeskkond .faq__item.is-active .view-more button:after {
    content: none;
}
main.service .faq__item.is-active .item__content,
main.solution .faq__item.is-active .item__content,
main.koolituskeskkond .faq__item.is-active .item__content {
    display: block;
}
main.service .faq footer,
main.solution .faq footer,
main.koolituskeskkond .faq footer {
    margin-top: 40px;
    font-size: 2rem;
    font-weight: 400;
}
main.service .faq footer a,
main.solution .faq footer a,
main.koolituskeskkond .faq footer a  {
    margin-left: 10px;
}
@media (max-width: 1199px) {
    main.service .faq,
    main.solution .faq{
        margin-bottom: 30px;
    }
    main.service .faq h2,
    main.solution .faq h2,
    main.koolituskeskkond .faq h2 {
        margin: 0 0 30px 64px;
    }
    main.service .faq .faq__item h3,
    main.solution .faq .faq__item h3,
    main.koolituskeskkond .faq .faq__item h3 {
        font-size: 1.4rem;
        font-weight: 600;
    }
    main.service .faq .faq-footer p,
    main.solution .faq .faq-footer p,
    main.koolituskeskkond .faq .faq-footer p {
        font-size: 1.4rem;
        font-weight: 400;
        text-align: right;
    }
    main.service .faq .faq-footer p a,
    main.solution .faq .faq-footer p a,
    main.koolituskeskkond .faq .faq-footer p a {
        font-size: 1.5rem;
        font-weight: 600;
        display: block;
        margin-top: 20px;
        margin-right: 25px;
    }
}
main.calculator .page-content .text-content a.inquiry.arrow-link,
main.calculator .page-content .text-content main.service .faq footer a.inquiry,
main.calculator .page-content .text-content main.service .services-grid .sub-service .item__content a.inquiry,
main.calculator .page-content .text-content main.solution .faq footer a.inquiry,
main.calculator .page-content .text-content main.solution .services-grid .sub-service .item__content a.inquiry,
main.calculator .page-content main.solution .text-content a.inquiry,
main.service .faq footer .page-content .text-content a.inquiry,
main.service .page-content .text-content .faq footer a.inquiry,
main.service .page-content .text-content .services-grid .sub-service .item__content a.inquiry,
main.service .page-content .text-content a.inquiry.arrow-link,
main.service .page-content main.solution .text-content a.inquiry,
main.service .services-grid .sub-service .item__content .page-content .text-content a.inquiry,
main.solution main.calculator .page-content .text-content a.inquiry,
main.solution main.service .page-content .text-content a.inquiry {
    display: inline-block;
}
main.calculator .page-content .text-content a.inquiry.arrow-link:hover,
main.calculator .page-content .text-content main.service .faq footer a.inquiry:hover,
main.calculator .page-content .text-content main.service .services-grid .sub-service .item__content a.inquiry:hover,
main.calculator .page-content .text-content main.solution .faq footer a.inquiry:hover,
main.calculator .page-content .text-content main.solution .services-grid .sub-service .item__content a.inquiry:hover,
main.calculator .page-content main.solution .text-content a.inquiry:hover,
main.service .faq footer .page-content .text-content a.inquiry:hover,
main.service .page-content .text-content .faq footer a.inquiry:hover,
main.service .page-content .text-content .services-grid .sub-service .item__content a.inquiry:hover,
main.service .page-content .text-content a.inquiry.arrow-link:hover,
main.service .page-content main.solution .text-content a.inquiry:hover,
main.service .services-grid .sub-service .item__content .page-content .text-content a.inquiry:hover,
main.solution main.calculator .page-content .text-content a.inquiry:hover,
main.solution main.service .page-content .text-content a.inquiry:hover {
    color: #fff;
}
main.calculator .page-content .text-content a.inquiry.arrow-link:hover:before,
main.calculator .page-content .text-content main.service .faq footer a.inquiry:hover:before,
main.calculator .page-content .text-content main.service .services-grid .sub-service .item__content a.inquiry:hover:before,
main.calculator .page-content .text-content main.solution .faq footer a.inquiry:hover:before,
main.calculator .page-content .text-content main.solution .services-grid .sub-service .item__content a.inquiry:hover:before,
main.calculator .page-content main.solution .text-content a.inquiry:hover:before,
main.service .faq footer .page-content .text-content a.inquiry:hover:before,
main.service .page-content .text-content .faq footer a.inquiry:hover:before,
main.service .page-content .text-content .services-grid .sub-service .item__content a.inquiry:hover:before,
main.service .page-content .text-content a.inquiry.arrow-link:hover:before,
main.service .page-content main.solution .text-content a.inquiry:hover:before,
main.service .services-grid .sub-service .item__content .page-content .text-content a.inquiry:hover:before,
main.solution main.calculator .page-content .text-content a.inquiry:hover:before,
main.solution main.service .page-content .text-content a.inquiry:hover:before {
    right: 10px;
}
main.calculator .hero-slider,
main.service .hero-slider {
    height: 100%;
    margin: 0;
    width: 100%;
}
main.about .header-image {
    height: 20vh;
    min-height: 150px;
    margin-bottom: 0;
}
main.about .page-content {
    margin-bottom: 60px;
}
main.about .numbers:before {
    --gradient-degrees: -120deg;
    background: transparent conic-gradient(from var(--gradient-degrees) at 50% 50%, #0087c7 0, #1f2c5f 100%);
}
main.about .numbers.visible:before {
    --gradient-degrees: 75deg;
    transform: scaleY(-1);
    opacity: 0.9;
}
main.about .numbers .number {
    position: relative;
}
main.about .numbers .number:after {
    content: attr(data-suffix);
}
main.about .values img,
main.about .values svg {
    width: 100px;
    height: auto;
    margin-bottom: 30px;
}
main.about .values h3 {
    font-size: 2.2rem;
    font-weight: 300;
    color: #1f2c5f;
    max-width: 270px;
}
@media (min-width: 1025px) {
    main.about .values {
        padding-top: 12vh;
        padding-bottom: 3vh;
        margin-bottom: 12vh;
    }
    main.about .values .section-title,
    main.about .values header.content-header h2,
    main.about .values header.form-header h2,
    main.about .values main.service .services-grid h2,
    main.about .values main.solution .services-grid h2,
    main.about .values main.solution section.contact-us header h2,
    main.about .values main.solution section.process .process-intro h2,
    main.about .values main.solution section.segments h2,
    main.about .values section.calculator header h2,
    main.about header.content-header .values h2,
    main.about header.form-header .values h2,
    main.front main.about .values h1,
    main.front main.about .values h2,
    main.service .services-grid main.about .values h2,
    main.solution .services-grid main.about .values h2,
    main.solution section.contact-us header main.about .values h2,
    main.solution section.process .process-intro main.about .values h2,
    main.solution section.segments main.about .values h2,
    section.calculator header main.about .values h2 {
        margin-bottom: 9vh;
        text-align: center;
    }
    main.about .values .value {
        flex: 1 0 33%;
        margin-bottom: 90px;
        text-align: center;
    }
    main.about .values .value:nth-of-type(4) {
        padding-left: 17%;
    }
    main.about .values .value:nth-of-type(5) {
        padding-right: 17%;
    }
}
@media (max-width: 1199px) {
    main.about {
        margin-top: 95px;
        margin-left: auto;
        margin-right: auto;
    }
    main.about .mb-6 {
        margin-bottom: 30px;
    }
    main.about .container-fluid.sm-margin,
    main.about .sm-margin.container-lg,
    main.about .sm-margin.container-md,
    main.about .sm-margin.container-sm,
    main.about .sm-margin.container-xl,
    main.about .sm-margin.container-xxl {
        margin-bottom: 30px;
    }
    main.about .page-content {
        padding: 30px;
        margin-bottom: 0;
    }
    main.about .values {
        padding: 60px 30px;
        margin-bottom: 30px;
    }
    main.about .values .value {
        width: auto;
        display: flex;
        align-items: center;
        margin-top: 40px;
    }
    main.about .values .value figure {
        width: 60px;
        height: auto;
        margin-right: 30px;
    }
    main.about .values h3 {
        font-size: 1.4rem;
        font-weight: 400;
    }
    main.about .numbers.visible:before {
        --gradient-degrees: 25deg;
        transform: none;
    }
    main.about .numbers .section-title,
    main.about .numbers header.content-header h2,
    main.about .numbers header.form-header h2,
    main.about .numbers main.service .services-grid h2,
    main.about .numbers main.solution .services-grid h2,
    main.about .numbers main.solution section.contact-us header h2,
    main.about .numbers main.solution section.process .process-intro h2,
    main.about .numbers main.solution section.segments h2,
    main.about .numbers section.calculator header h2,
    main.about header.content-header .numbers h2,
    main.about header.form-header .numbers h2,
    main.front main.about .numbers h1,
    main.front main.about .numbers h2,
    main.service .services-grid main.about .numbers h2,
    main.solution .services-grid main.about .numbers h2,
    main.solution section.contact-us header main.about .numbers h2,
    main.solution section.process .process-intro main.about .numbers h2,
    main.solution section.segments main.about .numbers h2,
    section.calculator header main.about .numbers h2 {
        text-align: left;
        margin-left: 30px;
    }
}
@media (min-width: 1024px) and (max-width: 1199px) {
    main.about .header-image {
        min-height: 300px;
    }
}
@media (min-width: 1200px) {
    main.about {
        margin-left: auto;
        margin-right: auto;
    }
    main.about .header-image {
        height: 50vh;
        min-height: 500px;
    }
    main.about .page-content {
        text-align: center;
        padding-bottom: 40px;
    }
}
main.blog,
main.post {
    margin-top: 80px;
}
@media (min-width: 1200px) {
    main.blog,
    main.post {
        margin-top: 135px;
    }
}
main.blog .posts .container {
    padding-top: 60px;
}
main.blog .page-title {
    position: relative;
    font-size: 2.2rem;
    font-weight: 600;
    color: #1f2c5f;
}
main.blog .news-item a {
    display: block;
}
@media (max-width: 1199px) {
    main.blog .page-title {
        margin-bottom: 30px;
        padding-bottom: 30px;
    }
    main.blog .page-title:before {
        content: "";
        position: absolute;
        bottom: 0;
        left: -30px;
        width: calc(100% + 60px);
        height: 1px;
        background: #f6f6f6;
    }
    main.blog .posts {
        margin-bottom: 30px;
    }
}
@media (min-width: 1024px) and (max-width: 1199px) {
    main.blog .posts .bg-white.container-lg,
    main.blog .posts .bg-white.container-md,
    main.blog .posts .bg-white.container-sm,
    main.blog .posts .bg-white.container-xl,
    main.blog .posts .bg-white.container-xxl,
    main.blog .posts .container-fluid.bg-white {
        padding-top: 30px;
    }
}
@media (min-width: 1200px) {
    main.blog .page-title {
        font-size: 3.5rem;
        font-weight: 600;
        margin-bottom: 60px;
    }
    main.blog .breadcrumb,
    main.blog .page-title {
        text-align: center;
    }
    main.blog .grid-row {
        justify-content: flex-start;
        gap: 6%;
    }
}
main.post aside {
    padding-left: 0;
    padding-right: 30px;
}
main.post aside .bg-white {
    padding: 30px 0;
}
main.post aside h2 {
    font-size: 2.5rem;
    font-weight: 300;
    margin-bottom: 30px;
    color: #636366;
}
main.post aside .latest-posts {
    margin-bottom: 6vh;
}
main.post aside .latest-posts li {
    padding-bottom: 30px;
    border-bottom: 1px solid #f6f6f6;
    padding-top: 30px;
}
main.post aside .latest-posts li:last-child {
    border: none;
}
main.post aside .latest-posts li.active,
main.post aside .latest-posts li:hover {
    border-right: 2px solid #0087c7;
}
main.post aside .latest-posts li.active a,
main.post aside .latest-posts li:hover a {
    color: #0087c7;
}
main.post aside .latest-posts a {
    display: block;
    padding: 0 3vw;
    color: #1f2c5f;
    transition: 0.3s all ease-in-out;
}
main.post aside .latest-posts p {
    font-size: 1.5rem;
    font-weight: 400;
    margin-bottom: 15px;
}
main.post aside .latest-posts h3 {
    font-size: 1.7rem;
    font-weight: 600;
    margin: 0;
}
main.post aside .wp-block-archives {
    border-top: 1px solid #f6f6f6;
    padding-top: 30px;
}
main.post aside .wp-block-archives a {
    display: block;
    font-size: 1.7rem;
    font-weight: 600;
    color: #1f2c5f;
    margin-bottom: 30px;
}
main.post .page-content {
    padding: 0 0 30px 4vw;
    background: #fff;
}
main.post .page-content .text-content h3 {
    font-size: 2.2rem;
    font-weight: 300;
    color: #1f2c5f;
}
@media (min-width: 1200px) {
    main.post .page-content {
        padding: 30px 4vw;
    }
}
main.post .page-content .header-text {
    padding: 60px 4vw 30px 4vw;
}
main.post .page-content header {
    margin-bottom: 60px;
}
main.post .page-content header .lazyBg {
    height: 30vh;
    min-width: 370px;
}
main.front .about main.post .related h1,
main.front .about main.post .related h2,
main.post .related .section-title,
main.post .related header.content-header h2,
main.post .related header.form-header h2,
main.post .related main.front .about h1,
main.post .related main.front .about h2,
main.post .related main.service .services-grid h2,
main.post .related main.solution .services-grid h2,
main.post .related main.solution section.contact-us header h2,
main.post .related main.solution section.process .process-intro h2,
main.post .related main.solution section.segments h2,
main.post .related section.calculator header h2,
main.post header.content-header .related h2,
main.post header.form-header .related h2,
main.service .services-grid main.post .related h2,
main.solution .services-grid main.post .related h2,
main.solution section.contact-us header main.post .related h2,
main.solution section.process .process-intro main.post .related h2,
main.solution section.segments main.post .related h2,
section.calculator header main.post .related h2 {
    margin: 60px;
}
main.post .post-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 60px 4vw;
}
main.post .post-links a {
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.8;
    color: #1f2c5f;
}
main.post .post-links a img {
    display: inline-block;
    width: 17px;
    height: auto;
}
main.post .post-links a.prev-link img {
    margin-right: 20px;
}
main.post .post-links a.next-link img {
    margin-left: 20px;
}
main.post .post-links a.button {
    font-size: 2rem;
    font-weight: 600;
    line-height: 1;
    background: #efefef;
    padding: 16px 30px;
}
@media (max-width: 1199px) {
    main.post {
        margin-top: 70px;
    }
    main.post .page-content header .lazyBg {
        height: 15vh;
    }
    main.post .page-content .header-text {
        padding: 30px 30px 5px 30px;
    }
    main.post .page-content {
        background: #fff;
        padding-left: 0;
        padding-right: 0;
        padding-top: 0;
    }
    main.post .row-media,
    main.post .row-text {
        padding-left: 15px;
        padding-right: 15px;
    }
    main.post .related {
        padding-left: 0;
        padding-right: 0;
    }
    main.front .about main.post .related h1,
    main.front .about main.post .related h2,
    main.post .related .section-title,
    main.post .related header.content-header h2,
    main.post .related header.form-header h2,
    main.post .related main.front .about h1,
    main.post .related main.front .about h2,
    main.post .related main.service .services-grid h2,
    main.post .related main.solution .services-grid h2,
    main.post .related main.solution section.contact-us header h2,
    main.post .related main.solution section.process .process-intro h2,
    main.post .related main.solution section.segments h2,
    main.post .related section.calculator header h2,
    main.post header.content-header .related h2,
    main.post header.form-header .related h2,
    main.service .services-grid main.post .related h2,
    main.solution .services-grid main.post .related h2,
    main.solution section.contact-us header main.post .related h2,
    main.solution section.process .process-intro main.post .related h2,
    main.solution section.segments main.post .related h2,
    section.calculator header main.post .related h2 {
        margin: 0 0 30px;
    }
    main.post .related .news-item:first-of-type {
        border: none;
    }
}
main.products .header-content {
    padding-left: 4.1677%;
    padding-top: 60px;
    padding-bottom: 30px;
}
main.products .page-content {
    padding-top: 10px;
}
main.products .card-content {
    border: 1px solid #fff;
}
main.products .card figure {
    padding: 20px;
}
@media (max-width: 1024px) {
    main.products {
        padding-left: 20px;
        padding-right: 20px;
        margin-right: auto;
        margin-left: auto;
    }
    main.products .card-content {
        border-top: 1px solid #ddd;
    }
    main.products .page-content {
        margin-bottom: 0;
        padding-bottom: 0;
    }
}
@media (max-width: 1199px) {
    main.products .header-content {
        padding: 30px;
    }
    main.products .header-content h1 {
        margin-bottom: 0;
    }
    main.products .page-content {
        padding-top: 30px;
    }
    main.products .card figure {
        padding: 30px 60px;
    }
    main.products .card-content {
        background: #fff;
        padding: 30px;
    }
}
main.product .header-image {
    display: flex;
    align-items: center;
    justify-content: center;
}
main.product .header-image figure {
    max-width: 150px;
    text-align: center;
    border: 30px solid #fff;
    margin: 35px auto;
}
@media (max-width: 1199px) {
    main.product {
        margin-top: 95px;
    }
    main.product .header-image {
        margin-bottom: 0;
    }
    main.product .page-header {
        padding-left: 15px;
        padding-right: 15px;
    }
}
@media (min-width: 1024px) and (max-width: 1199px) {
    main.product .page-header {
        padding-top: 30px;
    }
}
@media (min-width: 1200px) {
    main.product .page-header {
        text-align: center;
    }
    main.product .header-image figure {
        max-width: 480px;
        border: 60px solid #fff;
    }
}
main.solution {
    position: relative;
}
main.solution .hero-slider .bg-cover {
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
}
@media (max-width: 1199px) {
    main.solution .hero-slider .bg-cover {
        min-height: 150px;
    }
    main.solution .hero-slider .slide-content {
        max-width: 110px;
        height: 100%;
    }
    main.solution .hero-slider .slide-content .page-intro {
        padding: 40px 20px;
    }
    main.solution .hero-slider .slide-content .page-intro svg {
        margin: auto;
    }
    main.solution .hero-slider.swiper-container-horizontal > .swiper-scrollbar {
        left: 120px;
        top: unset;
        bottom: 20px;
        width: calc(100% - 130px);
    }
}
@media (min-width: 1200px) {
    main.solution .hero-slider .page-intro {
        width: 40%;
    }
}
@media (min-width: 1024px) and (max-width: 1199px) {
    main.solution .hero-slider .swiper-slide {
        min-height: 250px;
    }
    main.solution .hero-slider .bg-cover {
        min-height: 250px;
    }
}
@media (min-width: 1200px) {
    main.solution .hero-slider .bg-cover {
        width: 60%;
    }
}
main.solution header.solution-header,
main.koolituskeskkond header.solution-header {
    width: auto;
}
main.koolituskeskkond header.solution-header {
    margin-bottom: 30px;
}
@media (max-width: 1024px) {
    main.solution header.solution-header,
    main.koolituskeskkond header.solution-header {
        margin-left: 20px;
        margin-right: 20px;
    }
}
@media (min-width: 1200px) {
    main.solution header.solution-header,
    main.koolituskeskkond header.solution-header  {
        margin-left: 87px;
        margin-right: 87px;
    }
}
main.solution header.solution-header nav ul,
main.koolituskeskkond header.solution-header nav ul {
    margin-left: 4vw;
    width: calc(100% - 8vw);
    padding: 20px 0;
}
main.solution header.solution-header nav ul:before,
main.koolituskeskkond header.solution-header nav ul:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background: #ddd;
}
main.solution header.solution-header.scroll,
main.koolituskeskkond header.solution-header.scroll {
    position: fixed;
    top: 70px;
    left: 0;
    background: #fff;
    width: 100%;
    z-index: 98;
}
main.solution .page-header {
    width: auto;
    color: #fff;
}
@media (max-width: 1024px) {
    main.solution .page-header {
        margin-left: 20px;
        margin-right: 20px;
    }
}
@media (min-width: 1200px) {
    main.solution .page-header {
        margin-left: 87px;
        margin-right: 87px;
    }
}
main.solution .page-header .page-intro {
    position: relative;
}
main.solution .page-header .page-intro:before {
    content: "";
    background: #1cabe2;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
main.solution .page-header .page-intro h1,
main.solution .page-header .page-intro h2,
main.solution .page-header .page-intro img,
main.solution .page-header .page-intro svg {
    position: relative;
}
main.solution .page-header .page-intro h2 {
    font-size: clamp(32px, 3vw, 45px);
    font-weight: 600;
    color: #f6f6f6;
    max-width: 500px;
}
main.solution .page-header .page-intro img,
main.solution .page-header .page-intro svg {
    margin-bottom: 38px;
}
main.solution .page-header .page-intro svg {
    width: 100%;
    max-width: 190px;
    height: auto;
}
main.solution .page-header .page-intro svg path {
    fill: #fff;
}
@media (min-width: 1200px) {
    main.solution .page-header .page-intro {
        padding: 60px 4vw;
        min-height: 470px;
    }
}
main.solution .contacts svg path {
    fill: #1cabe2;
}
main.solution .page-content {
    padding-top: 60px;
    padding-bottom: 60px;
    margin-bottom: 60px;
}
main.solution .intro-block .row-blocks {
    margin-bottom: 0;
}
main.solution section.clients {
    padding-bottom: 9vh;
    background: #fff;
}
main.front .about main.solution section.clients h1,
main.front .about main.solution section.clients h2,
main.service .services-grid main.solution section.clients h2,
main.solution .services-grid section.clients h2,
main.solution header.content-header section.clients h2,
main.solution header.form-header section.clients h2,
main.solution section.clients .section-title,
main.solution section.clients .services-grid h2,
main.solution section.clients header.content-header h2,
main.solution section.clients header.form-header h2,
main.solution section.clients main.front .about h1,
main.solution section.clients main.front .about h2,
main.solution section.clients section.calculator header h2,
main.solution section.clients section.contact-us header h2,
main.solution section.clients section.process .process-intro h2,
main.solution section.clients section.segments h2,
main.solution section.contact-us header section.clients h2,
main.solution section.process .process-intro section.clients h2,
main.solution section.segments section.clients h2,
section.calculator header main.solution section.clients h2 {
    margin-top: 12vh;
    margin-bottom: 60px;
}
main.solution section.clients .clients-slider .swiper-slide {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
main.solution section.clients .clients-slider img {
    max-width: 230px;
}
@media (max-width: 1024px) {
    main.solution section.clients {
        margin: 30px 20px 0;
        padding: 30px 0;
    }
    main.front .about main.solution section.clients h1,
    main.front .about main.solution section.clients h2,
    main.service .services-grid main.solution section.clients h2,
    main.solution .services-grid section.clients h2,
    main.solution header.content-header section.clients h2,
    main.solution header.form-header section.clients h2,
    main.solution section.clients .section-title,
    main.solution section.clients .services-grid h2,
    main.solution section.clients header.content-header h2,
    main.solution section.clients header.form-header h2,
    main.solution section.clients main.front .about h1,
    main.solution section.clients main.front .about h2,
    main.solution section.clients section.calculator header h2,
    main.solution section.clients section.contact-us header h2,
    main.solution section.clients section.process .process-intro h2,
    main.solution section.clients section.segments h2,
    main.solution section.contact-us header section.clients h2,
    main.solution section.process .process-intro section.clients h2,
    main.solution section.segments section.clients h2,
    section.calculator header main.solution section.clients h2 {
        margin: 0;
        padding-left: 0;
    }
    main.solution section.clients .clients-slider img {
        max-width: 120px;
    }
}
main.solution section.process {
    padding-top: 30px;
    padding-bottom: 30px;
    background: transparent conic-gradient(from 117deg at 50% 50%, #1f2c5f 0, #0087c7 100%) 0 0 no-repeat padding-box;
}
main.solution section.process .process-intro h2,
main.solution section.process .process-intro h3 {
    color: #fff;
}
main.solution section.process .process-intro h2 {
    margin-bottom: 30px;
}
main.solution section.process .process-intro h3 {
    font-size: 2.2rem;
    font-weight: 300;
    margin-bottom: 8vh;
}
main.solution section.process .process-step figure {
    max-width: 140px;
    height: auto;
    padding-right: 30px;
    margin-bottom: 20px;
}
main.solution section.process .process-step h3,
main.solution section.process .process-step p {
    max-width: 270px;
    color: #fff;
}
main.solution section.process .process-step h3 {
    font-size: 2.5rem;
    font-weight: 300;
    margin-bottom: 30px;
}
main.solution section.process .process-step p {
    font-size: 1.7rem;
    font-weight: 400;
    line-height: 1.5;
}
@media (max-width: 1024px) {
    main.solution section.process .step {
        display: none;
    }
    main.solution section.process .process-step {
        position: relative;
        display: flex;
        margin-bottom: 30px;
        padding-bottom: 20px;
    }
    main.solution section.process .process-step:before {
        content: "";
        position: absolute;
        bottom: 0;
        left: 160px;
        width: 13px;
        height: 13px;
        border-top: 3px solid #3bc9ff;
        border-left: 3px solid #3bc9ff;
        transform: rotate(225deg);
    }
    main.solution section.process .process-step:last-of-type:before {
        content: none;
    }
    main.solution section.process .process-step p {
        font-size: 1.4rem;
        font-weight: 400;
    }
    main.solution section.process .process-intro h3 {
        font-size: 1.8rem;
        font-weight: 300;
        margin-bottom: 40px;
        max-width: 200px;
    }
    main.solution section.process .process-steps h3 {
        position: relative;
        font-size: 1.4rem;
        font-weight: 600;
        line-height: 1.35;
        padding-left: 40px;
        max-width: 150px;
    }
    main.solution section.process .process-steps h3:before {
        content: attr(data-step);
        position: absolute;
        top: 0;
        left: 0;
        font-size: 3.6rem;
        font-weight: 600;
        line-height: 1.2;
        margin-right: 20px;
    }
}
@media (min-width: 1025px) {
    main.solution section.process {
        padding-top: 60px;
        padding-bottom: 15vh;
    }
    main.solution section.process h3 {
        margin-top: 50px;
        height: 60px;
    }
    main.solution section.process .step {
        font-size: 4.2rem;
        font-weight: 600;
        color: #fff;
        position: relative;
    }
}
@media (min-width: 1025px) and (max-width: 1199px) {
    main.solution section.process .step {
        font-size: 3rem;
    }
}
@media (min-width: 1025px) and (max-width: 767px) {
    main.solution section.process .step {
        font-size: 2.3333333333rem;
        font-size: clamp(12px, 5vw, 60px);
    }
}
@media (min-width: 1025px) {
    main.solution section.process .step:before {
        content: "";
        display: inline-block;
        width: calc(100% - 12px);
        height: 20px;
        position: absolute;
        left: 0;
        bottom: -40px;
        background-image: linear-gradient(to right, #3bc9ff 12px, transparent 12px);
        background-size: 18px 3px;
        background-position: -3px 0;
        background-repeat: repeat-x;
    }
}
@media (min-width: 1025px) {
    main.solution section.process .step:after {
        content: "";
        position: absolute;
        right: 0;
        bottom: -27px;
        border-top: 3px solid #3bc9ff;
        border-left: 3px solid #3bc9ff;
        width: 12px;
        height: 12px;
        transform: rotate(135deg);
    }
}
@media (min-width: 1025px) {
    main.solution section.process .process-step:last-of-type .step:after {
        content: none;
    }
}
main.solution section.references {
    padding-top: 12vh;
    padding-bottom: 12vh;
    background: #fff;
}
main.solution section.references h2 {
    font-size: 3.5rem;
    font-weight: 600;
    color: #1f2c5f;
    margin-bottom: 30px;
}
main.solution section.references .references-slider {
    margin-top: 60px;
}
main.solution section.references .references-slider .item {
    background: #f6f6f6;
}
main.solution section.references .references-slider .item__content {
    position: relative;
    padding-top: 8vw;
    padding-bottom: 4vw;
}
main.solution section.references .references-slider .item__content:before {
    content: "";
    position: absolute;
    top: 64px;
    right: 0;
    width: calc(100% - 94px);
    height: 1px;
    background: #ddd;
}
main.solution section.references .references-slider .item__content h3 {
    font-size: 2.5rem;
    font-weight: 300;
    color: #1f2c5f;
    margin-bottom: 30px;
}
.contact-layer main.solution section.references .references-slider .item__content button.ff-btn-submit,
.page-content form .ff-el-group main.solution section.references .references-slider .item__content button.ff-btn-submit,
main.service .faq footer main.solution section.references .references-slider .item__content a,
main.service .services-grid .sub-service main.solution section.references .references-slider .item__content a.inquiry,
main.solution .faq footer section.references .references-slider .item__content a,
main.solution .services-grid .sub-service section.references .references-slider .item__content a.inquiry,
main.solution .text-content section.references .references-slider .item__content a.inquiry,
main.solution section.references .references-slider .item__content .arrow-link,
main.solution section.references .references-slider .item__content .contact-layer button.ff-btn-submit,
main.solution section.references .references-slider .item__content .faq footer a,
main.solution section.references .references-slider .item__content .page-content form .ff-el-group button.ff-btn-submit,
main.solution section.references .references-slider .item__content .text-content a.inquiry,
main.solution section.references .references-slider .services-grid .sub-service .item__content a.inquiry {
    display: block;
    text-align: right;
    margin-top: 20px;
}
main.solution section.references .references-slider .swiper-button-next,
main.solution section.references .references-slider .swiper-button-prev {
    top: 64px;
    opacity: 1;
}
main.solution section.references .references-slider .swiper-button-next {
    left: calc(8.33vw + 30px);
}
main.solution section.references .references-slider .swiper-button-prev {
    left: calc(8vw - 8px);
}
main.solution section.segments {
    padding-top: 12vh;
    padding-bottom: 12vh;
    color: #1f2c5f;
}
main.solution section.segments h2 {
    margin-bottom: 30px;
}
main.solution section.segments p {
    font-size: 2.2rem;
    font-weight: 300;
}
main.solution section.segments .segments-slider {
    margin-top: 8vh;
}
main.solution section.segments .segments-slider a {
    display: block;
    text-align: center;
    color: #1f2c5f;
}
main.solution section.segments .segments-slider figure {
    margin: auto auto 68px;
    max-width: 100px;
}
main.solution section.segments .segments-slider figure svg {
    transition: 0.25s all ease-in-out;
}
main.solution section.segments .segments-slider figure svg path.cls-2 {
    fill: #1cabe2;
}
main.solution section.segments .segments-slider p {
    font-size: 1.7rem;
    font-weight: 500;
    max-width: 140px;
    margin: auto;
}
@media (max-width: 1024px) {
    main.solution section.segments {
        padding-top: 0;
        padding-bottom: 30px;
    }
    main.solution section.segments p {
        font-size: 1.4rem;
        font-weight: 400;
    }
    main.solution section.segments .segments-slider {
        margin-top: 30px;
        padding-left: 20px;
        padding-bottom: 60px;
    }
    main.solution section.segments .segments-slider .swiper-slide {
        display: flex;
        flex-direction: column;
        justify-content: center;
        background: #fff;
        padding: 15px 20px 35px 20px;
    }
    main.solution section.segments .segments-slider figure {
        margin-bottom: 10px;
        max-width: 100px;
    }
    main.solution section.segments .segments-slider p {
        font-size: 1.3rem;
        font-weight: 500;
        letter-spacing: 0.4px;
        max-width: unset;
    }
}
@media (max-width: 1400px) {
    main.solution section.segments {
        width: auto;
    }
}
@media (max-width: 1400px) and (max-width: 1024px) {
    main.solution section.segments {
        margin-left: 20px;
        margin-right: 20px;
    }
}
@media (max-width: 1400px) and (min-width: 1200px) {
    main.solution section.segments {
        margin-left: 87px;
        margin-right: 87px;
    }
}
@media (min-width: 1200px) {
    main.solution section.segments .swiper-wrapper {
        justify-content: center;
    }
    main.solution section.segments .swiper-slide a:hover svg {
        transform: scale(0.85);
    }
}
main.solution section.contact-us header h2 {
    margin-bottom: 30px;
}
main.solution section.contact-us header h3 {
    font-size: 2.2rem;
    font-weight: 300;
    margin-bottom: 9vh;
}
main.solution section.contact-us .person {
    margin-top: 50px;
}
main.solution section.contact-us .person h3 {
    margin-bottom: 10px;
    padding-top: 40px;
}
main.solution section.contact-us .person .lazyBg {
    height: 100%;
}
main.solution section.contact-us .person p.position {
    color: #1f2c5f;
    margin-bottom: 32px;
}
main.solution section.contact-us .person .contacts {
    padding-bottom: 40px;
}
main.solution section.contact-us .person .contacts p {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}
main.solution section.contact-us .person .contacts svg {
    margin-right: 24px;
}
main.solution section.contact-us .person .contacts a {
    font-size: 1.7rem;
    font-weight: 400;
    color: #1f2c5f;
}
@media (max-width: 1199px) {
    main.solution h1 {
        margin-bottom: 10px;
    }
    main.solution section.page-content {
        padding-bottom: 0;
        padding-top: 30px;
        margin-bottom: 30px;
    }
    main.solution .text-content p:last-of-type {
        margin-bottom: 0;
    }
    main.solution section.references .references-slider .item {
        flex-direction: column-reverse;
        margin: auto;
    }
    main.solution section.references .references-slider .item__content {
        padding: 60px 30px 30px 30px;
    }
    main.solution section.references .references-slider .item__content:before {
        top: 30px;
        right: 30px;
        width: calc(100% - 160px);
    }
    main.solution section.references .references-slider .swiper-button-next,
    main.solution section.references .references-slider .swiper-button-prev {
        top: calc(30vh + 30px);
    }
    main.solution section.references .references-slider .swiper-button-next {
        left: 70px;
    }
    main.solution section.references .references-slider .swiper-button-prev {
        left: 30px;
    }
    main.solution section.references .references-slider .lazyBg {
        height: 30vh;
    }
    main.solution section.services-grid {
        margin-top: 0;
    }
    main.solution section.services-grid h2 {
        margin: 0 0 30px;
    }
    main.solution section.contact-us {
        margin: 30px 20px;
        padding: 0;
    }
    main.solution section.contact-us .page-content {
        padding: 0 15px;
        margin: auto;
    }
    main.solution section.contact-us .form-header h2 {
        margin-top: 0;
        color: #fff;
    }
    main.solution section.contact-us .form-header h3,
    main.solution section.contact-us .form-header p {
        font-size: 1.8rem;
        font-weight: 400;
        margin-bottom: 0;
    }
    main.solution section.contact-us .form-area {
        margin-bottom: 30px;
    }
    main.solution section.contact-us .form-area h3 {
        font-size: 1.7rem;
        font-weight: 600;
        margin: 30px 0;
    }
    main.solution section.contact-us .form-area input,
    main.solution section.contact-us .form-area textarea {
        background: 0 0;
    }
    main.solution section.contact-us .contact-person {
        order: 2;
        background: #fff;
        padding: 30px;
    }
    main.solution section.contact-us .contact-person h3 {
        font-size: 1.7rem;
        font-weight: 600;
        padding: 0;
    }
    main.solution section.contact-us .contact-person .person {
        margin-top: 0;
    }
    main.solution section.contact-us .contact-person .contacts {
        padding: 0;
    }
    main.solution section.contact-us .contact-person .contacts a {
        font-size: 1.2rem;
        font-weight: 400;
    }
}
@media (min-width: 1200px) {
    main.solution .text-content {
        flex: 1 1 50%;
        padding-left: 4vw;
        padding-right: 4vw;
    }
    main.solution section.contact-us .container {
        max-width: 1154px;
        margin-bottom: 20px;
    }
}
@media (min-width: 1024px) and (max-width: 1300px) {
    main.solution .container {
        width: auto;
    }
}
@media (min-width: 1024px) and (max-width: 1300px) and (max-width: 1024px) {
    main.solution .container {
        margin-left: 20px;
        margin-right: 20px;
    }
}
@media (min-width: 1024px) and (max-width: 1300px) and (min-width: 1200px) {
    main.solution .container {
        margin-left: 87px;
        margin-right: 87px;
    }
}
main.contact {
    padding-top: 30px;
}
main.contact header.page-header {
    border-bottom: 1px solid #f6f6f6;
    padding: 30px;
}
main.contact header.sticky-submenu {
    position: -webkit-sticky;
    position: sticky;
    top: 70px;
    margin-top: 30px;
    z-index: 5;
}
main.contact header.sticky-submenu ul {
    padding: 20px 4vw;
}
main.contact h1 {
    font-size: 3.5rem;
    font-weight: 600;
    color: #1f2c5f;
}
main.contact .page-content {
    padding-top: 0;
}
main.contact .page-content a,
main.contact .page-content p {
    color: #1f2c5f;
}
main.contact .page-content .icon-cls-2 {
    fill: #1cabe2;
}
main.contact .contact-block {
    border-bottom: 1px solid #f6f6f6;
}
main.contact .form-block button.ff-btn-submit {
    padding-right: 65px;
    transform: none;
}
main.contact .form-block button.ff-btn-submit:before {
    right: 30px;
}
main.contact .contacts p {
    display: flex;
    align-items: center;
}
main.contact .contacts p:last-of-type {
    margin-bottom: 0;
}
main.contact .contacts p svg {
    margin-right: 20px;
}
main.contact .contacts p svg .icon-cls-2 {
    fill: #1cabe2;
}
main.contact .contacts p a {
    color: #1f2c5f;
}
main.contact .reg-info {
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.5;
    color: #4e4e4f;
    margin-top: 30px;
}
main.contact .reg-info span {
    position: relative;
    display: block;
}
main.contact .map {
    position: relative;
}
main.contact .map .view-map {
    display: block;
    position: absolute;
    width: 100%;
    background: #1cabe2;
    color: #fff;
    padding: 16px 18px;
}
main.contact .map iframe {
    width: 100%;
    min-height: 600px;
    margin-bottom: 30px;
}
main.contact .persons .has-line {
    position: relative;
    padding-left: 0;
}
main.contact .persons .section-title,
main.contact .persons header.content-header h2,
main.contact .persons header.form-header h2,
main.contact .persons main.front .about h1,
main.contact .persons main.front .about h2,
main.contact .persons main.service .services-grid h2,
main.contact .persons main.solution .services-grid h2,
main.contact .persons main.solution section.contact-us header h2,
main.contact .persons main.solution section.process .process-intro h2,
main.contact .persons main.solution section.segments h2,
main.contact .persons section.calculator header h2,
main.contact header.content-header .persons h2,
main.contact header.form-header .persons h2,
main.front .about main.contact .persons h1,
main.front .about main.contact .persons h2,
main.service .services-grid main.contact .persons h2,
main.solution .services-grid main.contact .persons h2,
main.solution section.contact-us header main.contact .persons h2,
main.solution section.process .process-intro main.contact .persons h2,
main.solution section.segments main.contact .persons h2,
section.calculator header main.contact .persons h2 {
    display: inline-block;
    font-size: 2.5rem;
    font-weight: 600;
    margin: 30px 0;
    background: #f6f6f6;
    padding-left: 4.17vw;
    padding-right: 30px;
}
main.contact .persons .person {
    color: #1f2c5f;
    margin-bottom: 30px;
}
main.contact .persons .person figure {
    margin-bottom: 30px;
    text-align: center;
}
@media (max-width: 1199px) {
    main.contact .container-fluid,
    main.contact .container-lg,
    main.contact .container-md,
    main.contact .container-sm,
    main.contact .container-xl,
    main.contact .container-xxl {
        padding-left: 0;
        padding-right: 0;
    }
    main.contact h1 {
        font-size: 2.2rem;
        font-weight: 600;
    }
    main.contact .page-content {
        margin-bottom: 0;
    }
    main.contact .contact-block h3,
    main.contact .form-block h3 {
        font-size: 2rem;
        font-weight: 600;
    }
    main.contact .contact-block {
        padding: 30px;
    }
    main.contact .map .view-map {
        font-size: 1.5rem;
        font-weight: 600;
        bottom: 0;
        left: 0;
        text-align: right;
    }
    main.contact .reg-info span {
        font-size: 1.4rem;
        font-weight: 300;
        color: #4e4e4f;
        margin-bottom: 8px;
    }
    main.contact .form-block .bg-white {
        padding: 30px;
    }
    main.contact .persons {
        padding: 60px 30px 0 30px;
    }
    main.contact .person .name,
    main.contact .person figure {
        border-bottom: 1px solid #f6f6f6;
    }
    main.contact .person figure {
        padding-left: 60px;
        padding-right: 60px;
    }
    main.contact .person .name {
        padding: 0 30px 20px 30px;
    }
    main.contact .person .contacts {
        padding: 20px 30px;
    }
}
@media (min-width: 1200px) {
    main.contact header.page-header {
        padding: 30px 4vw;
    }
    main.contact .page-content h3 {
        font-size: 2.5rem;
        font-weight: 600;
    }
    main.contact .contact-blocks {
        border-right: 1px solid #f6f6f6;
    }
    main.contact .contact-block,
    main.contact .form-block {
        padding: 40px 4vw;
    }
}
@media (min-width: 1200px) and (min-width: 1600px) {
    main.contact .contact-block,
    main.contact .form-block {
        padding: 60px 10vw;
    }
}
@media (min-width: 1200px) {
    main.contact .map .view-map {
        font-size: 2rem;
        font-weight: 600;
        bottom: 70px;
        right: 4vw;
        text-align: center;
        max-width: 280px;
    }
}
@media (min-width: 1200px) {
    main.contact .persons {
        margin-bottom: 90px;
    }
    main.contact .persons .has-line:before {
        content: "";
        position: absolute;
        top: 46px;
        left: 0;
        width: 100%;
        height: 1px;
        background: #ddd;
        z-index: -1;
    }
}
@media (min-width: 1200px) {
    main.contact .person .person-info {
        padding: 0 40px 40px;
    }
    main.contact .person .contacts {
        margin-top: 45px;
    }
}
@media (min-width: 1200px) {
    main.contact .reg-info span {
        position: relative;
        display: inline-block;
        margin-right: 10px;
    }
    main.contact .reg-info span:first-of-type:after {
        content: "|";
        margin-left: 10px;
    }
}
@media (min-width: 1600px) {
    main.contact .person {
        width: 25%;
    }
}
main.job .page-content .row-text.row-blocks .text-content > div.bg-light,
main.sustainability .page-content .row-text.row-blocks .text-content > div.bg-light {
    padding: 30px;
}
main.job .page-content .row-full .text-content .bg-light,
main.sustainability .page-content .row-full .text-content .bg-light {
    text-align: left;
    padding: 25px;
}
@media (min-width: 1024px) {
    main.job .page-content .row-full .text-content,
    main.sustainability .page-content .row-full .text-content {
        text-align: center;
    }
    main.job .page-content .row-full .text-content > div,
    main.sustainability .page-content .row-full .text-content > div {
        padding: 60px;
    }
    main.job .page-content .row-full .text-content .bg-light,
    main.sustainability .page-content .row-full .text-content .bg-light {
        padding: 60px 8vw;
    }
}
main.job .page-content .icons,
main.sustainability .page-content .icons {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}
main.job .page-content .icons img,
main.sustainability .page-content .icons img {
    margin: 0 10px;
}
@media (max-width: 1199px) {
    main.job header.page-header p,
    main.sustainability header.page-header p {
        font-size: 1.4rem;
        font-weight: 300;
    }
    main.job .page-content,
    main.sustainability .page-content {
        padding-bottom: 30px;
        margin-bottom: 30px;
    }
    main.job .page-content .icons,
    main.sustainability .page-content .icons {
        justify-content: space-between;
        margin-right: -15px;
        margin-left: -15px;
    }
    main.job .page-content .icons img,
    main.sustainability .page-content .icons img {
        flex: 1 1 30%;
        max-width: 110px;
        margin: 20px 0;
    }
}
@media (min-width: 1200px) {
    main.job .page-content,
    main.sustainability .page-content {
        padding-bottom: 30px;
        margin-bottom: 60px;
    }
    main.job .page-content .row,
    main.sustainability .page-content .row {
        margin-bottom: 30px;
    }
    main.job .icons,
    main.sustainability .icons {
        margin-bottom: 30px;
    }
}
@media (max-width: 1199px) {
    main.sustainability header.page-header {
        padding-left: 15px;
        padding-right: 15px;
    }
    main.sustainability .header-image {
        margin-top: 30px;
        height: 15vh;
        min-height: 150px;
        margin-bottom: 0;
    }
    main.sustainability a.image {
        display: block;
    }
    main.sustainability a.image img {
        max-height: 25vh;
        object-fit: cover;
        object-position: top;
    }
}
@media (min-width: 1024px) and (max-width: 1199px) {
    main.sustainability header.page-header {
        padding-top: 30px;
    }
    main.sustainability .header-image {
        min-height: 250px;
    }
}
@media (min-width: 1200px) {
    main.sustainability .page-content {
        margin-bottom: 120px;
    }
}
main.calculator .page-header {
    color: #4e4e4f;
}
main.calculator .page-header .page-content {
    padding-top: 0;
    padding-bottom: 0;
}
main.calculator .page-header .page-content .text-block {
    padding-top: 60px;
    padding-bottom: 60px;
}
main.calculator .sub-service .item__header {
    position: relative;
    background-position: left 30px top;
}
main.calculator .sub-service .item__header > * {
    position: relative;
    z-index: 1;
}
main.calculator .sub-service .item__content,
main.calculator .sub-service .item__header {
    background-repeat: no-repeat;
    background-size: contain;
}
main.calculator .sub-service .item__content {
    background-position: right top;
}
main.calculator .page-content button.ff-btn-submit {
    padding-right: 65px;
    transform: none;
}
main.calculator .page-content button.ff-btn-submit:before {
    right: 30px;
}
main.calculator .row-media .media-content .lazyBg {
    background-size: contain !important;
}
main.calculator footer.info {
    margin-top: 60px;
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 40px;
}
main.calculator footer.info .app-links a {
    display: block;
    margin-bottom: 20px;
}
@media (max-width: 1199px) {
    main.calculator .services-grid article:first-of-type .item__content {
        background-image: url(../img/nr1.svg);
    }
    main.calculator .services-grid article:nth-of-type(2) .item__content {
        background-image: url(../img/nr2.svg);
    }
    main.calculator .row-media {
        flex-direction: column-reverse;
        padding-bottom: 30px;
    }
    main.calculator .row-media .media {
        margin-top: 30px;
    }
    main.calculator .before-calc {
        padding: 0 35px 30px;
    }
    main.calculator .before-calc .content-header {
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 30px;
    }
    main.calculator .before-calc .content-header h2 {
        margin: 0 0 20px 0;
    }
    main.calculator .page-header .page-content .text-block {
        padding: 30px;
    }
    main.calculator .page-header .links {
        margin-left: -15px;
        margin-right: -15px;
        display: flex;
    }
    main.calculator .page-header .links a {
        display: block;
        width: 100%;
        text-align: center;
        background: #1cabe2;
        color: #fff;
        font-size: 1.5rem;
        font-weight: 600;
        padding: 16px;
    }
    main.calculator .page-header .links a:first-of-type {
        background: #1f2c5f;
    }
    main.calculator button.ff-btn-submit {
        margin: 0 0 0 auto;
    }
    main.calculator footer.info {
        display: flex;
        flex-wrap: wrap;
        flex-direction: column-reverse;
    }
    main.calculator footer.info .app-links {
        display: flex;
        justify-content: space-between;
        gap: 20px;
    }
}
@media (min-width: 1200px) {
    main.calculator header .page-content {
        padding: 0 0 30px 0;
    }
    main.calculator .reference-header p {
        font-size: 2.2rem;
        font-weight: 300;
        color: #1f2c5f;
    }
    main.calculator .services-grid article:first-of-type .item__header {
        background-image: url(../img/nr1.svg);
    }
    main.calculator .services-grid article:nth-of-type(2) .item__header {
        background-image: url(../img/nr2.svg);
    }
}
.devices-img {
    background: #fff;
    margin-top: -60px;
}
.devices-img img {
    display: block;
    margin: auto;
    transform: translateY(50px);
}
section.calculator > .row {
    max-width: 900px;
    margin: auto;
}
section.calculator header p {
    font-size: 2.2rem;
    font-weight: 300;
    color: #1f2c5f;
}
section.calculator nav.step-titles {
    padding-bottom: 80px;
    max-width: 720px;
    margin: auto;
    overflow: hidden;
}
section.calculator nav.step-titles ul {
    display: flex;
    justify-content: space-between;
}
section.calculator nav.step-titles ul li {
    position: relative;
    width: 20%;
}
section.calculator nav.step-titles ul li:before {
    content: attr(data-step);
    display: block;
    font-size: 4.2rem;
    font-weight: 600;
    line-height: 80px;
    width: 80px;
    height: 80px;
    border-color: transparent;
    background: #fff;
    color: #1cabe2;
    border-radius: 50%;
    margin: 0 auto;
    text-align: center;
}
@media (max-width: 1199px) {
    section.calculator nav.step-titles ul li:before {
        font-size: 3rem;
    }
}
@media (max-width: 767px) {
    section.calculator nav.step-titles ul li:before {
        font-size: 2.3333333333rem;
        font-size: clamp(12px, 5vw, 60px);
    }
}
section.calculator nav.step-titles ul li:after {
    content: "";
    position: absolute;
    bottom: -40px;
    left: 0;
    width: 100%;
    height: 5px;
    background: #fff;
}
section.calculator nav.step-titles ul li.active:before,
section.calculator nav.step-titles ul li.completed:before {
    background: #1cabe2;
    color: #fff;
}
section.calculator nav.step-titles ul li.active:after,
section.calculator nav.step-titles ul li.completed:after {
    background: #1cabe2;
}
section.calculator .steps {
    margin-bottom: 60px;
    padding-left: 0;
    padding-right: 0;
    margin-left: auto;
    margin-right: auto;
}
.contact-layer section.calculator .steps button.ff-btn-submit,
.page-content form .ff-el-group section.calculator .steps button.ff-btn-submit,
main.service .faq footer section.calculator .steps a,
main.service .services-grid .sub-service .item__content section.calculator .steps a.inquiry,
main.solution .faq footer section.calculator .steps a,
main.solution .services-grid .sub-service .item__content section.calculator .steps a.inquiry,
main.solution .text-content section.calculator .steps a.inquiry,
section.calculator .steps .arrow-link,
section.calculator .steps .contact-layer button.ff-btn-submit,
section.calculator .steps .page-content form .ff-el-group button.ff-btn-submit,
section.calculator .steps main.service .faq footer a,
section.calculator .steps main.service .services-grid .sub-service .item__content a.inquiry,
section.calculator .steps main.solution .faq footer a,
section.calculator .steps main.solution .services-grid .sub-service .item__content a.inquiry,
section.calculator .steps main.solution .text-content a.inquiry {
    display: block;
    border: none;
    margin: 0 auto 30px auto;
}
.contact-layer section.calculator .steps button.ff-btn-submit:hover:before,
.page-content form .ff-el-group section.calculator .steps button.ff-btn-submit:hover:before,
main.service .faq footer section.calculator .steps a:hover:before,
main.service .services-grid .sub-service .item__content section.calculator .steps a.inquiry:hover:before,
main.solution .faq footer section.calculator .steps a:hover:before,
main.solution .services-grid .sub-service .item__content section.calculator .steps a.inquiry:hover:before,
main.solution .text-content section.calculator .steps a.inquiry:hover:before,
section.calculator .steps .arrow-link:hover:before,
section.calculator .steps .contact-layer button.ff-btn-submit:hover:before,
section.calculator .steps .page-content form .ff-el-group button.ff-btn-submit:hover:before,
section.calculator .steps main.service .faq footer a:hover:before,
section.calculator .steps main.service .services-grid .sub-service .item__content a.inquiry:hover:before,
section.calculator .steps main.solution .faq footer a:hover:before,
section.calculator .steps main.solution .services-grid .sub-service .item__content a.inquiry:hover:before,
section.calculator .steps main.solution .text-content a.inquiry:hover:before {
    right: 15px;
}
section.calculator .steps a.start {
    display: none;
    font-size: 1.3rem;
    font-weight: 400;
    letter-spacing: -0.4px;
    color: #1f2c5f;
}
section.calculator .steps .step-error {
    font-size: 1.2rem;
    font-weight: 400;
    color: #f56c6c;
    display: none;
    margin-bottom: 12px;
}
section.calculator .steps .option-missing {
    display: none;
    font-size: 2.2rem;
    font-weight: 300;
    color: #1f2c5f;
    margin-top: 60px;
}
section.calculator .step {
    text-align: center;
    display: none;
    padding-bottom: 60px;
    max-width: 720px;
    margin: auto;
}
section.calculator .step:first-of-type {
    max-width: 100%;
}
section.calculator .step-active {
    display: block;
}
section.calculator .step h3 {
    font-size: 3.5rem;
    font-weight: 600;
    color: #1f2c5f;
    margin-bottom: 60px;
}
section.calculator .step .fluentform {
    padding: 4vw 30px 30px 30px;
    background: #fff;
}
section.calculator .step .fluentform form {
    max-width: 420px;
    margin: auto;
}
section.calculator .step .ff-btn-submit {
    margin-top: 60px !important;
}
section.calculator .step .page-content {
    margin: auto;
    padding: 0;
}
section.calculator .step .page-content .text {
    color: #1f2c5f;
}
section.calculator .step .page-content .text h3 {
    font-size: 2.5rem;
    font-weight: 500;
    margin-bottom: 30px;
}
section.calculator .step .page-content .text p {
    font-size: 2.2rem;
    font-weight: 300;
    color: #1f2c5f;
}
section.calculator .step .disclaimer {
    background: #fff;
    padding: 0 4vw 9vh 4vw;
}
section.calculator .step .disclaimer p {
    font-size: 1.3rem;
    font-weight: 400;
    color: #1f2c5f;
    text-align: left;
    letter-spacing: -0.4px;
    max-width: 420px;
    margin: auto;
}
section.calculator .first-floor {
    display: none;
    text-align: left;
    margin-top: 32px;
}
section.calculator .devices {
    margin-top: 60px;
    display: none;
}
section.calculator .show_additional_info {
    display: none;
}
section.calculator .device {
    position: relative;
    margin-bottom: 50px;
}
section.calculator .device .bg-white {
    position: relative;
    padding: 45px 15px;
    border-radius: 20px;
    margin-bottom: 40px;
}
section.calculator .device .cnt {
    display: none;
    position: absolute;
    bottom: -25px;
    left: 0;
    right: 0;
    margin: auto;
    width: 50px;
    height: 50px;
    font-size: 2rem;
    font-weight: 600;
    color: #fff;
    background: #1cabe2;
    line-height: 50px;
    border-radius: 50%;
}
section.calculator .device .cnt:before {
    content: "x";
}
section.calculator .device h3 {
    font-size: 2rem;
    font-weight: 500;
    letter-spacing: -0.6px;
    color: #1f2c5f;
    margin-bottom: 20px;
}
section.calculator .device img {
    margin-bottom: 20px;
    width: auto;
    height: auto;
    max-height: 165px;
    max-width: 100%;
}
section.calculator .device a {
    font-size: 1.5rem;
    font-weight: 600;
    color: #1f2c5f;
}
section.calculator .device button {
    border: none;
    box-shadow: none;
    background: #fff;
}
section.calculator .device .quantity {
    display: flex;
    float: left;
    border-radius: 10px;
    overflow: hidden;
    margin-left: 16px;
    padding: 0 8px;
    background: #fff;
}
section.calculator .device .qty {
    font-size: 1.5rem;
    font-weight: 400;
    color: #1f2c5f;
    box-shadow: none;
    margin: 0;
}
section.calculator .device .select {
    display: flex;
}
section.calculator .device .change {
    display: none;
}
section.calculator .device .change,
section.calculator .device .select {
    margin-top: 50px;
    justify-content: center;
    align-items: center;
}
section.calculator .device .change svg,
section.calculator .device .select svg {
    margin-left: 10px;
    transition: 0.25s all ease-in;
}
section.calculator .device .change:hover svg,
section.calculator .device .select:hover svg {
    transform: translateX(3px);
}
section.calculator .device.selected .cnt {
    display: block;
}
section.calculator .device.selected .change {
    display: flex;
}
section.calculator .device.selected .quantity,
section.calculator .device.selected .select {
    display: none;
}
section.calculator .device.hidden {
    display: none;
}
section.calculator .choices {
    display: flex;
    justify-content: center;
}
section.calculator .radio-field label,
section.calculator .radio-image-field label {
    cursor: pointer;
}
section.calculator .radio-field input[type="radio"],
section.calculator .radio-image-field input[type="radio"] {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}
section.calculator .radio-image-field {
    background: #fff;
    transition: 0.3s all ease-in;
}
section.calculator .radio-image-field label {
    padding: 30px;
    margin: 0;
    width: 100%;
}
section.calculator .radio-image-field svg {
    margin-bottom: 15px;
}
section.calculator .radio-image-field svg path {
    fill: #0087c7;
}
section.calculator .radio-image-field p {
    font-size: 2rem;
    font-weight: 600;
    color: #0087c7;
}
section.calculator .radio-image-field.active,
section.calculator .radio-image-field:hover {
    background: #1cabe2;
}
section.calculator .radio-image-field.active path,
section.calculator .radio-image-field:hover path {
    fill: #fff;
}
section.calculator .radio-image-field.active p,
section.calculator .radio-image-field:hover p {
    color: #fff;
}
section.calculator .radio-field {
    margin: 0 15px;
}
section.calculator .radio-field label {
    width: 50px;
    height: 50px;
    display: block;
    color: #1cabe2;
    border-radius: 50%;
    text-align: center;
    font-size: 2.6rem;
    font-weight: 600;
    line-height: 50px;
}
section.calculator .radio-field label input ~ span {
    display: block;
    border-radius: 50%;
    background: #fff;
    color: #1cabe2;
    transition: 0.25s all ease-in-out;
}
section.calculator .radio-field label input:checked ~ span,
section.calculator .radio-field label:hover input ~ span {
    background: #1cabe2;
    color: #fff;
}
section.calculator .check-field--lg label:before {
    border: 1px solid #1f2c5f;
}
@media (max-width: 1024px) {
    section.calculator {
        padding-left: 20px;
        padding-right: 20px;
    }
    section.calculator header {
        padding-bottom: 30px;
    }
    section.calculator .radio-image-field label {
        padding: 20px;
    }
    section.calculator .radio-image-field label p {
        font-size: 1.5rem;
        font-weight: 600;
        margin-bottom: 0;
    }
    section.calculator .radio-image-field svg {
        max-height: 95px;
        width: auto;
        margin-bottom: 10px;
    }
    section.calculator .step-titles {
        display: none;
    }
    section.calculator .step {
        padding-bottom: 30px;
    }
    section.calculator .step .form-header {
        padding: 30px;
        text-align: left;
    }
    section.calculator .step .form-header h2,
    section.calculator .step .form-header h3 {
        font-size: 2rem;
        font-weight: 600;
        margin: auto auto 30px;
    }
    section.calculator .step .form-header h2,
    section.calculator .step .form-header h3,
    section.calculator .step .form-header p {
        color: #fff;
    }
    section.calculator .step .form-header p {
        font-size: 1.8rem;
        font-weight: 300;
    }
    section.calculator .step .page-content .text {
        padding-top: 80px;
    }
    section.calculator .step .page-content .text p {
        font-size: 1.7rem;
        font-weight: 300;
    }
    section.calculator .step h2 {
        font-size: 2rem;
        font-weight: 600;
    }
    section.calculator .step h3 {
        font-size: 2rem;
        font-weight: 500;
        margin-bottom: 30px;
    }
    section.calculator .step .page-content h4 {
        font-size: 1.7rem;
        font-weight: 500;
    }
    section.calculator .choice-group {
        margin-bottom: 30px;
        padding-left: 40px;
        padding-right: 40px;
    }
    section.calculator .devices .col-md-12,
    section.calculator .devices .col-md-8,
    section.calculator .package .col-md-12,
    section.calculator .package .col-md-8 {
        width: 50%;
    }
    section.calculator .first-floor {
        margin-top: 22px;
    }
    section.calculator .devices {
        margin-top: 30px;
    }
    section.calculator .device .bg-white {
        padding-bottom: 20px;
    }
    section.calculator .device h3 {
        font-size: 1.4rem;
        font-weight: 500;
        margin-bottom: 0;
        min-height: 30px;
    }
    section.calculator .device .quantity {
        padding: 0;
    }
    section.calculator .device .qty {
        width: 20px;
        padding: 8px 0;
    }
    section.calculator .device img {
        max-height: 80px;
    }
    section.calculator .device .select svg {
        display: none;
    }
}
@media (min-width: 1025px) {
    section.calculator header {
        text-align: center;
    }
}
.package-calculator {
    text-align: center;
}
.package-calculator input[type="number"] {
    max-width: 60px;
    padding: 12px;
    text-align: center;
    border: none;
    margin-left: 10px;
}
.package-calculator h3 {
    margin-bottom: 30px;
}
.package-calculator h4 {
    font-size: 2.5rem;
    font-weight: 500;
    color: #1f2c5f;
    margin-bottom: 30px;
}
.package-calculator h4 span {
    color: #0087c7;
}
.package-calculator h4 span:after {
    content: "€";
}
.package-calculator p {
    font-size: 2.2rem;
    font-weight: 300;
    color: #1f2c5f;
}
main.search-results {
    margin-top: 80px;
}
@media (min-width: 1200px) {
    main.search-results {
        margin-top: 135px;
    }
}
main.search-results .search-items h2 {
    font-size: 2.5rem;
    font-weight: 500;
    color: #1f2c5f;
    margin-bottom: 30px;
}
main.search-results .result-count {
    font-size: 1.3rem;
    font-weight: 400;
    color: #1f2c5f;
}
main.search-results .search__item {
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: 1px solid #f6f6f6;
}
main.search-results .search__item:last-of-type {
    border: none;
}
main.search-results .search__item h3 {
    margin-bottom: 20px;
}
main.search-results .search__item p {
    color: #1f2c5f;
}
main.search-results .search__item figure {
    max-height: 150px;
    overflow: hidden;
    margin-bottom: 20px;
}
main.search-results .search-form input[type="search"],
main.search-results .search-form input[type="text"] {
    background: #fff;
    border: none;
    background: #f6f6f6;
    border-radius: 20px;
    height: 40px;
    box-shadow: none;
    color: #0087c7;
    padding: 10px 20px;
    margin-bottom: 0;
    width: 100%;
}
main.search-results .search-form button svg .cls-1 {
    fill: none;
}
main.search-results .search-form button svg .cls-2 {
    fill: #1cabe2;
}
main.job .apply,
main.jobs .apply {
    padding-bottom: 30px;
    margin-bottom: 60px;
}
main.job header.form-header p,
main.jobs header.form-header p {
    font-size: 2.2rem;
    font-weight: 300;
    color: #1f2c5f;
}
@media (max-width: 1024px) {
    main.job .header-image,
    main.jobs .header-image {
        min-height: 150px;
        height: 15vh;
        margin-bottom: 0;
    }
    main.job .form-title,
    main.jobs .form-title {
        font-size: 1.7rem;
        font-weight: 600;
        color: #1f2c5f;
        margin: 30px 30px 0;
    }
    main.job section.apply,
    main.jobs section.apply {
        padding-left: 0;
        padding-right: 0;
        padding-bottom: 20px;
        margin-bottom: 30px;
    }
    main.job section.apply .fluentform,
    main.jobs section.apply .fluentform {
        padding: 10px 20px 20px 20px;
    }
    main.job section.apply .form-header p,
    main.jobs section.apply .form-header p {
        font-size: 1.8rem;
        font-weight: 300;
        color: #fff;
    }
    main.job section.why-join,
    main.jobs section.why-join {
        margin-left: 20px;
        margin-right: 20px;
        width: auto;
    }
    main.job section.why-join .why-join-text,
    main.jobs section.why-join .why-join-text {
        padding: 30px;
    }
}
@media (min-width: 1200px) {
    main.job header.form-header,
    main.jobs header.form-header {
        padding-top: 120px;
    }
    main.job .fluentform,
    main.jobs .fluentform {
        max-width: 414px;
        margin: auto;
    }
    main.job section.why-join h2,
    main.jobs section.why-join h2 {
        font-size: 3.5rem;
        font-weight: 600;
    }
}
main.jobs {
    margin: 95px auto auto;
}
main.jobs article.page-content {
    width: auto;
    margin-bottom: 60px;
    padding-top: 30px;
}
@media (max-width: 1024px) {
    main.jobs article.page-content {
        margin-left: 20px;
        margin-right: 20px;
    }
}
@media (min-width: 1200px) {
    main.jobs article.page-content {
        margin-left: 87px;
        margin-right: 87px;
    }
}
@media (max-width: 1024px) {
    main.jobs .pb-6 {
        padding-bottom: 0;
    }
}
@media (max-width: 1199px) {
    main.jobs h1 {
        margin-bottom: 10px;
    }
    main.jobs .job-item .lazyBg {
        height: 170px;
        min-height: unset;
    }
}
@media (min-width: 1200px) {
    main.jobs {
        margin: 125px auto auto;
    }
    main.jobs article.page-content {
        padding-top: 60px;
    }
}
main.jobs .why-join {
    margin-bottom: 12vh;
}
main.jobs .why-join .row {
    align-items: center;
}
main.jobs .why-join .lazyBg {
    height: 90vh;
}
main.jobs .job-ads {
    background: transparent conic-gradient(from 116deg at 50% 50%, #1f2c5f 0, #0087c7 100%);
    color: #fff;
    padding-top: 12vh;
    margin-bottom: 60px;
}
main.jobs .job-ads h2 {
    font-size: 3.5rem;
    font-weight: 600;
    margin-bottom: 30px;
    color: #fff;
}
main.jobs .job-ads .pagination {
    margin-top: 60px;
}
main.jobs .job-ads .pagination .page-numbers {
    color: #1cabe2;
    transform: none;
    display: block;
    width: 40px;
    height: 40px;
    padding-top: 10px;
    text-align: center;
    margin: 0 15px;
}
main.jobs .job-ads .pagination .page-numbers.current {
    background: #1cabe2;
    color: #fff;
}
main.jobs .job-ads .pagination .next,
main.jobs .job-ads .pagination .prev {
    background: 0 0;
}
main.jobs .job-ads .pagination .next svg,
main.jobs .job-ads .pagination .prev svg {
    display: block;
}
main.jobs .job-item {
    height: calc(100% - 30px);
}
main.jobs table.jobs {
    width: 100%;
    margin-bottom: 60px;
}
main.jobs table.jobs a {
    color: #fff;
}
main.jobs table.jobs th {
    font-size: 2rem;
    font-weight: 600;
}
main.jobs table.jobs td,
main.jobs table.jobs th {
    padding: 30px 0;
    border-bottom: 1px solid #1cabe2;
}
main.jobs table.jobs tbody tr {
    display: none;
}
main.jobs table.jobs tbody tr.active {
    display: table-row;
}
main.jobs form {
    padding-top: 30px;
    max-width: 450px;
    margin: auto;
    text-align: left;
}
@media (max-width: 1024px) {
    main.jobs .page-header {
        padding-left: 15px;
    }
    main.jobs article.page-content {
        padding-left: 20px;
        padding-right: 20px;
        padding-bottom: 30px;
        margin-bottom: 30px;
    }
    main.jobs .why-join {
        margin-bottom: 30px;
    }
    main.jobs .why-join .lazyBg {
        height: 30vh;
    }
    main.jobs .why-join .why-join-text {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    main.jobs .job-ads {
        padding-top: 60px;
        padding-left: 5px;
        padding-right: 5px;
        margin-bottom: 30px;
    }
    main.front .about main.jobs .job-ads h1,
    main.front .about main.jobs .job-ads h2,
    main.jobs .job-ads .section-title,
    main.jobs .job-ads header.content-header h2,
    main.jobs .job-ads header.form-header h2,
    main.jobs .job-ads main.front .about h1,
    main.jobs .job-ads main.front .about h2,
    main.jobs .job-ads main.service .services-grid h2,
    main.jobs .job-ads main.solution .services-grid h2,
    main.jobs .job-ads main.solution section.contact-us header h2,
    main.jobs .job-ads main.solution section.process .process-intro h2,
    main.jobs .job-ads main.solution section.segments h2,
    main.jobs .job-ads section.calculator header h2,
    main.jobs header.content-header .job-ads h2,
    main.jobs header.form-header .job-ads h2,
    main.service .services-grid main.jobs .job-ads h2,
    main.solution .services-grid main.jobs .job-ads h2,
    main.solution section.contact-us header main.jobs .job-ads h2,
    main.solution section.process .process-intro main.jobs .job-ads h2,
    main.solution section.segments main.jobs .job-ads h2,
    section.calculator header main.jobs .job-ads h2 {
        position: relative;
        font-size: 2rem;
        font-weight: 600;
        padding: 0 50px 40px 50px;
    }
    main.front .about main.jobs .job-ads h1:after,
    main.front .about main.jobs .job-ads h2:after,
    main.jobs .job-ads .section-title:after,
    main.jobs .job-ads header.content-header h2:after,
    main.jobs .job-ads header.form-header h2:after,
    main.jobs .job-ads main.front .about h1:after,
    main.jobs .job-ads main.front .about h2:after,
    main.jobs .job-ads main.service .services-grid h2:after,
    main.jobs .job-ads main.solution .services-grid h2:after,
    main.jobs .job-ads main.solution section.contact-us header h2:after,
    main.jobs .job-ads main.solution section.process .process-intro h2:after,
    main.jobs .job-ads main.solution section.segments h2:after,
    main.jobs .job-ads section.calculator header h2:after,
    main.jobs header.content-header .job-ads h2:after,
    main.jobs header.form-header .job-ads h2:after,
    main.service .services-grid main.jobs .job-ads h2:after,
    main.solution .services-grid main.jobs .job-ads h2:after,
    main.solution section.contact-us header main.jobs .job-ads h2:after,
    main.solution section.process .process-intro main.jobs .job-ads h2:after,
    main.solution section.segments main.jobs .job-ads h2:after,
    section.calculator header main.jobs .job-ads h2:after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        height: 1px;
        width: 100%;
        background: #3bc9ff;
    }
    main.jobs .job-ad {
        border-bottom: 1px solid #3bc9ff;
        padding-bottom: 40px;
        padding-left: 50px;
        padding-right: 50px;
        margin-bottom: 20px;
    }
    main.jobs .job-ad:last-of-type {
        border: none;
    }
    main.jobs .job-ad h3 {
        font-size: 1.4rem;
        font-weight: 600;
        margin-bottom: 20px;
    }
    main.jobs .job-ad p,
    main.jobs .job-ad ul li {
        font-size: 1.3rem;
        font-weight: 400;
        letter-spacing: -0.4px;
    }
    main.jobs .job-ad ul {
        margin-bottom: 20px;
    }
    main.jobs .job-ad p.salary {
        font-weight: 600;
        padding: 15px 20px;
        background: #1cabe2;
        display: inline-block;
        margin: 0;
    }
    main.jobs .job-ad .job-footer {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    main.jobs .job-ad a.view {
        display: block;
    }
    main.jobs .job-ad a.view svg {
        width: 16px;
    }
    main.jobs .job-ad a.view svg .cls-1 {
        fill: #fff;
    }
    main.jobs .apply {
        margin-left: 20px;
        margin-right: 20px;
        width: auto;
    }
}
main.jobs .job-item-desc h4 {
    font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 20px;
}
main.jobs .job-item-desc p {
    font-size: 1.3rem;
    font-weight: 400;
    color: #4e4e4f;
    margin-bottom: 0;
}
@media (min-width: 1024px) and (max-width: 1199px) {
    main.jobs .header-image {
        min-height: 250px;
    }
    main.jobs .apply {
        padding-top: 30px;
    }
}
main.page.job .page-content .row-full .text-content {
    text-align: left;
}
main.page.job .page-content .row-full .text-content > div {
    background: #f6f6f6;
}
main.page.job a[href^="mailto"],
main.page.job a[href^="tel"] {
    position: relative;
    padding-left: 40px;
}
main.page.job a[href^="mailto"]:before,
main.page.job a[href^="tel"]:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
}
main.page.job a[href^="tel"]:before {
    background: url(../img/phone-icon-primary.svg) no-repeat center;
    background-size: 20px;
}
main.page.job a[href^="mailto"]:before {
    background: url(../img/email-icon-primary.svg) no-repeat center;
    background-size: 20px;
}
@media (max-width: 1024px) {
    main.page.job .header-image {
        margin-top: 30px;
    }
    main.page.job article.page-content {
        padding-left: 30px;
        padding-right: 30px;
    }
    main.page.job article.page-content .text-content {
        padding: 30px 15px 0 15px;
    }
    main.page.job .row-full .text-content > div {
        padding: 30px 30px 0;
    }
}
@media (min-width: 1025px) {
    main.page.job .row-full .text-content > div {
        padding: 60px;
    }
}



button.arrow-link {
    border: 0 none;
}

.fluentform form .ff-el-form-control, .fluentform form input[type=email], .fluentform form input[type=number], .fluentform form input[type=password], .fluentform form input[type=search], .fluentform form input[type=tel], .fluentform form input[type=text], .fluentform form select, .fluentform form textarea, form .ff-el-form-control, form input[type=email], form input[type=number], form input[type=password], form input[type=search], form input[type=tel], form input[type=text], form select, form textarea {
    border: none;
    border-bottom: 1px solid #ddd;
    border-radius: 0;
    box-shadow: none;
}
.pw_protected {
    max-width: 600px;
    margin: 0 auto;
    padding: 0 15px;
}
.pw_protected button {
    float: right;
}
.pw_protected form {
    max-width: 400px;
    margin: auto;
}
.pw_protected input::placeholder {
    font-size: 14px;
}
.pw_protected input {
    text-align: left;
    margin-top: 2rem;
    padding: 1rem 3rem;
    margin-bottom: 2rem !important;
}
.koolitus_intro {
    margin-bottom: 6rem;
}

.embed-container { 
    position: relative; 
    padding-bottom: 56.25%;
    overflow: hidden;
    max-width: 100%;
    height: auto;
} 

.embed-container iframe,
.embed-container object,
.embed-container embed { 
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.el_wrap_2 {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 3rem;
    margin: 6rem 0;
}
.limited-width {
    max-width: 1300px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.el_wrap_2 div {
    background: #F6F6F6;
}
.el_wrap_2 div span {
    display: block;
    padding: 3rem 4rem;
    color: #1F2C5F;
    font-weight: 600;
}
main.koolituskeskkond .page-content {
    display: flex;
    flex-wrap: wrap;
    padding-top: 6rem;
}

main.koolituskeskkond header.solution-header.scroll {
    margin-left: 0;
    padding-left: 87px;
}
.el_wrap {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 3rem;
    margin: 6rem 0;
}
.el_wrap div {
    background: #F6F6F6;

    text-align: center;
    transition: all .3s;
}
.el_wrap div a {
    color: #1F2C5F;
    display: block;
    padding: 3rem;
}

.el_wrap div:hover {
    box-shadow: 10px 10px 30px rgba(73, 139, 170, 0.3019607843);
}

main.koolituskeskkond .page-content.notloggedin {
    padding-left: 6rem;
    padding-right: 6rem;
    margin-bottom: 18rem;
    padding-top: 0;
    background-size: cover;
    background-position: center;
}
main.koolituskeskkond .page-content.notloggedin > article {
    transform: translateY(12rem);
    padding-top: 12rem;
    padding-bottom: 12rem;
}
section#test {
    padding-bottom: 12rem;
}
section#test > div {
    display: grid;
    grid-template-columns: auto auto;
    justify-content: center;
    align-items: center;
    grid-gap: 3rem;
    padding-bottom: 6rem;
}

@media (max-width: 1199px) {

    main.koolituskeskkond header.content-header {
        text-align: center;
    }
    .el_wrap,
    .el_wrap_2 {
        grid-template-columns: 1fr 1fr;
    }
    main.koolituskeskkond .sticky-submenu {
        display: none;
    }
}
@media (max-width: 767px) {
    .el_wrap,
    .el_wrap_2 {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 500px) {
    section#test > div {
        grid-template-columns: auto;
        text-align: center;
        padding-bottom: 3rem;
    }
    section#test {
        padding-bottom: 3rem;
    }
    main.koolituskeskkond .page-content.notloggedin > article {
        transform: translateY(0);
        padding-top: 3rem;
        padding-bottom: 3rem;
    }
    main.koolituskeskkond .page-content.notloggedin {
        padding-left: 0;
        padding-right: 0;
        margin-bottom: 3rem;
        padding-bottom: 0;
    }
}


body .wpml-ls-legacy-list-horizontal a {
    margin-left: 0;
}