/* ==========================================================================
   Service 2026 template styles
   ========================================================================== */

:root {
    --s26-section-gap: 80px;
    --s26-section-gap-mob: 48px;

    --s26-gold: #d8ae5e;
    --s26-gold-border: #ddbb6a;
    --s26-dark: #181818;
    --s26-text: #2f2f2f;
    --s26-radius: 32px;
}

/* Unified vertical spacing for all service-2026 sections */
.s26-section {
    padding-top: var(--s26-section-gap);
    padding-bottom: var(--s26-section-gap);
}

@media (max-width: 1024px) {
    .s26-section {
        padding-top: var(--s26-section-gap-mob);
        padding-bottom: var(--s26-section-gap-mob);
    }
}

/* Shared block title */
.s26-title {
    margin: 0;
    font-weight: 500;
    font-size: 48px;
    line-height: 50px;
    color: var(--s26-text);
}

@media (max-width: 1024px) {
    .s26-title {
        font-size: 36px;
        line-height: 1.1;
    }
}

@media (max-width: 600px) {
    .s26-title {
        font-size: 28px;
    }
}

/* Shared body text */
.s26-text {
    font-weight: 300;
    font-size: 16px;
    line-height: 24px;
    color: var(--s26-text);
}

/* Title on dark background */
.s26-title--light {
    color: #fff;
}


/* ==========================================================================
   LEGACY SERVICE STYLES (migrated from app.css)
   ========================================================================== */

.section__services-item {
    padding-top: 32px;
    padding-bottom: 48px;
}
.section__services-item h1 {
    font-weight: 500;
    font-size: 48px;
    line-height: 104%;
    color: #2f2f2f;
}

.services__child-text {
    overflow: hidden;
    position: relative;
}

.services__child-text--base {
    padding-bottom: 100px;
}
@media (max-width: 768px) {
    .services__child-text--base {
        padding-bottom: 40px;
    }
}

.services__child-slider {
    margin-bottom: 100px;
}
@media (max-width: 768px) {
    .services__child-slider {
        margin-bottom: 40px;
    }
}

.services__child {
    margin-top: 0;
    margin-bottom: 48px;
}
@media (max-width: 768px) {
    .services__child {
        margin-top: 0;
        margin-bottom: 32px;
    }
}
.services__child img {
    border-radius: 32px;
}
@media (max-width: 768px) {
    .services__child img {
        height: 420px;
        object-fit: cover;
        object-position: center;
    }
}

.services-item {
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 20px;
}

