/* hero start  */

.hero {
    height: 100vh;
    overflow: hidden;
    padding-block: 10.625rem 5rem;
    will-change: transform;
}
.hero__background {
    position: absolute;
    z-index: 1;
    inset: 0;
    overflow: hidden;
}
.hero__picture {
    position: absolute;
    inset: 0;
    display: block;
}
.hero__background-image {
    --hero-parallax-y: 0%;
    position: absolute;
    top: -10%;
    left: 0;
    display: block;
    width: 100%;
    height: 130%;
    object-fit: cover;
    object-position: center;
    transform: translate3d(0, var(--hero-parallax-y), 0);
    backface-visibility: hidden;
    will-change: transform;
}
@media (prefers-reduced-motion: no-preference) {
    .js .hero__background-image {
        --hero-parallax-y: -10%;
    }
}
.hero__inner {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
}
.hero__title {
    max-width: 44.0625rem;
    color: var(--color-white);
}
.hero__content {
    margin-top: auto;
    display: flex;
    flex-direction: column;
    row-gap: 5rem;
    width: 31.25rem;
    padding: 1.5625rem;
    border-radius: 0.625rem;
    background: var(--color-white-10);
    backdrop-filter: blur(15px);
}
.js:not(.is-page-loaded) .hero__content {
    opacity: 0;
}
.hero__text {
    color: var(--color-white);
}
.hero__link {
    position: relative;
    width: 21.875rem;
    height: 5.625rem;
    padding: 0.9375rem;
    border-radius: 0.625rem;
    background-color: var(--color-green-light);
    color: var(--color-white);
    transition: background-color 0.3s ease;
}
.hero__link::after {
    content: "";
    position: absolute;
    right: 0.9375rem;
    top: 1.1875rem;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M13.601 7.60104C13.933 7.26909 13.933 6.7309 13.601 6.39896L8.19167 0.989591C7.85973 0.657646 7.32154 0.657646 6.98959 0.989591C6.65765 1.32154 6.65765 1.85973 6.98959 2.19167L11.7979 7L6.98959 11.8083C6.65765 12.1403 6.65765 12.6785 6.98959 13.0104C7.32154 13.3424 7.85973 13.3424 8.19167 13.0104L13.601 7.60104ZM0 7L7.43094e-08 7.85L13 7.85L13 7L13 6.15L-7.43094e-08 6.15L0 7Z' fill='white'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    width: 0.875rem;
    height: 0.875rem;
    z-index: 2;
}
@media (hover: hover) {
    .hero__link:hover {
        background-color: var(--color-green-dark);
    }
}
.hero__link:active {
    background-color: var(--color-green-dark);
}
@media (max-width: 1024px) {
    .hero {
        padding-block: 7.8125rem 2.5rem;
    }
    .hero__title {
        max-width: 21.25rem;
    }
    .hero__content {
        row-gap: 3.75rem;
        width: 27.9375rem;
        padding: 0.9375rem;
    }
    .hero__link {
        width: 21.5625rem;
        height: 4.375rem;
    }
    .hero__link::after {
        top: 1.0625rem;
        width: 0.75rem;
        height: 0.75rem;
    }
}
@media (max-width: 768px) {
    .hero {
        padding-block: 8.125rem 0.9375rem;
    }
    .hero__title {
        max-width: 100%;
    }
    .hero__content {
        width: 100%;
    }
    .hero__link {
        width: 100%;
    }
}
/* hero end  */

/* category start  */

