@font-face {
    font-family: "Sequel Sans Book Disp";
    src: url("../fonts/sequalsans/SequelSans-BookDisp.woff2") format("woff2"),
        url("../fonts/sequalsans/SequelSans-BookDisp.woff") format("woff");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Sequel Sans Book Body";
    src: url("../fonts/sequalsans/SequelSans-BookBody.woff2") format("woff2"),
        url("../fonts/sequalsans/SequelSans-BookBody.woff") format("woff");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Sequel Sans Medium Body";
    src: url("../fonts/sequalsans/SequelSans-MediumBody.woff2") format("woff2"),
        url("../fonts/sequalsans/SequelSans-MediumBody.woff") format("woff");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

:root {
    --ss-body: "Sequel Sans Book Body";
    --ss-medium: "Sequel Sans Medium Body";
    --ss-disp: "Sequel Sans Book Disp";
    --grey-900: #272d37;
    --grey-700: #66737f;
    --grey-500: #adb9c7;
    --grey-300: #d5dde5;
    --grey-200: #e7ecf2;
    --grey-100: #eef2f6;
    --primary-500: #cb252b;
}

.hide-md {
    display: block;
}
.show-md,
.show-lg {
    display: none;
}
.spacer-pt-sm,
.spacer-pt-xs,
.spacer-pt-xxs {
    padding-top: 40px;
}
.spacer-pb-sm,
.spacer-pb-xs,
.spacer-pb-xxs {
    padding-bottom: 40px;
}
.spacer-mt-sm,
.spacer-mt-xs,
.spacer-mt-xxs {
    margin-top: 40px;
}
.spacer-mb-sm,
.spacer-mb-xs,
.spacer-mb-xxs {
    margin-bottom: 40px;
}
.spacer-min-mt-sm,
.spacer-min-mt-xs,
.spacer-min-mt-xxs {
    margin-top: -40px;
}
.spacer-min-mb-sm,
.spacer-min-mb-xs,
.spacer-min-mb-xxs {
    margin-bottom: -40px;
}
.px-sm {
    padding-left: 32px;
    padding-right: 32px;
}
.container {
    max-width: 100%;
    padding-left: 24px;
    padding-right: 24px;
}
.bg-grey-200 {
    background-color: var(--grey-200) !important;
}
.bg-grey-300 {
    background-color: var(--grey-300) !important;
}
.bg-grey-700 {
    background-color: var(--grey-700) !important;
}
.bg-grey-900 {
    background-color: var(--grey-900) !important;
}
.bg-primary {
    background-color: var(--primary-500) !important;
}
.bg-white {
    background-color: #ffffff !important;
}
.bg-gradient-01 {
    background: #ffffff;
    background: linear-gradient(
        360deg,
        rgba(255, 255, 255, 1) 0%,
        rgba(244, 241, 250, 0.8) 100%
    );
}
.border-grey-200 {
    border-color: var(--grey-200) !important;
}
.border-grey-700 {
    border-color: var(--grey-700) !important;
}
.border-grey-900 {
    border-color: var(--grey-900) !important;
}
.border-primary {
    border-color: var(--primary-500) !important;
}
.bb-grey-300 {
    border-bottom: 1px solid var(--grey-300);
}
.text-grey-200 {
    color: var(--grey-200) !important;
}
.text-grey-700 {
    color: var(--grey-700) !important;
}
.text-grey-900 {
    color: var(--grey-900) !important;
}
.text-primary {
    color: var(--primary-500) !important;
}
.text-white {
    color: #ffffff !important;
}
.lh-100 {
    line-height: 100% !important;
}
.lh-150 {
    line-height: 150% !important;
}
.lh-200 {
    line-height: 200% !important;
}
.fs-12 {
    font-size: 12px;
}
.fs-14 {
    font-size: 14px;
}
.fs,
.fs-16 {
    font-size: 16px;
}
.fs-xs {
    font-size: 12px;
}
.fs-sm {
    font-size: 14px;
}
.fs-md {
    font-size: 18px;
}
.fs-lg {
    font-size: 20px;
}
.fs-xl {
    font-size: 20px;
}
.h-full {
    height: 100%;
}
.h-auto {
    height: auto !important;
}
.h-unset {
    height: unset;
}
.w-full {
    width: 100% !important;
}
.w-auto {
    width: auto;
}
.w-unset {
    width: unset;
}
.h-full {
    height: 100% !important;
}
.mt-0 {
    margin-top: 0 !important;
}
.rounded-4 {
    border-radius: 4px;
}
.rounded-8 {
    border-radius: 8px;
}
.uppercase {
    text-transform: uppercase;
}
.capitalize {
    text-transform: capitalize;
}
.lowercase {
    text-transform: lowercase;
}
.lg-max-80,
.xl-max-80 {
    max-width: 100%;
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.p-0 {
    padding: 0 !important;
}
.py-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
.bb {
    border-bottom: 1px solid var(--grey-300);
}
.mb-24 {
    margin-bottom: 24px;
}
.mb-4 {
    margin-bottom: 4px !important;
}
.absolute {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
.pos-relative {
    position: relative;
}
.icon-sm {
    width: 48px !important;
    height: 48px !important;
}
.sw-footer {
    display: flex;
    flex-direction: row;
    column-gap: 32px;
    align-items: center;
    justify-content: center;

    position: relative;
    z-index: 2;
}
.sw-footer .sw-btn-prev,
.sw-footer .sw-btn-next {
    width: 48px;
    height: 48px;

    position: relative;
    background-color: var(--primary-500);
    transition: all 0.3s ease;
}
.sw-footer .sw-btn-prev:before,
.sw-footer .sw-btn-next:before {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 24px;
    height: 24px;
    margin-top: -12px;
    margin-left: -12px;
    content: "";
}
.sw-footer .sw-btn-prev:before {
    background: url("../img/svg/i-arrow-white.svg") no-repeat;
    background-size: 100% 100%;
    background-position: center;
    transform: rotate(-180deg);
}
.sw-footer .sw-btn-next:before {
    background: url("../img/svg/i-arrow-white.svg") no-repeat;
    background-size: 100% 100%;
    background-position: center;
}
.sw-footer .sw-btn-prev.swiper-button-disabled,
.sw-footer .sw-btn-next.swiper-button-disabled {
    background-color: var(--grey-100);
}
.sw-footer .sw-btn-prev.swiper-button-disabled:before {
    background: url("../img/svg/i-arrow-black.svg") no-repeat;
    background-size: 100% 100%;
    background-position: center;
    transform: rotate(-180deg);
}
.sw-footer .sw-btn-next.swiper-button-disabled:before {
    background: url("../img/svg/i-arrow-black.svg") no-repeat;
    background-size: 100% 100%;
    background-position: center;
}
.sw-footer .swiper-pagination {
    width: auto;
}
.sw-footer .swiper-pagination .swiper-pagination-bullet {
    opacity: 1 !important;
    background: var(--grey-300) !important;
    margin-left: 4px !important;
    margin-right: 4px !important;
    transition: all 0.3s ease;
}
.sw-footer
    .swiper-pagination
    .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: var(--primary-500) !important;
}
.card-thumbs {
    position: relative;
}
.card-thumbs a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;

    color: transparent;
    outline: none;
    text-decoration: none;
}
.card-thumbs picture,
.card-thumbs img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.card-thumbs img {
    transition: transform 0.5s ease;
}
@media (min-width: 360px) {
    .spacer-pt-sm,
    .spacer-pt-xs {
        padding-top: calc(3.97614vw + 25.68588px);
    }
    .spacer-pb-sm,
    .spacer-pb-xs {
        padding-bottom: calc(3.97614vw + 25.68588px);
    }
    .spacer-mt-sm,
    .spacer-mt-xs {
        margin-top: calc(3.97614vw + 25.68588px);
    }
    .spacer-mb-sm,
    .spacer-mb-xs {
        margin-bottom: calc(3.97614vw + 25.68588px);
    }

    .spacer-min-mt-sm,
    .spacer-min-mt-xs {
        margin-top: -calc(3.97614vw + 25.68588px);
    }
    .spacer-min-mb-sm,
    .spacer-min-mb-xs {
        margin-bottom: -calc(3.97614vw + 25.68588px);
    }
}
@media (min-width: 768px) {
    .container {
        max-width: 100%;
        padding-left: 32px;
        padding-right: 32px;
    }

    .hide-md {
        display: none;
    }
    .show-md {
        display: block;
    }
    .flex-md-row-reverse {
        flex-direction: row-reverse;
    }
    .px-sm {
        padding-left: 48px;
        padding-right: 48px;
    }
}
@media (min-width: 992px) {
    .fs-xs {
        font-size: 14px;
    }
    .fs-sm {
        font-size: 16px;
    }
    .fs {
        font-size: 18px;
    }
    .fs-md {
        font-size: 20px;
    }
    .fs-lg {
        font-size: 22px;
    }
    .fs-xl {
        font-size: 22px;
    }
    .lg-max-80 {
        max-width: 80%;
    }
    .container-max-lg {
        max-width: 960px !important;
    }
}
@media (min-width: 1200px) {
    .show-lg {
        display: block;
    }
    .xl-max-80 {
        max-width: 80%;
    }
    .px-sm {
        padding-left: 56px;
        padding-right: 56px;
    }
}
@media (min-width: 1366px) {
    .spacer-pt-xxs {
        padding-top: 40px;
    }
    .spacer-pb-xxs {
        padding-bottom: 40px;
    }
    .spacer-pt-xs {
        padding-top: 60px;
    }
    .spacer-pb-xs {
        padding-bottom: 60px;
    }
    .spacer-pt-sm {
        padding-top: 80px;
    }
    .spacer-pb-sm {
        padding-bottom: 80px;
    }

    .spacer-mt-xxs {
        margin-top: 40px;
    }
    .spacer-mb-xxs {
        margin-bottom: 40px;
    }
    .spacer-mt-xs {
        margin-top: 60px;
    }
    .spacer-mb-xs {
        margin-bottom: 60px;
    }
    .spacer-mt-sm {
        margin-top: 80px;
    }
    .spacer-mb-sm {
        margin-bottom: 80px;
    }

    .spacer-min-mt-xxs {
        margin-top: -40px;
    }
    .spacer-min-mb-xxs {
        margin-bottom: -40px;
    }
    .spacer-min-mt-xs {
        margin-top: -60px;
    }
    .spacer-min-mb-xs {
        margin-bottom: -60px;
    }
    .spacer-min-mt-sm {
        margin-top: -80px;
    }
    .spacer-min-mb-sm {
        margin-bottom: -80px;
    }
}
@media (min-width: 1440px) {
    .fs-xl {
        font-size: 24px;
    }
    .container {
        max-width: 1312px !important;
        padding-left: 0;
        padding-right: 0;
    }
    .container-max-lg {
        max-width: 960px !important;
    }
    .px-sm {
        padding-left: 64px;
        padding-right: 64px;
    }
}
@media (min-width: 1920px) {
    .container {
        max-width: 1312px !important;
        padding-left: 0;
        padding-right: 0;
    }
    .container-max-lg {
        max-width: 960px !important;
    }
}

h1,
h2,
h3,
h4,
h5,
.h1,
.h2,
.h3,
.h4,
.h5 {
    font-family: var(--ss-disp);
    font-weight: 500;
    font-style: normal;
}
h1,
h2 a,
h3 a,
h4 a,
h5 a,
.h1,
.h2 a,
.h3 a,
.h4 a,
.h5 a {
    font-size: inherit;
    line-height: inherit;
    color: inherit;
    text-decoration: none;
}
h1 br,
h2 br,
h3 br,
h4 br,
h5 br,
.h1 br,
.h2 br,
.h3 br,
.h4 br,
.h5 br {
    display: none;
}
h1 span,
h2 span,
h3 span,
h4 span,
h5 span,
.h1 span,
.h2 span,
.h3 span,
.h4 span,
.h5 span {
    position: relative;
    display: inline-block;
    padding-right: 20px;
    color: var(--primary-500);
}
h1 span::after,
h2 span::after,
h3 span::after,
h4 span::after,
h5 span::after,
.h1 span::after,
.h2 span::after,
.h3 span::after,
.h4 span::after,
.h5 span::after {
    position: absolute;
    right: 0;
    content: "";
    background: url("../img/svg/plus.svg") no-repeat;
    background-size: 100% 100%;
    background-position: center;
}
h1 span.color,
h2 span.color,
h3 span.color,
h4 span.color,
h5 span.color,
.h1 span.color,
.h2 span.color,
.h3 span.color,
.h4 span.color,
.h5 span.color {
    padding-right: 0;
}
h1 span.color::after,
h2 span.color::after,
h3 span.color::after,
h4 span.color::after,
h5 span.color::after,
.h1 span.color::after,
.h2 span.color::after,
.h3 span.color::after,
.h4 span.color::after,
.h5 span.color::after {
    display: none;
}
h1,
.h1 {
    font-size: 48px;
    line-height: 120%;
}
h1 span,
.h1 span {
    padding-right: 20px;
}
h1 span:after,
.h1 span:after {
    top: 30%;
    width: 16px;
    height: 16px;
}
h2,
.h2 {
    font-size: 36px;
    line-height: 150%;
}
h3,
.h3 {
    font-size: 32px;
    line-height: 150%;
}
h4,
.h4 {
    font-size: 24px;
    line-height: 150%;
}
h5,
.h5 {
    font-size: 22px;
    line-height: 150%;
}

@media (min-width: 480px) {
    h1,
    .h1 {
        font-size: 50px;
    }
    h1 span,
    .h1 span {
        padding-right: 22px;
    }
    h1 span:after,
    .h1 span:after {
        width: 18px;
        height: 18px;
    }
}
@media (min-width: 576px) {
    h1,
    .h1 {
        font-size: 60px;
    }
    h4,
    .h4 {
        font-size: 28px;
    }
}
@media (min-width: 768px) {
    h1 br,
    h2 br,
    h3 br,
    h4 br,
    h5 br,
    .h1 br,
    .h2 br,
    .h3 br,
    .h4 br,
    .h5 br {
        display: block;
    }
    h1,
    .h1 {
        font-size: 64px;
    }
    h1 span,
    .h1 span {
        padding-right: 22px;
    }
    h1 span:after,
    .h1 span:after {
        width: 18px;
        height: 18px;
    }
}
@media (min-width: 992px) {
    h2,
    .h2,
    h3,
    .h3,
    h4,
    .h4,
    h5,
    .h5 {
        line-height: 200%;
    }
}
@media (min-width: 1024px) {
    h1,
    .h1 {
        font-size: 70px;
    }
    h2,
    .h2 {
        font-size: 40px;
    }
    h3,
    .h3 {
        font-size: 32px;
    }
    h4,
    .h4 {
        font-size: 30px;
    }
    h5,
    .h5 {
        font-size: 22px;
    }
}
@media (min-width: 1200px) {
    h1,
    .h1 {
        font-size: 80px;
    }
    h2,
    .h2 {
        font-size: 48px;
    }
    h3,
    .h3 {
        font-size: 36px;
    }
    h4,
    .h4 {
        font-size: 32px;
    }
    h5,
    .h5 {
        font-size: 24px;
    }
    h1 span,
    .h1 span {
        padding-right: 24px;
    }
    h1 span:after,
    .h1 span:after {
        width: 20px;
        height: 20px;
    }
}

.paragraph {
    h1,
    h2,
    h3,
    h4,
    h5 {
        color: inherit;
    }

    p,
    ul li,
    ol li {
        font-family: var(--ss-body);
        font-weight: 400;
        font-style: normal;
        font-size: inherit;
        line-height: inherit;
        color: inherit;
    }

    p a {
        color: inherit;
        text-decoration: none;
    }

    p {
        margin-bottom: 1rem;
    }

    p:last-of-type {
        margin-bottom: 0;
    }

    p b,
    p strong {
        font-family: var(--ss-medium);
        font-weight: 500;
    }
}
.paragraph .btn-action {
    margin-top: 1.5rem;
}
.paragraph .btn-action a {
    font-size: 13px;
    margin-left: 0.5rem;

    border-radius: 4px;
    display: inline-block;
}
.paragraph .btn-action a:first-of-type {
    margin-left: 0;
}
.paragraph .btn-action .btn i {
    width: 16px;
    height: 16px;
}
.paragraph .btn-action .btn img {
    height: 16px;
}
.paragraph .small-text {
    display: block;
    text-align: left;
}
.paragraph .small-text span {
    font-family: var(--ss-medium);
    font-weight: 500;
    font-style: normal;
    font-size: 18px;
    line-height: 1.5;
    color: var(--primary-500);

    display: inline-block;
    vertical-align: middle;
    margin: 0 0;
}
.paragraph .small-text i {
    display: inline-block;
    margin: 0 0;
    vertical-align: middle;
}
.paragraph .small-text img {
    display: block;
    height: 23px;
    width: auto;
}
.two-lines p {
    overflow: hidden;
    text-overflow: ellipsis;
}
.paragraph.lh-200.two-lines p {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    height: 80px;
}
@media (min-width: 992px) {
    .paragraph .btn-action a {
        font-size: 14px;
    }
}
@media (min-width: 1200px) {
    .paragraph .btn-action a {
        font-size: 16px;
    }
}

.btn {
    font-family: var(--ss-medium);
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
}
.btn .btn-wrp {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    column-gap: 0.5rem;
}
.btn span {
    font-family: inherit;
    font-weight: inherit;
    font-size: inherit;
    line-height: inherit;
    color: inherit;
    outline: none;
    text-decoration: none;
}
.btn.btn-sm {
    padding-top: 7px;
    padding-block: 7px;
}
.btn.btn-outline {
    border: 1px solid var(--grey-900);
    color: var(--grey-900);
}
.btn.btn-outline:hover,
.btn.btn-outline:active,
.btn.btn-outline:focus {
    border-color: var(--primary-500);
    color: var(--primary-500);
}
.btn.btn-outline-white {
    border: 1px solid #ffffff;
    color: #ffffff;
}
.btn.btn-outline-white:hover,
.btn.btn-outline-white:active,
.btn.btn-outline-white:focus {
    border-color: #ffffff;
    color: #ffffff;
}
.btn.btn-white {
    border-color: #ffffff !important;
    background-color: #ffffff;
    color: var(--grey-900);
}
.btn.btn-outline-white:hover,
.btn.btn-outline-white:active,
.btn.btn-outline-white:focus {
    border-color: #ffffff;
    color: #ffffff;
    background-color: transparent;
}

.select2 {
    width: 100% !important;
}
.select2-container--default .select2-selection--single {
    border-color: var(--grey-900);
    height: auto !important;
}
.select2-container--default
    .select2-selection--single
    .select2-selection__rendered {
    padding-top: 4px;
    padding-bottom: 4px;
    padding-right: 33px;

    font-family: var(--ss-medium);
    font-weight: 500;
}
.select2-container--default
    .select2-selection--single
    .select2-selection__arrow {
    top: 50%;

    width: 20px;
    height: 20px;

    margin-top: -10px;

    transition: all 0.3s ease;
}
.select2-container--default
    .select2-selection--single
    .select2-selection__arrow
    b {
    display: none !important;
}
.select2-container--default
    .select2-selection--single
    .select2-selection__arrow:after {
    display: block;
    width: 100%;
    height: 100%;

    background: url("../img/svg/arrow-down.svg") no-repeat;
    background-size: 100% 100%;
    background-position: center;
    content: "";
}
.select2-container.select2-container--default.select2-container--open
    .select2-selection--single
    .select2-selection__arrow {
    transform: rotate(-180deg);
}
.select2-dropdown {
    border-color: var(--grey-900);
}
.select2-results__option {
    padding: 8px 8px;

    font-family: var(--ss-medium);
    font-weight: 400;
    font-style: normal;
    color: var(--grey-900);
}
.select2-results__option--highlighted.select2-results__option--selectable {
    background-color: var(--primary-500) !important;
}

.card-service {
    display: block;
}
.card-service .card-wrp {
    width: 100%;
    height: 100%;
}
.card-service .card-thumbs {
    position: relative;
    width: 100%;

    padding-top: calc((360 / 640) * 100%);
    overflow: hidden;
}
.card-service .card-thumbs a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    color: transparent;
    border: 0;
}
.card-service .card-thumbs img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.card-service .paragraph {
    padding: 24px 0;
}
.card-service .paragraph h3 {
    margin-bottom: 1rem;
    line-height: 150%;
}
.card-service .card-footer {
    text-align: left;
}
.card-service .card-footer .btn {
    padding-left: 0;
    padding-right: 0;

    color: var(--primary-500);
}
.card-service .card-footer .btn:hover,
.card-service .card-footer .btn:focus,
.card-service .card-footer .btn:active {
    color: var(--primary-500);

    border-color: transparent;
    background-color: #ffffff;
}

