/* ============================================================
   homepage-v1.css — стили новой главной страницы (шапка + секции)
   ============================================================ */

/* ── Section spacing config ────────────────────────────────────────
   Управляй отступами секций здесь — больше никуда ходить не нужно.
   pt = padding-top, pb = padding-bottom (= зазор до следующей секции)
   ------------------------------------------------------------------ */
.topcons-v1   { --section-pt: var(--gap-bcr-to-section); --section-pb:  0px; }
.hero-v1      { --section-pt: 20px; --section-pb: 20px; }
.infocard-v1  { --section-pt:  20px; --section-pb: 20px; }
.whytrust-v1  { --section-pt:  60px; --section-pb: 20px; }
/* admininfo: pt фиксирован — резерв под фото, выступающее над картой */
.admininfo-v1 { --section-pt: 0px; --section-pb: 20px; }
.uyutinfo-v1      { --section-pt:  0px; --section-pb: 20px; }
.oneconsinfo-v1   { --section-pt: 60px; --section-pb: 20px; }
/* checkinfo: pt = зазор от oneconsinfo + резерв 15px под фото, выступающее над картами */
.checkinfo-v1     { --section-pt: 0px;  --section-pb: 0px; }
.podborspec-v1        { --section-pt: 40px; --section-pb: 20px; }
.ourmethodsinfo-v1    { --section-pt: 60px; --section-pb: 20px; }
.getfarmarecept-v1    { --section-pt: 0px;  --section-pb: 20px; }
.infoattleo-v1        { --section-pt: 0px;  --section-pb: 40px; }
/* spyresultinfo: pt=60 → телефон выступает 31px выше карточки, появляется на 60-31=29px от предыдущей секции */
.spyresultinfo-v1     { --section-pt: 60px; --section-pb: 20px; }
.consinfo2-v1         { --section-pt: 0px;  --section-pb: 60px; }
.uslugiinfo-v1        { --section-pt: 0px;  --section-pb: 60px; }
.fourstepsinfo-v1     { --section-pt: 20px; --section-pb: 60px; }
.contactinfo-v1       { --section-pt: 20px; --section-pb: 20px; }
.faq-v1               { --section-pt: 0px;  --section-pb: 20px; }

/* ── Section spacing config — mobile ───────────────────────────────
   Мобильные отступы (≤ 768px). Переопределяют десктопные значения выше.
   ------------------------------------------------------------------ */
@media (max-width: 768px) {
    .topcons-v1   { --section-pt: var(--gap-bcr-to-section);  --section-pb:  0px; }
    .hero-v1      { --section-pt: 5vw;  --section-pb:  0px; }
    .infocard-v1  { --section-pt: 10vw; --section-pb: 10vw; }
    .whytrust-v1  { --section-pt: 10vw; --section-pb:  5vw; }
    .admininfo-v1 { --section-pt: 0px;  --section-pb:  5vw; }
    .uyutinfo-v1      { --section-pt:  0px;  --section-pb: 10vw; }
    .oneconsinfo-v1   { --section-pt:  5vw;  --section-pb:  5vw; }
    .checkinfo-v1     { --section-pt:  0px;  --section-pb: 10vw; }
    .podborspec-v1        { --section-pt: 10vw; --section-pb: 10vw; }
    .ourmethodsinfo-v1    { --section-pt: 10vw; --section-pb:  5vw; }
    .getfarmarecept-v1    { --section-pt:  0px; --section-pb:  5vw; }
    .infoattleo-v1        { --section-pt:  0px; --section-pb: 10vw; }
    .spyresultinfo-v1     { --section-pt: 10vw; --section-pb:  5vw; }
    .consinfo2-v1         { --section-pt:  0px; --section-pb: 10vw; }
    .uslugiinfo-v1        { --section-pt:  5vw; --section-pb: 10vw; }
    .fourstepsinfo-v1     { --section-pt:  5vw; --section-pb: 10vw; }
    .contactinfo-v1       { --section-pt:  5vw; --section-pb: var(--gap-section-to-footer); }
    .faq-v1               { --section-pt:  5vw; --section-pb: 10vw; }
}

/* ── Цветовые токены (локальные) ───────────────────────────────────
   #8DA175 — второй стоп градиента. Отличается от --color-sage-dark: #8FA07C
   на 2 единицы; при уточнении дизайна привести к общему значению.
   ------------------------------------------------------------------ */
:root {
    --gradient-sage: linear-gradient(121.49deg, #A9B995 0%, #8DA175 100%);
}


.hero-v1__wrap,
.whytrust-v1__wrap {
    max-width: 1200px;
    margin: 0 auto;
}

/* ============================================================
   HERO v1
   ============================================================ */

.hero-v1 {
    background: #fff;
    padding: var(--section-pt) 0 var(--section-pb);
}

/* ── Верх: текст + CTA ── */

.hero-v1__top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 40px;
    padding: 0 0 20px;
}

.hero-v1__text {
    flex: 0 0 auto;
    max-width: 657px;
    padding-top: 29px;
}

.hero-v1__heading {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 600;
    font-size: 36px;
    line-height: 1.07;
    letter-spacing: -0.01em;
    color: var(--text-main-color);
    margin: 0 0 16px;
}

.hero-v1__subheading {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 1.35;
    letter-spacing: -0.005em;
    color: var(--text-main-color-85);
    margin: 0;
}

/* ── CTA-карточка ── */

.hero-v1__cta {
    flex: 0 0 461px;
    background-color: var(--color-sage);
    background-size: cover;
    background-position: center;
    border-radius: 30px;
    padding: 25px 28px 28px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.hero-v1__cta-text {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.35;
    letter-spacing: -0.005em;
    color: #fff;
    margin: 0;
}

.hero-v1__cta-text strong {
    font-weight: 700;
}

.hero-v1__cta-btn {
    display: block;
    width: 100%;
    max-width: 324px;
    padding: 22px 20px;
    background: var(--color-golden);
    border: none;
    border-radius: 100px;
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 700;
    font-size: 17px;
    line-height: 1.35;
    letter-spacing: -0.005em;
    color: #fff;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    transition: opacity var(--transition-speed);
}

.hero-v1__cta-btn:hover {
    opacity: 0.88;
}

/* ── Фото с бейджем ── */

.hero-v1__photo-wrap {
    position: relative;
    border-radius: 30px;
    overflow: hidden;
    line-height: 0;
}

.hero-v1__photo {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 30px;
}

.hero-v1__badge {
    position: absolute;
    top: 15px;
    left: 15px;
    background: var(--color-sage);
    border-radius: 20px;
    padding: 14px 20px;
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 700;
    font-size: 20px;
    line-height: 1.15;
    color: #fff;
    z-index: 1;
}

/* ============================================================
   TOPCONS v1 — первая секция страницы Консультация
   ============================================================ */

.topcons-v1 {
    background: #fff;
    padding: var(--section-pt) 0 var(--section-pb);
}

/* ── twoblock-v1: compositor flex-сетка ── */

.twoblock-v1__wrap {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    gap: 15px;
    align-items: stretch;
}

.twoblock-v1__wide {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
}

.twoblock-v1__narrow {
    flex: 0 0 408px;
    min-width: 0;
    width: 408px;
}

.twoblock-v1--narrow-wide .twoblock-v1__narrow {
    order: -1;
}

/* ── photocardinfo-v1: фото + бейдж + белая карточка ── */

/* Figma: 777×556px, border-radius 30px
   height: 556px — явный размер отменяет flex-stretch (spec: stretch не применяется при non-auto height) */
.photocardinfo-v1__wrap {
    width: 100%;
    height: 556px;
    position: relative;
    border-radius: 30px;
    overflow: hidden;
}

.photocardinfo-v1__photo {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: top center;
}

/* Rectangle 8 — зелёный бейдж
   Figma: left=375-360=15px, top=400-126=274px, w=449px, h=200px
   px вместо % — иначе top/height меняются при высоте контейнера != 556px */
.photocardinfo-v1__badge-wrap {
    position: absolute;
    left: 15px;
    top: 274px;
    width: 449px;
    height: 200px;
    background: var(--color-sage);
    border-radius: 20px;
    padding: 14px 20px 0;
    box-sizing: border-box;
    overflow: hidden;
    z-index: 2;
}

.photocardinfo-v1__badge {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 700;
    font-size: 20px;
    line-height: 1.15;
    color: #fff;
    white-space: nowrap;
    display: block;
}

/* Rectangle 7 — белая overlay-карточка
   Figma: left=15px, right=15px, bottom=15px, w=747px, h=215px (контент-зависимая) */
.photocardinfo-v1__card {
    position: absolute;
    left: 15px;
    right: 15px;
    bottom: 15px;
    background: #fff;
    border-radius: 20px;
    padding: 25px 30px 28px;
    z-index: 3;
}

/* Figma: 36px/107%, letter-spacing -0.01em, text frame 657px */
.photocardinfo-v1__card-title {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 600;
    font-size: 36px;
    line-height: 1.07;
    letter-spacing: -0.01em;
    color: var(--text-main-color);
    max-width: 657px;
    margin: 0 0 10px;
}

/* Figma: 18px/135%, letter-spacing -0.005em, max-width=542px */
.photocardinfo-v1__card-desc {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 1.35;
    letter-spacing: -0.005em;
    color: var(--text-main-color-85);
    max-width: 542px;
    margin: 0;
}

/* ── formvert-v1: вертикальная форма обратной связи ── */

/* Figma: 408×556px.
   padding-left=35px (1187-1152), padding-right=30px (1560-1530) → content=343px для heading (2 строки)
   Поля/кнопка 324px явно — они уже heading на 19px */
.formvert-v1 {
    background-color: var(--color-sage);
    background-size: cover;
    background-position: center;
    border-radius: 30px;
    width: 408px;
    max-width: 100%;
    height: 556px;
    padding: 30px 30px 54px 35px;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
}

/* Figma: 25px/115%, letter-spacing -0.005em, top=30px */
.formvert-v1__heading {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 700;
    font-size: 25px;
    line-height: 1.15;
    letter-spacing: -0.005em;
    color: #fff;
    margin: 0 0 10px;
}

/* Figma: 16px/135%, gap до первого поля = 25px, width=286px */
.formvert-v1__subtext {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.35;
    letter-spacing: -0.005em;
    color: #fff;
    max-width: 286px;
    margin: 0 0 25px;
}

/* gap 10px между полями, кнопкой и согласием */
.formvert-v1__form {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 100%;
    min-width: 0;
}

/* Rectangle 9/10 — белые поля: 324×73px (уже heading на 19px) */
.formvert-v1__field {
    background: #fff;
    border-radius: 100px;
    height: 73px;
    width: 324px;
    display: flex;
    align-items: center;
    padding: 0 25px;
    gap: 10px;
    box-sizing: border-box;
}

.formvert-v1__input {
    border: none;
    outline: none;
    background: transparent;
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.35;
    letter-spacing: -0.005em;
    color: var(--text-main-color-85);
    width: 100%;
}

.formvert-v1__input::placeholder {
    color: rgba(28, 28, 28, 0.4);
}

/* Figma: флаг 25×15px */
.formvert-v1__flag {
    width: 25px;
    height: 15px;
    flex-shrink: 0;
    filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.2));
}