.category {
    margin-top: 10rem;
}
.category__inner {
    width: 100%;
    display: flex;
    flex-direction: column;
    row-gap: 3.75rem;
}
.category__header {
    padding-inline: 5rem;
}
.category__title {
    text-align: center;
}
.js .category__title:not(.is-animated) .split-lines__inner {
    transform: translateY(110%);
}
.category__main {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}
.category__item {
    position: relative;
    height: 37.5rem;
    border-right: 1px solid var(--color-black-20);
    border-bottom: 1px solid var(--color-black-20);
    transition: background-color 0.4s ease;
}
.category__item-link {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    padding: 8.125rem 1.5625rem 1.5625rem;
    color: inherit;
}
.category__item:nth-child(-n + 3) {
    border-top: 1px solid var(--color-black-20);
}
.category__item:nth-child(3n) {
    border-right: none;
}
@media (hover: hover) {
    .category__item:hover {
        background-color: var(--color-green);
    }
}
.category__item-dropdown {
    position: absolute;
    z-index: 2;
    left: 1.5625rem;
    top: 1.5625rem;
    width: fit-content;
    max-width: calc(100% - 3.125rem);
}
.category__item-dropdown:not(.has-dropdown) {
    pointer-events: none;
}
.category__item-dropdown.has-dropdown::before {
    content: "";
    position: absolute;
    z-index: 2;
    top: 100%;
    left: 0;
    width: 100%;
    height: 0.625rem;
}
.category__dropdown-button {
    display: flex;
    align-items: center;
    width: fit-content;
    max-width: 100%;
    column-gap: 0.9375rem;
    padding: 1rem 1.5625rem;
    border-radius: 6.25rem;
    background-color: var(--color-blue-light);
    text-align: left;
    transition: background-color 0.3s ease;
}
.category__item-dropdown.has-dropdown .category__dropdown-button {
    cursor: pointer;
}
.category__item-dropdown.has-dropdown .category__dropdown-button::after {
    content: "";
    width: 1rem;
    height: 1rem;
    flex-shrink: 0;
    background-color: currentColor;
    mask-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14 6L8.5 12L3 6' stroke='%2333363D' stroke-width='1.5' stroke-linejoin='round'/%3E%3C/svg%3E");
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14 6L8.5 12L3 6' stroke='%2333363D' stroke-width='1.5' stroke-linejoin='round'/%3E%3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: contain;
    transition: transform 0.3s ease;
}
@media (hover: hover) {
    .category__item:hover .category__dropdown-button {
        background-color: var(--color-white);
    }
}
.category__item-dropdown.has-dropdown.is-open .category__dropdown-button::after {
    transform: scaleY(-1);
}
.category__dropdown-content {
    position: absolute;
    z-index: 3;
    top: calc(100% + 0.625rem);
    left: 0;
    width: 31.25rem;
    max-width: calc(100vw - 3.125rem);
    padding: 1.5625rem 0.625rem 1.5625rem 1.5625rem;
    border-radius: 0.75rem;
    background-color: var(--color-white);
    box-shadow: 0.125rem 0.25rem 2rem 0 rgba(0, 0, 0, 0.1);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition:
            opacity 0.3s ease,
            visibility 0s linear 0.3s;
}
.category__item-dropdown.has-dropdown.is-open .category__dropdown-content {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition-delay: 0s;
}
.category__dropdown-content > ul {
    display: flex;
    flex-direction: column;
    align-items: start;
    row-gap: 1.125rem;
    width: 100%;
    max-height: 16.875rem;
    padding-right: 3.125rem;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
}
.category__dropdown-content > ul::-webkit-scrollbar {
    width: 0.1875rem;
}
.category__dropdown-content > ul::-webkit-scrollbar-track {
    border-radius: 6.25rem;
    background-color: #d9d9d9;
}
.category__dropdown-content > ul::-webkit-scrollbar-thumb {
    border-radius: 6.25rem;
    background-color: var(--color-black-light);
}
.category__dropdown-content > ul::-webkit-scrollbar-button {
    display: none;
}
.category__dropdown-item {
    width: 100%;
}
.category__dropdown-item-row {
    display: flex;
    align-items: center;
    width: fit-content;
    column-gap: 0.5rem;
}
.category__dropdown-item-row > a {
    display: block;
}
.category__submenu-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1rem;
    height: 1rem;
    padding: 0;
    border: 0;
    background: none;
    flex-shrink: 0;
    cursor: pointer;
}
.category__submenu-toggle::before {
    content: "";
    width: 0.625rem;
    height: 0.625rem;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath opacity='0.4' d='M5.85156 0.851562C5.85156 4.75681 5.85156 6.94632 5.85156 10.8516M10.8516 5.85156L0.851562 5.85156' stroke='%2333363D' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
}
.category__dropdown-item.is-open
.category__submenu-toggle::before {
    width: 0.625rem;
    height: 0.125rem;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='2' viewBox='0 0 10 2' fill='none'%3E%3Cpath d='M8.75 0.75L0.75 0.75' stroke='%2333363D' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");
}
.category__submenu {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.4s ease;
}
.category__dropdown-item.is-open > .category__submenu {
    grid-template-rows: 1fr;
}
.category__submenu-inner {
    min-height: 0;
    overflow: hidden;
}
.category__submenu-list {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    row-gap: 1.125rem;
    padding-top: 1.125rem;
    padding-left: 0.875rem;
}
.category__submenu-list li {
    position: relative;
}
.category__submenu-list li::before {
    content: "";
    position: absolute;
    top: 50%;
    left: -0.625rem;
    width: 0.25rem;
    height: 0.25rem;
    border-radius: 50%;
    background-color: currentColor;
    transform: translateY(-50%);
}
.category__submenu-list li a {
    display: block;
}
.category__item-image {
    width: 100%;
    height: 21.25rem;
    padding: 1.25rem;
}
.category__item-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    mix-blend-mode: darken;
}
.category__item-button {
    position: relative;
    margin-top: auto;
    margin-left: auto;
    width: 21.875rem;
    height: 5.625rem;
    padding: 0.9375rem;
    border-radius: 0.625rem;
    background: var(--color-green-light);
    color: var(--color-white);
    opacity: 0;
    pointer-events: none;
    transition:
            opacity 0.5s ease,
            background-color 0.3s ease;
}
@media (hover: hover) {
    .category__item:hover .category__item-button {
        opacity: 1;
        pointer-events: auto;
    }
    .category__item-button:hover {
        background-color: var(--color-green-dark);
    }
}
.category__item-button::after {
    content: "";
    position: absolute;
    z-index: 2;
    right: 0.9375rem;
    top: 1.125rem;
    width: 0.875rem;
    height: 0.875rem;
    flex-shrink: 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M13.601 7.60104C13.933 7.26909 13.933 6.7309 13.601 6.39896L8.19167 0.989591C7.85973 0.657646 7.32154 0.657646 6.98959 0.989591C6.65765 1.32154 6.65765 1.85973 6.98959 2.19167L11.7979 7L6.98959 11.8083C6.65765 12.1403 6.65765 12.6785 6.98959 13.0104C7.32154 13.3424 7.85973 13.3424 8.19167 13.0104L13.601 7.60104ZM0 7L7.43094e-08 7.85L13 7.85L13 7L13 6.15L-7.43094e-08 6.15L0 7Z' fill='white'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
}
.category__actions {
    display: flex;
    justify-content: center;
}
@media (max-width: 1024px) {
    .category {
        margin-top: 6.25rem;
    }
    .category__inner {
        row-gap: 2.5rem;
    }
    .category__header {
        padding-inline: 2.5rem;
    }
    .category__item {
        height: 22.5rem;
    }
    .category__item-link {
        padding: 6.875rem 1.25rem 5rem;
    }
    .category__item-dropdown {
        left: 0.9375rem;
        top: 0.9375rem;
        width: fit-content;
        max-width: calc(100% - 1.875rem);
    }
    .category__item-dropdown.has-dropdown::before {
        height: 0.3125rem;
    }
    .category__dropdown-button {
        column-gap: 0.625rem;
        padding: 0.75rem 0.9375rem;
    }
    .category__item-dropdown.has-dropdown .category__dropdown-button::after {
        width: 0.75rem;
        height: 0.75rem;
    }
    .category__dropdown-content {
        top: calc(100% + 0.3125rem);
        width: 20rem;
        max-width: calc(100vw - 1.875rem);
        padding: 0.9375rem 0.625rem 0.9375rem 0.9375rem;
    }
    .category__dropdown-content > ul {
        row-gap: 0.9375rem;
        max-height: 13.75rem;
        padding-right: 1.25rem;
    }
    .category__dropdown-content > ul::-webkit-scrollbar {
        width: 0.125rem;
    }
    .category__submenu-toggle::before {
        width: 0.5rem;
        height: 0.5rem;
    }
    .category__dropdown-item.is-open
    .category__submenu-toggle::before {
        width: 0.5rem;
        height: 0.125rem;
    }
    .category__submenu-list {
        row-gap: 0.9375rem;
        padding-top: 0.9375rem;
    }
    .category__item-image {
        height: 10.625rem;
        padding: 0;
    }
    .category__item-button {
        display: none;
    }
}
@media (max-width: 768px) {
    .category {
        margin-top: 5rem;
    }
    .category__header {
        padding-inline: 0.9375rem;
    }
    .category__main {
        grid-template-columns: repeat(1, 1fr);
    }
    .category__item {
        height: 18.125rem;
        border-right: none;
    }
    .category__item-link {
        padding: 5rem 2.375rem 2.5rem;
    }
    .category__item:nth-child(-n + 3) {
        border-top: none;
    }
    .category__item:nth-child(3n) {
        border-right: none;
    }
    .category__item:first-child {
        border-top: 0.0625rem solid var(--color-black-20);
    }
    .category__dropdown-content {
        width: 21.5625rem;
        max-width: calc(100vw - 1.875rem);
    }
    .category__dropdown-content > ul {
        max-height: 11.25rem;
    }
    .category__item-image {
        padding: 0.5625rem;
    }
}