.s-our-services h2 {
    color: var(--grey-900);
    margin-bottom: 0;
}
.s-our-services .information {
    margin-top: 1.5rem;
}
.s-our-services .paragraph {
    color: var(--grey-900);
    font-size: 18px;
    line-height: 200%;
}
.s-our-services .paragraph p b,
.s-our-services .paragraph p strong {
    color: var(--primary-500);
}
.s-our-services .paragraph .btn-action {
    text-align: left;
    margin-top: 1.5rem;
}
.s-our-services .paragraph .btn-action a {
    font-size: 13px;
    margin-left: 0.5rem;

    border-radius: 4px;
}
.s-our-services .paragraph .btn-action a:first-of-type {
    margin-left: 0;
}
.s-our-services .card-service .paragraph {
    font-size: 16px;
    line-height: 200%;
    color: var(--grey-900);
}
.s-our-services .service-mobile {
    display: block;
}
.s-our-services .service-mobile .card-service {
    width: 100%;
    margin-top: 2rem;
}
.s-our-services .service-mobile .card-service:first-of-type {
    margin-top: 0;
}
.s-our-services .service-desktop {
    display: none;
}
.s-our-services .service-desktop .card-service .card-wrp {
    overflow: hidden;
}
.s-our-services .service-desktop .card-service .card-column .paragraph {
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: center;
}
.s-our-services .service-desktop .card-service .card-column .paragraph .btn {
    padding-left: 0;
    padding-right: 0;
    color: var(--primary-500);

    border-color: transparent;
    background-color: #ffffff;
}
.s-our-services
    .service-desktop
    .card-service
    .card-column
    .paragraph
    .btn:hover,