.services-item__left {
    -webkit-box-flex: 0;
    flex: 0 0 calc(50% - 10px);
    max-width: calc(50% - 10px);
    display: -webkit-box;
    display: flex;
    gap: 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
@media (max-width: 1200px) {
    .services-item__left {
        -webkit-box-flex: 0;
        flex: 0 0 100%;
        max-width: 100%;
    }
}

.services-item__right {
    -webkit-box-flex: 0;
    flex: 0 0 calc(50% - 10px);
    max-width: calc(50% - 10px);
}
@media (max-width: 1200px) {
    .services-item__right {
        -webkit-box-flex: 0;
        flex: 0 0 100%;
        max-width: 100%;
    }
}

.services-item__title h1 {
    font-weight: 500;
    font-size: 48px;
    line-height: 104%;
    color: #2f2f2f;
}
@media (max-width: 768px) {
    .services-item__title h1 {
        font-weight: 500;
        font-size: 28px;
        line-height: 107%;
        color: #2f2f2f;
    }
}

.services__numbers {
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    flex-direction: column;
    gap: 16px;
    margin-top: 48px;
}
@media (max-width: 768px) {
    .services__numbers {
        margin-top: 20px;
        gap: 12px;
    }
}

.services__number {
    border: 1px solid rgba(221, 182, 106, 0.4);
    background: #fcf8f1;
    border-radius: 32px;
    padding: 16px 32px;
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 80px;
}
@media (max-width: 992px) {
    .services__number {
        padding: 16px;
    }
}

.services__number-top {
    display: -webkit-box;
    display: flex;
    -webkit-box-flex: 0;
    flex: 0 0 calc(50% - 10px);
}
@media (max-width: 992px) {
    .services__number-top {
        -webkit-box-flex: 0;
        flex: 0 1 auto;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

.services__number-num {
    font-weight: 500;
    font-size: 26px;
    line-height: 108%;
    color: #c28a1d;
    -webkit-box-flex: 0;
    flex: 0 0 80px;
}
@media (max-width: 992px) {
    .services__number-num {
        -webkit-box-flex: 0;
        flex: 0 1 auto;
        margin-right: 16px;
    }
}
@media (max-width: 768px) {
    .services__number-num {
        margin-right: 10px;
        font-weight: 500;
        font-size: 20px;
        line-height: 110%;
        color: #c28a1d;
    }
}

.services__number-title {
    font-weight: 500;
    font-size: 26px;
    line-height: 108%;
    color: #2f2f2f;
    -webkit-box-flex: 1;
    flex: 1 1 auto;
}
@media (max-width: 768px) {
    .services__number-title {
        font-size: 20px;
        line-height: 110%;
    }
}

.services__number-text {
    -webkit-box-flex: 0;
    flex: 0 0 calc(50% - 10px);
    margin-right: 0;
    margin-left: auto;
}
.services__number-text p {
    font-weight: 300;
    font-size: 16px;
    line-height: 150%;
    color: #2f2f2f;
}
@media (max-width: 992px) {
    .services__number-text {
        -webkit-box-flex: 0;
        flex: 0 0 100%;
        margin-top: 12px;
        margin-right: unset;
    }
}
@media (max-width: 768px) {
    .services__number-text p {
        font-size: 14px;
        line-height: 143%;
    }
}

.services-item__info-text {
    border: 1px solid rgba(221, 182, 106, 0.4);
    border-radius: 32px;
    padding: 32px;
    background: #fff;
    position: relative;
    overflow: hidden;
    height: 100%;
}
.services-item__info-text::before {
    position: absolute;
    content: "";
    background-image: url(./../img/services/si_bg.png);
    width: 100%;
    height: 100%;
    background-size: contain;
    z-index: 1;
    top: 0;
    left: 0;
    background-repeat: no-repeat;
    background-position: right top;
}
@media (max-width: 992px) {
    .services-item__info-text::before {
        background-image: url(./../img/services/si_bg_mobile.png);
    }
}
.services-item__info-text h3 {
    font-weight: 500;
    font-size: 26px;
    line-height: 108%;
    color: #2f2f2f;
    margin-bottom: 24px;
}
.services-item__info-text li {
    margin-bottom: 6px;
    font-weight: 300;
    font-size: 16px;
    line-height: 150%;
    color: #2f2f2f;
}
.services-item__info-text li:last-child {
    margin-bottom: 0;
}
.services-item__info-text p {
    font-weight: 300;
    font-size: 16px;
    line-height: 150%;
    color: #2f2f2f;
    margin-bottom: 16px;
}
.services-item__info-text p:last-child {
    margin-bottom: 0;
}

.services-item__text p {
    font-weight: 300;
    font-size: 16px;
    line-height: 150%;
    color: #2f2f2f;
    margin-bottom: 16px;
}
.services-item__text p:last-child {
    margin-bottom: 0;
}

.services-item__btns {
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.services-item__order-block {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 48px;
}
@media (max-width: 768px) {
    .services-item__order-block {
        margin-top: 20px;
    }
}

.services-item__order {
    font-weight: 500;
    font-size: 14px;
    text-transform: uppercase;
    text-align: center;
    color: #2f2f2f;
    border-radius: 32px;
    padding: 18px 26px;
    background: linear-gradient(90deg, #d8ae5e 0%, #f2d7a5 100%);
    -webkit-transition: 0.6s ease-in-out;
    transition: 0.6s ease-in-out;
}
@media (max-width: 768px) {
    .services-item__order {
        font-weight: 500;
        font-size: 12px;
        text-transform: uppercase;
        text-align: center;
        color: #2f2f2f;
        padding: 12px 16px;
    }
}
.services-item__order:hover {
    background: linear-gradient(90deg, #c28a1d 0%, #c28a1d 100%);
    color: #ffffff;
}

.services-item__price {
    display: inline-flex;
    border: 1px solid rgba(221, 182, 106, 0.4);
    border-radius: 43px;
    padding: 15px 24px 14px 24px;
    background: #fcf8f1;
    font-weight: 300;
    font-size: 16px;
    line-height: 150%;
    color: #2f2f2f;
}
@media (max-width: 768px) {
    .services-item__price {
        font-weight: 300;
        font-size: 14px;
        line-height: 143%;
        color: #2f2f2f;
        border-radius: 32px;
        padding: 10px 16px;
    }
}
.services-item__price > span {
    font-weight: 500;
    font-size: 22px;
    line-height: 109%;
    color: #c28a1d;
    display: block;
    margin-left: 4px;
    margin-right: 4px;
}
@media (max-width: 768px) {
    .services-item__price > span {
        font-size: 18px;
        line-height: 1;
    }
}

.services-video {
    margin-top: 48px;
    margin-bottom: 100px;
}
@media (max-width: 768px) {
    .services-video {
        margin-top: 0;
        margin-bottom: 40px;
    }
}
.services-video a {
    position: relative;
    width: 100%;
    height: 0;
}
.services-video a img:first-child {
    width: 100%;
    min-height: 360px;
    object-fit: cover;
    border-radius: 32px;
}
.services-video a img:last-child {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.services-video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.services-advantages {
    margin-top: 100px;
    margin-bottom: 100px;
}
@media (max-width: 768px) {
    .services-advantages {
        margin-top: 32px;
        margin-bottom: 32px;
    }
}

.services-advantages__cards {
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.services-advantages__card {
    border-radius: 32px;
    padding: 24px 32px 24px 24px;
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid #ddbb6a;
    position: relative;
}
.services-advantages__card:nth-child(1) {
    width: 588px;
}
@media (max-width: 1500px) {
    .services-advantages__card:nth-child(1) {
        -webkit-box-flex: 0;
        flex: 0 0 calc(50% - 10px);
        width: 100%;
    }
}
@media (max-width: 992px) {
    .services-advantages__card:nth-child(1) {
        -webkit-box-flex: 0;
        flex: 0 0 100%;
    }
}
.services-advantages__card:nth-child(2) {
    width: 832px;
}
@media (max-width: 1500px) {
    .services-advantages__card:nth-child(2) {
        -webkit-box-flex: 0;
        flex: 0 0 calc(50% - 10px);
        width: 100%;
    }
}
@media (max-width: 992px) {
    .services-advantages__card:nth-child(2) {
        -webkit-box-flex: 0;
        flex: 0 0 100%;
    }
}
.services-advantages__card:nth-child(3) {
    width: 832px;
}
@media (max-width: 1500px) {
    .services-advantages__card:nth-child(3) {
        -webkit-box-flex: 0;
        flex: 0 0 calc(50% - 10px);
        width: 100%;
    }
}
@media (max-width: 992px) {
    .services-advantages__card:nth-child(3) {
        -webkit-box-flex: 0;
        flex: 0 0 100%;
    }
}
.services-advantages__card:nth-child(4) {
    width: 588px;
}
@media (max-width: 1500px) {
    .services-advantages__card:nth-child(4) {
        -webkit-box-flex: 0;
        flex: 0 0 calc(50% - 10px);
        width: 100%;
    }
}
@media (max-width: 992px) {
    .services-advantages__card:nth-child(4) {
        -webkit-box-flex: 0;
        flex: 0 0 100%;
    }
}
@media (max-width: 768px) {
    .services-advantages__card {
        padding: 16px;
        min-height: 140px;
        height: 100%;
    }
}

.services-advantages__card-title {
    font-weight: 500;
    font-size: 26px;
    line-height: 108%;
    color: #2f2f2f;
    margin-bottom: 16px;
    padding-right: 170px;
    max-width: 100%;
}
@media (max-width: 1200px) {
    .services-advantages__card-title {
        padding-right: 110px;
    }
}
@media (max-width: 768px) {
    .services-advantages__card-title {
        padding-right: 0;
        font-weight: 500;
        font-size: 20px;
        line-height: 110%;
        color: #2f2f2f;
    }
}

.services-advantages__card-text {
    padding-right: 170px;
    max-width: 100%;
}
@media (max-width: 1200px) {
    .services-advantages__card-text {
        padding-right: 110px;
    }
}
@media (max-width: 768px) {
    .services-advantages__card-text {
        padding-right: 70px;
    }
}
.services-advantages__card-text p {
    font-weight: 300;
    font-size: 16px;
    line-height: 150%;
    color: #2f2f2f;
}
@media (max-width: 768px) {
    .services-advantages__card-text p {
        font-weight: 300;
        font-size: 14px;
        line-height: 143%;
        color: #2f2f2f;
    }
}

.services-advantages__card-count span {
    position: absolute;
    right: 30px;
    bottom: -60px;
    font-style: italic;
    font-weight: 700;
    font-size: 150px;
    line-height: 107%;
    text-align: right;
    color: rgba(221, 182, 106, 0.1);
    font-family: "Heading Pro", sans-serif;
    -webkit-text-stroke: 1px #ddbb6a;
}
@media (max-width: 768px) {
    .services-advantages__card-count span {
        font-size: 90px;
        right: 20px;
        bottom: -40px;
    }
}

.section__services-text {
    position: relative;
    overflow: hidden;
}

.section__services-text__bg {
    position: absolute;
    bottom: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: -1;
}
@media (max-width: 768px) {
    .section__services-text__bg {
        display: none;
    }
}

.services-text {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
@media (max-width: 768px) {
    .services-text {
        flex-wrap: wrap;
    }
}
.services-text h2 {
    font-weight: 500;
    font-size: 48px;
    line-height: 104%;
    color: #2f2f2f;
    background: #FFFFFF;
}
@media (max-width: 768px) {
    .services-text h2 {
        font-weight: 500;
        font-size: 28px;
        line-height: 107%;
        color: #2f2f2f;
    }
}

.services-text__left {
    -webkit-box-flex: 0;
    flex: 0 0 calc(50% - 10px);
}
@media (max-width: 768px) {
    .services-text__left {
        -webkit-box-flex: 0;
        flex: 0 0 100%;
    }
}

.services-text__right {
    -webkit-box-flex: 0;
    flex: 0 0 calc(50% - 10px);
}
@media (max-width: 768px) {
    .services-text__right {
        -webkit-box-flex: 0;
        flex: 0 0 100%;
    }
}
.services-text__right ul {
    list-style: none;
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    flex-direction: column;
    gap: 8px;
    margin: 0;
    padding: 0;
}
.services-text__right ul li {
    height: 32px;
    padding-left: 48px;
    font-weight: 300;
    font-size: 16px;
    line-height: 150%;
    color: #2f2f2f;
    position: relative;
}
@media (max-width: 768px) {
    .services-text__right ul li {
        padding-left: 44px;
        font-size: 14px;
        line-height: 143%;
    }
}
.services-text__right ul li::before {
    position: absolute;
    content: "";
    width: 32px;
    height: 32px;
    left: 0;
    background-image: url("data:image/svg+xml,%3Csvg width='32' height='32' viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='16' cy='16' r='16' fill='%23DDB66A' fill-opacity='0.1'/%3E%3Ccircle cx='16' cy='16' r='15.25' stroke='%23DDB66A' stroke-opacity='0.4' stroke-width='1.5'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M24.0304 10.9797C24.3232 11.2726 24.3232 11.7475 24.0303 12.0404L15.5249 20.5448C15.3071 20.765 15.0478 20.9399 14.762 21.0594C14.4753 21.1793 14.1677 21.241 13.857 21.241C13.5463 21.241 13.2387 21.1793 12.952 21.0594C12.6662 20.9399 12.4069 20.765 12.1891 20.5447L7.96967 16.3253C7.67678 16.0324 7.67678 15.5576 7.96967 15.2647C8.26256 14.9718 8.73744 14.9718 9.03033 15.2647L13.2548 19.4892C13.3335 19.5689 13.4273 19.6323 13.5307 19.6755C13.634 19.7187 13.745 19.741 13.857 19.741C13.969 19.741 14.08 19.7187 14.1833 19.6755C14.2867 19.6323 14.3805 19.569 14.4592 19.4892L14.4627 19.4856L22.9697 10.9796C23.2626 10.6868 23.7375 10.6868 24.0304 10.9797Z' fill='%23C28A1D'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M24.0304 10.9797C24.3232 11.2726 24.3232 11.7475 24.0303 12.0404L15.5249 20.5448C15.3071 20.765 15.0478 20.9399 14.762 21.0594C14.4753 21.1793 14.1677 21.241 13.857 21.241C13.5463 21.241 13.2387 21.1793 12.952 21.0594C12.6662 20.9399 12.4069 20.765 12.1891 20.5447L7.96967 16.3253C7.67678 16.0324 7.67678 15.5576 7.96967 15.2647C8.26256 14.9718 8.73744 14.9718 9.03033 15.2647L13.2548 19.4892C13.3335 19.5689 13.4273 19.6323 13.5307 19.6755C13.634 19.7187 13.745 19.741 13.857 19.741C13.969 19.741 14.08 19.7187 14.1833 19.6755C14.2867 19.6323 14.3805 19.569 14.4592 19.4892L14.4627 19.4856L22.9697 10.9796C23.2626 10.6868 23.7375 10.6868 24.0304 10.9797Z' fill='%23C28A1D'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.section__services-image {
    margin-top: 48px;
    margin-bottom: 48px;
}
@media (max-width: 768px) {
    .section__services-image {
        margin-top: 12px;
        margin-bottom: 12px;
    }
}

.services-image img {
    border-radius: 32px;
}
@media (max-width: 768px) {
    .services-image img {
        object-fit: cover;
        object-position: 30% center;
        height: 420px;
    }
}

/* ==========================================================================
   NEW SERVICE 2026 BLOCKS
   ========================================================================== */

/* ==========================================================================
   --- Hero ---
   ========================================================================== */

.s26-hero__inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
    gap: 60px;
    align-items: stretch;
}

.s26-hero__left {
    display: flex;
    flex-direction: column;
}

.s26-hero__title {
    font-family: "Heading Pro", sans-serif;
    font-weight: 700;
    font-style: italic;
    font-size: 80px;
    line-height: 1.05;
    text-transform: uppercase;
    letter-spacing: -0.01em;
    margin: 0;
}

.s26-hero__subtitle {
    margin: 24px 0 0;
    font-weight: 500;
    font-size: 20px;
    line-height: 1.3;
    color: #7a7f73;
}

.s26-hero__text {
    margin-top: 24px;
    font-size: 16px;
    line-height: 1.6;
    color: #2f2f2f;
}

.s26-hero__text strong,
.s26-hero__text b {
    font-weight: 700;
    color: #1c1c1c;
}

.s26-hero__btns {
    margin-top: 40px;
}

/* right column */
.s26-hero__right {
    display: flex;
    flex-direction: column;
    gap: 24px;
    min-height: 0;
}

.s26-hero__img {
    flex: 1 1 auto;
    min-height: 520px;
    border-radius: 24px;
    overflow: hidden;
}

.s26-hero__img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.s26-hero__stats {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.s26-hero__stat {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 28px 32px;
    border-radius: 20px;
    background: #fdfaf2;
    border: 1px solid #DDB66A66;
}

.s26-hero__stat-decor {
    position: absolute;
    top: -24px;
    left: -28px;
    z-index: 0;
    color: #DDB66A28;
    line-height: 0;
    pointer-events: none;
}

.s26-hero__stat-decor svg {
    display: block;
    width: 90px;
    height: 90px;
}

.s26-hero__stat-num,
.s26-hero__stat-label {
    position: relative;
    z-index: 1;
}

.s26-hero__stat-num {
    font-family: "Heading Pro", sans-serif;
    font-weight: 700;
    font-style: italic;
    font-size: 60px;
    line-height: 1;
    color: #1c1c1c;
}

.s26-hero__stat-label {
    font-size: 15px;
    line-height: 1.3;
    color: #6b6b6b;
}

/* --- Hero responsive --- */
@media (max-width: 1280px) {
    .s26-hero__title {
        font-size: 64px;
    }
}

@media (max-width: 1024px) {
    .s26-hero__inner {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .s26-hero__title {
        font-size: 56px;
    }

    .s26-hero__img {
        min-height: 0;
        height: 460px;
    }
}

@media (max-width: 600px) {
    .s26-hero__title {
        font-size: 40px;
    }

    .s26-hero__subtitle {
        font-size: 17px;
    }

    .s26-hero__btns {
        margin-top: 28px;
    }

    .s26-hero__img {
        height: 360px;
    }

    .s26-hero__stats {
        gap: 14px;
    }

    .s26-hero__stat {
        padding: 20px 22px;
    }

    .s26-hero__stat-num {
        font-size: 40px;
    }
}

/* ==========================================================================
   --- Guarantee ---
   ========================================================================== */
.section__s26-guarantee {
    position: relative;
    overflow: hidden;
    background: #181818;
}

.s26-guarantee__decor {
    position: absolute;
    z-index: 0;
    pointer-events: none;
}

.s26-guarantee__decor--1 {
    right: -120px;
    top: 50%;
    transform: translateY(-50%);
    width: 560px;
    height: auto;
}

.s26-guarantee__decor--2 {
    left: -160px;
    top: -90px;
    width: 760px;
    height: auto;
}

.s26-guarantee {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    align-items: center;
}

.s26-guarantee__img {
    height: 400px;
    border-radius: 32px;
    overflow: hidden;
}

.s26-guarantee__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.s26-guarantee__content {
    display: grid;
    grid-template-rows: auto 1fr;
    gap: 32px;
    padding-left: 24px;
}



.s26-guarantee__list {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 12px;
}

.s26-guarantee__item {
    display: grid;
    grid-template-rows: auto 1fr;
    gap: 8px;
    padding: 12px;
    background: #1f1f1f;
    border-radius: 24px;
}

.s26-guarantee__item-icon {
    line-height: 0;
}

.s26-guarantee__item-icon svg {
    width: 24px;
    height: 24px;
}

.s26-guarantee__item-text {
    color: #fff;
    font-weight: 300;
    font-size: 16px;
    line-height: 24px;
}

@media (max-width: 1024px) {
    .s26-guarantee {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .s26-guarantee__content {
        grid-row: 1;
        padding-left: 0;
        gap: 24px;
    }

    .s26-guarantee__img {
        grid-row: 2;
        height: 360px;
    }

    .s26-guarantee__decor--1 {
        right: -200px;
        width: 360px;
    }

    .s26-guarantee__decor--2 {
        left: -200px;
        top: -60px;
        width: 420px;
    }
    .s26-guarantee__list {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 600px) {
    .s26-guarantee__img {
        height: 280px;
    }

}

/* ==========================================================================
   --- Advantages ---
   ========================================================================== */
.s26-advantages__title {
    margin-bottom: 32px;
}

.s26-advantages__cards {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.s26-advantages__card {
    border-radius: 32px;
    padding: 24px 32px 24px 24px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid #ddbb6a;
    position: relative;
}
.s26-advantages__card:nth-child(1) {
    width: 588px;
}
@media (max-width: 1500px) {
    .s26-advantages__card:nth-child(1) {
        flex: 0 0 calc(50% - 10px);
        width: 100%;
    }
}
@media (max-width: 992px) {
    .s26-advantages__card:nth-child(1) {
        flex: 0 0 100%;
    }
}
.s26-advantages__card:nth-child(2) {
    width: 832px;
}
@media (max-width: 1500px) {
    .s26-advantages__card:nth-child(2) {
        flex: 0 0 calc(50% - 10px);
        width: 100%;
    }
}
@media (max-width: 992px) {
    .s26-advantages__card:nth-child(2) {
        flex: 0 0 100%;
    }
}
.s26-advantages__card:nth-child(3) {
    width: 832px;
}
@media (max-width: 1500px) {
    .s26-advantages__card:nth-child(3) {
        flex: 0 0 calc(50% - 10px);
        width: 100%;
    }
}
@media (max-width: 992px) {
    .s26-advantages__card:nth-child(3) {
        flex: 0 0 100%;
    }
}
.s26-advantages__card:nth-child(4) {
    width: 588px;
}
@media (max-width: 1500px) {
    .s26-advantages__card:nth-child(4) {
        flex: 0 0 calc(50% - 10px);
        width: 100%;
    }
}
@media (max-width: 992px) {
    .s26-advantages__card:nth-child(4) {
        flex: 0 0 100%;
    }
}
@media (max-width: 768px) {
    .s26-advantages__card {
        padding: 16px;
        min-height: 140px;
        height: 100%;
    }
}

.s26-advantages__card-title {
    font-weight: 500;
    font-size: 26px;
    line-height: 108%;
    color: #2f2f2f;
    margin-bottom: 16px;
    padding-right: 170px;
    max-width: 100%;
}
@media (max-width: 1200px) {
    .s26-advantages__card-title {
        padding-right: 110px;
    }
}
@media (max-width: 768px) {
    .s26-advantages__card-title {
        padding-right: 0;
        font-weight: 500;
        font-size: 20px;
        line-height: 110%;
        color: #2f2f2f;
    }
}

.s26-advantages__card-text {
    padding-right: 170px;
    max-width: 100%;
}
@media (max-width: 1200px) {
    .s26-advantages__card-text {
        padding-right: 110px;
    }
}
@media (max-width: 768px) {
    .s26-advantages__card-text {
        padding-right: 70px;
    }
}
.s26-advantages__card-text p {
    font-weight: 300;
    font-size: 16px;
    line-height: 150%;
    color: #2f2f2f;
}

.s26-advantages__card-count span {
    position: absolute;
    right: 30px;
    bottom: -60px;
    font-style: italic;
    font-weight: 700;
    font-size: 150px;
    line-height: 107%;
    text-align: right;
    color: rgba(221, 182, 106, 0.1);
    font-family: "Heading Pro", sans-serif;
    -webkit-text-stroke: 1px #ddbb6a;
}
@media (max-width: 768px) {
    .s26-advantages__card-count span {
        font-size: 90px;
        right: 20px;
        bottom: -40px;
    }
}


/* ==========================================================================
   --- Reviews ---
   ========================================================================== */
.s26-reviews {
    display: grid;
    gap: 36px;
}

.s26-reviews__head {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: end;
    gap: 24px;
}

.s26-reviews__title {
    max-width: 362px;
}

.s26-reviews__rating {
    display: grid;
    grid-template-columns: auto auto;
    align-items: center;
    gap: 4px 8px;
    padding: 8px 24px;
    background: #fcf8f1;
    border-radius: 8px;
}

.s26-reviews__rating-num {
    font-weight: 500;
    font-size: 32px;
    line-height: 40px;
    color: var(--s26-text);
}

.s26-reviews__rating-stars {
    line-height: 0;
}

.s26-reviews__rating-text {
    grid-column: 1 / -1;
    font-weight: 300;
    font-size: 14px;
    line-height: 20px;
    color: var(--s26-text);
}

.s26-reviews__cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.s26-reviews__card {
    display: grid;
    grid-template-rows: auto 1fr auto;
    gap: 24px;
    padding: 24px;
    background: #f4f4f6;
    border-radius: 24px;
}

.s26-reviews__card-stars {
    line-height: 0;
}

.s26-reviews__card-text {
    margin: 0;
    font-weight: 300;
    font-size: 16px;
    line-height: 24px;
    color: var(--s26-text);
}

.s26-reviews__card-meta {
    display: grid;
    gap: 4px;
}

.s26-reviews__card-name {
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    color: var(--s26-text);
}

.s26-reviews__card-date {
    font-weight: 300;
    font-size: 14px;
    line-height: 20px;
    color: #6b6b6b;
}

@media (max-width: 1200px) {
    .s26-reviews__rating-num {
        font-size: 20px;
        line-height: 24px;
    }
}

@media (max-width: 768px) {
    .s26-reviews__head {
        grid-template-columns: 1fr;
        justify-items: center;
        text-align: center;
    }

    .s26-reviews__title {
        max-width: none;
    }

    .s26-reviews__rating {
        justify-content: center;
    }

    .s26-reviews__rating-num {
        font-size: 16px;
        line-height: 20px;
    }

    /* horizontal drag */
    .s26-reviews__cards {
        display: grid;
        grid-auto-flow: column;
        grid-auto-columns: 85%;
        grid-template-columns: none;
        gap: 16px;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        cursor: grab;
        padding: 0 16px;
    }
    .s26-reviews__cards::-webkit-scrollbar {
        display: none;
    }
    .s26-reviews__cards.is-dragging {
        cursor: grabbing;
        scroll-snap-type: none;
    }
    .s26-reviews__card {
        scroll-snap-align: start;
    }
}

/* ==========================================================================
   --- FAQ ---
   ========================================================================== */
.s26-faq {
    max-width: 840px;
    margin: 0 auto;
}

.s26-faq__list #faq-block > h2 {
    margin: 0 0 48px;
    font-weight: 500;
    font-size: 48px;
    line-height: 50px;
    color: var(--s26-text);
    text-align: center;
    padding: 0;
}
@media (max-width: 1024px) {
    .s26-faq__list #faq-block > h2 {
        font-size: 36px;
        line-height: 1.1;
        margin-bottom: 28px;
    }
}
@media (max-width: 600px) {
    .s26-faq__list #faq-block > h2 {
        font-size: 28px;
    }
}

.s26-faq__list #faq-block > div {
    display: grid;
    gap: 16px;
}

/* closed item = grey, open = white */
.s26-faq__list .faq-item {
    margin: 0;
    border: 2px solid #f4f4f6;
    border-radius: 16px;
    background: #f4f4f6;
    overflow: hidden;
    transition: background 0.2s ease, border-color 0.2s ease;
}

.s26-faq__list .faq-item:has(details[open]) {
    background: #fff;
    border-color: #f4f4f6;
}

.s26-faq__list details {
    width: 100%;
}

.s26-faq__list .faq-question {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 12px;
    padding: 24px;
    margin: 0;
    cursor: pointer;
    list-style: none;
    background: transparent;
    border-radius: 0;
    font-weight: 500;
    font-size: 20px;
    line-height: 28px;
    color: var(--s26-text);
}

.s26-faq__list .faq-question::-webkit-details-marker {
    display: none;
}

/* arrow at the end of the line (replaces the "+" sign) */
.s26-faq__list .toggle-sign {
    order: 2;
    width: 24px;
    height: 24px;
    display: grid;
    place-items: center;
    font-size: 0;
    color: var(--s26-text);
    transition: transform 0.3s ease;
}

.s26-faq__list .toggle-sign::before {
    content: "";
    width: 8px;
    height: 8px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
    margin-top: -3px;
}

.s26-faq__list details[open] .toggle-sign {
    transform: rotate(180deg);
}

.s26-faq__list .faq-answer {
    padding: 0 24px 24px;
    margin: 0;
    font-weight: 300;
    font-size: 16px;
    line-height: 24px;
    color: var(--s26-text);
}

.s26-faq__list .faq-answer p {
    margin: 0;
}

@media (max-width: 768px) {
    .s26-faq__list .faq-question {
        font-size: 17px;
        line-height: 24px;
        padding: 16px;
    }
    .s26-faq__list .faq-answer {
        padding: 0 16px 16px;
    }
}


/* ==========================================================================
   --- SEO text ---
   ========================================================================== */
.s26-seo {
    max-width: 880px;
    margin: 0 auto;
}

/* base text style for bare text nodes (content has no <p> wrappers) */
.s26-seo__content {
    font-weight: 300;
    font-size: 16px;
    line-height: 24px;
    color: var(--s26-text);
}

.s26-seo__content > *:first-child {
    margin-top: 0;
}

.s26-seo__content h2 {
    margin: 32px 0 16px;
    font-weight: 500;
    font-size: 26px;
    line-height: 28px;
    color: var(--s26-text);
}

/* first heading acts as the block title (big) */
.s26-seo__content h2:first-of-type {
    margin: 0 0 16px;
    font-size: 48px;
    line-height: 50px;
}

.s26-seo__content h3 {
    margin: 32px 0 16px;
    font-weight: 500;
    font-size: 26px;
    line-height: 28px;
    color: var(--s26-text);
}

.s26-seo__content h4 {
    margin: 24px 0 12px;
    font-weight: 500;
    font-size: 20px;
    line-height: 28px;
    color: var(--s26-text);
}

.s26-seo__content p {
    margin: 0 0 16px;
}

/* spacing for bare-text paragraphs separated by <br> */
.s26-seo__content br {
    display: block;
    content: "";
    margin-top: 12px;
}

.s26-seo__content ul,
.s26-seo__content ol {
    margin: 16px 0;
    padding-left: 0;
    list-style: none;
    display: grid;
    gap: 8px;
}

.s26-seo__content ul li {
    position: relative;
    padding-left: 36px;
}

.s26-seo__content ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='m12 1.5 2.36 1.72 2.9-.27 1.13 2.68 2.68 1.13-.27 2.9L22.5 12l-1.72 2.36.27 2.9-2.68 1.13-1.13 2.68-2.9-.27L12 22.5l-2.36-1.72-2.9.27-1.13-2.68-2.68-1.13.27-2.9L1.5 12l1.72-2.36-.27-2.9 2.68-1.13L6.74 2.95l2.9.27L12 1.5Z' fill='%23D8AE5E'/%3E%3Cpath d='M16.55 9.1a.94.94 0 0 0-1.33-.06l-4.34 3.94-1.6-1.7a.94.94 0 1 0-1.37 1.28l2.23 2.38c.18.2.43.3.69.3a.94.94 0 0 0 .63-.24l5.02-4.56a.94.94 0 0 0 .04-1.34Z' fill='%23FFFFFF'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    /* center icon (24px) to first line (24px line-height) */
    line-height: 24px;
}

.s26-seo__content ol {
    counter-reset: s26-ol;
}

.s26-seo__content ol li {
    position: relative;
    padding-left: 32px;
    counter-increment: s26-ol;
}

.s26-seo__content ol li::before {
    content: counter(s26-ol) ".";
    position: absolute;
    left: 0;
    top: 0;
    font-weight: 500;
    color: var(--s26-gold);
}

.s26-seo__content a {
    color: #c28a1d;
    text-decoration: underline;
}

.s26-seo__content strong,
.s26-seo__content b {
    font-weight: 500;
}

.s26-seo__content img {
    max-width: 100%;
    height: auto;
    border-radius: 16px;
    margin: 16px 0;
}

/* hide service span and trailing nbsp clutter */
.s26-seo__content #ctrlcopy {
    display: none;
}

@media (max-width: 1024px) {
    .s26-seo__content h2:first-of-type {
        font-size: 36px;
        line-height: 1.1;
    }
}

@media (max-width: 600px) {
    .s26-seo__content h2:first-of-type {
        font-size: 28px;
    }
    .s26-seo__content h2,
    .s26-seo__content h3 {
        font-size: 22px;
        line-height: 1.2;
    }
}

/* ==========================================================================
   --- How it works ---
   ========================================================================== */
.s26-steps {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: start;
}

.s26-steps__title {
    max-width: 500px;
}

.s26-steps__list {
    display: grid;
    gap: 0;
}

.s26-steps__item {
    display: grid;
    grid-template-columns: 40px 1fr;
    gap: 20px;
}

/* marker column: circle + connector line */
.s26-steps__marker {
    position: relative;
    display: grid;
    justify-items: center;
}

.s26-steps__num {
    position: relative;
    z-index: 1;
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    background: var(--s26-dark);
    color: #fbf7f0;
    border-radius: 360px;
    font-weight: 500;
    font-size: 20px;
    line-height: 1;
}

/* connector line between markers */
.s26-steps__marker::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 100%;
    border-left: 2px dashed #181818;
}

.s26-steps__item:first-child .s26-steps__marker::before {
    top: 20px;
}

.s26-steps__item:last-child .s26-steps__marker::before {
    height: 100%;
    -webkit-mask-image: linear-gradient(to bottom, #000 40%, transparent 100%);
    mask-image: linear-gradient(to bottom, #000 40%, transparent 100%);
}

.s26-steps__content {
    display: grid;
    gap: 8px;
    padding: 24px;
    background: #f4f4f6;
    border-radius: 16px;
    margin-bottom: 16px;
}

.s26-steps__item:last-child .s26-steps__content {
    margin-bottom: 0;
}

.s26-steps__item-title {
    font-weight: 500;
    font-size: 26px;
    line-height: 28px;
    color: var(--s26-text);
}

.s26-steps__item-text {
    margin: 0;
    font-weight: 300;
    font-size: 16px;
    line-height: 24px;
    color: var(--s26-text);
}

/* action button aligned to content column (skip the 40px marker col) */
.s26-steps__action {
    display: grid;
    grid-template-columns: 40px 1fr;
    gap: 20px;
    margin-top: 8px;
}

.s26-steps__btn {
    grid-column: 2;
    justify-self: start;
}

@media (max-width: 1024px) {
    .s26-steps {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .s26-steps__title {
        max-width: none;
    }
}

@media (max-width: 600px) {
    .s26-steps__item {
        grid-template-columns: 32px 1fr;
        gap: 16px;
    }

    .s26-steps__num {
        width: 32px;
        height: 32px;
        font-size: 16px;
    }

    .s26-steps__item-title {
        font-size: 20px;
        line-height: 1.2;
    }

    .s26-steps__content {
        padding: 16px;
        margin-bottom: 12px;
    }

    .s26-steps__action {
        grid-template-columns: 32px 1fr;
        gap: 16px;
    }

    .s26-steps__btn {
        justify-self: stretch;
        text-align: center;
    }
}

/* ==========================================================================
   --- Other services ---
   ========================================================================== */
.section__s26-other .services__list-item {
    margin: 0;
}


/* --- Regions / coverage --- */
.s26-regions {
    display: grid;
    gap: 24px;
}

.s26-regions__head {
    display: grid;
    gap: 16px;
}

.s26-regions__subtitle {
    max-width: 720px;
}

.s26-regions__divider {
    height: 1px;
    background: rgba(207, 207, 223, 0.63);
}

.s26-regions__body {
    display: grid;
    grid-template-columns: 2fr 2fr;
    gap: 24px;
    align-items: start;
}

.s26-regions__groups {
    margin-top: auto;
    display: grid;
    gap: 24px;
}

.s26-regions__group {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 12px;
    align-items: center;
}

.s26-regions__group-icon {
    line-height: 0;
    flex-shrink: 0;
}

.s26-regions__group-icon svg {
    width: 56px;
    height: 56px;
}

.s26-regions__group-text {
    display: grid;
    gap: 4px;
}

.s26-regions__group-title {
    margin: 0;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.3;
    color: var(--s26-text);
}

.s26-regions__group-list {
    margin: 0;
    font-weight: 300;
    font-size: 16px;
    line-height: 1.4;
    color: #6b6b6b;
}

.s26-regions__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.s26-regions__tag {
    padding: 12px 24px;
    background: #f4f4f6;
    border-radius: 24px;
    font-weight: 300;
    font-size: 16px;
    line-height: 1.2;
    color: var(--s26-text);
}

@media (max-width: 1024px) {
    .s26-regions__body {
        grid-template-columns: 1fr;
        gap: 28px;
    }
}