/* category end  */

/* strengths start */

.strengths {
    margin-top: 10rem;
    overflow: visible;
}

.strengths__inner {
    display: flex;
    flex-direction: column;
    row-gap: 5.625rem;
    min-width: 0;
}

.strengths__animation {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    min-width: 0;
    row-gap: 5.625rem;
}

.strengths__header {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.strengths__title {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 27.8125rem;
}

.js .strengths__title:not(.is-animated) .split-lines__inner {
    transform: translateY(110%);
}

.strengths__content {
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 1.5625rem;
    overflow: hidden;
}

.strengths__years {
    display: flex;
    align-items: flex-start;
    margin-right: -2.5rem;
    font-family: var(--font-title);
    font-size: 32.5rem;
    line-height: 80%;
    letter-spacing: -2.275rem;
}

.animate-char {
    display: block;
    flex-shrink: 0;
    padding-right: 0.875rem;
    margin-right: -0.875rem;
    overflow: hidden;
}

.animate-char__inner {
    display: block;
    line-height: 80%;
    letter-spacing: -2.275rem;
    will-change: transform;
}

.animate-char--accent {
    margin-top: -1.5625rem;
    padding-left: 0.3125rem;
}

.animate-char__inner--accent {
    padding-right: 0.75rem;
    color: var(--color-green-light);
    font-size: 13.75rem;
    line-height: 80%;
}

.js [data-animate-chars]:not(.is-chars-ready) {
    visibility: hidden;
}

.js [data-animate-chars].is-chars-ready:not(.is-animated) .animate-char__inner {
    transform: translateY(120%);
}

.strengths__description {
    max-width: 55.625rem;
    text-align: center;
    font-size: var(--font-size-25);
    line-height: 120%;
    letter-spacing: -0.0156rem;
}

.strengths__cards {
    position: relative;
    width: 100%;
    min-width: 0;
}

.strengths__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1.25rem;
    width: 100%;
    min-width: 0;
}

.strengths__item {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    height: 21.25rem;
    padding-left: 0.9375rem;
    row-gap: 0.9375rem;
    border-left: 1px solid var(--color-black-20);
    backface-visibility: hidden;
}

.strengths__item-number {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3.125rem;
    height: 3.125rem;
    flex-shrink: 0;
    margin-bottom: auto;
    border: 1px solid var(--color-green-light);
    border-radius: 50%;
    color: var(--color-green-light);
}

.strengths__item-text {
    color: var(--color-black-50);
}

.strengths__actions {
    display: flex;
    justify-content: center;
}

@media (min-width: 1025px) and (prefers-reduced-motion: no-preference) {
    .js .strengths__cards:not(.is-ready) .strengths__item:not(:first-child) {
        visibility: hidden;
    }
}

@media (max-width: 1024px) {
    .strengths {
        margin-top: 6.25rem;
    }
    .strengths__inner,
    .strengths__animation {
        row-gap: 3.125rem;
    }
    .strengths__title {
        width: 20.625rem;
    }
    .strengths__content {
        row-gap: 1.25rem;
    }
    .strengths__years {
        margin-right: -3.125rem;
        font-size: 16.25rem;
        line-height: 80%;
        letter-spacing: -1.1375rem;
    }
    .animate-char {
        padding-right: 1.875rem;
        margin-right: -0.875rem;
    }
    .animate-char__inner {
        letter-spacing: -2.275rem;
    }
    .animate-char--accent {
        margin-top: -0.6625rem;
        padding-left: 0.9375rem;
    }
    .animate-char__inner--accent {
        padding-right: 0.75rem;
        font-size: 6.75rem;
        line-height: 80%;
        letter-spacing: -0.7875rem;
    }
    .strengths__description {
        max-width: 31.3125rem;
        font-size: 1.25rem;
        letter-spacing: -0.0125rem;
    }
    .strengths__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 3.3125rem 1rem;
    }
    .strengths__item {
        justify-content: flex-start;
        height: auto;
        padding-top: 0.9375rem;
        padding-left: 0;
        row-gap: 0.625rem;
        border-top: 1px solid var(--color-black-20);
        border-left: none;
    }
    .strengths__item-number {
        width: 2.5rem;
        height: 2.5rem;
        margin-bottom: 0.625rem;
    }
}
@media (max-width: 768px) {
    .strengths {
        margin-top: 5rem;
    }
    .strengths__inner,
    .strengths__animation {
        row-gap: 2.5rem;
    }
    .strengths__header {
        align-items: flex-start;
        row-gap: 2.5rem;
    }
    .strengths__title {
        position: relative;
        top: auto;
        left: auto;
        width: 100%;
    }
    .strengths__content {
        align-items: flex-start;
        row-gap: 2.5rem;
    }
    .strengths__years {
        margin-right: -3.125rem;
        font-size: 16.25rem;
        line-height: 80%;
        letter-spacing: -1.1375rem;
    }
    .animate-char {
        padding-right: 1.875rem;
        margin-right: -0.875rem;
    }
    .animate-char__inner {
        letter-spacing: -2.275rem;
    }
    .animate-char--accent {
        margin-top: -0.6625rem;
        padding-left: 0.9375rem;
    }
    .animate-char__inner--accent {
        padding-right: 0.75rem;
        font-size: 6.75rem;
        line-height: 80%;
        letter-spacing: -0.7875rem;
    }
    .strengths__description {
        width: 100%;
        max-width: 100%;
        margin-inline: auto;
    }
    .strengths__grid {
        grid-template-columns: 1fr;
        gap: 2.5rem;
    }
}

/* strengths end */

/* stages start */