.s-our-services
    .service-desktop
    .card-service
    .card-column
    .paragraph
    .btn:focus,
.s-our-services
    .service-desktop
    .card-service
    .card-column
    .paragraph
    .btn:active {
    color: var(--primary-500);

    border-color: transparent;
    background-color: #ffffff;
}
.s-our-services .service-desktop .accordion .accordion-item {
    transition: width 0.3s ease-in-out;
}
.s-our-services .service-desktop .accordion .accordion-item .accordion-wrp {
    position: relative;
    overflow: hidden;
}
.s-our-services .service-desktop .accordion .accordion-item .accordion-header {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    overflow: hidden;
    transition: all 0.3s ease;
}
.s-our-services
    .service-desktop
    .accordion
    .accordion-item
    .accordion-header
    .header-image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}
.s-our-services
    .service-desktop
    .accordion
    .accordion-item
    .accordion-header
    .header-image
    img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.s-our-services
    .service-desktop
    .accordion
    .accordion-item
    .accordion-header
    .accordion-button {
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 2;

    background-color: rgba(203, 37, 43, 80%);
    border: 0;

    font-family: var(--ss-disp);
    font-weight: 400;
    font-style: normal;
    line-height: 150%;
    color: #ffffff;
    transition: all 0.3 ease;
}
.s-our-services
    .service-desktop
    .accordion
    .accordion-item
    .accordion-header
    .accordion-button
    .btn-wrp {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    width: 100%;
    height: 100%;
    align-items: flex-start;
    justify-content: flex-end;
    gap: 2rem;

    padding: 24px 24px;
}
.s-our-services
    .service-desktop
    .accordion
    .accordion-item
    .accordion-header
    .accordion-button
    span {
    font-family: inherit;
    font-style: inherit;
    font-weight: inherit;
    font-size: inherit;
    line-height: inherit;
    color: inherit;
    text-align: left;
    padding-right: 0;
}
.s-our-services
    .service-desktop
    .accordion
    .accordion-item
    .accordion-header
    .accordion-button
    i {
    display: block;
    width: 48px;
    height: 48px;
    padding: 12px;
    background-color: #ffffff;
}
.s-our-services
    .service-desktop
    .accordion
    .accordion-item
    .accordion-header
    .accordion-button
    i
    img {
    display: block;
    width: 24px;
    height: 24px;
}
.s-our-services
    .service-desktop
    .accordion
    .accordion-item
    .accordion-collapse {
    transition: all 0.3s ease;
}
.s-our-services .service-desktop .accordion .accordion-item .accordion-collapse,
.s-our-services
    .service-desktop
    .accordion
    .accordion-item
    .accordion-collapse.show {
    display: block;
    width: 100%;
    height: 100%;
}
.s-our-services
    .service-desktop
    .accordion
    .accordion-item.actived
    .accordion-header {
    width: 0;
}
.s-our-services
    .service-desktop
    .accordion
    .accordion-item.actived
    .accordion-collapse {
    width: 100%;
}
@media (min-width: 768px) {
    .s-our-services .paragraph {
        height: 100%;

        display: flex;
        flex-wrap: wrap;
        flex-direction: column;
        justify-content: center;
    }
    .s-our-services .information {
        margin-top: 0;
    }
}
@media (min-width: 992px) {
    .s-our-services .paragraph {
        font-size: 20px;
    }
    .s-our-services .paragraph .btn-action a {
        font-size: 14px;
    }
}
@media (min-width: 1024px) {
    .s-our-services .service-mobile {
        display: none;
    }
    .s-our-services .service-desktop {
        display: block;
    }
    .s-our-services .service-desktop .accordion .accordion-item {
        width: 25%;
    }
    .s-our-services .service-desktop .accordion .accordion-item.actived {
        width: 50%;
    }
}
@media (min-width: 1200px) {
    .s-our-services .paragraph .btn-action a {
        font-size: 16px;
    }
    .s-our-services
        .service-desktop
        .accordion
        .accordion-item
        .accordion-header
        .accordion-button
        .btn-wrp {
        padding: 32px 32px;
    }
}
@media (min-width: 1400px) {
    .s-our-services
        .service-desktop
        .accordion
        .accordion-item
        .accordion-header
        .accordion-button
        .btn-wrp {
        padding: 40px 40px;
    }
}