/* Rectangle 4 — оранжевая кнопка: 324×73px (уже heading на 19px)
   Селектор с родителем (0,2,0) бьёт vendor.css .md-standart-form .form-btn */
.formvert-v1 .formvert-v1__btn {
    background: var(--color-golden);
    border: none;
    border-radius: 100px;
    height: 73px;
    width: 324px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 700;
    font-size: 17px;
    line-height: 1.35;
    letter-spacing: -0.005em;
    color: #fff;
    cursor: pointer;
    transition: opacity var(--transition-speed);
}

.formvert-v1 .formvert-v1__btn:hover {
    opacity: 0.88;
}

/* Figma: 12px/135%, width=294px, top=438px от верха панели */
.formvert-v1__consent {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 500;
    font-size: 12px !important;
    line-height: 1.35;
    letter-spacing: -0.005em;
    color: rgba(255, 255, 255, 0.9);
    max-width: 294px;
    margin: 0;
}

.formvert-v1__consent .footer-pdf-link {
    color: rgba(255, 255, 255, 0.9);
    text-decoration: underline;
    cursor: pointer;
}

/* ── Mobile ── */

@media (max-width: 768px) {
    /* Flatten flex-tree: контент вытаскивается на уровень wrap для переупорядочивания */
    .twoblock-v1__wrap {
        flex-direction: column;
        gap: 0;
        padding: 0 50px;
    }
    .twoblock-v1__wide,
    .twoblock-v1__narrow,
    .photocardinfo-v1__wrap,
    .photocardinfo-v1__wrap picture {
        display: contents;
    }

    /* 1 — Заголовок + описание: над формой, белый фон */
    .photocardinfo-v1__card {
        order: 1;
        position: static;
        left: auto; right: auto; bottom: auto;
        background: transparent;
        border-radius: 0;
        padding: 0;
        margin: 0 0 20px;
        z-index: auto;
    }
    .photocardinfo-v1__card-title {
        font-size: 25px;
        line-height: 1.07;
        max-width: 292px;
        margin-bottom: 10px;
    }
    .photocardinfo-v1__card-desc {
        font-size: 14px;
        max-width: 300px;
        margin: 0;
    }

    /* 2 — Форма: зелёная карточка с фото-фоном */
    .formvert-v1 {
        order: 2;
        width: 100%;
        height: 467px;
        border-radius: 20px;
        padding: 20px;
        margin: 0 0 20px;
        box-sizing: border-box;
    }
    .formvert-v1__heading {
        font-size: 20px;
        max-width: 220px;
        margin-bottom: 10px;
    }
    .formvert-v1__subtext {
        font-size: 14px;
        max-width: 257px;
        margin-bottom: 20px;
    }
    .formvert-v1__field {
        height: 60px;
        width: 100%;
        padding: 0 20px;
        box-sizing: border-box;
    }
    .formvert-v1 .formvert-v1__btn {
        height: 60px;
        width: 100%;
        font-size: 14px;
    }
    .formvert-v1__consent {
        font-size: 10px !important;
    }

    /* 3 — Бейдж: пилюля между формой и фото */
    .photocardinfo-v1__badge-wrap {
        order: 3;
        position: relative;
        left: auto; top: auto;
        width: 100%;
        height: 37px;
        border-radius: 20px;
        padding: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: visible;
        margin-bottom: -18px;
        z-index: 2;
    }
    .photocardinfo-v1__badge {
        font-size: 12px;
        font-weight: 700;
        text-align: center;
        white-space: normal;
    }

    /* 4 — Фото команды: во всю ширину секции, разрывает padding */
    .photocardinfo-v1__photo {
        order: 4;
        position: static;
        width: calc(100% + 100px);
        height: 286px;
        margin-left: -50px;
        border-radius: 0;
        object-fit: cover;
        object-position: top center;
        display: block;
    }
}

/* ============================================================
   INFOCARD v1
   ============================================================ */

.infocard-v1 {
    background: #fff;
    padding: var(--section-pt) 0 var(--section-pb);
}

.infocard-v1__wrap {
    max-width: 1200px;
    margin: 0 auto;
}

.infocard-v1__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 21px;
}

.infocard-v1__card {
    --card-mt: 0px;
    --card-mb: 0px;
    margin-top: var(--card-mt);
    margin-bottom: var(--card-mb);
    background: #fff;
    border: 1px solid #E5E9F0;
    box-shadow: 0px 10px 35px rgba(152, 152, 152, 0.1);
    border-radius: 20px;
    padding: 25px;
    box-sizing: border-box;
}

.infocard-v1__card-header {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 16px;
}

.infocard-v1__icon-bg {
    flex-shrink: 0;
    width: 61px;
    height: 61px;
    border-radius: 15px;
    background: var(--gradient-sage);
    display: flex;
    align-items: center;
    justify-content: center;
}

.infocard-v1__card-title {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 700;
    font-size: 20px;
    line-height: 1.15;
    letter-spacing: -0.005em;
    color: var(--text-main-color);
    margin: 0;
}

.infocard-v1__divider {
    border: none;
    border-top: 1px solid var(--color-sage);
    margin: 0 0 12px;
}

.infocard-v1__card-text {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.35;
    letter-spacing: -0.005em;
    color: var(--text-main-color-85);
    margin: 0;
}

/* ── Мобайл ── */

@media (max-width: 768px) {
    .infocard-v1__wrap {
        padding: 0 12.5vw;
    }

    .infocard-v1__grid {
        grid-template-columns: 1fr;
        gap: 2.5vw;
    }

    .infocard-v1__card {
        padding: 3.75vw;
    }

    .infocard-v1__card-header {
        gap: 2.5vw;
        margin-bottom: 2.5vw;
    }

    .infocard-v1__icon-bg {
        width: 10.5vw;
        height: 10.5vw;
        border-radius: 2.5vw;
    }

    .infocard-v1__card-title {
        font-size: 16px;
    }

    .infocard-v1__divider {
        margin: 0 0 2.5vw;
    }

    .infocard-v1__card-text {
        font-size: 14px;
    }

    .infocard-v1__card:nth-child(2) .infocard-v1__card-text { max-width: 62.25vw; }
    .infocard-v1__card:nth-child(3) .infocard-v1__card-text { max-width: 64vw; }
    .infocard-v1__card:nth-child(4) .infocard-v1__card-text { max-width: 52vw; }
    .infocard-v1__card:nth-child(5) .infocard-v1__card-text { max-width: 64vw; }
    .infocard-v1__card:nth-child(6) .infocard-v1__card-text { max-width: 65vw; }
}

/* ============================================================
   WHYTRUST v1
   ============================================================ */

.whytrust-v1 {
    background: #fff;
    padding: var(--section-pt) 0 var(--section-pb);
}

.whytrust-v1__heading {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 600;
    font-size: 40px;
    line-height: 1.07;
    letter-spacing: -0.02em;
    color: var(--text-main-color);
    margin: 0 0 28px;
}

.whytrust-v1__grid {
    display: flex;
    gap: 20px;
}

.whytrust-v1__card {
    flex: 1;
    border-radius: 20px;
    border: 1px solid #E5E9F0;
    padding: 30px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
}

.whytrust-v1__card--left {
    background: #F8FAF6;
}

.whytrust-v1__card--right {
    background: #F8F9FA;
}

.whytrust-v1__card-title {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 700;
    font-size: 25px;
    line-height: 1.15;
    letter-spacing: -0.01em;
    color: var(--text-main-color);
    margin: 0 0 16px;
}

.whytrust-v1__card-subtitle {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 700;
    font-size: 18px;
    line-height: 1.26;
    letter-spacing: -0.005em;
    color: var(--text-main-color);
    margin: 0 0 16px;
}

.whytrust-v1__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.whytrust-v1__item {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.35;
    letter-spacing: -0.005em;
    color: var(--text-main-color-85);
    padding-left: 18px;
    position: relative;
}

.whytrust-v1__item::before {
    content: '';
    position: absolute;
    left: 0;
    top: 8px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--color-sage);
    flex-shrink: 0;
}

/* Градиентный чип */

.whytrust-v1__chip {
    margin-top: 20px;
    border-radius: 15px;
    background: var(--gradient-sage);
    padding: 20px 24px;
}

.whytrust-v1__chip-text {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 600;
    font-size: 18px;
    line-height: 1.35;
    letter-spacing: -0.005em;
    color: #fff;
    margin: 0;
}

/* Кнопка отзывов */

.whytrust-v1__btn-row {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: auto;
    padding-top: 16px;
}

.whytrust-v1__review-thumb {
    flex-shrink: 0;
    width: 94px;
    height: 57px;
    border-radius: 15px;
    background: #E7E7E7;
    overflow: hidden;
}

.whytrust-v1__review-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.whytrust-v1__review-btn {
    flex: 1;
    height: 57px;
    background: var(--color-golden);
    border: none;
    border-radius: 100px;
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1.35;
    letter-spacing: -0.005em;
    color: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 20px;
    text-decoration: none;
    transition: opacity var(--transition-speed);
}

.whytrust-v1__review-btn:hover {
    opacity: 0.9;
}

/* ── Мобайл ── */

@media (max-width: 768px) {

    .whytrust-v1__wrap {
        padding: 0 12.5vw;
    }

    .whytrust-v1__heading {
        font-size: 25px;
        line-height: 1.07;
        letter-spacing: -0.01em;
        margin-bottom: 16px;
    }

    .whytrust-v1__grid {
        flex-direction: column;
        gap: 12px;
    }

    .whytrust-v1__card {
        flex: none;
        width: 100%;
    }

    .whytrust-v1__card {
        padding: 20px;
    }

    .whytrust-v1__card-title {
        font-size: 20px;
        line-height: 1.15;
        letter-spacing: -0.005em;
        max-width: 234px;
    }

    .whytrust-v1__card-subtitle {
        font-size: 14px;
    }

    .whytrust-v1__item {
        font-size: 14px;
    }

    .whytrust-v1__chip-text {
        font-size: 14px;
    }

    .whytrust-v1__review-thumb {
        display: none;
    }

    .whytrust-v1__review-btn {
        width: 100%;
        height: 70px;
        font-size: 16px;
        line-height: 1.15;
        padding: 0 25px;
        justify-content: center;
        gap: 13px;
    }

    .whytrust-v1__review-btn svg {
        flex-shrink: 0;
        width: 21px;
        height: 21px;
    }
}


/* ============================================================
   МОБАЙЛ
   ============================================================ */