.stages {
    position: relative;
    margin-top: 10rem;
    overflow: visible;
}
.stages__inner {
    position: sticky;
    z-index: 2;
    top: var(--stages-sticky-top, 0px);
    display: flex;
    flex-direction: column;
    row-gap: 3.75rem;
}
.stages__header {
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 1.5625rem;
}
.stages__title {
    max-width: 43.5rem;
    text-align: center;
}
.js .stages__title:not(.is-animated) .split-lines__inner {
    transform: translateY(110%);
}
.stages__description {
    max-width: 34.6875rem;
    color: var(--color-black-50);
    text-align: center;
}
.stages__main {
    width: 100%;
    min-width: 0;
}
.stages__viewport {
    width: 100%;
    min-width: 0;
    overflow: hidden;
    border-top: 1px solid var(--color-black-20);
    border-bottom: 1px solid var(--color-black-20);
}
.stages__track {
    display: flex;
    align-items: stretch;
    width: max-content;
    will-change: transform;
}
.stages__item {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 32.5rem;
    height: 38.375rem;
    flex: 0 0 32.5rem;
    padding: 1.5625rem;
    border-right: 1px solid var(--color-black-20);
    background-color: transparent;
}
.stages__item:first-child {
    border-left: 1px solid var(--color-black-20);
}
.stages__item-title {
    max-width: 21rem;
}
.stages__item-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 12.5rem;
    height: 12.5rem;
    margin: auto;
}
.stages__item-icon img {
    display: block;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}
.stages__item-number {
    position: absolute;
    right: 1.5625rem;
    bottom: 1.5625rem;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3.125rem;
    height: 3.125rem;
    flex-shrink: 0;
    border: 1px solid var(--color-black-20);
    border-radius: 50%;
    color: var(--color-black-50);
}
.stages__scrollbar-container {
    display: none;
    margin-top: 1.875rem;
}
.stages__scrollbar {
    position: relative;
    width: 100%;
    height: 1px;
    overflow: hidden;
    background-color: var(--color-black-20);
}
.stages__scrollbar-thumb {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 0;
    height: 100%;
    background-color: var(--color-black-light);
    transform: translate3d(0, 0, 0);
    will-change: width, transform;
}

@media (max-width: 1024px) {
    .stages {
        min-height: 0 !important;
        margin-top: 6.25rem;
        overflow: hidden;
    }
    .stages__inner {
        position: relative;
        top: auto;
        z-index: auto;
        row-gap: 2.5rem;
    }
    .stages__header {
        row-gap: 0.9375rem;
    }
    .stages__title {
        max-width: 26.25rem;
    }
    .stages__description {
        max-width: 28.125rem;
    }
    .stages__viewport {
        width: 100%;
        overflow-x: auto;
        overflow-y: hidden;
        scrollbar-width: none;
        -ms-overflow-style: none;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior-inline: contain;
        touch-action: auto;
    }
    .stages__viewport::-webkit-scrollbar {
        display: none;
    }
    .stages__track {
        transform: none !important;
        will-change: auto;
    }
    .stages__item {
        width: 22.5rem;
        height: 24.875rem;
        flex: 0 0 22.5rem;
        padding: 0.9375rem;
    }
    .stages__item-title {
        max-width: 100%;
    }
    .stages__item-icon {
        width: 8.75rem;
        height: 8.75rem;
    }
    .stages__item-number {
        right: 0.9375rem;
        bottom: 0.9375rem;
        width: 2.5rem;
        height: 2.5rem;
    }
    .stages__scrollbar-container {
        display: block;
    }
}

@media (max-width: 768px) {
    .stages {
        margin-top: 5rem;
    }
    .stages__title {
        width: 100%;
        max-width: 100%;
    }
    .stages__description {
        max-width: 100%;
        width: 100%;
    }
    .stages__item {
        width: 17.5rem;
        height: 23.875rem;
        flex-basis: 17.5rem;
    }
}

/* stages end */

/* clients start */

.clients {
    margin-top: 10rem;
    overflow: hidden;
}
.clients__header {
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 1.5625rem;
}
.clients__title {
    text-align: center;
}
.js .clients__title:not(.is-animated) .split-lines__inner {
    transform: translateY(110%);
}
.clients__description {
    max-width: 34.625rem;
    text-align: center;
    color: var(--color-black-50);
}
.clients__rows {
    display: flex;
    flex-direction: column;
    row-gap: 1.25rem;
    margin-top: 3.75rem;
}
.clients__marquee {
    width: 100%;
    min-width: 0;
    overflow: hidden;
}
.clients__track {
    display: flex;
    width: max-content;
    transform: translate3d(0, 0, 0);
    backface-visibility: hidden;
    will-change: transform;
}
.clients__group {
    display: flex;
    flex-shrink: 0;
    column-gap: 1.25rem;
    padding-right: 1.25rem;
}
.clients__card {
    width: 28.125rem;
    height: 16.625rem;
    flex-shrink: 0;
    overflow: hidden;
    border: 1px solid var(--color-black-20);
    background-color: var(--color-white);
    transform: skewX(-10deg);
    transition:
            border-color 0.3s ease,
            background-color 0.3s ease;
}
.clients__link {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    transform: skewX(10deg);
}
.clients__link img {
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    max-width: 18.75rem;
    max-height: 6.25rem;
    object-fit: contain;
    transform: translate(-50%, -50%);
    transition: opacity 0.3s ease;
}
.clients__link img.origin {
    opacity: 1;
}
.clients__link img.hover {
    z-index: 2;
    opacity: 0;
}
@media (hover: hover) {
    .clients__card:hover {
        border-color: var(--color-green-light);
        background-color: var(--color-green-light);
    }
    .clients__card:hover .clients__link img.origin {
        opacity: 0;
    }
    .clients__card:hover .clients__link img.hover {
        opacity: 1;
    }
}
.clients__card:active {
    border-color: var(--color-green-light);
    background-color: var(--color-green-light);
}
.clients__card:active .clients__link img.origin {
    opacity: 0;
}
.clients__card:active .clients__link img.hover {
    opacity: 1;
}
@media (max-width: 1024px) {
    .clients {
        margin-top: 6.25rem;
    }
    .clients__header {
        row-gap: 0.9375rem;
    }
    .clients__description {
        max-width: 28.125rem;
    }
    .clients__rows {
        row-gap: 0.75rem;
        margin-top: 2.5rem;
    }
    .clients__group {
        column-gap: 0.75rem;
        padding-right: 0.75rem;
    }
    .clients__card {
        width: 17.5rem;
        height: 10.3125rem;
    }
    .clients__link img {
        max-width: 11.25rem;
        max-height: 3.75rem;
    }
}
@media (max-width: 768px) {
    .clients {
        margin-top: 5rem;
    }
    .clients__description {
        width: 100%;
        max-width: 100%;
    }
    .clients__rows {
        row-gap: 0.4375rem;
    }
    .clients__group {
        column-gap: 0.4375rem;
        padding-right: 0.4375rem;
    }
    .clients__card {
        width: 15rem;
        height: 8.8125rem;
    }
    .clients__link img {
        max-width: 9.375rem;
        max-height: 3.125rem;
    }
}
/* clients end */

/* video-tour start */