.card-why-us .card-wrp {
    width: 100%;
    height: 100%;
    padding: 2rem;
}
.card-why-us .icon {
    display: block;
    width: 72px;
    height: 72px;
}
.card-why-us .icon img {
    width: 100%;
    height: 100%;
}

.card-why-us .paragraph h2 {
    margin-top: 0.75rem;
    margin-bottom: 0.5rem;
    line-height: 150%;
    color: inherit;
}
.card-why-us .paragraph p {
    font-size: 16px;
    line-height: 200%;
    color: inherit;
}
.s-why-us .d-flex {
    flex-direction: column;
    justify-content: flex-start;
}
.s-why-us h2 {
    color: var(--grey-900);
    margin-bottom: 1.25rem;
}
.s-why-us h3 {
    font-family: var(--ss-body);
    font-weight: 400;
    color: var(--grey-900);
}
.s-why-us .card-why-us .paragraph {
    font-size: 16px;
    line-height: 200%;
    color: var(--grey-900);
}
.s-why-us .s-why-us-swiper .swiper-pagination {
    position: relative;
    bottom: 0;
}
.s-why-us .s-why-us-swiper .swiper-pagination .swiper-pagination-bullet {
    background: var(--primary-500);
    opacity: 0.3;
}
.s-why-us
    .s-why-us-swiper
    .swiper-pagination
    .swiper-pagination-bullet.swiper-pagination-bullet-active {
    opacity: 1;
}
.s-why-us ul,
.s-why-us ul.even-swap {
    display: block;
    padding: 0;
    margin: 0;
    list-style: none;
}
.s-why-us ul li:last-of-type {
    padding-bottom: 0;
}
.s-why-us ul.even-swap li:nth-child(even) .row {
    flex-direction: row-reverse;
}
@media (min-width: 768px) {
    .s-why-us .d-flex {
        flex-direction: column;
        justify-content: center;
        height: 100%;
    }
}
@media (min-width: 992px) {
    .s-why-us .d-flex {
        padding-left: 24px;
        padding-right: 24px;
    }
}
@media (min-width: 1200px) {
    .s-why-us .d-flex {
        padding-left: 32px;
        padding-right: 32px;
    }
}

.card-case-studies .card-wrp {
    width: 100%;
    height: 100%;
}
.card-case-studies .card-thumbs {
    display: block;
    width: 100%;
}
.card-case-studies .card-thumbs a {
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;

    color: transparent;
    border: 0;
}
.card-case-studies .card-thumbs img {
    display: block;
    width: 100%;
    height: auto;
}
.card-case-studies .paragraph {
    padding: 24px 16px;
    max-width: 100%;
    display: block;
    margin: 0 auto;

    font-size: 16px;
    line-height: 200%;
    color: var(--grey-900);
}
.card-case-studies .paragraph h3 {
    color: var(--grey-900);

    margin-top: 1rem;
    margin-bottom: 1.25rem;
}
.card-case-studies .paragraph span {
    font-family: var(--ss-medium);
    font-weight: 500;
    font-style: normal;
    font-size: 18px;
    line-height: 150%;
    color: var(--primary-500);
}
@media (min-width: 576px) {
    .card-case-studies .paragraph {
        max-width: 95%;
    }
}
@media (min-width: 768px) {
    .card-case-studies .paragraph {
        max-width: 90%;
    }
}
@media (min-width: 992px) {
    .card-case-studies .card-body {
        display: flex;
        flex-wrap: nowrap;
        flex-direction: row;
        gap: 0;
    }
    .card-case-studies .card-thumbs,
    .card-case-studies .paragraph {
        width: 50%;
        max-width: 50%;
    }
}
@media (min-width: 1200px) {
    .card-case-studies .paragraph {
        font-size: 18px;
    }
    .card-case-studies .paragraph span {
        font-size: 20px;
    }
}