@media (max-width: 768px) {

    /* mobile.css добавляет body { padding-top: 25vw; overflow-x: hidden } — сбрасываем оба.
       overflow-x: hidden на body создаёт scroll container и ломает position:fixed на шите.
       Заменяем на overflow-x: clip (не создаёт scroll container) для наших страниц. */
    .page-homepage-v1,
    .page-konsultaciya-v1 {
        padding-top: 0;
        overflow-x: clip;
    }

    /* ── Hero ── */

    .hero-v1__wrap {
        padding: 0 12.5vw;
    }

    .hero-v1__top {
        flex-direction: column;
        gap: 0;
        padding: 22px 0 28px;
    }

    .hero-v1__text {
        max-width: 100%;
        margin-bottom: 18px;
        padding-top: 0;
    }

    .hero-v1__heading {
        font-size: 25px;
        line-height: 1.07;
        letter-spacing: -0.01em;
        margin: 0 0 10px;
        max-width: 73vw;
    }

    .hero-v1__subheading {
        font-size: 14px;
        line-height: 1.35;
        letter-spacing: -0.005em;
        max-width: 68.75vw;
    }

    .hero-v1__cta {
        flex: none;
        width: 100%;
        box-sizing: border-box;
        border-radius: 20px;
        padding: 20px;
        gap: 20px;
    }

    .hero-v1__cta-text {
        font-size: 14px;
        font-weight: 700;
        line-height: 1.35;
        letter-spacing: -0.005em;
    }

    .hero-v1__cta-btn {
        max-width: 100%;
        font-size: 14px;
        line-height: 1.35;
        letter-spacing: -0.005em;
        padding: 20px;
        height: 60px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    /* Фото: полная ширина, выходит за padding секции, без border-radius */
    .hero-v1__photo-wrap {
        margin: 0 -12.5vw;
        overflow: visible;
        border-radius: 0;
    }

    .hero-v1__photo {
        border-radius: 0;
    }

    /* Бейдж: центрирован, нависает на 19px над верхним краем фото */
    .hero-v1__badge {
        position: absolute;
        top: -19px;
        left: 12.5vw;
        right: 12.5vw;
        width: auto;
        transform: none;
        font-size: 12px;
        font-weight: 700;
        line-height: 1.15;
        text-align: center;
        padding: 11px 20px;
        border-radius: 20px;
    }

}

/* ============================================================
   ADMININFO v1
   ============================================================ */

.admininfo-v1 {
    background: #fff;
    padding: var(--section-pt) 0 var(--section-pb);
}

.admininfo-v1__wrap {
    max-width: 1200px;
    margin: 0 auto;
}

.admininfo-v1__card {
    position: relative;
    background: #F8F9FA;
    border: 1px solid #E5E9F0;
    border-radius: 20px;
    height: 244px;
    overflow: visible;
}

.admininfo-v1__content {
    padding: 27px 0 0 30px;
    max-width: 600px;
}

.admininfo-v1__heading {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 700;
    font-size: 25px;
    line-height: 1.15;
    letter-spacing: -0.01em;
    color: var(--text-main-color);
    margin: 0 0 19px;
}

.admininfo-v1__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.admininfo-v1__item {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.35;
    letter-spacing: -0.005em;
    color: var(--text-main-color-85);
    padding-left: 18px;
    position: relative;
}

.admininfo-v1__item::before {
    content: "•";
    position: absolute;
    left: 0;
    font-weight: 700;
    color: var(--color-sage);
}

/* Медиа-зона: фото + нейминг-карточка */

.admininfo-v1__media {
    position: absolute;
    right: 21px;
    bottom: 0;
    width: 459px;
    height: 295px;
}

.admininfo-v1__photo {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 459px;
    height: 295px;
    object-fit: cover;
    display: block;
}

/* namecard: left -146px = 574px от левого края карты (из Figma) */
.admininfo-v1__namecard {
    position: absolute;
    left: -146px;
    bottom: 30px;
    width: 270px;
    background: #fff;
    border: 1px solid #E5E9F0;
    box-shadow: 0px 10px 35px rgba(152, 152, 152, 0.1);
    border-radius: 20px;
    padding: 25px 30px 20px;
    z-index: 1;
}

.admininfo-v1__name {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 700;
    font-size: 20px;
    line-height: 1.26;
    letter-spacing: -0.005em;
    color: var(--text-main-color);
    margin: 0 0 5px;
}

.admininfo-v1__role {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.35;
    letter-spacing: -0.005em;
    color: var(--text-main-color-85);
    margin: 0;
}

/* ── Мобайл ── */

@media (max-width: 768px) {

    .admininfo-v1__wrap {
        padding: 0 12.5vw;
    }

    .admininfo-v1__card {
        height: auto;
        overflow: hidden;
        display: flex;
        flex-direction: column;
        position: relative;
    }

    .admininfo-v1__content {
        padding: 20px 20px 0;
        max-width: 100%;
    }

    .admininfo-v1__heading {
        font-size: 20px;
        letter-spacing: -0.005em;
        margin-bottom: 15px;
        max-width: 250px;
    }

    .admininfo-v1__item {
        font-size: 14px;
        max-width: 240px;
    }

    /* Фото: сразу после текста, full-width, без верхнего отступа */
    .admininfo-v1__media {
        position: relative;
        right: auto;
        bottom: auto;
        width: 100%;
        height: auto;
        margin-top: 1px;
    }

    .admininfo-v1__media picture {
        display: block;
        width: 100%;
    }

    .admininfo-v1__photo {
        position: static;
        width: 100%;
        height: auto;
        display: block;
    }

    /* Нейминг-карточка: поверх фото, слева снизу */
    .admininfo-v1__namecard {
        position: absolute;
        left: 15px;
        bottom: 15px;
        width: 53.25vw;
        border-radius: 15px;
        padding: 15px;
        box-shadow: 0px 10px 35px rgba(152, 152, 152, 0.1);
    }

    .admininfo-v1__name {
        font-size: 16px;
        margin-bottom: 2px;
    }

    .admininfo-v1__role {
        font-size: 14px;
    }
}

/* ============================================================
   UYUTINFO v1
   ============================================================ */

.uyutinfo-v1 {
    background: #fff;
    padding: var(--section-pt) 0 var(--section-pb);
}

.uyutinfo-v1__wrap {
    max-width: 1200px;
    margin: 0 auto;
}

.uyutinfo-v1__card {
    background: #F8FAF6;
    border: 1px solid #E5E9F0;
    border-radius: 20px;
    padding: 27px 30px 30px;
}

.uyutinfo-v1__header {
    display: flex;
    align-items: baseline;
    gap: 25px;
    margin-bottom: 16px;
}

.uyutinfo-v1__heading {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 700;
    font-size: 25px;
    line-height: 1.26;
    letter-spacing: -0.01em;
    color: var(--text-main-color);
    margin: 0;
    white-space: nowrap;
}

.uyutinfo-v1__subheading {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 700;
    font-size: 18px;
    line-height: 1.26;
    letter-spacing: -0.005em;
    color: var(--text-main-color);
    white-space: nowrap;
}

/* ── Слайдер ── */

.uyutinfo-v1__slider {
    position: relative;
}

.uyutinfo-v1__viewport {
    overflow: hidden;
    border-radius: 20px;
}

.uyutinfo-v1__track {
    display: flex;
    transition: transform 0.35s ease;
    will-change: transform;
}

.uyutinfo-v1__slide {
    flex-shrink: 0;
    width: 100%;
    aspect-ratio: 1140 / 534;
}

.uyutinfo-v1__slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Кнопки навигации */

.uyutinfo-v1__btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 60px;
    height: 60px;
    border-radius: 100px;
    background: var(--color-golden);
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity var(--transition-speed);
    z-index: 2;
}

.uyutinfo-v1__btn:hover {
    opacity: 0.85;
}

.uyutinfo-v1__btn--prev {
    left: 20px;
}

.uyutinfo-v1__btn--next {
    right: 20px;
}

/* ── Мобайл ── */

@media (max-width: 768px) {

    .uyutinfo-v1__wrap {
        padding: 0 12.5vw;
    }

    .uyutinfo-v1__card {
        padding: 20px 15px 15px;
    }

    .uyutinfo-v1__header {
        flex-direction: column;
        gap: 10px;
        margin-bottom: 20px;
    }

    .uyutinfo-v1__heading {
        font-size: 20px;
        letter-spacing: -0.005em;
        white-space: normal;
        max-width: 222px;
    }

    .uyutinfo-v1__subheading {
        font-size: 16px;
        white-space: normal;
    }

    /* Фото: соотношение сторон из Figma mobile (270×164) */
    .uyutinfo-v1__slide {
        aspect-ratio: 270 / 164;
    }

    /* Слайдер: overflow убирается — кнопки уходят под фото */
    .uyutinfo-v1__slider {
        overflow: visible;
        padding-bottom: 57px; /* 10px gap + 47px кнопка */
    }

    /* Кнопки: 47×47, по центру под фото */
    .uyutinfo-v1__btn {
        width: 47px;
        height: 47px;
        top: auto;
        bottom: 0;
        transform: none;
    }

    .uyutinfo-v1__btn--prev {
        left: calc(50% - 51px); /* центр - половина двух кнопок + gap */
        right: auto;
    }

    .uyutinfo-v1__btn--next {
        left: calc(50% + 4px); /* центр + half gap */
        right: auto;
    }
}

/* ============================================================
   ONECONSINFO v1
   ============================================================ */

.oneconsinfo-v1 {
    background: #fff;
    padding: var(--section-pt) 0 var(--section-pb);
}

.oneconsinfo-v1__wrap {
    max-width: 1200px;
    margin: 0 auto;
}

.oneconsinfo-v1__header {
    margin-bottom: 25px;
}

.oneconsinfo-v1__heading {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 700;
    font-size: 40px;
    line-height: 1.07;
    letter-spacing: -0.02em;
    color: var(--text-main-color);
    margin: 0 0 10px;
}

.oneconsinfo-v1__subheading {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 700;
    font-size: 25px;
    line-height: 1.26;
    letter-spacing: -0.01em;
    color: var(--text-main-color);
    display: block;
}

/* ── Сетка ── */

.oneconsinfo-v1__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 21px;
}

/* ── Карточка ── */