.video-tour {
    position: relative;
    height: 87.5rem;
    margin-top: 10rem;
}
.video-tour__background {
    --clip-top: 60%;
    --clip-side: 40%;
    --clip-bottom: 0%;

    position: absolute;
    z-index: 1;
    inset: 0;
    overflow: hidden;
    clip-path: inset(var(--clip-top) var(--clip-side) var(--clip-bottom) var(--clip-side));
    will-change: clip-path;
}
.video-tour__picture {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.video-tour__picture img {
    position: absolute;
    top: -12.5%;
    left: 0;
    display: block;
    width: 100%;
    height: 125%;
    object-fit: cover;
    object-position: center;
    will-change: transform;
}
.video-tour__inner {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 3.75rem;
    height: 100%;
    padding-block: 5rem;
}
.video-tour__header {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 2.5rem;
}
.video-tour__title {
    max-width: 76.25rem;
    width: 100%;
    color: var(--color-white);
    text-align: center;
}
.js .video-tour__title:not(.is-animated) .split-lines__inner {
    transform: translateY(110%);
}
.video-tour__description {
    max-width: 51.625rem;
    color: var(--color-white);
    text-align: center;
}
.video-tour__card {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 21.9375rem;
    height: 17.5rem;
    padding: 0.9375rem;
    border-radius: 0.625rem;
    background: var(--color-white-15);
    backdrop-filter: blur(20px);
    will-change: opacity;
}
.video-tour__card::after {
    content: "";
    position: absolute;
    z-index: 2;
    left: 0.9375rem;
    top: 0.9375rem;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='14' viewBox='0 0 19 14' fill='none'%3E%3Cpath d='M18.1095 6.10868L7.99577 11.0638C7.19791 11.4547 6.22693 11.142 5.8255 10.365C5.42406 9.588 5.74521 8.64243 6.54307 8.2515L16.6568 3.2964C17.4546 2.90547 18.4256 3.21821 18.8271 3.99519C19.2285 4.77218 18.9073 5.71775 18.1095 6.10868Z' fill='white'/%3E%3Cpath d='M8.09874 2.98071L2.9478 5.50468C2.14994 5.89562 1.17897 5.58287 0.777528 4.80589C0.37609 4.0289 0.697239 3.08333 1.4951 2.69239L6.64604 0.168424C7.4439 -0.22251 8.41487 0.0902373 8.81631 0.86722C9.21775 1.64176 8.8966 2.58978 8.09874 2.98071Z' fill='white'/%3E%3Cpath d='M3.59018 13.2207L2.34322 13.8316C1.54536 14.2225 0.574387 13.9098 0.172949 13.1328C-0.228488 12.3558 0.0926609 11.4102 0.890518 11.0193L2.13748 10.4085C2.93534 10.0175 3.90632 10.3303 4.30775 11.1073C4.70919 11.8842 4.38804 12.8323 3.59018 13.2207Z' fill='white'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    width: 1.1875rem;
    height: 0.875rem;
}
.js .video-tour:not(.is-content-animated) .video-tour__description,
.js .video-tour:not(.is-content-animated) .video-tour__card {
    opacity: 0;
}
.video-tour__preview {
    position: relative;
    margin-left: auto;
    width: 11.875rem;
    height: 7.5rem;
    padding: 0.3125rem;
    overflow: hidden;
    background-color: var(--color-white-30);
    border-radius: 0.75rem;
}
.video-tour__preview-image {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 0.4375rem;
    overflow: hidden;
}
.video-tour__preview-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}
@media (hover: hover) {
    .video-tour__preview:hover img {
        transform: scale(1.2);
    }
}
.video-tour__play {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 1.125rem;
    background-color: var(--color-white);
    transform: translate(-50%, -50%);
    transition: transform 0.3s ease;
}
.video-tour__play svg {
    display: block;
    width: 0.75rem;
    height: auto;
    margin-left: 0.1875rem;
}
.video-tour__duration {
    margin-top: auto;
    color: var(--color-white-50);
}

@media (max-width: 1024px) {
    .video-tour {
        height: 62.5rem;
        margin-top: 6.25rem;
    }
    .video-tour__inner {
        padding-block: 2.5rem;
    }
    .video-tour__header {
        row-gap: 1.25rem;
    }
    .video-tour__title {
        max-width: 29.8125rem;
        width: 100%;
    }
    .video-tour__description {
        max-width: 30.9375rem;
        font-size: var(--font-size-18);
        line-height: 120%;
        letter-spacing: -0.0112rem;
    }
    .video-tour__card {
        width: 21.5625rem;
        height: 14.0625rem;
    }
    .video-tour__preview {
        width: 11.875rem;
        height: 7.5rem;
    }
}
@media (max-width: 768px) {
    .video-tour {
        height: 52.5rem;
        margin-top: 5rem;
    }
    .video-tour__inner {
        padding-block: 0.9375rem;
    }
    .video-tour__header {
        row-gap: 0.9375rem;
    }
    .video-tour__title {
        max-width: 100%;
        width: 100%;
    }
    .video-tour__description {
        max-width: 100%;
    }
    .video-tour__card {
        margin-top: auto;
        width: 100%;
        height: 14.0625rem;
    }
}

/* video-tour end */

/* architects start  */

.architects {
    margin-top: 10rem;
}
.architects__inner {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 1.25rem;
}
.architects__content,
.architects__image {
    height: 52.5rem;
    border-radius: 0.625rem;
    overflow: hidden;
}
.architects__content {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    row-gap: 1.875rem;
    padding: 2.5rem;
    background-color: var(--color-blue-light);
}
.architects__logo {
    width: 10rem;
    height: auto;
}
.architects__main {
    max-width: 37.9375rem;
    margin-top: -10%;
}
.architects__text {
    margin-top: 1.5625rem;
    color: var(--color-black-50);
}
.architects__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.4688rem;
}
.architects__image {
    position: relative;
}

.architects__image img {
    position: absolute;
    top: -10%;
    left: 0;
    display: block;
    width: 100%;
    height: 120%;
    object-fit: cover;
    will-change: transform;
}
@media (max-width: 1024px) {
    .architects {
        margin-top: 6.25rem;
    }
    .architects__inner {
        display: flex;
        flex-direction: column;
        row-gap: 1.25rem;
    }
    .architects__image {
        order: 1;
        width: 100%;
        height: 27.5rem;
    }
    .architects__content {
        order: 2;
        width: 100%;
        height: 27.5rem;
        padding: 1.5625rem;
    }
    .architects__logo {
        width: 7.5rem;
    }
    .architects__main {
        max-width: 31.25rem;
        margin-top: -5%;
    }
    .architects__text {
        margin-top: 0.625rem;
    }
    .architects__actions {
        gap: 0.625rem;
    }
}
@media (max-width: 768px) {
    .architects {
        margin-top: 5rem;
    }
    .architects__inner {
        row-gap: 0.9375rem;
    }
    .architects__image {
        height: 25rem;
    }
    .architects__content {
        height: auto;
        row-gap: 2.5rem;
    }
    .architects__main {
        max-width: 100%;
        margin-top: 0;
    }
    .architects__actions {
        gap: 0.625rem;
    }
}