.s-case-studies {
    background: #ffffff;
    background: linear-gradient(
        360deg,
        rgba(255, 255, 255, 1) 0%,
        rgba(244, 241, 250, 1) 100%
    );
}
.s-case-studies h2 {
    color: var(--grey-900);
    line-height: 150%;
    margin-bottom: 1.25rem;
}
.s-case-studies h3 {
    font-family: var(--ss-body);
    font-weight: 400;
    line-height: 150%;
    color: var(--grey-900);
}
.s-case-studies .btn-action {
    text-align: center;
    margin-top: 1.5rem;
}
.s-case-studies .btn-action a {
    font-size: 13px;
    margin-left: 0.5rem;

    border-radius: 4px;
}
.s-case-studies .btn-action a:first-of-type {
    margin-left: 0;
}
.s-case-studies .sw-case-studies .swiper-wrapper {
    padding-bottom: 60px;
}
.s-case-studies .sw-case-studies .swiper-slide {
    height: auto;
}
.s-case-studies .sw-case-studies .swiper-btn-next {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 100%;

    display: grid;
    grid-template-columns: minmax(0, 1fr) 60px;
    align-items: center;
    z-index: 2;
}
.s-case-studies .sw-case-studies .swiper-btn-next .info {
    text-align: right;
    padding-left: 1rem;
    padding-right: 1rem;

    font-family: var(--ss-body);
    font-weight: 400;
    font-style: normal;
    font-size: 18px;
    line-height: 28px;
    color: var(--grey-900);
}
.s-case-studies .sw-case-studies .swiper-btn-next .info span {
    color: var(--primary-500);
}
.s-case-studies .sw-case-studies .swiper-btn-next .icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;

    background-color: var(--primary-500);
}
.s-case-studies .sw-case-studies .swiper-btn-next .icon img {
    display: block;
    width: 24px;
    height: auto;
}
@media (min-width: 992px) {
    .s-case-studies .btn-action {
        margin-top: 2rem;
    }
    .s-case-studies .btn-action a {
        font-size: 14px;
    }
    .s-case-studies .sw-case-studies .swiper-wrapper {
        padding-bottom: 0;
    }
    .s-case-studies .sw-case-studies .swiper-btn-next {
        width: 50%;
    }
    .s-case-studies .sw-case-studies .swiper-btn-next .info {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }
    .s-case-studies .sw-case-studies .card-case-studies {
        height: 100%;
    }
    .s-case-studies .sw-case-studies .card-case-studies .card-body,
    .s-case-studies .sw-case-studies .card-case-studies .card-thumbs,
    .s-case-studies .sw-case-studies .card-case-studies .paragraph {
        height: 100%;
    }
    .s-case-studies .sw-case-studies .card-case-studies .card-thumbs img {
        height: 100% !important;
        object-fit: cover;
        object-position: center;
    }
    .s-case-studies .sw-case-studies .card-case-studies .paragraph {
        padding: 1.5rem 2rem calc(24px + 60px) 2rem;
        display: flex;
        flex-wrap: wrap;
        flex-direction: column;
        margin: unset;
        justify-content: center;
    }
}
@media (min-width: 1200px) {
    .s-case-studies .btn-action {
        margin-top: 2.5rem;
    }
    .s-case-studies .btn-action a {
        font-size: 16px;
    }
    .s-case-studies .sw-case-studies .card-case-studies .paragraph {
        padding: 2rem 3rem calc(32px + 80px) 3rem;
    }
    .s-case-studies .sw-case-studies .swiper-btn-next {
        grid-template-columns: minmax(0, 1fr) 80px;
    }
    .s-case-studies .sw-case-studies .swiper-btn-next .info {
        font-size: 20px;
        line-height: 30px;
        padding-left: 3rem;
        padding-right: 3rem;
    }
    .s-case-studies .sw-case-studies .swiper-btn-next .icon {
        width: 80px;
        height: 80px;
    }
}
@media (min-width: 1400px) {
    .s-case-studies .sw-case-studies .card-case-studies .paragraph {
        padding-left: 4rem;
        padding-right: 4rem;
    }
}