.oneconsinfo-v1__card {
    background: #fff;
    border: 1px solid #E5E9F0;
    box-shadow: 0px 10px 35px rgba(152, 152, 152, 0.1);
    border-radius: 20px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.oneconsinfo-v1__photo {
    position: relative;
    height: 253px;
    flex-shrink: 0;
}

.oneconsinfo-v1__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.oneconsinfo-v1__num {
    position: absolute;
    top: 10px;
    left: 10px;
    width: 35px;
    height: 35px;
    border-radius: 30px;
    background: var(--gradient-sage);
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1.26;
    letter-spacing: -0.01em;
    color: #fff;
}

.oneconsinfo-v1__text {
    padding: 20px 25px 25px;
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.35;
    letter-spacing: -0.005em;
    color: var(--text-main-color-85);
    margin: 0;
    flex: 1;
}

/* ── Мобайл ── */

@media (max-width: 768px) {
    .oneconsinfo-v1__wrap {
        padding: 0 12.5vw;
    }

    .oneconsinfo-v1__heading {
        font-size: 25px;
        line-height: 1.07;
        letter-spacing: -0.01em;
    }

    .oneconsinfo-v1__subheading {
        font-size: 20px;
        line-height: 1.15;
        letter-spacing: -0.005em;
        max-width: 65.5vw;
    }

    .oneconsinfo-v1__grid {
        grid-template-columns: 1fr;
        gap: 5vw;
    }

    .oneconsinfo-v1__photo {
        height: auto;
        aspect-ratio: 300/197;
    }

    .oneconsinfo-v1__text {
        padding: 5vw 5vw 6.25vw;
        font-size: 14px;
    }

    .oneconsinfo-v1__card:nth-child(1) .oneconsinfo-v1__text { max-width: 62vw; }
    .oneconsinfo-v1__card:nth-child(2) .oneconsinfo-v1__text { max-width: 60vw; }
    .oneconsinfo-v1__card:nth-child(3) .oneconsinfo-v1__text { max-width: 64.25vw; }
}

/* ============================================================
   checkinfo-v1 — две карточки + фото между ними
   ============================================================ */

.checkinfo-v1 {
    background: #fff;
    padding: var(--section-pt) 0 var(--section-pb);
}

.checkinfo-v1__wrap {
    max-width: 1200px;
    margin: 0 auto;
}

.checkinfo-v1__row {
    display: flex;
    gap: 20px;
    align-items: stretch;
}

/* ─────────────────────────
   leftcheckcard-v1 — левая карточка: заголовок + описание
   Figma: 590×169px, bg #F8FAF6, padding: 27px 30px
───────────────────────────── */

.leftcheckcard-v1 {
    flex: 0 0 calc(50% - 10px);
    border: 1px solid #E5E9F0;
    border-radius: 20px;
    padding: 27px 30px;
    box-sizing: border-box;
    min-height: 169px;
    background: #F8FAF6;
}

.leftcheckcard-v1__title {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 700;
    font-size: 25px;
    line-height: 1.26;
    letter-spacing: -0.01em;
    color: var(--text-main-color);
    margin: 0 0 10px;
    max-width: 500px;
}

.leftcheckcard-v1__text {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.35;
    letter-spacing: -0.005em;
    color: var(--text-main-color-85);
    margin: 0;
    max-width: 429px;
}

/* ─────────────────────────
   rightcheckcard-v1 — правая карточка: абс. фото + жирный текст
   Figma: 590×169px, bg #F8F9FA; фото 337×210px top:-15px left:-31px;
   padding-left:252px + padding-right:26px → текст 312px по Figma
───────────────────────────── */

.rightcheckcard-v1 {
    flex: 0 0 calc(50% - 10px);
    border: 1px solid #E5E9F0;
    border-radius: 20px;
    padding: 27px 26px 27px 252px;
    box-sizing: border-box;
    min-height: 169px;
    background: #F8F9FA;
    position: relative;
    overflow: visible;
}

.rightcheckcard-v1__photo {
    position: absolute;
    top: -15px;
    left: -31px;
    width: 337px;
    height: 210px;
    object-fit: cover;
    border-radius: 20px;
    display: block;
}

.rightcheckcard-v1__bold-text {
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 700;
    font-size: 18px;
    line-height: 1.20;
    letter-spacing: -0.01em;
    color: var(--text-main-color);
    margin: 0;
    max-width: 312px;
}

/* ── Мобайл ── */

@media (max-width: 768px) {
    .checkinfo-v1__wrap {
        padding: 0 12.5vw;
    }

    .checkinfo-v1__row {
        flex-direction: column;
        gap: 5vw;
    }

    .leftcheckcard-v1 {
        padding: 5vw;
    }

    .rightcheckcard-v1 {
        padding: 5vw 5vw 27.5vw;
        overflow: hidden;
    }

    .rightcheckcard-v1__photo {
        top: auto;
        bottom: 0;
        left: 13.25vw;
        width: 61.75vw;
        height: auto;
        aspect-ratio: 247/110;
        border-radius: 0;
    }

    .leftcheckcard-v1__title {
        font-size: 20px;
        line-height: 1.15;
        letter-spacing: -0.005em;
    }

    .leftcheckcard-v1__text {
        font-size: 14px;
    }

    .rightcheckcard-v1__bold-text {
        font-size: 16px;
        line-height: 1.20;
        letter-spacing: -0.005em;
        max-width: 56.75vw;
    }
}

/* ============================================================
   podborspec-v1 — «Нужна помощь с выбором специалиста?»
   Зелёная карточка-баннер с заголовком слева и кнопкой справа.
   ============================================================ */

.podborspec-v1 {
    padding: var(--section-pt) 0 var(--section-pb);
}

.podborspec-v1__wrap {
    max-width: 1200px;
    margin: 0 auto;
}

/* Карточка: 1200×198px по Figma.
   padding-left 40px = 400−360 (Figma left content).
   padding-right 80px = 1200 − (1182−360+298) (Figma button right gap). */
.podborspec-v1__card {
    background: var(--gradient-sage);
    border-radius: 20px;
    height: 198px;
    display: flex;
    align-items: center;
    padding: 0 80px 0 40px;
    gap: 20px;
}

.podborspec-v1__content {
    flex: 1;
    min-width: 0;
}

/* max-width = Figma text frame width (687px) → правильный перенос «выбором | специалиста» */
.podborspec-v1__heading {
    font-weight: 700;
    font-size: 40px;
    line-height: 107%;
    letter-spacing: -0.02em;
    color: #fff;
    max-width: 687px;
    margin-bottom: 15px;
}

.podborspec-v1__subtitle {
    font-weight: 500;
    font-size: 16px;
    line-height: 135%;
    letter-spacing: -0.005em;
    color: #fff;
}

/* Кнопка: 298×73px, border-radius 100px (pill) */
.podborspec-v1__btn {
    flex: 0 0 298px;
    height: 73px;
    background: var(--color-golden);
    border-radius: 100px;
    border: none;
    font-family: 'LorenzoSans', sans-serif;
    font-weight: 700;
    font-size: 17px;
    line-height: 135%;
    letter-spacing: -0.005em;
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: var(--transition-speed);
}

.podborspec-v1__btn:hover {
    opacity: 0.9;
}

@media (max-width: 768px) {
    /* Wrapper: 50px по Figma (left: 50px → ширина карточки 300px) */
    .podborspec-v1__wrap {
        padding: 0 12.5vw;
    }

    /* Карточка: вертикальная колонка, высота по контенту, padding 20px */
    .podborspec-v1__card {
        height: auto;
        flex-direction: column;
        align-items: flex-start;
        padding: 20px;
        gap: 0;
    }

    /* Заголовок: 25px/107%/-0.01em, max-width 256px = Figma frame width */
    .podborspec-v1__heading {
        font-size: 25px;
        line-height: 107%;
        letter-spacing: -0.01em;
        max-width: 256px;
        margin-bottom: 10px;
    }

    /* Подзаголовок: line-height 120% (≠ desktop 135%), max-width 201px = Figma frame */
    .podborspec-v1__subtitle {
        line-height: 120%;
        max-width: 201px;
        margin-bottom: 20px;
    }

    /* Кнопка: 65vw×60px (260÷400×100), font-size 14px */
    .podborspec-v1__btn {
        flex: none;
        width: 65vw;
        height: 60px;
        font-size: 14px;
    }
}

/* ============================================================
   ourmethodsinfo-v1 — Мы практикуем только научно-доказательные методы лечения
   ============================================================ */

.ourmethodsinfo-v1 { padding: var(--section-pt) 0 var(--section-pb); }

.ourmethodsinfo-v1__wrap {
    max-width: 1200px;
    margin: 0 auto;
}

/* Заголовок: 690px, 40px/115%/-0.02em */
.ourmethodsinfo-v1__heading {
    font-weight: 700;
    font-size: 40px;
    line-height: 115%;
    letter-spacing: -0.02em;
    color: var(--text-main-color);
    max-width: 690px;
    margin-bottom: 10px;
}

/* Подзаголовок: 837px, 25px/126%/-0.01em, bold */
.ourmethodsinfo-v1__subtitle {
    font-weight: 700;
    font-size: 25px;
    line-height: 126%;
    letter-spacing: -0.01em;
    color: var(--text-main-color);
    max-width: 837px;
    margin-bottom: 25px;
}

/* Три колонки: 386×386×386 + 21px gap = 1200px */
.ourmethodsinfo-v1__cards {
    display: flex;
    gap: 21px;
    align-items: stretch;
}

/* Карточка: серый фон, border-radius 20px, padding 27px 30px 30px */
.ourmethodsinfo-v1__card {
    flex: 1;
    background: #F8F9FA;
    border: 1px solid #E5E9F0;
    border-radius: 20px;
    padding: 27px 30px 30px;
    display: flex;
    flex-direction: column;
}

/* Название метода: 20px/126%/-0.01em */
.ourmethodsinfo-v1__card-title {
    font-weight: 700;
    font-size: 20px;
    line-height: 126%;
    letter-spacing: -0.01em;
    color: var(--text-main-color);
    margin-bottom: 10px;
}

/* Краткое описание: 16px/135%/-0.005em */
.ourmethodsinfo-v1__card-desc {
    font-weight: 500;
    font-size: 16px;
    line-height: 135%;
    letter-spacing: -0.005em;
    color: var(--text-main-color-85);
    margin-bottom: 15px;
}

/* max-width по Figma — управляет переносами строк (318 / 280 / 246px) */
.ourmethodsinfo-v1__card:nth-child(1) .ourmethodsinfo-v1__card-desc { max-width: 318px; }
.ourmethodsinfo-v1__card:nth-child(2) .ourmethodsinfo-v1__card-desc { max-width: 280px; }
.ourmethodsinfo-v1__card:nth-child(3) .ourmethodsinfo-v1__card-desc { max-width: 246px; }

/* Блок «Показания» — зелёный градиент, высота фиксирована 173px (Figma) */
.ourmethodsinfo-v1__indications {
    background: var(--gradient-sage);
    border-radius: 15px;
    height: 173px;
    padding: 23px 25px;
    margin-bottom: 15px;
    overflow: hidden;
}

.ourmethodsinfo-v1__indications-title {
    font-weight: 700;
    font-size: 20px;
    line-height: 135%;
    letter-spacing: -0.005em;
    color: #fff;
    margin-bottom: 10px;
}

.ourmethodsinfo-v1__indications-text {
    font-weight: 500;
    font-size: 16px;
    line-height: 135%;
    letter-spacing: -0.005em;
    color: #fff;
}

/* Блок «Что это даёт на практике» — белый, высота фиксирована 355px (Figma) */
.ourmethodsinfo-v1__benefits {
    background: #fff;
    border: 1px solid #E5E9F0;
    box-shadow: 0 10px 50px rgba(193, 193, 193, 0.1);
    border-radius: 15px;
    height: 355px;
    padding: 23px 25px;
    overflow: hidden;
}

.ourmethodsinfo-v1__benefits-title {
    font-weight: 700;
    font-size: 20px;
    line-height: 135%;
    letter-spacing: -0.005em;
    color: var(--text-main-color);
    margin-bottom: 15px;
}

.ourmethodsinfo-v1__benefits-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

/* Зелёные буллеты (#A9B995), жирные */
.ourmethodsinfo-v1__benefits-list li {
    font-weight: 500;
    font-size: 16px;
    line-height: 125%;
    letter-spacing: -0.005em;
    color: var(--text-main-color-85);
    padding-left: 20px;
    position: relative;
    margin-bottom: 12px;
}

.ourmethodsinfo-v1__benefits-list li:last-child { margin-bottom: 0; }

.ourmethodsinfo-v1__benefits-list li::before {
    content: '•';
    color: var(--color-sage);
    font-weight: 700;
    position: absolute;
    left: 0;
}

@media (max-width: 768px) {
    /* Обёртка: 50px по Figma */
    .ourmethodsinfo-v1__wrap { padding: 0 12.5vw; }

    /* Heading: 25px/107%/-0.01em */
    .ourmethodsinfo-v1__heading {
        font-size: 25px;
        line-height: 107%;
        letter-spacing: -0.01em;
        max-width: 300px;
    }

    /* Subtitle: 18px/115%/-0.005em, gap до карточек 20px */
    .ourmethodsinfo-v1__subtitle {
        font-size: 18px;
        line-height: 115%;
        letter-spacing: -0.005em;
        max-width: 300px;
        margin-bottom: 20px;
    }

    /* Карточки в колонку, зазор 20px */
    .ourmethodsinfo-v1__cards { flex-direction: column; gap: 20px; }

    /* Карточка: padding 20px */
    .ourmethodsinfo-v1__card { padding: 20px; }

    /* Desc: 14px, max-width по Figma mobile */
    .ourmethodsinfo-v1__card-desc { font-size: 14px; }
    .ourmethodsinfo-v1__card:nth-child(1) .ourmethodsinfo-v1__card-desc { max-width: 256px; }
    .ourmethodsinfo-v1__card:nth-child(2) .ourmethodsinfo-v1__card-desc { max-width: 244px; }
    .ourmethodsinfo-v1__card:nth-child(3) .ourmethodsinfo-v1__card-desc { max-width: 246px; }

    /* Зелёный блок: 270px (шире контентной зоны на 5px с каждой стороны),
       padding 20px, разные высоты по Figma */
    .ourmethodsinfo-v1__indications {
        margin-left: -5px;
        margin-right: -5px;
        width: calc(100% + 10px);
        box-sizing: border-box;
        padding: 20px;
    }
    .ourmethodsinfo-v1__indications-title { font-size: 16px; margin-bottom: 5px; }
    .ourmethodsinfo-v1__indications-text { font-size: 14px; }
    .ourmethodsinfo-v1__card:nth-child(1) .ourmethodsinfo-v1__indications { height: auto; }
    .ourmethodsinfo-v1__card:nth-child(2) .ourmethodsinfo-v1__indications { height: auto; }
    .ourmethodsinfo-v1__card:nth-child(3) .ourmethodsinfo-v1__indications { height: auto; }

    /* Белый блок: 270px, padding 20px, разные высоты по Figma */
    .ourmethodsinfo-v1__benefits {
        margin-left: -5px;
        margin-right: -5px;
        width: calc(100% + 10px);
        box-sizing: border-box;
        padding: 20px;
    }
    .ourmethodsinfo-v1__benefits-title { font-size: 16px; margin-bottom: 15px; }
    .ourmethodsinfo-v1__benefits-list li { font-size: 14px; }
    .ourmethodsinfo-v1__card:nth-child(1) .ourmethodsinfo-v1__benefits { height: auto; }
    .ourmethodsinfo-v1__card:nth-child(2) .ourmethodsinfo-v1__benefits { height: auto; }
    .ourmethodsinfo-v1__card:nth-child(3) .ourmethodsinfo-v1__benefits { height: auto; }
}

/* ============================================================
   ACCORDION ITEM v1 — shared component (getfarmarecept + faq)
   ============================================================ */

.accordion-item-v1 {
    background: #F5F8F9;
    border-radius: 20px;
    overflow: hidden;
}

/* Заголовочная строка: высота 100px, flex, padding по Figma (left 30px, right 28px) */
.accordion-item-v1__top {
    height: 100px;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 0 28px 0 30px;
    cursor: pointer;
}

.accordion-item-v1__label {
    flex: 1;
    font-weight: 700;
    font-size: 20px;
    line-height: 126%;
    letter-spacing: -0.005em;
    color: var(--text-main-color-85);
}

/* Оранжевая кнопка: 44×44px, border-radius 100% */
.accordion-item-v1__btn {
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    background: var(--color-golden);
    border-radius: 50%;
    border: none;
    cursor: pointer;
    position: relative;
    transition: opacity var(--transition-speed);
}

.accordion-item-v1__btn:hover {
    opacity: 0.85;
}

/* Иконка "+" через CSS pseudo-elements (14×14px, белый цвет) */
.accordion-item-v1__btn::before,
.accordion-item-v1__btn::after {
    content: '';
    position: absolute;
    background: #fff;
    border-radius: 1px;
    top: 50%;
    left: 50%;
}

.accordion-item-v1__btn::before {
    width: 14px;
    height: 2px;
    transform: translate(-50%, -50%);
}

.accordion-item-v1__btn::after {
    width: 2px;
    height: 14px;
    transform: translate(-50%, -50%);
    transition: transform var(--transition-speed);
}

/* При открытии вертикальная черта поворачивается → иконка меняется на "−" */
.accordion-item-v1__top.open .accordion-item-v1__btn::after {
    transform: translate(-50%, -50%) rotate(90deg);
}

.accordion-item-v1__content {
    padding: 0 30px 25px;
    font-size: 16px;
    line-height: 150%;
    color: rgba(28, 28, 28, 0.75);
}
.accordion-item-v1__content p {
    margin: 0 0 14px;
}
.accordion-item-v1__content ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.accordion-item-v1__content li {
    padding-left: 16px;
    position: relative;
}
.accordion-item-v1__content li::before {
    content: '—';
    position: absolute;
    left: 0;
    color: var(--main-color);
}

/* ============================================================
   GETFARMARECEPT v1
   ============================================================ */

.getfarmarecept-v1 { padding: var(--section-pt) 0 var(--section-pb); }

.getfarmarecept-v1__wrap {
    max-width: 1200px;
    margin: 0 auto;
}

/* Две аккордеон-плашки: flex, gap 20px, margin-top 20px (по Figma: 6157-6137=20px) */
.getfarmarecept-v1__items {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    margin-top: 20px;
}

.getfarmarecept-v1__items .accordion-item-v1 {
    flex: 1;
}

/* Карточка: 1200×250px по Figma, изображение выступает на 35px вверх */
.getfarmarecept-v1__card {
    position: relative;
    height: 250px;
    background: #F8FAF6;
    border: 1px solid #E5E9F0;
    border-radius: 20px;
    padding: 27px 30px 30px;
    box-sizing: border-box;
    overflow: visible;
}

/* Heading: 25px/115%/-0.01em, max-width 660px (Figma), отступ до текста 15px */
.getfarmarecept-v1__heading {
    font-weight: 700;
    font-size: 25px;
    line-height: 115%;
    letter-spacing: -0.01em;
    color: var(--text-main-color);
    max-width: 660px;
    margin-bottom: 15px;
}

/* Текст: 16px/125%/-0.005em, max-width 596px (Figma) */
.getfarmarecept-v1__text {
    font-weight: 500;
    font-size: 16px;
    line-height: 125%;
    letter-spacing: -0.005em;
    color: var(--text-main-color-85);
    max-width: 596px;
}

.getfarmarecept-v1__text + .getfarmarecept-v1__text {
    margin-top: 20px;
}

/* Изображение: абсолютно по Figma — right 0, top -35px (выступает над карточкой) */
.getfarmarecept-v1__image {
    position: absolute;
    right: 0;
    top: -35px;
    width: 450px;
    height: 285px;
    object-fit: contain;
    object-position: bottom right;
}

@media (max-width: 768px) {
    .getfarmarecept-v1__wrap { padding: 0 12.5vw; }

    /* Карточка: overflow:hidden обрезает изображение по border-radius; padding-bottom = высота картинки */
    .getfarmarecept-v1__card {
        height: auto;
        overflow: hidden;
        padding: 5vw 7.75vw calc(73vw * 159 / 292) 5vw;
    }

    /* Heading: 20px/700/115%/-0.005em, max-width 62.25vw (249/400) */
    .getfarmarecept-v1__heading {
        font-size: 20px;
        line-height: 115%;
        letter-spacing: -0.005em;
        max-width: 62.25vw;
    }

    /* Текст: 14px/500/125%, max-width 62.25vw (249/400) */
    .getfarmarecept-v1__text {
        font-size: 14px;
        max-width: 62.25vw;
    }

    /* Изображение: 73vw (292/400), cover обрезает прозрачные края RGBA-файла 900×570 */
    .getfarmarecept-v1__image {
        top: auto;
        right: auto;
        left: 2vw;
        bottom: 0;
        width: 73vw;
        height: 39.75vw;
        object-fit: cover;
        border-radius: 0 0 20px 0;
        object-position: top center;
    }

    /* Аккордеон-плашки: в колонку, gap 10px (Figma: 9807-9707-90=10px), margin-top 20px */
    .getfarmarecept-v1__items { flex-direction: column; gap: 10px; margin-top: 20px; }
    /* Лейбл: 194×54px по Figma (left:70-50=20px offset, 3 строки по 18px) */
    .getfarmarecept-v1__items .accordion-item-v1__label { max-width: 194px; }

    /* Accordion mobile: высота auto от padding (desktop 100px фикс → mobile padding-based)
       14px top+bottom: button 44px → 14+44+14=72px (большинство), 3-строчный текст 54px → 82px */
    .accordion-item-v1__top { height: auto; padding: 14px 23px 14px 20px; }
    .accordion-item-v1__label { font-size: 14px; }
}

/* ============================================================
   spyresultinfo-v1 — серая карточка: телефон + контент + белая карточка со списком
   Desktop: телефон absolute (−31px выше карточки); left-col flex-колонка 472px; list-card 364px.
   Mobile: left-col → display:contents; CSS order даёт порядок heading→list-card→banner→phone.
   Figma desktop: container x=360; колонки 315|472|gap24|364|25=1200px.
   Figma mobile: card 300×912px, left=50px → wrap padding 0 50px.
   ============================================================ */

.spyresultinfo-v1 { padding: var(--section-pt) 0 var(--section-pb); }

.spyresultinfo-v1__wrap {
    max-width: 1200px;
    margin: 0 auto;
}

/* Серая карточка: flex-строка; телефон absolute */
.spyresultinfo-v1__card {
    position: relative;
    height: 350px;
    background: #F8F9FA;
    border: 1px solid #E5E9F0;
    border-radius: 20px;
    box-sizing: border-box;
    display: flex;
    padding: 0 25px 0 315px; /* left 315px = зона телефона (42+221+52) */
    gap: 24px;
    align-items: flex-start;
    overflow: visible; /* телефон выступает −31px выше */
}

/* Телефон: 402−360=42px left, 6844−6875=−31px top; низ = низу карточки (6844+381=7225=6875+350) */
.spyresultinfo-v1__phone {
    position: absolute;
    left: 42px;
    top: -31px;
    width: 221px;
    height: 381px;
    object-fit: contain;
}

/* Левая колонка desktop: flex-колонка heading+subtitle+banner, 472px от padding-left */
.spyresultinfo-v1__left-col {
    flex: 0 0 472px;
    margin-top: 35px; /* 6910−6875=35px — heading top от верха карточки */
    display: flex;
    flex-direction: column;
}

/* Заголовок: 700/30px/115%/-0.01em, max-width 452px */
.spyresultinfo-v1__heading {
    font-family: 'LorenzoSans', sans-serif;
    font-weight: 700;
    font-size: 30px;
    line-height: 115%;
    letter-spacing: -0.01em;
    color: var(--text-main-color);
    max-width: 452px;
    margin: 0 0 15px; /* 6993−(6910+68)=15px */
}

/* Подзаголовок: 400/16px/125%/-0.005em */
.spyresultinfo-v1__subtitle {
    font-family: 'LorenzoSans', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 125%;
    letter-spacing: -0.005em;
    color: var(--text-main-color);
    margin: 0 0 79px; /* 7105−(6993+33)=79px — gap до баннера */
}

/* Зелёный баннер: gradient, border-radius 15px, 452×95px */
.spyresultinfo-v1__banner {
    background: var(--gradient-sage);
    border-radius: 15px;
    max-width: 452px;
    height: 95px;
    display: flex;
    align-items: center;
    padding: 0 34px 0 30px; /* left 705−675=30px; right (675+452)−(705+388)=34px */
}

/* Текст баннера: 700/18px/126%/-0.005em/белый */
.spyresultinfo-v1__banner-text {
    font-family: 'LorenzoSans', sans-serif;
    font-weight: 700;
    font-size: 18px;
    line-height: 126%;
    letter-spacing: -0.005em;
    color: #FFFFFF;
    margin: 0;
}

/* Белая карточка: 364×300px, border 1px #E5E9F0, shadow, border-radius 15px */
.spyresultinfo-v1__list-card {
    flex: 0 0 364px;
    height: 300px;
    margin-top: 25px; /* 6900−6875=25px от верха серой карточки */
    background: #FFFFFF;
    border: 1px solid #E5E9F0;
    box-shadow: 0px 10px 50px rgba(193, 193, 193, 0.1);
    border-radius: 15px;
    box-sizing: border-box;
    padding: 30px 15px 30px 25px; /* top 6930−6900=30px; left буллеты 1196−1171=25px; right 1535−1520=15px */
}

/* Список: 3 пункта, gap по расчёту высот */
.spyresultinfo-v1__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* Пункты: текст на 22px от края (1218−1196=22px), буллет на 0px */
.spyresultinfo-v1__item {
    font-family: 'LorenzoSans', sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 125%;
    letter-spacing: -0.005em;
    color: var(--text-main-color-85);
    padding-left: 22px;
    position: relative;
}

.spyresultinfo-v1__item::before {
    content: '•';
    position: absolute;
    left: 0;
    top: 0;
    font-weight: 700;
    font-size: 16px;
    line-height: 125%;
    color: var(--color-sage);
}

/* ── Mobile (≤ 768px) ──
   Figma mobile: card 300×912px, left=50px → wrap padding 0 50px.
   Порядок: heading+subtitle → белая карточка → зелёный баннер → телефон.
   Трюк: left-col { display: contents } делает его детей прямыми flex-items карточки,
   CSS order управляет порядком всех братских элементов.
   ------------------------------------------------------------------ */
@media (max-width: 768px) {
    /* Wrap: 0 12.5vw → карточка 75vw */
    .spyresultinfo-v1__wrap { padding: 0 12.5vw; }

    /* Карточка: flex-колонка, авто высота (~912px по контенту), overflow:hidden */
    .spyresultinfo-v1__card {
        height: auto;
        flex-direction: column;
        padding: 20px 0 0 0; /* top=20px (heading top от карточки: 10712−10692=20px); стороны=0 */
        gap: 0;
        overflow: hidden;
    }

    /* Убираем left-col как бокс, его дети (.content и .banner) становятся flex-items карточки */
    .spyresultinfo-v1__left-col { display: contents; }

    /* Порядок на мобайле: 1-heading/subtitle, 2-белая карточка, 3-баннер, 4-телефон */
    .spyresultinfo-v1__content  { order: 1; }
    .spyresultinfo-v1__list-card { order: 2; }
    .spyresultinfo-v1__banner   { order: 3; }
    .spyresultinfo-v1__phone    { order: 4; }

    /* Heading+subtitle блок: отступы от карточки */
    .spyresultinfo-v1__content {
        padding: 0 20px; /* left=20px (70−50=20px от карточки) */
        margin-bottom: 15px; /* gap до белой карточки: 198−(111+72)=15px */
    }

    /* Heading: 700/clamp(20px,6.25vw,27px)/107%/-0.01em */
    .spyresultinfo-v1__heading {
        font-size: clamp(20px, 6.25vw, 27px);
        line-height: 107%;
        max-width: 276px;
        margin-bottom: 10px; /* 10803−(10712+81)=10px */
    }

    /* Subtitle: 400/clamp(12px,3.5vw,15px)/125% */
    .spyresultinfo-v1__subtitle {
        font-size: clamp(12px, 3.5vw, 15px);
        max-width: 257px;
        margin-bottom: 0;
    }

    /* Белая карточка: 67.5vw × aspect-ratio 270/315, margin 0 3.75vw */
    .spyresultinfo-v1__list-card {
        flex: none;
        width: 67.5vw;
        height: auto;
        aspect-ratio: 270/315;
        margin: 0 3.75vw 10px 3.75vw;
        padding: 20px 29px 25px 20px;
    }

    /* Список: gap между пунктами */
    .spyresultinfo-v1__list { gap: 15px; }

    /* Пункты: 14px; text indent 22px (107−85=22px) */
    .spyresultinfo-v1__item { font-size: 14px; }
    .spyresultinfo-v1__item::before { font-size: 14px; }

    /* Зелёный баннер: 67.5vw, margin 0 3.75vw; bottom 15px = gap до телефона */
    .spyresultinfo-v1__banner {
        max-width: none;
        width: 67.5vw;
        height: auto;
        min-height: 97px;
        margin: 0 3.75vw 15px 3.75vw;
        /* padding: top/bottom 20px (11235−11215=20px), left 20px (85−65=20px), right: 270−20−228=22px */
        padding: 20px 22px 20px 20px;
        align-items: flex-start; /* текст выровнен сверху */
    }

    /* Текст баннера: 700/15px/126%/-0.005em (desktop 18px → mobile 15px) */
    .spyresultinfo-v1__banner-text { font-size: 15px; }

    /* Телефон: static, 55.25vw × aspect-ratio 221/277, margin-left 10.25vw (41÷400×100) */
    .spyresultinfo-v1__phone {
        position: static;
        width: 55.25vw;
        height: auto;
        aspect-ratio: 221/277;
        object-fit: cover;
        object-position: top center;
        margin-left: 10.25vw;
    }
}

/* ============================================================
   infoattleo-v1 — bullet list + green card (left) + photo (right)
   Left col 545px: list on white bg, green card at bottom. Right: 655px photo.
   Figma: text color var(--text-main-color-85), no dark bg on left side.
   Container x=360; photo x=905 (545px from left); card y-offset 338px; photo h=467px.
   ============================================================ */

.infoattleo-v1 { padding: var(--section-pt) 0 var(--section-pb); }

.infoattleo-v1__wrap {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
}

/* Left column — 545px wide, same height as photo (467px), no background */
.infoattleo-v1__left {
    flex: 0 0 545px;
    height: 467px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

/* Bullet list — top of left column */
.infoattleo-v1__list {
    list-style: none;
    margin: 0;
    padding: 28px 76px 20px 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* Each item: 22px left indent, text at var(--text-main-color-85) per Figma */
.infoattleo-v1__item {
    font-family: 'LorenzoSans', sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 125%;
    letter-spacing: -0.005em;
    color: var(--text-main-color-85);
    padding-left: 22px;
    position: relative;
}

/* Bullet dot: green • aligned with text, Figma: color #A9B995, bold */
.infoattleo-v1__item::before {
    content: '•';
    position: absolute;
    left: 0;
    top: 0;
    font-weight: 700;
    font-size: 16px;
    line-height: 125%;
    color: var(--color-sage);
}

/* Green gradient card — bottom of left column, border-radius per Figma */
.infoattleo-v1__card {
    background: var(--gradient-sage);
    border-radius: 20px 0 0 20px;
    padding: 23px 30px 25px 25px;
    flex-shrink: 0;
}

/* "Важно!" label — Figma: 20px/135%/-0.005em, 23px from card top, 25px from card left */
.infoattleo-v1__card-label {
    font-family: 'LorenzoSans', sans-serif;
    font-weight: 700;
    font-size: 20px;
    line-height: 135%;
    letter-spacing: -0.005em;
    color: #FFFFFF;
    margin: 0 0 10px;
}

/* Body text — Figma: 16px/135%/-0.005em, max-width 483px, 10px gap after label */
.infoattleo-v1__card-text {
    font-family: 'LorenzoSans', sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 135%;
    letter-spacing: -0.005em;
    color: #FFFFFF;
    max-width: 483px;
    margin: 0;
}

/* Right column: photo 655px × 467px, border-radius 20px 20px 20px 0 (no bottom-left) */
.infoattleo-v1__right {
    flex: 1;
}

.infoattleo-v1__photo {
    width: 100%;
    height: 467px;
    object-fit: cover;
    object-position: top center;
    border-radius: 20px 20px 20px 0;
    display: block;
}

/* ── Mobile (≤ 768px) ── */
@media (max-width: 768px) {
    /* Wrapper: вертикально, padding 0 12.5vw (Figma left: 50px) */
    .infoattleo-v1__wrap {
        flex-direction: column;
        padding: 0 12.5vw;
    }

    /* Фото — наверх (Figma: top=0), 100% × aspect-ratio 300/214, все углы 20px */
    .infoattleo-v1__right { order: -1; }

    .infoattleo-v1__photo {
        width: 100%;
        height: auto;
        aspect-ratio: 300/214;
        border-radius: 20px;
        object-position: top center;
    }

    /* Левая колонка: авто высота, без фиксированного height и justify-content:space-between */
    .infoattleo-v1__left {
        flex: none;
        height: auto;
        justify-content: flex-start;
    }

    /* Список: gap 15px (229−214=15px от фото), padding-left 0 (буллеты у края)
       Текст items: padding-left 22px → ширина 300−22=278px = Figma width */
    .infoattleo-v1__list {
        padding: 15px 0 0 0;
        gap: 15px;
    }

    .infoattleo-v1__item { font-size: 14px; }
    .infoattleo-v1__item::before { font-size: 14px; }

    /* Карточка: все углы 20px (Figma: border-radius 20px), margin-top 20px (555−535=20px)
       padding: top 20px (10492−10472), left/right 20px (70−50) */
    .infoattleo-v1__card {
        border-radius: 20px;
        margin-top: 20px;
        padding: 20px 20px 25px 20px;
    }

    /* "Важно!": 18px (Figma), gap до текста 5px (10521−(10492+24)=5px) */
    .infoattleo-v1__card-label {
        font-size: 18px;
        margin-bottom: 5px;
    }

    /* Текст карточки: 14px, max-width 247px (Figma) */
    .infoattleo-v1__card-text {
        font-size: 14px;
        max-width: 247px;
    }
}

/* ============================================================
   CONSINFO2 v1
   ============================================================ */

.consinfo2-v1 { padding: var(--section-pt) 0 var(--section-pb); }

.consinfo2-v1__wrap {
    max-width: 1200px;
    margin: 0 auto;
}

/* Карточка: 1200×290px, #F8FAF6, border, radius 20px.
   padding-left: 315px = 15px (фото_margin) + 274px (фото) + 26px (gap)
   padding-right: 25px = 1200 − (1171−360+364) = 25px */
.consinfo2-v1__card {
    position: relative;
    height: 290px;
    background: #F8FAF6;
    border: 1px solid #E5E9F0;
    border-radius: 20px;
    box-sizing: border-box;
    display: flex;
    align-items: flex-start;
    padding-left: 315px;
    padding-right: 25px;
    overflow: hidden;
}

/* Фото: 274×260px, left=15px, top=15px от краёв карточки */
.consinfo2-v1__photo {
    position: absolute;
    left: 15px;
    top: 15px;
    width: 274px;
    height: 260px;
    object-fit: cover;
    border-radius: 15px;
    display: block;
}

/* Контент: 496px = 811 − 315 (от края фото до начала списка-карточки) */
.consinfo2-v1__content {
    flex: 0 0 496px;
    padding-top: 33px;
    display: flex;
    flex-direction: column;
}

/* Заголовок: 30px/115%/-0.01em, max-width 452px (Figma: 675+452=1127px) */
.consinfo2-v1__heading {
    font-weight: 700;
    font-size: 30px;
    line-height: 115%;
    letter-spacing: -0.01em;
    color: var(--text-main-color);
    max-width: 452px;
    margin: 0 0 15px;
}

/* Подзаголовок: 16px/125%/-0.005em, gap до кнопки 56px (7437−7381=56px) */
.consinfo2-v1__subtitle {
    font-weight: 400;
    font-size: 16px;
    line-height: 125%;
    letter-spacing: -0.005em;
    color: var(--text-main-color);
    max-width: 472px;
    margin: 0 0 56px;
}

/* Кнопка: 324×73px, var(--color-golden), radius 100px */
.consinfo2-v1__btn {
    width: 324px;
    height: 73px;
    background: var(--color-golden);
    border: none;
    border-radius: 100px;
    font-family: "LorenzoSans", Arial, sans-serif;
    font-weight: 700;
    font-size: 17px;
    line-height: 135%;
    letter-spacing: -0.005em;
    color: #FFFFFF;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    flex-shrink: 0;
    transition: opacity var(--transition-speed);
}

.consinfo2-v1__btn:hover { opacity: 0.9; }

/* Белая карточка: 364×240px, margin-top=25px (7270−7245=25px), padding 23px top 25px left */
.consinfo2-v1__list-card {
    flex: 0 0 364px;
    height: 240px;
    margin-top: 25px;
    background: #FFFFFF;
    border: 1px solid #E5E9F0;
    box-shadow: 0px 10px 50px rgba(193, 193, 193, 0.1);
    border-radius: 15px;
    box-sizing: border-box;
    padding: 23px 33px 35px 25px;
}

/* Заголовок карточки: 700 / 20px / 135% / -0.005em */
.consinfo2-v1__list-title {
    font-weight: 700;
    font-size: 20px;
    line-height: 135%;
    letter-spacing: -0.005em;
    color: var(--text-main-color);
    margin: 0 0 15px;
}

.consinfo2-v1__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* Пункт: 500 / 16px / 125% / -0.005em, зелёный буллет #A9B995 */
/* max-width: 306px = 284px (Figma текст) + 22px (padding-left под буллет) */
.consinfo2-v1__item {
    font-weight: 500;
    font-size: 16px;
    line-height: 125%;
    letter-spacing: -0.005em;
    color: var(--text-main-color-85);
    padding-left: 22px;
    position: relative;
    max-width: 306px;
}

.consinfo2-v1__item::before {
    content: '•';
    position: absolute;
    left: 0;
    top: 0;
    font-weight: 700;
    font-size: 16px;
    line-height: 125%;
    color: var(--color-sage);
}

/* ── Мобайл ── */

@media (max-width: 768px) {

    .consinfo2-v1__wrap { padding: 0 12.5vw; }

    /* Карточка: 300px, авто высота, flex-column */
    .consinfo2-v1__card {
        flex-direction: column;
        height: auto;
        padding: 0 0 15px 0;
        overflow: hidden;
    }

    /* Фото скрыто на мобиле */
    .consinfo2-v1__photo { display: none; }

    /* display:contents — дети становятся прямыми flex-items карточки, используем order */
    .consinfo2-v1__content { display: contents; }

    /* Заголовок: order 1, margin-left 20px (от края карточки) */
    .consinfo2-v1__heading {
        order: 1;
        font-size: clamp(20px, 6.25vw, 27px);
        line-height: 107%;
        max-width: 250px;
        margin: 20px 0 10px 20px;
    }

    /* Подзаголовок: order 2, clamp font, max-width 185px (Figma frame) */
    .consinfo2-v1__subtitle {
        order: 2;
        font-size: clamp(12px, 3.5vw, 15px);
        max-width: 185px;
        margin: 0 0 15px 20px;
    }

    /* Белая карточка: order 3, 67.5vw, margin 3.75vw */
    .consinfo2-v1__list-card {
        order: 3;
        flex: none;
        width: 67.5vw;
        height: auto;
        min-height: 244px;
        margin: 0 3.75vw 15px;
        padding: 20px 22px 25px 20px;
    }

    .consinfo2-v1__list-title { font-size: 16px; }

    .consinfo2-v1__item { font-size: 14px; max-width: 196px; }
    .consinfo2-v1__item::before { font-size: 14px; }

    /* Кнопка: order 4, 67.5vw×60px, margin 3.75vw */
    .consinfo2-v1__btn {
        order: 4;
        width: 67.5vw;
        height: 60px;
        font-size: 14px;
        margin: 0 3.75vw 0;
        flex-shrink: 0;
    }
}

/* ============================================================
   fourstepsinfo v1 — 4 шага к вашей комфортной жизни
   ============================================================ */

.fourstepsinfo-v1 { padding: var(--section-pt) 0 var(--section-pb); }

.fourstepsinfo-v1__wrap {
    max-width: 1200px;
    margin: 0 auto;
}

/* Заголовок: 40px/107%/-0.02em, gap 10px до subtitle */
/* 10px = 10977(subtitle top) − (10924+43)(heading bottom) */
.fourstepsinfo-v1__heading {
    font-weight: 700;
    font-size: 40px;
    line-height: 107%;
    letter-spacing: -0.02em;
    color: var(--text-main-color);
    margin: 0 0 10px;
}

/* Subtitle: 25px/126%/-0.01em, gap 25px до карточки */
/* 25px = 11033(grid top) − (10977+31)(subtitle bottom) */
.fourstepsinfo-v1__subtitle {
    font-weight: 700;
    font-size: 25px;
    line-height: 126%;
    letter-spacing: -0.01em;
    color: var(--text-main-color);
    margin: 0 0 25px;
}

/* Сетка: 4 колонки по 300px, 2 строки 308+287px (308+287=595 = высота контейнера) */
/* Фон #F8F9FA + border заполняются в ячейках с текстом; фото-ячейки перекрывают фон */
.fourstepsinfo-v1__grid {
    display: grid;
    grid-template-columns: repeat(4, 300px);
    grid-template-rows: 308px 287px;
    background: #F8F9FA;
    border: 1px solid #E5E9F0;
    border-radius: 20px;
    overflow: hidden;
}

/* Фото-ячейка */
.fourstepsinfo-v1__cell--photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Текстовая ячейка: padding 20px сверху/слева (badge: left=380-360=20, top=11053-11033=20) */
.fourstepsinfo-v1__cell--text {
    padding: 20px;
}

/* Бейдж: 35×35px, градиент зелёный, border-radius 30px */
/* gap после badge: 20px = 11108(title top) − (11053+35)(badge bottom) */
.fourstepsinfo-v1__badge {
    width: 35px;
    height: 35px;
    background: var(--gradient-sage);
    border-radius: 30px;
    font-weight: 700;
    font-size: 16px;
    line-height: 126%;
    letter-spacing: -0.01em;
    color: #FFFFFF;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
}

/* Заголовок шага: 700/20px/115%/-0.005em */
/* gap после title: 10px = 11141(body top) − (11108+23)(title bottom) */
.fourstepsinfo-v1__step-title {
    font-weight: 700;
    font-size: 20px;
    line-height: 115%;
    letter-spacing: -0.005em;
    color: var(--text-main-color);
    margin: 0 0 10px;
}

/* Текст шага: 500/16px/135%/-0.005em, цвет var(--text-main-color-85) */
.fourstepsinfo-v1__step-body {
    font-weight: 500;
    font-size: 16px;
    line-height: 135%;
    letter-spacing: -0.005em;
    color: var(--text-main-color-85);
    margin: 0;
}

/* max-width текста по Figma — ограничивает переносы строк */
/* Cell 01 (nth-child 1): 231px; Cell 03 (nth-child 3): 259px */
/* Cell 02 (nth-child 6): 280px; Cell 04 (nth-child 8): 269px */
.fourstepsinfo-v1__cell:nth-child(1) .fourstepsinfo-v1__step-body { max-width: 231px; }
.fourstepsinfo-v1__cell:nth-child(3) .fourstepsinfo-v1__step-body { max-width: 259px; }
.fourstepsinfo-v1__cell:nth-child(6) .fourstepsinfo-v1__step-body { max-width: 280px; }
.fourstepsinfo-v1__cell:nth-child(8) .fourstepsinfo-v1__step-body { max-width: 269px; }

@media (max-width: 768px) {
    /* Wrap: убираем max-width, горизонтальный отступ 12.5vw */
    .fourstepsinfo-v1__wrap {
        max-width: none;
        padding: 0 12.5vw;
    }

    /* Заголовок: 25px/107%/-0.01em, gap 10px до subtitle */
    /* 10px = 15933(subtitle top) − (15869+54)(heading bottom) */
    .fourstepsinfo-v1__heading {
        font-size: 25px;
        line-height: 107%;
        letter-spacing: -0.01em;
        margin: 0 0 2.5vw;
    }

    /* Subtitle: 18px/115%/-0.005em, gap 20px до грида */
    /* 20px = 15974(grid top) − (15933+21)(subtitle bottom) */
    .fourstepsinfo-v1__subtitle {
        font-size: 18px;
        line-height: 115%;
        letter-spacing: -0.005em;
        margin: 0 0 5vw;
    }

    /* Грид: переключаем в flex-колонку для поддержки order */
    .fourstepsinfo-v1__grid {
        display: flex;
        flex-direction: column;
        grid-template-columns: unset;
        grid-template-rows: unset;
    }

    /* Переупорядочиваем элементы: десктоп-сетка → мобильный стек
       DOM: [1]Text01 [2]Photo-group [3]Text03 [4]Photo-w+m [5]Photo-m+t [6]Text02 [7]Photo-laptop [8]Text04
       Mobile: Text01 → Photo-group → Text02 → Photo-m+t → Text03 → Photo-w+m → Text04 → Photo-laptop */
    .fourstepsinfo-v1__cell:nth-child(1) { order: 1; } /* Text01 */
    .fourstepsinfo-v1__cell:nth-child(2) { order: 2; } /* Photo-group → после Text01 */
    .fourstepsinfo-v1__cell:nth-child(3) { order: 5; } /* Text03 → 5-я позиция */
    .fourstepsinfo-v1__cell:nth-child(4) { order: 6; } /* Photo-w+m → 6-я позиция */
    .fourstepsinfo-v1__cell:nth-child(5) { order: 4; } /* Photo-m+t → 4-я позиция */
    .fourstepsinfo-v1__cell:nth-child(6) { order: 3; } /* Text02 → 3-я позиция */
    .fourstepsinfo-v1__cell:nth-child(7) { order: 8; } /* Photo-laptop → 8-я позиция */
    .fourstepsinfo-v1__cell:nth-child(8) { order: 7; } /* Text04 → 7-я позиция */

    /* Фото-ячейки: полная ширина, aspect-ratio 300/214 */
    .fourstepsinfo-v1__cell--photo {
        height: auto;
        aspect-ratio: 300/214;
    }

    .fourstepsinfo-v1__cell--photo picture {
        display: block;
        width: 100%;
        height: 100%;
    }

    .fourstepsinfo-v1__cell--photo img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    /* Текстовая ячейка: grid — бейдж + заголовок в одну строку, текст ниже */
    /* padding: 20px top/left (badge top=20px, left=20px от края контейнера), 15px bottom */
    .fourstepsinfo-v1__cell--text {
        display: grid;
        grid-template-columns: 8.75vw 1fr;
        grid-template-rows: auto auto;
        column-gap: 3.75vw;
        padding: 5vw 5vw 3.75vw;
        align-items: start;
    }

    /* Бейдж: первая строка первая колонка, вертикально по центру */
    .fourstepsinfo-v1__badge {
        grid-row: 1;
        grid-column: 1;
        margin-bottom: 0;
        align-self: center;
    }

    /* Заголовок: первая строка вторая колонка, 16px */
    /* gap к badge = 15px (120-70-35=15px) */
    .fourstepsinfo-v1__step-title {
        grid-row: 1;
        grid-column: 2;
        font-size: 16px;
        margin: 0;
        align-self: center;
    }

    /* Тело: вторая строка, обе колонки, 14px, gap 10px сверху */
    /* 10px = 16039(body top) − (15994+35)(badge bottom) — всё точно по Figma */
    .fourstepsinfo-v1__step-body {
        grid-row: 2;
        grid-column: 1 / -1;
        font-size: 14px;
        margin: 2.5vw 0 0;
    }

    /* max-width текста по Figma (мобильные) */
    /* Cell 01 (nth-child 1): 232px; Cell 06 → Text02: 257px */
    /* Cell 03 → Text03: 259px; Cell 08 → Text04: 246px */
    .fourstepsinfo-v1__cell:nth-child(1) .fourstepsinfo-v1__step-body { max-width: 58vw; }
    .fourstepsinfo-v1__cell:nth-child(6) .fourstepsinfo-v1__step-body { max-width: 64.25vw; }
    .fourstepsinfo-v1__cell:nth-child(3) .fourstepsinfo-v1__step-body { max-width: 64.75vw; }
    .fourstepsinfo-v1__cell:nth-child(8) .fourstepsinfo-v1__step-body { max-width: 61.5vw; }
}

/* ============================================================
   CONTACTINFO v1
   ============================================================ */

.contactinfo-v1 { padding: var(--section-pt) 0 var(--section-pb); }

.contactinfo-v1__wrap {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: flex-start;
}

/* Колонка контактов: 349px + 10px зазор до карты */
/* Заголовок в Figma на 24px ниже верха карты/фото → padding-top: 24px */
.contactinfo-v1__contacts {
    flex: 0 0 349px;
    margin-right: 10px;
    padding-top: 24px;
}

/* Карта: 436px × 512px, border-radius 20px */
/* gap до фото: 20px (1175 − 719 − 436 = 20px) */
.contactinfo-v1__map {
    flex: 0 0 436px;
    height: 512px;
    border-radius: 20px;
    overflow: hidden;
    margin-right: 20px;
}

.contactinfo-v1__map iframe {
    width: 100%;
    height: 100%;
    border: none;
    display: block;
}

/* Фото: 385px × 512px, border-radius 20px */
.contactinfo-v1__photo {
    flex: 0 0 385px;
    height: 512px;
    border-radius: 20px;
    overflow: hidden;
}

.contactinfo-v1__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Заголовок: 40px/115%/-0.02em, var(--text-main-color) */
/* gap до первого блока: 25px (13281 − 13256 = 25px) */
.contactinfo-v1__heading {
    font-weight: 700;
    font-size: 40px;
    line-height: 115%;
    letter-spacing: -0.02em;
    color: var(--text-main-color);
    margin: 0 0 25px;
}

/* Блок контактного элемента: 25px зазор между блоками */
.contactinfo-v1__item {
    margin-bottom: 25px;
}

/* Метка: 16px/125%/-0.005em, var(--text-main-color-85) */
/* gap до значения: 10px (13311 − 13301 = 10px) */
.contactinfo-v1__item-label {
    font-weight: 500;
    font-size: 16px;
    line-height: 125%;
    letter-spacing: -0.005em;
    color: var(--text-main-color-85);
    margin: 0 0 10px;
}

/* Значение: 20px/135%/-0.005em, var(--text-main-color) */
.contactinfo-v1__item-value {
    font-weight: 700;
    font-size: 20px;
    line-height: 135%;
    letter-spacing: -0.005em;
    color: var(--text-main-color);
    margin: 0;
}

/* Мессенджеры: стиль как contacts__info-social */
.contactinfo-v1__messengers {
    display: flex;
    align-items: center;
}

.contactinfo-v1__messengers .soc-icon {
    width: 35px;
    height: 35px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
    margin-right: var(--s-5);
    transition: var(--transition-speed);
    background-color: var(--sp-cost-accent);
}

.contactinfo-v1__messengers .soc-icon:last-child {
    margin-right: 0;
}

.contactinfo-v1__messengers .soc-icon:hover {
    opacity: 0.85;
}

.contactinfo-v1__messengers .soc-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.contactinfo-v1__messengers .soc-tg-label {
    display: none;
}

/* Реквизиты: 17px/120%/-0.005em, золотой var(--color-golden) */
/* gap от мессенджеров: 25px (от margin-bottom на item--messengers) */
.contactinfo-v1__requisites {
    display: inline-block;
    font-weight: 700;
    font-size: 17px;
    line-height: 120%;
    letter-spacing: -0.005em;
    color: var(--color-golden);
    text-decoration: none;
}

@media (max-width: 768px) {
    .contactinfo-v1__wrap {
        flex-direction: column;
        padding: 0 12.5vw;
    }

    .contactinfo-v1__contacts {
        flex: none;
        width: 100%;
        margin-right: 0;
        padding-top: 0;
    }

    /* Заголовок: 25px/115%/-0.01em */
    /* gap до первого блока: 20px (19637 − 19617 = 20px) */
    .contactinfo-v1__heading {
        font-size: 25px;
        line-height: 115%;
        letter-spacing: -0.01em;
        margin-bottom: 5vw;
    }

    /* Блок: 20px зазор между блоками (19702 − 19682 = 20px) */
    .contactinfo-v1__item {
        margin-bottom: 5vw;
    }

    /* Метка: 14px/125%/-0.005em */
    /* gap до значения: 5px (19660 − 19655 = 5px) */
    .contactinfo-v1__item-label {
        font-size: 14px;
        line-height: 125%;
        margin-bottom: 1.25vw;
    }

    /* Значение: 16px/135%/-0.005em */
    .contactinfo-v1__item-value {
        font-size: 16px;
        line-height: 135%;
    }

    /* Мессенджеры: gap метка→кружок = 12px; иконки как на основной главной — 13.125vw */
    .contactinfo-v1__messengers {
        margin-top: 1.75vw;
    }

    .contactinfo-v1__messengers .soc-icon {
        width: 10vw;
        height: 10vw;
        margin-right: var(--s-9);
    }

    /* Реквизиты: 14px/120%/-0.005em */
    .contactinfo-v1__requisites {
        font-size: 14px;
        line-height: 120%;
    }

    /* Карта: полная ширина с выходом за 12.5vw отступы враппера */
    /* height: 306px → 76.5vw; gap: 20px → 5vw */
    .contactinfo-v1__map {
        flex: none;
        width: calc(100% + 25vw);
        margin-left: -12.5vw;
        height: 76.5vw;
        margin-right: 0;
        margin-top: 5vw;
        border-radius: 5vw;
    }

    /* Фото: 75vw × aspect-ratio 300/399, border-radius 20px → 5vw */
    .contactinfo-v1__photo {
        flex: none;
        width: 75vw;
        max-width: 100%;
        height: auto;
        aspect-ratio: 300/399;
        margin-top: 5vw;
        border-radius: 5vw;
    }
}

/* ============================================================
   FAQ v1
   ============================================================ */

.faq-v1 { padding: var(--section-pt) 0 var(--section-pb); }

.faq-v1__wrap {
    max-width: 1200px;
    margin: 0 auto;
}

/* Heading: 40px/107%/-0.02em, max-width 808px (Figma), gap до сетки 25px (11796-11771=25px) */
.faq-v1__heading {
    font-weight: 700;
    font-size: 40px;
    line-height: 107%;
    letter-spacing: -0.02em;
    color: var(--text-main-color);
    max-width: 808px;
    margin-bottom: 25px;
}

/* Сетка: 2 колонки 590px, gap 20px (Figma: 970-360-590=20px и 11916-11796-100=20px) */
.faq-v1__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: start;
    gap: 20px;
}

@media (max-width: 768px) {
    .faq-v1__wrap { padding: 0 12.5vw; }

    /* Heading: 25px/107%/-0.01em, gap до сетки 20px (17732-17712=20px) */
    .faq-v1__heading {
        font-size: 25px;
        line-height: 107%;
        letter-spacing: -0.01em;
        margin-bottom: 5vw;
    }

    /* Одна колонка, gap 10px → 2.5vw между элементами */
    .faq-v1__grid {
        grid-template-columns: 1fr;
        gap: 2.5vw;
    }
}