/* architects end  */

/* reviews start */

.reviews {
    margin-top: 10rem;
}
.reviews__inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 3.75rem;
}
.reviews__header {
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 1.25rem;
}
.reviews__title {
    text-align: center;
}
.js .reviews__title:not(.is-animated) .split-lines__inner {
    transform: translateY(110%);
}
.reviews__description {
    max-width: 35.875rem;
    text-align: center;
    color: var(--color-black-50);
}
.reviews__main {
    display: flex;
    flex-direction: column;
    row-gap: 1.25rem;
    width: 63.625rem;
    max-width: 100%;
}
.reviews__top {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 1.25rem;
}
.reviews__feature,
.reviews__image {
    height: 19.375rem;
    overflow: hidden;
    border-radius: 0.625rem;
}
.reviews__feature {
    display: flex;
    flex-direction: column;
    row-gap: 1.25rem;
    padding: 1.25rem;
    background-color: var(--color-green-light);
}
.reviews__feature-text {
    color: var(--color-white);
    max-width: 28.125rem;
}
.reviews__feature-author {
    margin-top: auto;
    color: var(--color-white-50);
}
.reviews__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.reviews__bottom {
    position: relative;
    width: 100%;
    height: 19.375rem;
    overflow: hidden;
    border-radius: 0.625rem;
    background-color: var(--color-blue-light);
}
.reviews__slider,
.reviews__slider .swiper-wrapper {
    width: 100%;
    height: 100%;
}
.reviews__slide {
    display: flex;
    flex-direction: column;
    row-gap: 1.25rem;
    width: 100%;
    height: 100%;
    padding: 1.25rem;
    background-color: var(--color-blue-light);
}
.reviews__slide-text {
    max-width: 44.375rem;
}
.reviews__slide-author {
    margin-top: auto;
    color: var(--color-black-50);
}
.reviews__arrows {
    position: absolute;
    z-index: 5;
    right: 1.25rem;
    bottom: 1.25rem;
    display: flex;
    align-items: center;
    column-gap: 0.3125rem;
}
.reviews__arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3.75rem;
    height: 3.75rem;
    flex-shrink: 0;
    border-radius: 3.3125rem;
    color: var(--color-black-light);
    background-color: var(--color-white);
    transition:
            color 0.3s ease,
            background-color 0.3s ease,
            opacity 0.3s ease;
}
.reviews__arrow svg {
    width: 0.875rem;
    height: auto;
}
@media (hover: hover) {
    .reviews__arrow:not(.swiper-button-disabled):hover {
        color: var(--color-white);
        background-color: var(--color-green-light);
    }
}
.reviews__arrow:not(.swiper-button-disabled):active {
    color: var(--color-white);
    background-color: var(--color-green-light);
}
.reviews__arrow.swiper-button-disabled {
    opacity: 0.4;
    pointer-events: none;
}

@media (max-width: 1024px) {
    .reviews {
        margin-top: 6.25rem;
    }
    .reviews__inner {
        row-gap: 2.5rem;
    }
    .reviews__header {
        row-gap: 0.9375rem;
    }
    .reviews__description {
        max-width: 26.25rem;
    }
    .reviews__main {
        row-gap: 0.9375rem;
        width: 100%;
        max-width: 100%;
    }
    .reviews__top {
        column-gap: 0.9375rem;
    }
    .reviews__feature,
    .reviews__image {
        height: 17.5rem;
    }
    .reviews__feature {
        padding: 0.9375rem;
    }
    .reviews__feature-text {
        max-width: 19.6875rem;
    }
    .reviews__bottom {
        height: 17.5rem;
    }
    .reviews__slide {
        padding: 0.9375rem;
    }
    .reviews__slide-text {
        max-width: 36.25rem;
    }
    .reviews__arrows {
        right: 0.9375rem;
        bottom: 0.9375rem;
    }
    .reviews__arrow {
        width: 2.5rem;
        height: 2.5rem;
    }
    .reviews__arrow svg {
        width: 1rem;
    }
}
@media (max-width: 768px) {
    .reviews {
        margin-top: 5rem;
    }
    .reviews__header {
        row-gap: 0.625rem;
    }
    .reviews__description {
        max-width: 100%;
    }
    .reviews__top {
        display: flex;
        flex-direction: column;
        row-gap: 0.9375rem;
    }
    .reviews__feature-text {
        max-width: 100%;
    }
    .reviews__bottom {
        height: 29.75rem;
    }
    .reviews__slide {
        row-gap: 2.5rem;
    }
    .reviews__slide-text {
        max-width: 100%;
    }
    .reviews__slide-author {
        margin-top: 0;
    }
    .reviews__arrows {
        right: auto;
        bottom: 0.9375rem;
        left: 0.9375rem;
    }
}

/* reviews end */

/* news-promo start */