.card-testimonial {
    display: block;
}
.card-testimonial .card-wrp {
    width: 100%;
    height: 100%;
    padding: 24px;
}
.card-testimonial .card-header {
    display: grid;
    grid-template-columns: 90px minmax(0, 1fr);
    gap: 1rem;
    align-items: center;
}
.card-testimonial .card-header .logo-testimonial {
    width: 100%;
    height: auto;
}
.card-testimonial .card-header .logo-testimonial img {
    display: block;
    width: 100%;
    height: auto;
}
.card-testimonial .card-header .client .name {
    font-family: var(--ss-disp);
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.5;
    color: var(--grey-900);
    margin-bottom: 4px;
}
.card-testimonial .card-header .client .position {
    font-family: var(--ss-disp);
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.5;
    color: var(--grey-700);
}
.card-testimonial .card-body {
    padding-top: 1.25rem;
}
.card-testimonial .card-body .paragraph {
    font-size: 15px;
    line-height: 2;
    color: var(--grey-900);
}
@media (min-width: 1024px) {
    .card-testimonial .card-wrp {
        padding: 2rem;
    }
    .card-testimonial .card-body .paragraph {
        font-size: 16px;
    }
}
.s-testimoni .paragraph h2,
.s-testimoni .paragraph h3 {
    color: var(--grey-900);
    line-height: 150%;
}
.s-testimoni .paragraph h3 {
    font-family: var(--ss-body);
    font-weight: 400;
}
.s-testimoni .s-testimoni-logo .swiper:before,
.s-testimoni .s-testimoni-logo .swiper:after {
    content: "";
    height: 100%;
    position: absolute;
    top: 0;
    width: 3.5em;
    z-index: 2;
}
.s-testimoni .s-testimoni-logo .swiper:before {
    background: linear-gradient(90deg, #fff, hsla(0, 0%, 100%, 0));
    left: 0;
}
.s-testimoni .s-testimoni-logo .swiper:after {
    background: linear-gradient(90deg, hsla(0, 0%, 100%, 0), #fff);
    right: 0;
}
.s-testimoni .l-testimoni .card-testimonial .card-wrp {
    border-bottom: 1px solid var(--grey-200);
}
.s-testimoni
    .l-testimoni
    .row:last-of-type
    .col-md-6:last-of-type
    .card-testimonial
    .card-wrp {
    border-color: transparent;
}
.s-testimoni
    .l-testimoni
    .row.row-last
    .col-md-6:last-of-type
    .card-testimonial
    .card-wrp {
    border-color: transparent;
}
@media (min-width: 768px) {
    .s-testimoni .l-testimoni .row {
        border-bottom: 1px solid var(--grey-200);
    }
    .s-testimoni .l-testimoni .row:last-of-type {
        border-bottom: 0px;
    }
    .s-testimoni .l-testimoni .row .col-md-6 {
        border-left: 1px solid var(--grey-200);
    }
    .s-testimoni .l-testimoni .row .col-md-6:first-of-type {
        border-left-color: transparent;
    }
    .s-testimoni .l-testimoni .card-testimonial {
        width: 100%;
        height: 100%;
    }
    .s-testimoni .l-testimoni .card-testimonial:first-of-type {
        border-left: 0;
    }
    .s-testimoni .l-testimoni .card-testimonial .card-wrp {
        border-bottom: 0;
    }
    .s-testimoni .l-testimoni .row.row-last {
        border-color: transparent;
    }
}

.s-transform {
    position: relative;
}
.s-transform::after {
    display: block;
    position: absolute;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 25%;
    content: "";
    background: #ffffff;
    background: linear-gradient(
        90deg,
        rgba(255, 255, 255, 1) 0%,
        rgba(244, 241, 250, 1) 100%
    );
}
.s-transform .container {
    position: relative;
    z-index: 2;
}
.s-transform .paragraph,
.s-transform .the-img {
    width: 100%;
}
.s-transform .paragraph h2 {
    color: var(--grey-900);
    line-height: 150%;
}
.s-transform .paragraph h3 {
    font-family: var(--ss-body);
    font-weight: 400;
    line-height: 200%;
}
.s-transform .the-img {
    margin-top: 2rem;
}
.s-transform .the-img img {
    display: block;
    width: 100%;
    height: auto;
}
@media (min-width: 1200px) {
    .s-transform .paragraph,
    .s-transform .the-img {
        width: 50%;
    }
    .s-transform .the-img {
        margin-top: 0;
    }
    .s-transform::after {
        width: 50%;
        height: 50%;
    }
}

.contact-form.contact-form--with-bg {
    position: relative;
}
.contact-form.contact-form--with-bg .banner-image {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    width: 100%;
    height: 74.0102827763%;
    overflow: hidden;
}
.contact-form.contact-form--with-bg .banner-image .video-play {
    display: none;
    width: 100%;
    height: 100%;
}
.contact-form.contact-form--with-bg .banner-image .video-play video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.contact-form.contact-form--with-bg .banner-image .the-img {
    display: block;
    width: 100%;
    height: 100%;
}
.contact-form.contact-form--with-bg .banner-image .the-img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.contact-form .contact-content {
    position: relative;
    z-index: 2;
}
.contact-form .contact-form-box {
    padding: 32px;
    border: 1px solid #d5dde5;
    max-width: 864px;
    width: 100%;
    display: block;
    margin: 0 auto;

    box-shadow: rgba(0, 0, 0, 10%) 0px 8px 32px;
    background-color: #ffffff;
}
.contact-form .contact-form-box .paragraph h2 {
    font-family: var(--ss-disp);
    font-weight: 400;
    font-style: normal;
    color: var(--grey-900);

    margin-bottom: 0.5rem !important;
}
.contact-form .contact-form-box .paragraph p {
    font-size: 16px;
    line-height: 2;
    color: var(--grey-900);
    margin-top: 0 !important;

    font-family: var(--ss-body);
    font-weight: 400;
    font-style: normal;
}
.contact-form .contact-form-box form {
    margin-top: 1.25rem;
}
.contact-form .contact-form-box .form-box {
    display: block;
    margin-bottom: 32px;
}
.contact-form .contact-form-box .grid {
    display: block;
}
.contact-form .contact-form-box .form-box label {
    font-family: var(--ss-medium);
    font-weight: 500;
    font-style: normal;
    color: var(--grey-900);
}
.contact-form .contact-form-box .form-box .form-control {
    color: var(--grey-900);
    font-family: var(--ss-medium);
    font-weight: 500;
    font-style: normal;
    border-bottom-color: var(--grey-900);
}
.contact-form .contact-form-box .form-box .form-control::placeholder {
    color: var(--grey-500);
}
.contact-form .contact-form-box .form-box .paragraph a {
    font-family: var(--ss-medium);
    font-weight: 500;
    color: var(--primary-500);
    text-decoration: none;
}
.contact-form .contact-form-box .form-box .btn {
    border-radius: 4px;
}
.contact-form
    .contact-form-box
    .select2-container--default
    .select2-selection--single {
    border-left: 0;
    border-top: 0;
    border-right: 0;
    border-radius: 0;
    border-color: var(--grey-900);

    height: auto !important;
}
.contact-form .contact-form-box .form-box-check {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.contact-form .contact-form-box .form-box .form-check {
    padding-left: 0;
    margin-bottom: 0;
}
.contact-form .contact-form-box .form-box .form-check .form-check__wrp {
    display: block;
    width: 100%;
    height: 100%;
}
.contact-form .contact-form-box .form-box .form-check .form-check-input {
    float: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    color: transparent;
}
.contact-form .contact-form-box .form-box .form-check .form-check-label {
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    min-height: 32px;

    border: 1px solid var(--grey-900);
    border-radius: 4px;
    background-color: var(--color-white);

    font-family: var(--ss-medium);
    font-weight: 500;
    font-style: normal;

    font-size: 14px;
    line-height: 125%;

    padding: 7px 12px;
}
.contact-form
    .contact-form-box
    .form-box
    .form-check
    .form-check-input:checked
    + .form-check-label {
    color: #ffffff;
    background-color: var(--primary-500);
    border-color: var(--primary-500);
}
.contact-form
    .contact-form-box
    .select2-container--default
    .select2-selection--single
    .select2-selection__rendered {
    padding-left: 0;
    color: var(--primary-500);
}
.contact-form .contact-form-box .form-box .form-check:last-of-type {
    margin-right: 0;
}
.contact-form .contact-form-box .form-box:last-of-type {
    margin-bottom: 0;
}
.contact-form .contact-form-box .form-box .error-msg {
    display: none;
    margin-top: 16px;
}
.contact-form .contact-form-box .form-box .error-msg p {
    font-size: inherit;
    color: inherit;
    line-height: inherit;
}
.contact-form .contact-form-box .form-box.has-error .form-control {
    border-color: var(--primary-500);
}
.contact-form
    .contact-form-box
    .form-box.has-error
    .select2-container--default
    .select2-selection--single {
    border-color: var(--primary-500);
}
.contact-form .contact-form-box .form-box.has-error .error-msg {
    display: block;
}
.contact-form .contact-information {
    width: 100%;
    margin-top: 2rem;
}
.contact-form .contact-information:first-of-type {
    margin-top: 0;
}
.contact-form .contact-information .paragraph {
    font-family: var(--ss-body);
    font-weight: 400;
    font-style: normal;
    color: #ffffff;
    font-size: 16px;
    line-height: 2;
}
.contact-form .contact-information .paragraph b {
    font-family: var(--ss-medium);
    font-weight: 500;
    font-style: normal;
}
.contact-form .contact-information .paragraph p {
    width: 100%;
}
.contact-form .contact-information .paragraph a {
    display: inline-block;
}
.contact-form .contact-information .paragraph a i {
    width: 24px;
    height: 24px;
    display: inline-block;
    vertical-align: middle;
}
.contact-form .contact-information .paragraph a i img {
    display: block;
    width: auto;
    height: 100%;
}
.contact-form .contact-information .paragraph a span {
    display: inline-block;
    vertical-align: middle;

    line-height: 24px;
    font-size: inherit;
    font-family: var(--ss-medium);
    font-weight: 500;
    font-style: normal;
}
@media (min-width: 768px) {
    .contact-form .contact-form-box .grid {
        display: grid;
        grid-template-columns: auto minmax(0, 1fr);
        gap: 1rem;
        align-items: center;
    }
}
@media (min-width: 1024px) {
    .contact-form .contact-form-box .form-box {
        gap: 1.5rem;
    }
    .contact-form .contact-information {
        width: 33.33%;
        margin-top: 0;
    }
    .contact-form .contact-information .contact-information-wrp {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        height: 100%;
    }
}
@media (min-width: 1200px) {
    .contact-form.contact-form--with-bg .banner-image {
        height: 69%;
    }
    .contact-form.contact-form--with-bg .banner-image .video-play {
        display: block;
    }
    .contact-form.contact-form--with-bg .banner-image .the-img {
        display: none;
    }
}

.main-footer .main-footer-wrp {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 0rem;
}
.main-footer .main-footer-wrp .main-footer-logo {
    margin-bottom: 0 !important;
}
.main-footer .main-footer-wrp .main-footer-logo img {
    height: 24px;
    width: auto;
}
.main-footer .main-footer-wrp ul {
    text-align: center;
    margin-bottom: 1rem;
}
.main-footer .main-footer-wrp ul li {
    display: inline-block;
    position: relative;
    padding-right: 1px;
}
.main-footer .main-footer-wrp ul li::after {
    position: absolute;
    top: 50%;
    right: 0;
    width: 1px;
    height: 12px;
    margin-top: -6px;
    content: "";
    background-color: #d5dde5;
    display: block;
}
.main-footer .main-footer-wrp ul li:last-of-type::after {
    display: none;
}
.main-footer .main-footer-wrp ul li a {
    display: block;
    padding: 8px 12px;

    font-family: var(--ss-medium);
    font-weight: 500;
    font-style: normal;
    font-size: 16px;
    line-height: 24px;
    color: var(--grey-900);
    text-decoration: none;
}
.main-footer .main-footer-wrp p {
    font-family: var(--ss-body);
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
    line-height: 24px;
    color: var(--grey-900);
}
@media (min-width: 768px) {
    .main-footer .main-footer-wrp {
        flex-direction: row;
        column-gap: 1rem;
        align-items: center;
        justify-content: center;
    }
    .main-footer .main-footer-wrp ul {
        margin-bottom: 0;
        padding-left: 1px;
        padding-right: 1px;
        position: relative;
    }
    .main-footer .main-footer-wrp ul::before,
    .main-footer .main-footer-wrp ul::after {
        position: absolute;
        top: 50%;
        width: 1px;
        height: 12px;
        margin-top: -6px;
        content: "";
        background-color: #d5dde5;
        display: block;
    }
    .main-footer .main-footer-wrp ul::before {
        left: 0;
    }
    .main-footer .main-footer-wrp ul::after {
        right: 0;
    }
    .main-footer .main-footer-wrp ul li a,
    .main-footer .main-footer-wrp p {
        font-size: 14px;
    }
}
@media (min-width: 1024px) {
    .main-footer .main-footer-wrp {
        column-gap: 1.5rem;
    }
    .main-footer .main-footer-wrp ul li a {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }
}
@media (min-width: 1200px) {
    .main-footer .main-footer-wrp {
        column-gap: 2rem;
    }
    .main-footer .main-footer-wrp ul li a {
        padding-left: 2rem;
        padding-right: 2rem;
    }
}
@media (min-width: 1400px) {
    .main-footer .main-footer-wrp {
        column-gap: 2.5rem;
    }
}

.hero {
    position: relative;
}
.hero .banner-heroes {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.hero .hero-text {
    position: relative;
    min-height: 100vh;
    height: 100%;

    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding-top: 60px;
}
.hero .hero-text .hero-text-wrp {
    width: 100%;
}
.hero .banner-heroes .video-play {
    display: none;
    width: 100%;
    height: 100%;
    position: relative;
}
.hero .banner-heroes .video-play::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    background: rgba(31, 31, 31, 10.04);
    background: linear-gradient(
        180deg,
        rgba(31, 31, 31, 0.24) 0%,
        rgba(51, 51, 51, 0.4) 100%
    );
}
.hero .banner-heroes .video-play video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.hero .banner-heroes .the-img {
    display: block;
    width: 100%;
    height: 100%;
}
.hero .banner-heroes .the-img img,
.hero .banner-heroes img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.hero .banner-heroes picture {
    display: block;
    width: 100%;
    height: 100%;
}
.hero .hero-text .paragraph .small-text {
    font-family: var(--ss-medium);
    font-weight: 500;
    font-style: normal;
    font-size: 14px;
    line-height: 30px;
    text-transform: uppercase;
    color: #ffffff;
}
.hero .hero-text .paragraph {
    font-size: 18px;
    line-height: 150%;
    color: #ffffff;
    text-align: left;
}
.hero .hero-text .paragraph h1 {
    margin-top: 4px;
    margin-bottom: 24px;
}
.hero .hero-text .action-more {
    padding: 24px;
    border-radius: 4px;
    border: 1px solid rgba(255, 255, 255, 80%);
    background-color: rgba(216, 216, 216, 80%);
    text-align: left;
}
.hero .hero-text .action-more p {
    font-family: var(--ss-body);
    font-weight: 400;
    font-style: normal;
    font-size: 14px;
    line-height: 150%;
    color: var(--grey-900);
    text-align: left;
    margin-bottom: 32px;
}
.hero .hero-text .action-more a {
    display: inline-block;
    border-radius: 4px;
}
@media (min-width: 768px) {
    .hero .hero-text {
        padding-top: 80px;
    }
    .hero .hero-text .action-more {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 2rem;
        align-items: center;
    }
    .hero .hero-text .action-more p {
        margin-bottom: 0;
    }
}
@media (min-width: 992px) {
    .hero.hero-auto .hero-text {
        min-height: unset;
    }
    .hero .hero-text .action-more p {
        line-height: 200%;
    }
}
@media (min-width: 1024px) {
    .hero .hero-text .container {
        max-width: 864px !important;
    }
    .hero .hero-text .container.max-full {
        max-width: 100% !important;
    }
    .hero .hero-text .paragraph {
        font-size: 20px;
    }
    .hero .hero-text .paragraph .small-text {
        font-size: 16px;
        line-height: 40px;
    }
    .hero .hero-text .paragraph p {
        max-width: 530px;
    }
    .hero .hero-text .action-more p {
        font-style: 16px;
    }
}
@media (min-width: 1200px) {
    .hero .banner-heroes .video-play {
        display: block;
    }
    .hero .banner-heroes .the-img {
        display: none;
    }
}
@media (min-width: 1440px) {
    .hero .hero-text .container.max-full {
        max-width: 1312px !important;
    }
}

.main-header {
    position: fixed !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0);
    transition-duration: 0.5s;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-timing-function: linear;
}
.main-header:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    background: rgba(20, 20, 20, 10%);
    backdrop-filter: blur(40px);
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
}
.main-header .navbar .navbar-brand {
    position: relative;
    width: 109px;
    height: 35px;
    display: block !important;
}
.main-header .navbar .navbar-brand img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    transition: opacity 0.3s ease-in-out;
}
.main-header .navbar .navbar-brand .logo-white {
    opacity: 1;
}
.main-header .navbar .navbar-brand .logo-color {
    opacity: 0;
}
.main-header .navbar-nav .nav-link {
    font-family: var(--ss-medium);
    font-weight: 500;
    font-style: normal;
    font-size: 16px;
    line-height: 24px;
    color: #ffffff;
    text-transform: capitalize !important;
}
.main-header .navbar-nav .nav-link span {
    position: relative;

    font-family: inherit;
    font-weight: inherit;
    font-style: inherit;
    font-size: inherit;
    line-height: inherit;
    color: inherit;
}
.main-header .navbar-nav .nav-link span::after {
    position: absolute;
    top: 0;
    right: 0;
    width: 8px;
    height: 8px;
    content: "";
    background: url("../img/svg/plus.svg") no-repeat;
    background-size: 100% 100%;
    background-position: center;
    display: none;
}
.main-header .navbar-nav .nav-link .btn {
    padding: 7px 16px;
    border-radius: 4px;
}
.main-header .navbar-nav .nav-link.active span {
    padding-right: 10px;
}
.main-header .navbar-nav .nav-link.active span::after {
    display: block;
}
.main-header.is-scrolled:before {
    opacity: 1;
}
.main-header.is-scrolled .navbar .navbar-brand img {
    transition: opacity 0.3s ease-in-out;
}
.main-header.is-scrolled .navbar .navbar-brand .logo-white {
    opacity: 0;
}
.main-header.is-scrolled .navbar .navbar-brand .logo-color {
    opacity: 1;
}
@media (min-width: 768px) {
    .main-header .navbar .navbar-brand {
        display: block !important;
    }
}

.s-mission {
    background: #ffffff;
    background: linear-gradient(
        360deg,
        rgba(255, 255, 255, 1) 0%,
        rgba(244, 241, 250, 0.4) 100%
    );
}
.s-mission .row {
    margin-top: -19px;
    margin-left: -16px;
    margin-right: -16px;
}
.s-mission .row * > {
    margin-top: 19px;
    padding-left: 16px;
    padding-right: 16px;
}

.s-with-banner {
    position: relative;
}
.s-with-banner .banner {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;

    width: 100%;
    height: 100%;
}
.s-with-banner .banner picture,
.s-with-banner .banner img {
    display: block;
    width: 100%;
    height: 100%;
}
.s-with-banner .banner img {
    object-fit: cover;
    object-position: center;
}
.s-with-banner .container {
    position: relative;
    z-index: 2;
}
.s-with-banner .col-information {
    margin-bottom: 2rem;
}
.s-with-banner .col-get-touch > * {
    margin-bottom: 2rem;
}
.s-with-banner .col-get-touch > *:last-of-type {
    margin-bottom: 0;
}
@media (min-width: 768px) {
    .s-with-banner .col-information {
        margin-bottom: 0rem;

        display: flex;
        height: 100%;
        align-items: center;
    }
}
@media (min-width: 992px) {
    .s-with-banner .col-get-touch {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }
}
@media (min-width: 1200px) {
    .s-with-banner .col-get-touch {
        padding-left: 2rem;
        padding-right: 2rem;
    }
}