.news-promo {
    margin-top: 10rem;
    height: 87.5rem;
    position: relative;
}
.news-promo__background {
    --clip-top: 60%;
    --clip-side: 40%;
    --clip-bottom: 0%;

    position: absolute;
    z-index: 1;
    inset: 0;
    overflow: hidden;
    clip-path: inset(var(--clip-top) var(--clip-side) var(--clip-bottom) var(--clip-side));
    will-change: clip-path;
}
.news-promo__picture {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.news-promo__picture img {
    position: absolute;
    top: -12.5%;
    left: 0;
    display: block;
    width: 100%;
    height: 125%;
    object-fit: cover;
    object-position: center;
    backface-visibility: hidden;
    will-change: transform;
}
.news-promo__inner {
    position: relative;
    z-index: 2;
    height: 100%;
    padding-block: 5rem;
    display: flex;
    justify-content: space-between;
    align-items: start;
    column-gap: 1.875rem;
}
.news-promo__title {
    max-width: 49.75rem;
    color: var(--color-white);
}
.news-promo__content {
    width: 45.125rem;
    min-height: 31.25rem;
    border-radius: 0.625rem;
    background: var(--color-white-15);
    backdrop-filter: blur(15px);
    padding: 1.5625rem;
    display: flex;
    flex-direction: column;
    row-gap: 2.5rem;

    will-change: opacity;
}
.js .news-promo__title:not(.is-animated) .split-lines__inner {
    transform: translateY(110%);
}
.js .news-promo__content:not(.is-animated) {
    opacity: 0;
}
.news-promo__text {
    color: var(--color-white);
    max-width: 40.1875rem;
}
.news-promo__content-bottom {
    position: relative;
    margin-top: auto;
    display: flex;
    justify-content: end;
    width: 100%;
    padding-top: 1.5625rem;
    border-top: 1px solid var(--color-white-30);
}
.news-promo__content-bottom::before {
    content: "";
    position: absolute;
    z-index: 2;
    left: 0;
    top: 1.5625rem;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='14' viewBox='0 0 19 14' fill='none'%3E%3Cpath d='M18.1095 6.10868L7.99577 11.0638C7.19791 11.4547 6.22693 11.142 5.8255 10.365C5.42406 9.588 5.74521 8.64243 6.54307 8.2515L16.6568 3.2964C17.4546 2.90547 18.4256 3.21821 18.8271 3.99519C19.2285 4.77218 18.9073 5.71775 18.1095 6.10868Z' fill='white'/%3E%3Cpath d='M8.09874 2.98071L2.9478 5.50468C2.14994 5.89562 1.17897 5.58287 0.777528 4.80589C0.37609 4.0289 0.697239 3.08333 1.4951 2.69239L6.64604 0.168424C7.4439 -0.22251 8.41487 0.0902373 8.81631 0.86722C9.21775 1.64176 8.8966 2.58978 8.09874 2.98071Z' fill='white'/%3E%3Cpath d='M3.59018 13.2207L2.34322 13.8316C1.54536 14.2225 0.574387 13.9098 0.172949 13.1328C-0.228488 12.3558 0.0926609 11.4102 0.890518 11.0193L2.13748 10.4085C2.93534 10.0175 3.90632 10.3303 4.30775 11.1073C4.70919 11.8842 4.38804 12.8323 3.59018 13.2207Z' fill='white'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    width: 1.1875rem;
    height: 0.875rem;
    flex-shrink: 0;
}
.news-promo__button {
    position: relative;
    width: 21.875rem;
    height: 5.625rem;
    border-radius: 0.625rem;
    background-color: var(--color-green-light);
    padding: 0.9375rem;
    color: var(--color-white);
    transition: background-color 0.3s ease;
}
@media (hover: hover) {
    .news-promo__button:hover {
        background-color: var(--color-green-dark);
    }
}
.news-promo__button:active {
    background-color: var(--color-green-dark);
}
.news-promo__button::after {
    content: "";
    position: absolute;
    z-index: 2;
    right: 0.9375rem;
    top: 1.1875rem;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M13.601 7.60104C13.933 7.26909 13.933 6.7309 13.601 6.39896L8.19167 0.989591C7.85973 0.657646 7.32154 0.657646 6.98959 0.989591C6.65765 1.32154 6.65765 1.85973 6.98959 2.19167L11.7979 7L6.98959 11.8083C6.65765 12.1403 6.65765 12.6785 6.98959 13.0104C7.32154 13.3424 7.85973 13.3424 8.19167 13.0104L13.601 7.60104ZM0 7L7.43094e-08 7.85L13 7.85L13 7L13 6.15L-7.43094e-08 6.15L0 7Z' fill='white'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    width: 0.875rem;
    height: 0.875rem;
    flex-shrink: 0;
}
@media (max-width: 1024px) {
    .news-promo {
        margin-top: 6.25rem;
        height: 62.5rem;
    }
    .news-promo__background {
        --clip-top: 60%;
        --clip-side: 40%;
        --clip-bottom: 0%;
    }
    .news-promo__inner {
        padding-block: 2.5rem;
    }
    .news-promo__title {
        max-width: 21.5625rem;
        font-family: var(--font-main);
        font-size: var(--font-size-38);
        line-height: 90%;
        letter-spacing: -0.0712rem;
    }
    .news-promo__content {
        width: 29rem;
        min-height: auto;
        backdrop-filter: blur(7.5px);
        padding: 0.9375rem;
    }
    .news-promo__text {
        max-width: 100%;
    }
    .news-promo__content-bottom {
        margin-top: 0;
        display: flex;
        flex-direction: column;
        justify-content: start;
        row-gap: 3.75rem;
        padding-top: 0.9375rem;
    }
    .news-promo__content-bottom::before {
        position: relative;
        top: 0;
    }
    .news-promo__button {
        width: 100%;
        height: 4.375rem;
    }
    .news-promo__button::after {
        top: 1.0625rem;
        width: 0.75rem;
        height: 0.75rem;
    }
}
@media (max-width: 768px) {
    .news-promo {
        margin-top: 5rem;
        height: 52.5rem;
    }
    .news-promo__background {
        --clip-top: 60%;
        --clip-side: 40%;
        --clip-bottom: 0%;
    }
    .news-promo__inner {
        padding-block: 0.9375rem;
        flex-direction: column;
        row-gap: 1.875rem;
    }
    .news-promo__title {
        max-width: 100%;
    }
    .news-promo__content {
        width: 100%;
        margin-top: auto;
    }
    .news-promo__text {
        max-width: 100%;
    }
    .news-promo__content-bottom {
        row-gap: 1.875rem;
    }
}
/* news-promo end */

/* estimate start */

.estimate {
    margin-top: 10rem;
}
.estimate__inner {
    display: grid;
    grid-template-columns:
        26.5625rem
        minmax(0, 1fr)
        26.5625rem;
    grid-template-rows: repeat(2, 21.9375rem);
    column-gap: 5.875rem;
    row-gap: 1.25rem;
}
.estimate__content {
    grid-column: 2;
    grid-row: 1 / 3;
    align-self: center;
    justify-self: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 45.125rem;
    text-align: center;
}
.estimate__title {
    max-width: 100%;
}
.js .estimate__title:not(.is-animated) .split-lines__inner {
    transform: translateY(110%);
}
.estimate__text {
    max-width: 36rem;
    margin-top: 1.5625rem;
    text-align: center;
    color: var(--color-black-50);
}
.estimate__button {
    position: relative;
    margin-top: 3.75rem;
    width: 21.875rem;
    height: 5.625rem;
    padding: 0.9375rem;
    border-radius: 0.625rem;
    background-color: var(--color-green-light);
    color: var(--color-white);
    transition:
            background-color 0.3s ease,
            color 0.3s ease;
}
.estimate__button::after {
    content: "";
    position: absolute;
    z-index: 2;
    top: 1.1875rem;
    right: 0.9375rem;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M13.601 7.60104C13.933 7.26909 13.933 6.7309 13.601 6.39896L8.19167 0.989591C7.85973 0.657646 7.32154 0.657646 6.98959 0.989591C6.65765 1.32154 6.65765 1.85973 6.98959 2.19167L11.7979 7L6.98959 11.8083C6.65765 12.1403 6.65765 12.6785 6.98959 13.0104C7.32154 13.3424 7.85973 13.3424 8.19167 13.0104L13.601 7.60104ZM0 7L7.43094e-08 7.85L13 7.85L13 7L13 6.15L-7.43094e-08 6.15L0 7Z' fill='white'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    width: 0.875rem;
    height: 0.875rem;
    flex-shrink: 0;
}
@media (hover: hover) {
    .estimate__button:hover {
        background-color: var(--color-green-dark);
    }
}
.estimate__button:active {
    background-color: var(--color-green-dark);
}
.estimate__image {
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: 0.625rem;
}
.estimate__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.estimate__image--left-top {
    grid-column: 1;
    grid-row: 1;
}
.estimate__image--left-bottom {
    grid-column: 1;
    grid-row: 2;
}
.estimate__image--right-top {
    grid-column: 3;
    grid-row: 1;
}
.estimate__image--right-bottom {
    grid-column: 3;
    grid-row: 2;
}
@media (max-width: 1024px) {
    .estimate {
        margin-top: 6.25rem;
    }
    .estimate__inner {
        display: flex;
        flex-direction: column;
        row-gap: 0.9375rem;
    }
    .estimate__content {
        display: contents;
    }
    .estimate__title {
        order: 1;
        max-width: 28.25rem;
        margin-inline: auto;
        margin-bottom: 1.5625rem;
        text-align: center;
    }
    .estimate__image {
        height: 20rem;
    }
    .estimate__image--left-top {
        order: 2;
    }
    .estimate__image--left-bottom {
        order: 3;
    }
    .estimate__image--right-top,
    .estimate__image--right-bottom {
        display: none;
    }
    .estimate__text {
        order: 4;
        max-width: 28.75rem;
        margin-top: 2.8125rem;
        margin-inline: auto;
        text-align: center;
    }
    .estimate__button {
        order: 5;
        align-self: center;
        margin-top: 1.5625rem;
        width: 17.5rem;
        height: 4.375rem;
    }
    .estimate__button::after {
        top: 1.0625rem;
        width: 0.75rem;
        height: 0.75rem;
    }
}
@media (max-width: 768px) {
    .estimate {
        margin-top: 5rem;
    }
    .estimate__inner {
        row-gap: 0.9375rem;
    }
    .estimate__title {
        max-width: 100%;
        margin-bottom: 1.5625rem;
    }
    .estimate__image {
        height: 20rem;
    }
    .estimate__text {
        max-width: 100%;
        margin-top: 2.8125rem;
    }
    .estimate__button {
        width: 100%;
        margin-top: 1.5625rem;
    }
}

/* estimate end */

/* faq start */

.faq {
    margin-top: 10rem;
}
.faq__inner {
    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        54.375rem;
    column-gap: 19.375rem;
    align-items: start;
}
.js .faq__title:not(.is-animated) .split-lines__inner {
    transform: translateY(110%);
}
.faq__list {
    display: flex;
    flex-direction: column;
    row-gap: 1.25rem;
}
.faq__item {
    overflow: hidden;
    border-radius: 0.625rem;
    background-color: var(--color-blue-light);
    padding: 1.875rem;
}
.faq__button {
    display: flex;
    align-items: center;
    justify-content: space-between;
    column-gap: 6.25rem;
    width: 100%;
    text-align: left;
}
.faq__button-icon {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3.125rem;
    height: 3.125rem;
    flex-shrink: 0;
    border: 1px solid var(--color-black-20);
    border-radius: 50%;
    color: var(--color-black-light);
    background-color: transparent;
    transition:
            color 0.3s ease,
            border-color 0.3s ease,
            background-color 0.3s ease;
}
.faq__button-icon::before {
    content: "";
    height: 0.8681rem;
    width: 1.1285rem;
    background-color: currentColor;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='14' viewBox='0 0 19 14' fill='none'%3E%3Cpath d='M16.6649 3.47266L9.02604 11.806L1.38715 3.47266' stroke='%2333363D' stroke-width='1.7' stroke-linejoin='round'/%3E%3C/svg%3E");
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='14' viewBox='0 0 19 14' fill='none'%3E%3Cpath d='M16.6649 3.47266L9.02604 11.806L1.38715 3.47266' stroke='%2333363D' stroke-width='1.7' stroke-linejoin='round'/%3E%3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: contain;
    transition: transform 0.3s ease;
}
.faq__item.is-open .faq__button-icon::before {
    transform: scaleY(-1);
}
@media (hover: hover) {
    .faq__button:hover .faq__button-icon {
        color: var(--color-white);
        border-color: var(--color-green-light);
        background-color: var(--color-green-light);
    }
}
.faq__content {
    height: 0;
    overflow: hidden;
    transition-property: height;
    transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
}
.faq__content[hidden] {
    display: none;
}
.faq__content-inner {
    padding-top: 0.9375rem;
}
.faq__answer {
    max-width: 41.25rem;
    color: var(--color-black-50);
}
@media (max-width: 1024px) {
    .faq {
        margin-top: 6.25rem;
    }
    .faq__inner {
        display: flex;
        flex-direction: column;
        row-gap: 2.5rem;
    }
    .faq__list {
        row-gap: 0.625rem;
    }
    .faq__item {
        padding: 0.9375rem;
    }
    .faq__button {
        column-gap: 4.375rem;
    }
    .faq__question {
        font-family: var(--font-main);
        font-size: var(--font-size-20);
        line-height: 120%;
        letter-spacing: -0.0125rem;
    }
    .faq__button-icon {
        width: 2.5rem;
        height: 2.5rem;
    }
    .faq__button-icon::before {
        height: 0.6944rem;
        width: 0.9028rem;
    }
}
@media (max-width: 768px) {
    .faq {
        margin-top: 5rem;
    }
    .faq__list {
        row-gap: 0.625rem;
    }
    .faq__item {
        padding: 0.9375rem;
    }
    .faq__button {
        column-gap: 1.5625rem;
    }
    .faq__question {
        font-size: var(--font-size-16);
        letter-spacing: -0.01rem;
    }
    .faq__answer {
        max-width: 15.625rem;
    }
}

/* faq end */