@media (min-width: 1024px) {
    .p-services .hero .hero-text .container {
        max-width: 1088px !important;
    }
}

.accordion-faq .accordion-item {
    margin-bottom: 32px;
}
.accordion-faq .accordion-item:last-of-type {
    margin-bottom: 0;
}
.accordion-faq .accordion-header {
    position: relative;
}
.accordion-faq .accordion-header .accordion-button {
    position: relative;
    width: 100%;

    font-family: var(--ss-body);
    font-weight: 400;
    font-size: 22px;
    line-height: 150%;
    color: var(--primary-500);

    padding: 24px 16px;
    border: 1px solid var(--grey-300);
    border-radius: 0;

    transition: all 0.3s ease;
}
.accordion-faq .accordion-header .accordion-button span {
    position: relative;
    display: block;
    width: 100%;

    text-align: left;
    font-family: inherit;
    font-weight: inherit;
    font-size: inherit;
    line-height: inherit;
    color: inherit;

    padding-right: 40px;
}
.accordion-faq .accordion-header .accordion-button span:after {
    position: absolute;
    top: 50%;
    right: 0;
    width: 24px;
    height: 24px;

    background: url("../img/svg/i-minus.svg") no-repeat;
    background-size: 100% 100%;
    background-position: center;
    content: "";

    margin-top: -12px;
}
.accordion-faq .accordion-header .accordion-button.collapsed {
    border-color: var(--grey-300);
    color: var(--grey-900);
}
.accordion-faq .accordion-header .accordion-button.collapsed span:after {
    background: url("../img/svg/i-plus.svg") no-repeat;
    background-size: 100% 100%;
    background-position: center;
}
.accordion-faq .accordion-body {
    padding: 20px 16px;
    transition: all 0.5s ease;

    border: 1px solid var(--grey-300);
    border-top: 0px;
}
@media (min-width: 768px) {
    .accordion-faq .accordion-header .accordion-button {
        font-size: 24px;
        padding: 24px;
    }
    .accordion-faq .accordion-body {
        padding-left: 24px;
        padding-right: 24px;
        padding-bottom: 24px;
    }
}

@media (min-width: 992px) {
}
@media (min-width: 1200px) {
    .accordion-faq .accordion-header .accordion-button {
        font-size: 26px;
        padding: 32px;
    }
    .accordion-faq .accordion-body {
        padding-left: 32px;
        padding-right: 32px;
        padding-bottom: 32px;
    }
}

.paragraph .list-hype {
    list-style: none;
    margin: 0;
    padding: 0;
}
.paragraph .list-hype li {
    display: block;
    margin-bottom: 16px;
}
.paragraph .list-hype li:last-of-type {
    margin-bottom: 0;
}
.paragraph .list-hype span {
    position: relative;
    display: block;
    width: 100%;
    padding-left: 32px;
    text-align: left !important;
}
.paragraph .list-hype span:before {
    display: block;
    position: absolute;
    top: 12px;
    left: 0;
    width: 24px;
    height: 24px;

    background: url("../img/svg/i-plus-white.svg") no-repeat;
    background-size: 100% 100%;
    background-position: center;
    content: "";
}
@media (min-width: 768px) {
    .paragraph .list-hype span {
        padding-left: 40px;
    }
    .paragraph .list-hype span:before {
        width: 32px;
        height: 32px;
        top: 8px;
    }
}
@media (min-width: 1200px) {
    .paragraph .list-hype span {
        padding-left: 48px;
    }
    .paragraph .list-hype span:before {
        width: 40px;
        height: 40px;
        top: 5px;
    }
}
@media (min-width: 1400px) {
    .paragraph .list-hype span {
        padding-left: 56px;
    }
    .paragraph .list-hype span:before {
        width: 48px;
        height: 48px;
        top: 1px;
    }
}
.card-works .card-header {
    margin-bottom: 1rem;
}
.card-works .card-header h2 {
    font-family: var(--ss-body);
    font-weight: 400;
    font-style: normal;
    color: var(--grey-900);
    margin-bottom: 0;
}
.card-works .card-header h2 .number {
    padding-right: 8px;

    font-family: var(--ss-medium);
    font-weight: 500;
    font-style: normal;
    color: var(--primary-500);
    opacity: 0.6;
}
.card-works .card-thumbs {
    padding-top: calc((180 / 675) * 100%);
}
.card-works .card-body {
    padding-top: 1rem;
}
.card-works .card-wrp:hover {
    cursor: pointer;
}
.card-works .card-wrp:hover .card-thumbs img {
    transform: scale(1.5);
    cursor: pointer;
}

.list-works .row {
    margin-left: -8px;
    margin-right: -8px;
    margin-top: -32px;
}
.list-works .row > * {
    padding-left: 8px;
    padding-right: 8px;
    margin-top: 32px;
}
.list-works .card-works {
    width: 100%;
}
@media (min-width: 992px) {
    .card-works .card-thumbs {
        padding-top: 0;
        height: 180px;
    }
    .list-works .row {
        margin-left: -12px;
        margin-right: -12px;
    }
    .list-works .row > * {
        padding-left: 12px;
        padding-right: 12px;
    }
    .list-works .card-works {
        width: 50%;
    }
    .list-works .card-works .card-wrp {
        padding: 20px 24px;
    }
    .list-works .card-works.card-works--last-full {
        width: 100%;
    }
    .list-works .card-works.card-works--last-full .card-wrp {
        display: inline-flex;
        flex-wrap: nowrap;
        flex-direction: row;
        align-items: center;
        column-gap: 0;
    }
    .list-works .card-works.card-works--last-full .card-thumbs,
    .list-works .card-works.card-works--last-full .card-body {
        width: calc(50% - 36px);
    }
    .list-works .card-works.card-works--last-full .card-thumbs {
        margin-right: 36px;
    }
    .list-works .card-works.card-works--last-full .card-body {
        margin-left: 36px;
        padding-top: 0;
    }
}
@media (min-width: 1200px) {
    .list-works .row {
        margin-left: -16px;
        margin-right: -16px;
        margin-top: -40px;
    }
    .list-works .row > * {
        padding-left: 16px;
        padding-right: 16px;
        margin-top: 40px;
    }
    .list-works .card-works .card-wrp {
        padding-left: 32px;
        padding-right: 32px;
    }
    .list-works .card-works.card-works--last-full .card-thumbs,
    .list-works .card-works.card-works--last-full .card-body {
        width: calc(50% - 48px);
    }
    .list-works .card-works.card-works--last-full .card-thumbs {
        margin-right: 48px;
    }
    .list-works .card-works.card-works--last-full .card-body {
        margin-left: 48px;
    }
}

.navigation {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0;
    align-items: center;
}
.navigation .navigation-text {
    min-width: 336px;
    padding: 16px 32px 16px 0;
}
.navigation .navigation-text span {
    font-family: var(--ss-medium);
    font-weight: 500;
    color: var(--grey-900);
    font-size: 16px;
    line-height: 130%;
    text-transform: uppercase;
    margin-bottom: 8px;
}
.navigation .navigation-text p {
    font-family: var(--ss-medium);
    font-weight: 500;
    color: #8f9ca9;
    font-size: 12px;
    line-height: 150%;
    text-transform: uppercase;
    margin-bottom: 0px;
}
.navigation .navigation-action ul {
    display: flex;
    flex-direction: row;
    column-gap: 8px;
    justify-content: space-between;
    align-items: center;

    list-style: none;
}
.navigation .navigation-action a {
    display: block;

    font-family: var(--ss-medium);
    font-weight: 500;
    font-size: 16px;
    line-height: 150%;
    color: var(--grey-900);
    text-decoration: none;

    padding-left: 24px;
    position: relative;

    border-left: 3px solid var(--primary-500);
}
.navigation-fixed {
    position: sticky;
    top: 0;
    z-index: 2;
    background-color: #ffffff;
    border-bottom: 1px solid var(--grey-300);
}
