﻿:root{
  --c-bg:#eeeef1;
  --c-panel:#e5e5e5;
  --c-card:#f6f6f5;
  --c-ink:#2d2d2d;
  --c-body:#5b5b5b;
  --c-body-2:#656565;
  --c-muted:#a7a7a7;
  --c-num:#cccccc;
  --c-line:#e5e5e5;
  --c-white:#fff;
  --c-on-accent:#ebebeb;
  --c-accent:#7839f2;
  --c-accent-hover:#641bf0;
  --c-accent-deep:#5c21e5;
  --c-accent-light:#843cff;
  --c-green:#1fe070;
  --c-dark:#1f1f1f;
  --c-black:#000;
  --r-xs:8px;
  --r-sm:12px;
  --r-md:14px;
  --r-lg:15px;
  --r-xl:24px;
  --r-2xl:30px;
  --w-page:1200px;
  --pad:20px;
  --fs-h1:17px;
  --fs-h2:32px;
  --lh-h2:1.25;
  --fs-h3:18px;
  --fs-lead:20px;
  --fs-body:17px;
  --lh-body:1.45;
  --fs-sm:15px;
  --fs-xs:13px;
  --fs-btn:13px;
  --font-display:'Unbounded',Arial,sans-serif;
  --font-body:'Onest',Arial,sans-serif;
  --shadow-card:none;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;overflow-x:clip}
body{margin:0;background:var(--c-bg);color:var(--c-ink);font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
p,h1,h2,h3,ul,figure{margin:0}
ul{padding:0;list-style:none}
button{font:inherit}
.container{width:100%;max-width:var(--w-page);margin:0 auto;padding:0 var(--pad)}
.h2{font-family:var(--font-display);font-size:var(--fs-h2);line-height:var(--lh-h2);font-weight:500;letter-spacing:-0.48px;color:var(--c-ink)}
.h3{font-family:var(--font-display);font-size:var(--fs-h3);line-height:1.25;font-weight:500;color:var(--c-ink)}
.btn{display:inline-flex;align-items:center;gap:12px;border-radius:var(--r-lg);background:var(--c-accent);color:var(--c-on-accent);font-family:var(--font-display);font-size:var(--fs-btn);line-height:1.55;font-weight:500;text-transform:uppercase;padding:24px 34px;border:0;cursor:pointer;transition:background-color .2s ease-in-out}
.btn:hover{background:var(--c-accent-hover)}
.btn:focus-visible{outline:2px solid var(--c-ink);outline-offset:3px}
.btn__icon{width:32px;height:32px;flex:none}
.btn__text{display:block}
.hero{position:relative;min-height:744px;padding-top:25px;overflow:hidden;background:var(--c-bg)}
.hero__inner{position:relative;z-index:2;display:flex;flex-direction:column;min-height:681px}
.topbar{display:flex;align-items:center;min-height:46px}
.topbar__logo{flex:none;display:block}
.topbar__logo img{width:100px;height:34px}
.topbar__tagline{margin-left:15px;max-width:226px;font-size:14px;line-height:1.35;letter-spacing:-0.5px;color:#626262}
.topbar__contacts{display:flex;align-items:center;gap:16px;margin-left:auto;order:2}
.icon-btn{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border:1px solid var(--c-muted);border-radius:10px;background:transparent}
.icon-btn img{opacity:.75}
.phone-btn{display:flex;align-items:center;justify-content:center;gap:8px;height:46px;padding:0 20px;border:1px solid var(--c-muted);border-radius:10px;font-family:var(--font-display);font-size:14px;line-height:1.25;font-weight:600;letter-spacing:.6px;color:var(--c-ink);white-space:nowrap}
/* иконка телефона — как tn-atom__button-icon оригинала: 16×16, зазор 8, поля 13/20 (эталон 1440: кнопка 232×46, иконка x+21) */
.phone-btn::before{content:"";flex:none;width:16px;height:16px;background:url(images/tild3438-3063-4132-b431-646636636564__calling.svg) center/contain no-repeat}
/* «≡» у слогана на ≥960 (эталон: x слогана+226+18, y 29, 34×34); на <960 — у правого края, контакты скрыты */
.topbar__burger{display:block;flex:none;order:1;align-self:flex-start;margin:4px 0 0 18px;width:34px;height:34px}
.topbar__burger img{width:34px;height:34px}
.hero__body{margin-top:88px;max-width:867px}
/* эталон 1440: h1 — Unbounded 18/23,4, 400, #888, y 159; заголовок с y 200 */
.hero__kicker{margin:0 0 17.6px;font-family:var(--font-display);font-size:18px;line-height:23.4px;font-weight:400;color:#888}
.hero__title{font-family:var(--font-display);font-size:38px;line-height:48px;font-weight:500;letter-spacing:-0.57px;color:var(--c-ink)}
.hero__accent{color:var(--c-green)}
/* эталон: тире 14 px отдельным столбцом, текст 639 px с x+24, строка 27 */
.hero__lead{display:grid;grid-template-columns:14px minmax(0,639px);column-gap:10px;margin-top:14px;max-width:663px;font-size:18px;line-height:1.5;color:var(--c-body-2)}
.hero__dash{margin-right:0;line-height:24px}
.hero__cta{display:flex;align-items:flex-start;gap:22px;margin-top:25px}
.btn--hero{flex:none;width:410px;min-height:88px;align-items:center}
.btn--hero .btn__text{max-width:300px}
.hero__cta-note{max-width:268px;padding-top:22px;font-size:16px;line-height:1.35;color:var(--c-body-2)}
.hero__visual{position:absolute;top:0;left:calc(50% - 600px + 743px);width:797px;height:744px;z-index:1;pointer-events:none}
.hero__img{width:797px;height:744px;object-fit:cover;object-position:center bottom;max-width:none}
.hero__badge{position:absolute;top:376px;left:137px;display:flex;align-items:center;gap:14px;padding:3px 12px 3px 3px;border-radius:8px;background:var(--c-dark);box-shadow:0 25px 45px rgba(45,45,45,.25);border:2px solid #2d2d2d}
.hero__badge-avatar{width:44px;height:44px;border-radius:6px;object-fit:cover;flex:none}
.hero__badge-text{max-width:202px;font-size:13px;line-height:1.45;font-weight:300;color:var(--c-num)}
.strip{display:flow-root;padding:0 0 0;position:relative;z-index:3}
/* полоса — три плашки #f6f6f5 r16 на стыке с первым экраном (эталон 1440: 318/407/353 × 76, картинка 76 r12 рамка 1 белая,
   текст Unbounded 15/19 с x+88 шириной плашка−98, по центру); 960–1199 — плашки 226/319/267 × 126, текст под картинкой */
.strip__list{display:flex;justify-content:space-between;margin-top:-38px}
.strip__item{display:flex;align-items:center;gap:12px;height:76px;padding-right:10px;border-radius:16px;background:var(--c-card)}
.strip__item:nth-child(1){width:318px}.strip__item:nth-child(2){width:407px}.strip__item:nth-child(3){width:353px}
.strip__img{width:76px;height:76px;border-radius:12px;border:1px solid #fff;flex:none}
.strip__text{flex:1;padding-top:0;max-width:none;font-family:var(--font-display);font-size:15px;line-height:19px;color:var(--c-ink)}
.space--80{height:80px}
.section-head{padding:0 0 50px}
.problems{padding:0 0 80px}
.problems__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}
.card{background:var(--c-card);border:3px solid var(--c-white);border-radius:var(--r-md);padding:21px}
/* эталон 1440: карточка 364×330, поля 24 внутри рамки 3, картинка сверху, номер+заголовок прижаты к низу (27 от края) */
.card--problem{display:flex;flex-direction:column;height:330px;padding:24px}
.card__img{width:110px;height:110px;border-radius:var(--r-xl);object-fit:cover;margin-bottom:24px;flex:none}
.card__num{display:block;margin-top:auto;font-family:var(--font-body);font-size:18px;line-height:24px;font-weight:500;color:var(--c-num)}
.card__title{margin-top:10px;max-width:310px;font-family:var(--font-display);font-size:18px;line-height:23px;font-weight:500;color:var(--c-ink);overflow-wrap:anywhere}
.h2--center{text-align:center;margin:0 auto}
.c-green{color:var(--c-green)}
.c-purple{color:var(--c-accent)}
.c-red{color:#ee4646}
.reality{padding:0 0 120px}
.reality__grid{display:grid;grid-template-columns:480px 660px;grid-template-areas:"head media" "list media";gap:20px;align-items:start}
.reality__head{grid-area:head}
.reality__head .h2{max-width:459px}
/* эталон 1440: плашка 480×54, рамка 2 #2d2d2d, r9; аватар 44×50 r8 вплотную к рамке, текст 422 с зазором 10, строка 20 */
.reality__quote{display:flex;align-items:center;gap:10px;width:480px;max-width:100%;margin-top:39px;padding:0 10px 0 0;background:var(--c-dark);border:2px solid #2d2d2d;border-radius:9px}
.reality__quote-avatar{width:44px;height:50px;border-radius:8px;object-fit:cover;flex:none}
.reality__quote-text{font-size:15px;line-height:20px;color:#f6f6f5}
/* список: от низа плашки 39 (минус зазор строк сетки 20); карточка 480×117, иконка 48 с x+15 y+21, текст с x+81 шириной ≤372 */
.reality__list{grid-area:list;display:flex;flex-direction:column;gap:12px;margin-top:19px}
.reality__item{display:flex;align-items:flex-start;gap:18px;min-height:117px;padding:18px 12px;background:var(--c-card);border:3px solid var(--c-white);border-radius:var(--r-md)}
.reality__item img{width:48px;height:48px;flex:none}
.reality__item p{max-width:372px;font-size:17px;line-height:1.45;color:var(--c-body)}
.reality__item:first-child p{max-width:364px}
.reality__media{grid-area:media;margin-top:0}
.reality__media img{width:660px;height:667px;border-radius:var(--r-sm);object-fit:cover}
.quiz-intro{padding:0 0 50px}
.quiz-intro .h2{max-width:1160px}
/* 07 квиз (эталон 1440, t-quiz): карточка 960×650 #f6f6f5 r12 тень 0 30 40 −10 rgba(0,0,0,.1); левая панель 260 — аватар 54 r4
   с 25/25, под ним имя 16/600, роль 14/300, текст 16/24,8 (300, первая строка 500) с x+37; справа белое поле 690×630 r6 с отступом 10,
   полоса прогресса 5 px, поля 45; варианты 600×60 рамка #ccc r16 шаг 75, кружок 20 рамка 2 #7839f2, текст Unbounded 14/300;
   внизу «Шаг: 1/6» 14/300 и кнопки «←» 50×52 рамка #656565 r16 и «Далее» 156×52 r15 Unbounded 16; низ секции 90 */
.quiz{padding:0 0 90px}
.quiz__card{display:grid;grid-template-columns:260px 1fr;column-gap:0;width:960px;max-width:100%;min-height:650px;margin:0 auto;padding:0;background:var(--c-card);border-radius:12px;box-shadow:0 30px 40px -10px rgba(0,0,0,.1)}
.quiz__aside{padding:25px 0 0 25px}
.quiz__author{display:block}
.quiz__author>div{margin:25px 0 0 12px;width:186px}
.quiz__author img{display:block;width:54px;height:54px;border-radius:4px;object-fit:cover}
.quiz__name{font-family:var(--font-body);font-size:16px;line-height:21.6px;font-weight:600;color:#000}
.quiz__role{font-size:14px;line-height:21.7px;font-weight:300;color:#000}
.quiz__aside-title{margin:9px 0 0 12px;width:186px;font-size:16px;line-height:24.8px;font-weight:500;color:#000}
.quiz__list{margin:0 0 0 12px;width:186px;display:flex;flex-direction:column;gap:0;font-size:16px;line-height:24.8px;font-weight:300;color:#000}
.quiz__main{position:relative;display:flex;flex-direction:column;min-height:630px;margin:10px 10px 10px 0;padding:45px;background:#fff;border-radius:6px;overflow:hidden}
.quiz__steps{flex:1}
.quiz__progress{position:absolute;top:0;left:0;right:0;height:5px;background:rgba(120,57,242,.2)}
.quiz__progress-fill{display:block;height:100%;width:16.666%;background:var(--c-accent);transition:width .3s ease}
.quiz__step[hidden]{display:none}
.quiz__question{padding-right:10px;font-family:var(--font-display);font-size:22px;line-height:27px;font-weight:500}  /* поле справа 10 — как t-input-title Тильды на всех ширинах (11.11 snap17: на 768/960 переносит «…нужно / в месяц?») */
.quiz__options{margin-top:25px;display:flex;flex-direction:column;gap:15px;max-width:600px}
.quiz__option{display:flex;align-items:center;gap:10px;width:100%;min-height:60px;padding:8px 16px;border:1px solid #ccc;border-radius:16px;background:var(--c-white);text-align:left;font-family:var(--font-display);font-size:14px;line-height:14px;font-weight:300;color:#000;cursor:pointer}
.quiz__option input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.quiz__radio{width:20px;height:20px;border-radius:50%;border:2px solid var(--c-accent);flex:none}
.quiz__option input:checked+.quiz__radio{border:6px solid var(--c-accent)}
.quiz__option input:not(:checked)+.quiz__radio{opacity:.6}  /* t-radio__indicator Тильды — .6 на всех ширинах, выбранный 1 */
.quiz__options.is-invalid .quiz__option{border-color:#ee4646}
.quiz__error{display:none;margin-top:10px;font-size:13px;color:#ee4646}
.quiz__options.is-invalid+.quiz__error{display:block}
/* 07 квиз, шаг с телефоном = t-quiz__contact-form оригинала (замер quiz_probe.py --dump 11.11 на 320, 480, 768, 1100, 1280):
   заголовок + 15; подпись 300 #2d2d2d (≥1200 16/24,8; 640–1199 14/21,7; <640 16/23,2); поле через 25 (≤959 — 20): 60 высотой, рамка #ccc,
   r16, поля 0 20, флажок 18×13, треугольник 8×5 #9a9a9a через 6, «+7» через 10, поле ввода через 5, текст Onest 16/1,33 #000;
   согласие через 37 (≤959 — 32): 300 #2d2d2d, ≥1200 14/21,7, ниже 12/18,6, ссылка на политику подчёркнута.
   Ошибка (--empty): рамка #f00, строка Unbounded 13 #f00 через 5; плашка #f95d51 r16, поля 20, Unbounded 300 белым по центру
   (≥1200 20/31, 640–1199 18/27,9, <640 16/23,2) — над кнопками: на ≥640 в 26 px над подвалом поверх шага, на <640 в потоке, до кнопок 50. */
.quiz__step--final .quiz__question{padding-right:0;color:#2d2d2d}  /* заголовок шага с телефоном — t-quiz__contact-form__header__title, поля справа нет */
.quiz__phone-label{margin-top:15px;font-size:16px;line-height:24.8px;font-weight:300;color:#2d2d2d}
.tphone{margin-top:25px}
.tphone__wrap{display:flex;height:60px;padding:0 20px;border:1px solid #ccc;border-radius:16px;font-family:var(--font-body);font-size:16px;line-height:1.33;font-weight:400;color:#000}
.tphone__select{display:flex;align-items:center;flex-shrink:0;margin-right:5px}
.tphone__flag{display:inline-block;width:18px;min-width:18px;height:13px;background:#c5c5c5 url(images/flag-ru.png) no-repeat}
.tphone__tri{margin-left:6px;border-style:solid;border-width:5px 4px 0;border-color:#9a9a9a transparent transparent}
.tphone__code{margin-left:10px;white-space:nowrap}
.tphone__input{flex:1;min-width:0;height:58px;margin:0;padding:0;border:0;border-radius:0;background:transparent;font:inherit;color:inherit;outline:none;-webkit-appearance:none;appearance:none}
.tphone__wrap.is-error{border-color:red}
.tphone__error{margin-top:5px;font-family:var(--font-display);font-size:13px;line-height:16px;font-weight:400;color:red}
.tphone__error[hidden]{display:none}
.quiz__consent{margin-top:37px;font-size:14px;line-height:21.7px;font-weight:300;color:#2d2d2d}
.quiz__consent a{color:inherit;text-decoration:underline}
.quiz__errorbox{position:absolute;left:45px;right:45px;bottom:123.4px;z-index:1;padding:20px;border-radius:16px;background:#f95d51;font-family:var(--font-display);font-size:20px;line-height:31px;font-weight:300;color:#fff;text-align:center;cursor:pointer}
.quiz__errorbox[hidden]{display:none}
@media (max-width:1199px){
  .quiz__phone-label{font-size:14px;line-height:21.7px}
  .quiz__consent{font-size:12px;line-height:18.6px}
  .quiz__errorbox{font-size:18px;line-height:27.9px}
}
@media (max-width:959px){
  .tphone{margin-top:20px}
  .quiz__consent{margin-top:32px}
}
.quiz__footer{display:flex;align-items:center;justify-content:space-between;margin-top:32px}
.quiz__nav{display:flex;align-items:stretch;gap:8px}
.quiz__back{display:flex;align-items:center;justify-content:center;width:50px;height:auto;padding:0;border:1px solid #656565;border-radius:16px;background:transparent;color:#656565;cursor:pointer;transition:opacity .2s ease-in-out}
.quiz__back[hidden]{display:none}
.quiz__step{font-size:14px;line-height:21.7px;font-weight:300;color:#000}
.btn--quiz{justify-content:center;gap:14.288px;min-width:156px;height:auto;padding:15px 30px;border-radius:15px;text-transform:none;font-family:var(--font-display);font-size:16px;line-height:22.4px;font-weight:400;color:#ebebeb;transition:background-color .2s ease-in-out,opacity .2s ease-in-out}
.btn--quiz svg{flex:none;width:18px;height:18px}
.quiz__back:disabled,.btn--quiz:disabled{opacity:.4;pointer-events:none}
.quiz__footer [data-quiz-counter]{display:flex;opacity:.5}  /* t-quiz__counter-container — flex: «Шаг:1/6» без зазора */
.quiz__footer [data-quiz-num]{font-variant-numeric:tabular-nums}  /* t-quiz__counter — табличные цифры («1» шире на 3,8 px) */
/* серая панель 08–11 — подложка от окна, как shape эталона (container: window): ≥1200 x 70 ширина 90 %, 960–1199 x 21 96 %, <960 во всю
   ширину; контент остаётся на сетке окна */
.panel{position:relative;z-index:0}
.panel::before{content:"";position:absolute;top:0;bottom:0;left:70px;width:90%;z-index:-1;background:var(--c-panel);border-radius:var(--r-2xl) var(--r-2xl) 0 0}
.intro{padding:80px 0 40px}
.intro__inner{max-width:930px}
.intro .h2{text-align:center}
.intro__sub{margin-top:24px;text-align:center;font-size:20px;line-height:1.35;color:var(--c-body-2)}
/* эталон 1440: левая колонка 140–720 (аватар 85×140 r12 с x 190, заголовок с x 299 шириной 386), линия 1 px #ccc на 50 %,
   правая — с x 761 шириной 480: картинка 160×110 r24, заголовок +25 (22/28), текст +10, шаг пунктов 55, низ 100 */
.steps{position:relative;padding:0 0 100px}
.steps__grid{display:grid;grid-template-columns:minmax(0,580px) minmax(0,480px);column-gap:41px;align-items:stretch}
.steps__aside{padding-top:100px;padding-left:50px}
.steps__sticky{position:sticky;top:0;display:flex;align-items:flex-start;gap:24px}
.steps__avatar{width:85px;height:140px;border-radius:12px;object-fit:cover;flex:none}
.steps__sticky-body{min-width:0}
.steps__title{max-width:386px;font-size:26px;line-height:33px;letter-spacing:-0.3px}
.steps__note{margin-top:14px;font-size:20px;line-height:1.35;color:var(--c-body-2)}
.steps__list{list-style:none;display:flex;flex-direction:column;gap:55px;margin:0;padding:100px 0 0;min-width:0}
.steps__img{width:160px;height:110px;border-radius:var(--r-xl);object-fit:cover}
.steps__heading{margin-top:25px;font-family:var(--font-display);font-size:22px;line-height:28px;font-weight:500;max-width:480px}
.steps__text{margin-top:10px;font-size:17px;line-height:25px;color:var(--c-body);max-width:480px}
.steps__item{min-width:0}
.steps__body{min-width:0}
/* 10–11 (эталон 1440): заголовок 867 в 2 строки, поля 60/50; карточки 364×323 #f6f6f5 рамка 3 белая r16, картинка 358×187 r12,
   текст 15/20 с отступом 25, секция без нижнего поля (дальше сразу панель сессии) */
.tech-head{padding:60px 0 50px}
.tech-head .h2{max-width:867px;margin:0 auto}
.tech{padding:0}
.tech__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}
.tech__card{height:323px;background:var(--c-card);border:3px solid #fff;border-radius:16px;overflow:hidden}
.tech__card img{width:100%;height:187px;object-fit:cover;border-radius:12px}
.tech__card p{padding:25px 25px 0;font-size:15px;line-height:20px;color:var(--c-body)}
/* 12 (эталон 1440): своя серая панель 70…+90 % высотой 1073; ноутбук 1750 px с x calc(50% − 565) и y 12 — за край окна;
   заголовок с y 153; секция 1323 */
.session{position:relative;box-sizing:border-box;min-height:1323px;padding:153px 0 0;overflow:hidden}
.session::before{content:"";position:absolute;top:0;left:70px;width:90%;height:1073px;background:var(--c-panel);z-index:0}
.session__grid{position:relative;display:grid;grid-template-columns:652px 1fr;align-items:start}
.session__left{position:relative;z-index:2}
.session__left .h2{max-width:652px}
.session__sub{margin-top:14px;max-width:652px;font-size:20px;line-height:27px;color:var(--c-body-2)}
.session__label{margin-top:35px;font-family:var(--font-display);font-size:18px;line-height:23px;font-weight:500}
.session__list{margin-top:16px;display:flex;flex-direction:column;gap:4px}
.session__list li{position:relative;padding-left:20px;max-width:460px;font-size:17px;line-height:25px;color:var(--c-body)}
.session__list li::before{content:"";position:absolute;left:0;top:9px;width:8px;height:8px;border-radius:2px;background:var(--c-accent)}
.session__list li:last-child{font-weight:600}
.session__plan{display:flex;gap:16px;align-items:flex-start;max-width:460px;min-height:132px;margin-top:31px;padding:0 16px 0 0;border:1px solid #fff;border-radius:14px}
.session__plan img{width:82px;height:130px;border-radius:var(--r-md);object-fit:cover;flex:none}
.session__plan-body{padding-top:12px}
.session__plan-body p{max-width:303px;font-size:17px;line-height:25px;color:var(--c-body)}
.session__plan-link{display:inline-flex;align-items:center;gap:14px;margin-top:6px;font-size:15px;line-height:22px;color:var(--c-accent)}
.session__plan-link img{width:24px;height:24px;border-radius:0}
.btn--session{margin-top:35px;width:460px;min-height:88px}
.session__visual{position:absolute;top:-141px;left:15px;width:1750px;z-index:1;pointer-events:none}
.session__visual img{width:1750px;height:auto;max-width:none}
.big-budget{padding:0 0 50px}
.big-budget__grid{display:grid;grid-template-columns:603px 1fr;column-gap:116px;align-items:start}
.big-budget__title{max-width:603px}
.big-budget__sub{max-width:441px;font-size:20px;line-height:1.35;color:var(--c-body-2);margin-top:0}
.budgets{padding:0 0 80px}
.budgets__grid{display:grid;grid-template-columns:400px 1fr;column-gap:60px;align-items:start}
.budgets__title{max-width:338px;font-size:18px;line-height:23px;letter-spacing:normal}
.budgets__list{margin-top:16px;display:flex;flex-direction:column;gap:4px}
.budgets__list li{position:relative;padding-left:20px;max-width:400px;font-size:17px;line-height:25px;color:var(--c-body)}
.budgets__list li::before{content:"";position:absolute;left:0;top:9px;width:8px;height:8px;border-radius:2px;background:var(--c-accent)}
.budgets__gallery{position:relative}
.budgets__track{display:flex;overflow:hidden;border-radius:16px;transition:transform .3s ease}
.budgets__track img{flex:0 0 100%;width:100%;height:424px;object-fit:cover;border:1px solid #e5e5e5;border-radius:16px}
/* стрелки и точки слайдера — как t-slds оригинала: круг 45 #7839f2, шеврон 10×20 #f6f6f5, отступ 20, центр по кадру 418;
   точки 10 px с шагом 18, активная #7839f2, остальные #bda4f0, на 25 ниже кадра */
.budgets__arrow{position:absolute;top:187px;z-index:2;width:45px;height:45px;padding:0;border-radius:50%;border:0;background:var(--c-accent);cursor:pointer;display:flex;align-items:center;justify-content:center}
.budgets__arrow--prev{left:20px}
.budgets__arrow--next{right:20px}
.budgets__dots{display:flex;justify-content:center;gap:8px;margin-top:25px}
.budgets__dot{width:10px;height:10px;border-radius:50%;border:0;background:#bda4f0;cursor:pointer;padding:0}
.budgets__dot[aria-current="true"]{background:var(--c-accent)}
/* 15–19 по эталону 1440 (ref_boxes.json): заголовок «Фильтруем…» с y 0, низ 50; карточки фильтров 373×250 рамка 3 r14, поля 24,
   точка 8×8 r2; этапы 275×250 с y 32, картинка выступает на 33; красная плашка 560×72 рамка 3 #f58282 r14, текст Unbounded 15/500 */
.fraud{padding:0 0 50px}
.fraud__row{display:flex;align-items:flex-start;gap:14px}
.fraud__icon{width:36px;height:36px;flex:none;margin-top:2px}
.fraud__title{font-size:32px;line-height:40px}
.filters{padding:0 0 55px}
.filters__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:21px}
.filters__card{display:flex;flex-direction:column;min-height:250px;padding:24px;border:3px solid #fff;border-radius:14px;background:var(--c-card)}
.filters__top{display:flex;align-items:flex-start;justify-content:space-between}
.filters__num{font-family:var(--font-display);font-size:32px;line-height:40px;font-weight:500;color:var(--c-ink)}
.filters__dot{width:8px;height:8px;margin:16px 0 0 0;border-radius:2px;background:var(--c-accent)}
.filters__text{margin-top:auto;font-size:17px;line-height:25px;color:var(--c-body)}
.funnel-head{padding:0}
.funnel-head__grid{display:grid;grid-template-columns:867px 1fr;gap:33px;padding-top:55px;padding-bottom:50px;background:linear-gradient(var(--c-num),var(--c-num)) var(--pad) 0/calc(100% - 2*var(--pad)) 1px no-repeat}
.funnel-head__title--mobile{display:none}
.funnel-head__sub{font-size:20px;line-height:27px;color:var(--c-body-2);max-width:260px}
.funnel{padding:32px 0 35px}
.funnel__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;list-style:none;margin:0;padding:0}
.funnel__card{position:relative;min-height:250px;padding:0 24px 24px;border:3px solid #fff;border-radius:14px;background:var(--c-card)}
.funnel__card>img:first-child{width:110px;height:110px;margin-top:-36px;border-radius:24px;object-fit:cover}
.funnel__num{margin-top:79px;font-family:var(--font-body);font-size:18px;line-height:24px;font-weight:500;color:var(--c-num)}
.funnel__title{margin-top:10px;font-family:var(--font-display);font-size:26px;line-height:33px;font-weight:500;color:var(--c-ink)}
.funnel__arrow{position:absolute;top:24px;right:24px;width:16px;height:16px}
.verdict{padding:0 0 100px}
.verdict__inner{display:flex;justify-content:center}
.verdict__box{display:flex;align-items:flex-start;gap:14px;width:560px;max-width:100%;padding:14px 8px 14px 24px;border:3px solid #f58282;border-radius:14px;background:#ee4646;color:#f6f6f5}
.verdict__box img{width:32px;height:32px;flex:none}
.verdict__box p{font-family:var(--font-display);font-size:15px;line-height:19px;font-weight:500}
/* 20 (эталон 1440): плитки 340×338 рамка 3 белая r16, шаг 20; заголовок плитки Unbounded 15/19/500 с x+28, текст 15/20 на 14 ниже,
   картинка своей высоты (190/170/170/171) прижата к низу; «Хотите такие лиды…» — Unbounded 18/23/500; низ 100 */
.quality{padding:0 0 100px}
.quality__grid{display:grid;grid-template-columns:437px 1fr;gap:23px;align-items:start}
.quality__title{font-size:32px;line-height:40px}
.quality__cta{margin-top:35px}
.quality__author{display:flex;align-items:center;gap:16px}
.quality__author img{width:64px;height:64px;border-radius:12px;object-fit:cover;flex:none}
.quality__author-title{font-family:var(--font-display);font-size:18px;line-height:23px;font-weight:500;max-width:205px;color:var(--c-ink)}
.quality__cta-text{margin-top:25px;max-width:420px;font-size:17px;line-height:25px;color:var(--c-body)}
.btn--quality{margin-top:25px;width:436px;min-height:88px;padding:16px 34px;font-size:13px;justify-content:flex-start;text-align:left}
.quality__tiles{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.quality__tile{display:flex;flex-direction:column;min-height:338px;padding:25px 25px 0;border:3px solid #fff;border-radius:16px;background:var(--c-card);overflow:hidden}
.quality__tile div:where([data-h="3"]){font-family:var(--font-display);font-size:15px;line-height:19px;font-weight:500;color:var(--c-ink)}
.quality__tile p{margin-top:14px;font-size:15px;line-height:20px;color:var(--c-body)}
.quality__tile img{width:calc(100% + 50px);max-width:none;margin:auto -25px 0;height:auto;border-radius:0 0 13px 13px}
/* 21 (эталон 1440): заголовок 78/98 на всю сетку 1160 с y 0, кавычки 96 по краям, подзаголовок 24/32 на 14 ниже, низ 120 */
.no-promises{padding:0 0 120px}
.no-promises__inner{position:relative}
.no-promises__title{font-family:var(--font-display);font-size:78px;line-height:98px;font-weight:500;letter-spacing:-1.5px;text-align:center;max-width:1160px;margin:0 auto;color:var(--c-ink)}
.no-promises__sub{margin:14px auto 0;max-width:1050px;text-align:center;font-size:24px;line-height:32px;color:var(--c-body-2)}
.no-promises__quote{position:absolute;left:0;top:0;width:96px;height:96px}
.no-promises__quote--close{left:auto;right:0}
/* Кейсы: подложка — от края окна, как shape эталона (container: window, left 70px, width 90%), поэтому
   точка отсчёта — сама секция, а не контейнер 1200; ноутбук — от сетки 1200 (calc(50% - 600px + 542px)). */
.case{position:relative;padding:0;overflow-x:hidden}
.case__inner{min-height:666px;padding:99px 0 60px}
.case__panel{position:absolute;top:0;left:70px;width:90%;bottom:0;border-radius:30px;background:var(--c-panel)}
.case__text{position:relative;z-index:2;width:500px}
.case__title{font-family:var(--font-display);font-size:26px;line-height:1.25;font-weight:500;color:var(--c-ink)}
.case__label{margin-top:35px;font-family:var(--font-display);font-size:18px;line-height:1.25;font-weight:500;color:var(--c-ink)}
.case__list{margin-top:16px;display:grid;gap:4px}
.case__list li{position:relative;padding-left:20px;font-size:17px;line-height:1.45;color:var(--c-body)}
.case__list li::before{content:"";position:absolute;left:0;top:9px;width:8px;height:8px;border-radius:2px;background:var(--c-accent)}
.case__label--res{margin-top:35px}
.case__metrics{display:grid;grid-template-columns:160px 145px 127px auto;margin:34px 0 0 24px}
.case__metric dt{font-size:15px;line-height:1.35;color:var(--c-body)}
.case__metric dd{margin:4px 0 0;font-family:var(--font-display);font-size:26px;line-height:1.25;font-weight:500;color:var(--c-ink)}
.case__media{position:absolute;top:99px;left:calc(50% - 600px + 542px);width:905px;max-width:none;z-index:1}
.case__media--mid{top:121px}
.case__media--mid2{top:127px}
.case__media--low{top:190px}
/* Результаты — 4 плитки строкой, как группы эталона: фон #f6f6f5, рамка 3px белая, радиус 14, высота 130 (140 на 960–1199),
   подпись фиксированной ширины 78/78/65/95 (85/85/auto/auto на 960–1199) — отсюда перенос «Стоимость / заявки». */
@media (min-width:960px){
  .case__metrics{display:flex;column-gap:8px;width:730px;margin:16px 0 0}
  .case__metric{flex:0 0 auto;height:130px;display:flex;flex-direction:column;justify-content:space-between;padding:18px 24px;border:3px solid var(--c-white);border-radius:14px;background:var(--c-card)}
  .case__metric dt{width:78px}
  .case__metric:nth-child(3) dt{width:65px}
  .case__metric:nth-child(4) dt{width:95px}
  .case__metric dd{margin:0;white-space:nowrap}
}
@media (min-width:960px) and (max-width:1199px){
  .case__metric{height:140px}
  .case__metric dt{width:85px}
  .case__metric:nth-child(n+3) dt{width:auto}
  .case__text{margin-left:calc(50% - 470px)}

  /* полоса 960–1199 (эталон 1100: плашки 226/319/267 × 126 по краям артборда 940, картинка сверху, текст с y+88) */
  .strip__item{flex-direction:column;align-items:flex-start;height:126px;padding-right:0}
  .strip__item:nth-child(1){width:226px}.strip__item:nth-child(2){width:319px}.strip__item:nth-child(3){width:267px}
  .strip__text{flex:none;width:calc(100% - 10px)}
}
@media (min-width:1200px){
  .steps::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;background:#ccc;z-index:1}
  .intro__title{max-width:867px;margin-left:auto;margin-right:auto}
  .case__inner{padding-bottom:50px}
  .case__text{margin-left:20px}
}
/* 30 (эталон 1440): подзаголовок 467, список на 35 ниже (пункты 25, шаг 30), блок «Хотите так же?» на 35 ниже — Unbounded 18/23/500,
   кнопка на 25 ниже; скриншот 1145×603 рамка 4 белая r8 фон #ccc, подпись по центру видимой части 585 на 25 ниже; низ 100 */
.rnp{padding:0 0 100px;overflow-x:hidden}
.rnp__grid{display:grid;grid-template-columns:540px 1fr;gap:34px;align-items:start}
.rnp__title{font-size:32px;line-height:40px}
.rnp__sub{margin-top:14px;max-width:467px;font-size:17px;line-height:25px;color:var(--c-body)}
.rnp__list{margin-top:35px;display:grid;gap:5px}
.rnp__list li{position:relative;padding-left:20px;font-size:17px;line-height:25px;color:var(--c-body)}
.rnp__list li::before{content:"";position:absolute;left:0;top:9px;width:8px;height:8px;border-radius:2px;background:var(--c-accent)}
.rnp__cta{margin-top:35px}
.rnp__author{display:flex;align-items:center;gap:16px}
.rnp__author img{width:64px;height:64px;border-radius:12px;object-fit:cover;flex:none}
.rnp__author-title{font-family:var(--font-display);font-size:18px;line-height:23px;font-weight:500;max-width:305px;color:var(--c-ink)}
.btn--rnp{margin-top:25px;width:540px;min-height:88px;padding:16px 34px;font-size:13px;justify-content:flex-start;text-align:left}
.rnp__shot{margin:0;position:relative}
.rnp__shot img{width:1145px;max-width:none;border:4px solid #fff;border-radius:8px;background:#ccc}
.rnp__shot figcaption{width:585px;max-width:100%;margin-top:25px;text-align:center;font-size:17px;line-height:25px;color:var(--c-body)}
/* 31–32 (эталон 1440): заголовок с y 0, низ 50; скриншот 1715×938 на 50 % − 857 вплотную; три плашки #1f1f1f рамка 2 #2d2d2d r8,
   поля 20/12, иконка 14×24, заголовок Unbounded 18/23/500, текст Onest 17/25/300 #ccc на 4 ниже */
.crm-head{padding:0 0 50px}
.crm-head__title{max-width:934px;margin:0 auto;text-align:center;font-size:32px;line-height:1.25}
.crm-head__sub{margin-top:14px;text-align:center;font-size:20px;line-height:27px;color:var(--c-body-2)}
.crm-shot{position:relative;overflow:hidden;min-height:938px;margin-top:0}
.crm-shot__bg{position:absolute;top:0;left:50%;margin-left:-857px;width:1715px;max-width:none;height:938px;object-fit:cover}
.crm-shot__overlay{position:relative;z-index:2}
.crm-shot__item{position:absolute;display:flex;align-items:flex-start;gap:14px;width:370px;padding:20px 12px;background:#1f1f1f;border:2px solid #2d2d2d;border-radius:8px}
.crm-shot__item img{width:14px;height:24px;flex:none;margin-top:5px}
.crm-shot__item-title{max-width:284px;font-family:var(--font-display);font-size:18px;line-height:23px;font-weight:500;color:#f6f6f5}
.crm-shot__item p{margin-top:4px;font-size:17px;line-height:25px;font-weight:300;color:var(--c-num)}
.crm-shot__item--a{left:calc(50% + 110px);top:618px;width:470px}
.crm-shot__item--a .crm-shot__item-title{max-width:none}
.crm-shot__item--b{left:calc(50% + 210px);top:78px}
.crm-shot__item--c{left:calc(50% - 530px);top:461px}
/* 33–35 (эталон 1440): карточка 1160×190 #f6f6f5 рамка 3 белая r16 с y 0, поля 34; серая панель от окна (70, 90 %) с y 99, r30 сверху,
   продолжается под 34–36 без скругления; 34 — заголовок с y 0, низ 50; 35 — карточки 275×250 рамка 3 r14, подпись прижата к низу, низ 67 */
.cta-panel{position:relative;margin-top:0;padding:0 0 80px}
.cta-panel::before{content:"";position:absolute;top:99px;left:70px;width:90%;bottom:-1px;background:var(--c-panel);border-radius:30px 30px 0 0}
.cta-panel__box{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:190px;padding:0 34px;margin:0;background:var(--c-card);border:3px solid #fff;border-radius:16px}
.cta-panel__author{display:flex;align-items:flex-start;gap:16px}
.cta-panel__author img{width:64px;height:64px;border-radius:12px;object-fit:cover;flex:none}
.cta-panel__title{font-family:var(--font-display);font-size:22px;line-height:28px;font-weight:500;max-width:327px;color:var(--c-ink)}
.cta-panel__sub{margin-top:10px;font-size:17px;line-height:25px;max-width:480px;color:var(--c-body)}
.btn--cta-panel{width:460px;min-height:88px;padding:16px 34px;font-size:13px;justify-content:flex-start;text-align:left;flex:none}
.band{position:relative}
.band::before{content:"";position:absolute;top:0;left:70px;width:90%;bottom:0;background:var(--c-panel)}
.band>*{position:relative;z-index:1}
.stats-head{padding:0 0 50px}
.stats-head__title{text-align:center;font-size:32px;line-height:40px}
.stats{padding:0 0 67px}
.stats__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.stats__card{display:flex;flex-direction:column;min-height:250px;padding:24px;border:3px solid #fff;border-radius:14px;background:var(--c-card)}
.stats__value{font-family:var(--font-display);font-size:32px;line-height:40px;font-weight:500;color:var(--c-ink)}
.stats__label{margin-top:auto;max-width:214px;font-size:17px;line-height:25px;color:var(--c-body)}
/* 36 (эталон 1440): фото 617×758 с x 595 от верха секции; текст поверх с y 116 (заголовок 576, первый абзац 576 на 14 ниже,
   дальше 480 с шагом 35/22/22, строка 25); цифры 200×136 у правого края с y 75 шагом 10, поля 18/24, подпись на 4 ниже */
.about{padding:0}
.about__grid{position:relative;display:grid;grid-template-columns:455px 1fr;gap:0;align-items:start}
.about__text{position:relative;z-index:2;width:576px;padding-top:116px}
.about__title{font-size:32px;line-height:40px}
.about__text p{margin-top:22px;font-size:17px;line-height:25px;color:var(--c-body);max-width:480px}
.about__text h2+p{margin-top:14px;max-width:576px}
.about__text h2+p+p{margin-top:35px}
.about__media{position:relative;z-index:1;width:617px;max-width:none;margin-top:0}
.about__stats{position:absolute;z-index:2;right:20px;top:75px;width:200px;display:grid;gap:10px}
.about__stat{display:flex;flex-direction:column;min-height:136px;padding:18px 24px;border:3px solid #fff;border-radius:14px;background:var(--c-card)}
.about__stat-value{font-family:var(--font-display);font-size:32px;line-height:40px;font-weight:500;color:var(--c-ink)}
.about__stat-label{margin-top:4px;max-width:146px;font-size:17px;line-height:25px;color:var(--c-body)}
.space--120{height:120px}
.space--140{height:140px}
.diag{position:relative;overflow:hidden;min-height:990px}
.diag__bg{position:absolute;top:0;left:50%;margin-left:-1122px;width:1854px;max-width:none;height:990px;object-fit:cover}
/* Диагностика по боксам эталона (ref_boxes.py, 1440): текст — на плашке-группе (сетка+580, сверху 55, 600 px,
   отступы 35/35/55/35, фон #f6f6f5, рамка 3 px белая, радиус 16); «До/После/Итог» — сплошные плашки 260 px от сетки+20, сверху 393. */
.diag__content{position:absolute;z-index:2;top:55px;left:calc(50% - 600px + 580px);width:600px;padding:35px 35px 55px;background:var(--c-card);border:3px solid var(--c-white);border-radius:16px}
.diag__title{font-size:32px;line-height:1.25}
.diag__sub{margin-top:14px;font-size:17px;line-height:1.45;color:var(--c-body)}
.diag__label{margin-top:35px;font-family:var(--font-display);font-size:18px;line-height:1.25;font-weight:500;color:var(--c-ink)}
.diag__list{margin-top:16px;display:grid;grid-template-columns:repeat(3,155px);column-gap:8px;row-gap:2px}
.diag__list li{position:relative;min-height:26px;padding-left:20px;font-size:17px;line-height:1.45;color:var(--c-body)}
.diag__list li::before{content:"";position:absolute;left:0;top:9px;width:8px;height:8px;border-radius:2px;background:var(--c-accent)}
.diag__calc{display:block;position:absolute;left:calc(50% - 600px + 20px);top:393px;width:260px;z-index:1}
.diag__calc-card{padding:12px 20px;border-radius:8px;margin-top:14px}
.diag__calc-card:first-child{margin-top:0}
.diag__calc-card--before{background:#f5d3d2}
.diag__calc-card--after{background:#d3f5e0}
.diag__calc-card--total{background:#ddd0f4}
.diag__calc-label{font-family:var(--font-body);font-size:14px;line-height:1.35;font-weight:700}
.diag__calc-card--before .diag__calc-label{color:#ee4646}
.diag__calc-card--after .diag__calc-label{color:var(--c-green)}
.diag__calc-card--total .diag__calc-label{color:var(--c-accent)}
.diag__calc-row{margin-top:0;font-size:17px;line-height:1.45;color:var(--c-body)}
.diag__calc-label+.diag__calc-row{margin-top:4px}
.diag__calc-value{margin-top:0;font-family:var(--font-display);font-size:15px;line-height:1.25;font-weight:500;color:var(--c-ink)}
.btn--diag{margin-top:35px;width:100%;min-height:80px;padding:16px 24px;font-size:13px;justify-content:flex-start;text-align:left}
/* 39 (эталон 1440): белая панель 1280×831 r35 на 50 % − 630, y 73 (подложка-слой секции); телефон 556×904 на 50 % + 24 с y 0 —
   выступает над панелью; текст на сетке окна с y 142: заголовок 576, абзацы 576 на 14 ниже, подпись на 35, список на 16, шаг 4; секция 1004 */
.expertise{position:relative;box-sizing:border-box;min-height:1004px;padding:0;overflow-x:clip}
.expertise::before{content:"";position:absolute;top:73px;left:calc(50% - 630px);width:1280px;height:831px;background:#fff;border-radius:35px}
.expertise__panel{position:relative}
.expertise__grid{position:relative;display:block;padding-top:142px}
.expertise__text{position:relative;z-index:2;max-width:576px}
.expertise__title{font-size:32px;line-height:40px}
.expertise__text>p{margin-top:14px;font-size:17px;line-height:25px;color:var(--c-body);max-width:576px}
.expertise__label{margin-top:35px !important;font-family:var(--font-display);font-size:18px;line-height:23px;font-weight:500;color:var(--c-ink) !important}
.expertise__list{margin-top:16px;display:grid;gap:4px;max-width:460px}
.expertise__list li{position:relative;padding-left:20px;font-size:17px;line-height:25px;color:var(--c-body)}
.expertise__list li::before{content:"";position:absolute;left:0;top:9px;width:8px;height:8px;border-radius:2px;background:var(--c-accent)}
.expertise__media{position:absolute;z-index:1;top:0;left:calc(50% + 24px);width:556px;max-width:none;height:904px;object-fit:contain;object-position:top;margin:0}
/* 40–45 (эталон 1440): заголовки с y 0, строка 40, низ 50; видео — карточки 570×467/444 рамка 3 белая r16 #f6f6f5, превью 564×312 r12,
   заголовок с отступом 35 (Unbounded 18/23), «Смотреть» Unbounded 15/500 на 14 ниже, шаг 20, низ 30; соцсети — 373×60 #2d2d2d,
   Unbounded 18/500, иконки оригинала 24 с зазором 16, низ 120; финальная карточка — как в 33, низ 80 */
.social-head{padding:0 0 50px}
.social-head__title{font-size:32px;line-height:40px}
.social-head__sub{margin-top:14px;font-size:20px;line-height:27px;color:var(--c-body-2)}
.videos{padding:0 0 30px}
.videos__grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.videos__card{display:flex;flex-direction:column;align-items:flex-start;padding-bottom:35px;border:3px solid #fff;border-radius:16px;background:var(--c-card);overflow:hidden}
.videos__media{display:block;width:100%;border:0;padding:0;border-radius:12px;overflow:hidden;background:var(--c-accent);cursor:pointer}
.videos__media img{width:100%;height:312px;object-fit:cover;border-radius:12px}
.videos__title{margin:35px 35px 0;font-family:var(--font-display);font-size:18px;line-height:23px;font-weight:500;color:var(--c-ink);max-width:494px}
.videos__link{display:inline-flex;align-items:center;gap:8px;margin:14px 35px 0;border:0;padding:0;background:none;font:inherit;font-family:var(--font-display);font-size:15px;line-height:19px;font-weight:500;color:var(--c-accent);cursor:pointer}
.social-links{padding:0 0 120px}
.social-links__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.social-links__btn{display:flex;align-items:center;justify-content:center;gap:16px;height:60px;border-radius:12px;background:#2d2d2d;color:#fff;font-family:var(--font-display);font-size:18px;line-height:1.25;font-weight:500;transition:background-color .2s ease}
.social-links__btn img{width:24px;height:24px;flex:none}
.social-links__btn:hover{background:#1f1f1f}
.faq-head{padding:0 0 50px}
.faq-head__title{font-size:32px;line-height:40px}
/* 44 FAQ (эталон 1440, t668): плашки 1160×73 #f6f6f5 r16 шаг 83, вопрос Unbounded 18/22,5/500 #5b5b5b с отступом 30, кружок 40 справа (18) */
.faq{padding:0 0 86px}
.faq__item{background:var(--c-card);border-radius:16px;margin-bottom:10px;overflow:hidden}
.faq__q{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:73px;padding:16px 18px 16px 30px;font-family:var(--font-display);font-size:18px;line-height:22.5px;font-weight:500;color:var(--c-body);cursor:pointer;list-style:none}
.faq__q::-webkit-details-marker{display:none}
.faq__icon{position:relative;width:40px;height:40px;flex:none;border-radius:50%;background:var(--c-card)}  /* круг цвета карточки под «плюсом», как t668__circle оригинала: закрывает буквы длинного вопроса на телефоне */
.faq__icon::before,.faq__icon::after{content:"";position:absolute;top:50%;left:50%;background:#656565;transform:translate(-50%,-50%)}
.faq__icon::before{width:22px;height:2px}
.faq__icon::after{width:2px;height:22px;transition:opacity .2s ease}
.faq__item[open] .faq__icon::after{opacity:0}
.faq__a{padding:0 24px 20px;font-size:14px;line-height:1.55;color:var(--c-body)}
.final-cta{padding:0 0 80px}
.final-cta__box{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:190px;padding:0 34px;border:3px solid #fff;border-radius:16px;background:var(--c-card)}
.final-cta__text{display:flex;align-items:flex-start;gap:16px}
.final-cta__text img{width:64px;height:64px;border-radius:12px;object-fit:cover;flex:none}
.final-cta__title{font-family:var(--font-display);font-size:22px;line-height:28px;font-weight:500;max-width:327px;color:var(--c-ink)}
.final-cta__sub{margin-top:10px;font-size:17px;line-height:25px;max-width:480px;color:var(--c-body)}
.btn--final{width:460px;min-height:88px;padding:16px 34px;font-size:13px;justify-content:flex-start;text-align:left;flex:none}
@media (max-width:1199px){
  :root{--fs-h2:26px;--fs-lead:17px;--fs-body:15px}
  .fraud__title,.crm-head__title,.quality__title,.stats-head__title,.about__title,.diag__title,.expertise__title,.social-head__title,.faq-head__title,.rnp__title,.funnel-head__title{font-size:26px;line-height:1.25}
  .panel::before,.cta-panel::before,.band::before{left:21px;width:96%}
  .reality__grid{grid-template-columns:minmax(0,380px) minmax(0,1fr)}
  .reality__media img{width:100%;height:auto;aspect-ratio:660/667}
  .about__grid{grid-template-columns:minmax(0,320px) minmax(0,1fr)}
  .about__text{width:auto}
  .about__media{width:100%;max-width:100%;margin-top:0}
  .funnel-head__grid{grid-template-columns:minmax(0,560px) minmax(0,1fr)}
  .big-budget__grid{grid-template-columns:minmax(0,420px) minmax(0,1fr)}
  .hero__visual{left:auto;right:-60px}
  .no-promises__title{font-size:60px;line-height:1.25}
  .case__text{width:460px}
  .case__panel{left:21px;width:96%}
  .case__media{left:460px;width:760px}
  .crm-shot__item--a{left:calc(50% + 20px)}
  .crm-shot__item--b{left:calc(50% + 120px)}
  .crm-shot__item--c{left:calc(50% - 600px)}
  .diag__content{top:30px;left:calc(50% - 480px + 490px);width:460px}
  .diag__calc{top:366px;left:calc(50% - 480px + 10px)}
  .diag__list{grid-template-columns:repeat(3,minmax(0,1fr))}
  /* 960–1199 (эталон 1100): панель 1022×785 на 50 % − 510, телефон 528×858 на 50 % + 22 */
  .expertise{min-height:938px}
  .expertise::before{left:calc(50% - 510px);width:1022px;height:785px}
  .expertise__media{left:calc(50% + 22px);width:528px;height:858px}
  .btn--quality,.btn--rnp,.btn--cta-panel,.btn--diag,.btn--final{width:100%;max-width:460px}
}
@media (max-width:959px){
  :root{--fs-h2:24px;--fs-lead:16px;--fs-body:14px}
  .fraud__title,.crm-head__title,.quality__title,.stats-head__title,.about__title,.diag__title,.expertise__title,.social-head__title,.faq-head__title,.rnp__title,.funnel-head__title{font-size:24px;line-height:1.25}
  .panel::before,.cta-panel::before,.band::before{left:0;width:100%}
  .hero{min-height:0;padding-bottom:40px}
  .hero__inner{min-height:0}
  .hero__body{max-width:620px;margin-top:70px}
  .hero__title{font-size:30px}
  .hero__lead{max-width:560px;font-size:17px}
  .hero__visual{position:relative;left:auto;right:auto;width:100%;height:auto;margin-top:40px}
  .hero__img{width:100%;height:auto}
  .hero__badge{top:20px;left:20px}
  .topbar__contacts{display:none}
  .topbar__burger{margin-left:auto}
  /* полоса 640–959: плашки во всю ширину артборда 620, 76 высотой, шаг 91 (эталон 768: x 74, текст x+88 шириной 522) */
  .strip__list{flex-direction:column;gap:15px;margin-top:0}
  .strip__item:nth-child(n){width:auto;height:76px}
  .funnel-head__grid{display:block;padding-top:40px;padding-bottom:24px}
  .funnel-head__sub{margin-top:16px;max-width:none}
  .funnel__grid{grid-template-columns:1fr 1fr;gap:20px 16px}
  .quality__grid{display:block}
  .quality__tiles{margin-top:32px}
  .case__inner{min-height:0;padding:40px 0 40px}
  .case__panel{left:0;right:0;width:auto;top:0;bottom:0;border-radius:24px}
  .case__text{width:auto;padding:0 24px}
  .case__media{position:static;width:100%;margin-top:24px}
  .rnp__grid{display:block}
  .rnp__shot{margin-top:30px}
  .rnp__shot img{width:100%;max-width:100%;border-radius:12px}
  .crm-shot{min-height:0;padding:0;overflow:visible}
  .crm-shot__bg{position:static;width:100%;height:auto;margin:0;object-position:top;border-radius:var(--r-sm)}
  .crm-shot__overlay{position:static;padding:20px 15px 0}
  .crm-shot__item{position:static;width:auto;margin:0;padding:16px 18px;background:var(--c-dark);border-radius:var(--r-md)}
  .crm-shot__item+.crm-shot__item{margin-top:16px}
  .crm-shot__item-title{font-size:15px;line-height:1.3;max-width:none}
  .crm-shot__item p{font-size:13px;line-height:1.4}
  .cta-panel{margin-top:40px;padding:0}
  .cta-panel::before{top:0;left:0;right:0;border-radius:20px 20px 0 0}
  .cta-panel__box{display:block;min-height:0;padding:24px 16px 28px;margin:16px;border-radius:var(--r-xl)}
  .btn--cta-panel{margin-top:20px}
  .band::before{left:0;right:0;border-radius:0 0 20px 20px}
  .stats__grid{grid-template-columns:1fr;gap:12px}
  .about__grid{display:block}
  .about__text{padding-top:0}
  .about__media{width:100%;margin-top:24px}
  .about__stats{position:static;width:auto;margin-top:24px;grid-template-columns:1fr 1fr;display:grid}
  .diag{min-height:0}
  .diag__bg{position:static;width:100%;height:220px;margin:0;max-width:100%;object-position:25% 35%}
  .diag__content{position:relative;top:auto;left:auto;width:auto;margin:24px 0 40px;padding:25px 25px 35px}
  .diag__list{grid-template-columns:1fr 1fr}
  .diag__calc{top:auto;left:60px;bottom:70px;width:300px}
  .expertise{min-height:0}
  .expertise::before{display:none}
  .expertise__panel{width:100%;border-radius:24px;min-height:0;background:#fff;overflow:hidden}
  .expertise__grid{display:block;padding:32px 20px 0}
  .expertise__text{max-width:none}
  .expertise__list{max-width:none}
  .expertise__media{position:static;width:100%;height:auto;margin-top:24px}
  .videos__grid{grid-template-columns:1fr;gap:24px}
  .videos__media img{height:auto;aspect-ratio:564/312}
  .videos__title{margin-top:16px}
  .social-links__grid{grid-template-columns:1fr;gap:10px}
  .final-cta__box{display:block;min-height:0;padding:24px 16px}
  .btn--final{margin-top:20px}
}
@media (max-width:639px){
  :root{
    --pad:15px;
    --fs-h2:22px;
    --fs-h3:14px;
    --fs-lead:15px;
    --fs-body:14px;
    --fs-sm:14px;
    --fs-xs:13px;
    --fs-btn:10px;
    --lh-body:1.5;
    --r-lg:11px;
    --r-md:14px;
  }
  .hero{padding-top:18px;padding-bottom:0}
  .topbar{min-height:34px}
  .topbar__logo img{width:90px;height:31px}
  .topbar__contacts{display:none}
  .topbar__burger{display:block;margin-left:auto}
  .hero__body{margin-top:30px;max-width:none}
  .hero__kicker{display:none}
  .hero__title{font-size:22px;line-height:1.3;letter-spacing:-0.33px}
  .hero__lead{margin-top:18px;font-size:14px;line-height:1.5;max-width:none}
  .hero__cta{display:block;margin-top:24px}
  .btn--hero{width:100%;min-height:56px;padding:9px 14px;gap:10px}
  .btn--hero .btn__icon{width:26px;height:26px}
  .btn--hero .btn__text{max-width:none}
  .hero__cta-note{padding-top:16px;max-width:280px;margin:0 auto;text-align:center;font-size:13px;line-height:1.45}
  .hero__visual{margin-top:36px}
  .hero__badge{top:8px;left:10px;gap:10px;padding:3px 10px 3px 3px;border-width:1px}
  .hero__badge-avatar{width:34px;height:34px;border-radius:6px}
  .hero__badge-text{max-width:200px;font-size:11px;line-height:1.45}
  .strip__list{flex-direction:column;gap:14px;margin-top:0}
  .strip__item,.strip__item:nth-child(n){flex-direction:row;align-items:center;gap:12px;height:auto}
  .strip__img{width:64px;height:64px}
  .strip__text{max-width:none;font-size:14px;line-height:1.3;padding-top:0}
  .space--80{height:61px}
  .section-head{padding:30px 0 70px}
  .problems{padding:0 0 40px}
  .problems__grid{grid-template-columns:1fr;gap:18px}
  .card{padding:20px;border-width:3px}
  .card--problem{display:flex;flex-direction:column;min-height:0;height:auto}
  .card__img{width:90px;height:90px;margin:0 0 16px;border-radius:18px}
  .card__num{font-size:14px;line-height:1.35}
  .card__title{margin-top:8px;max-width:none;font-size:16px;line-height:1.3}
  .reality{padding:0 0 44px}
  .reality__grid{display:flex;flex-direction:column;gap:0}
  .reality__head{order:1;min-width:0}
  .reality__head .h2{max-width:none}
  .reality__quote{margin-top:24px;width:100%;padding:8px 14px 8px 8px}
  .reality__quote-avatar{width:36px;height:40px}
  .reality__quote-text{font-size:13px;line-height:1.4}
  .reality__media{order:2;position:relative;margin:30px 0 0;overflow:hidden;border-radius:var(--r-sm)}
  .reality__media img{width:100%;height:auto;border-radius:0}
  .reality__list{order:3;margin-top:28px;gap:12px}
  .reality__item{min-height:0;gap:16px;padding:18px 18px}
  .reality__item img{width:36px;height:36px;padding:8px}
  .reality__item p{font-size:14px;line-height:1.4}
  .quiz-intro{padding:35px 0 75px}
  .quiz{padding:0 0 55px}
  .quiz__card{display:block;width:auto;min-height:0;padding:26px;border-radius:20px;background:#fff}
  .quiz__aside{padding:0}
  .quiz__author{display:flex;align-items:center;gap:14px}
  .quiz__author>div{margin:0;width:auto}
  .quiz__main{position:static;min-height:0;margin:0;padding:0;overflow:visible;border-radius:0}
  .quiz__progress{position:relative;margin:24px 0 0}
  .quiz__author img{width:48px;height:48px}
  .quiz__name{font-size:15px;line-height:1.3}
  .quiz__role{font-size:12px}
  .quiz__aside-title{margin:22px 0 0;width:auto;font-size:13px;line-height:1.4}
  .quiz__list{margin:8px 0 0;width:auto;font-size:12px;line-height:1.35;gap:8px}
  .quiz__question{margin-top:32px;font-size:16px;line-height:1.25}
  .quiz__options{margin-top:26px;gap:14px}
  .quiz__option{padding:18px 18px;font-size:13px;line-height:1.35;gap:10px}
  .quiz__radio{width:16px;height:16px}
  .quiz__footer{margin-top:32px}
  .quiz__step{font-size:12px}
  .btn--quiz{min-width:0;height:40px;padding:0 22px;font-size:13px;border-radius:11px}
  .panel::before{left:0;width:100%;border-radius:20px 20px 0 0}
  .intro{padding:70px 0 90px}
  .intro__sub{margin-top:14px;font-size:14px;line-height:1.4}
  .steps{padding:0 0 30px}
  .steps__grid{display:block}
  .steps__aside{padding-top:24px}
  .steps__sticky{position:static;flex-direction:column;align-items:flex-start;gap:0}
  .steps__avatar{width:64px;height:96px}
  .steps__title{margin-top:18px;font-size:20px;line-height:1.25}
  .steps__note{margin-top:8px;font-size:14px}
  .steps__list{padding-top:24px;gap:24px}
  .steps__img{width:90px;height:62px;border-radius:14px}
  .steps__heading{margin-top:14px;font-size:16px;line-height:1.25}
  .steps__text{margin-top:8px;font-size:13px;line-height:1.4}
  .tech-head{padding:25px 0 55px}
  .tech{padding:0 0 40px}
  .tech__grid{grid-template-columns:1fr;gap:12px}
  .tech__card img{height:auto;aspect-ratio:359/200}
  .tech__card p{padding:18px 18px 22px;font-size:13px;line-height:1.45}
  .session{padding:32px 0 66px;min-height:0}
  .session::before{left:0;width:100%;height:76%}
  .tech__card{height:auto}
  .session__grid{display:block;min-height:0}
  .session__sub{margin-top:14px;font-size:14px;line-height:1.45}
  .session__label{margin-top:34px;font-size:15px}
  .session__list{margin-top:22px;gap:16px}
  .session__list li{font-size:14px;line-height:1.45;padding-left:16px;max-width:none}
  .session__list li::before{top:7px;width:6px;height:6px}
  .session__plan{margin-top:32px;padding:14px 18px 14px 14px;gap:14px;max-width:none}
  .session__plan img{width:82px;height:130px}
  .session__plan-body p{font-size:13px;line-height:1.4}
  .session__plan-link{font-size:13px;margin-top:8px}
  .session__plan-link img{width:18px;height:18px}
  .btn--session{margin-top:28px;width:100%;min-height:72px;font-size:10px;padding:12px 16px}
  .session__visual{position:relative;right:auto;left:auto;top:auto;width:100%;margin-top:32px}
  .session__visual img{width:100%;height:auto;max-width:100%}
  .big-budget{padding:15px 0 35px}
  .big-budget__grid{display:block}
  .big-budget__sub{max-width:none;margin-top:12px;font-size:14px;line-height:1.4}
  .budgets{padding:0 0 50px}
  .budgets__grid{display:block}
  .budgets__title{max-width:none;font-size:16px;line-height:1.25}
  .budgets__list{margin-top:20px;gap:14px}
  .budgets__list li{font-size:13px;line-height:1.4;max-width:none;padding-left:16px}
  .budgets__list li::before{top:7px;width:6px;height:6px}
  .budgets__gallery{margin-top:20px}
  .budgets__track img{height:202px;border-radius:12px}
  .budgets__arrow{top:50%;width:36px;height:36px;margin-top:-18px;font-size:20px}
  .fraud{padding:30px 0 50px}
  .fraud__row{gap:10px}
  .fraud__icon{width:26px;height:26px;margin-top:2px}
  .fraud__title{font-size:22px;line-height:1.25}
  .filters{padding:20px 0 36px}
  .filters__grid{grid-template-columns:1fr;gap:16px}
  .filters__card{min-height:150px;padding:22px 22px 26px;border-radius:14px}
  .filters__num{font-size:22px}
  .filters__dot{margin-top:10px}
  .filters__text{margin-top:16px;font-size:14px;line-height:1.4}
  .funnel-head{padding:0}
  .funnel-head__grid{padding-top:45px;padding-bottom:45px}
  .funnel-head__title{font-size:22px}
  .funnel-head__sub{margin-top:12px;font-size:14px}
  .funnel{padding:0 0 30px}
  .funnel__grid{grid-template-columns:1fr;gap:20px}
  .funnel__card{min-height:195px;padding:0 22px 32px}
  .funnel__card>img:first-child{width:90px;height:90px;border-radius:18px;margin-top:-18px}
  .funnel__num{margin-top:16px;font-size:14px}
  .funnel__title{margin-top:6px;font-size:20px}
  .funnel__arrow{top:42px;right:18px}
  .verdict{padding:20px 0 70px}
  .verdict__box{width:auto;max-width:none;padding:12px 16px}
  .verdict__box img{width:26px;height:26px}
  .verdict__box p{font-size:13px;line-height:1.3}
  .quality{padding:0 0 40px}
  .quality__title{font-size:22px;line-height:1.25}
  .quality__cta{margin-top:24px}
  .quality__cta-text{margin-top:16px;font-size:14px;line-height:1.45}
  .quality__author img{width:56px;height:56px}
  .quality__author-title{font-size:15px;line-height:1.25;max-width:none}
  .btn--quality{margin-top:18px;min-height:72px;font-size:11px}
  .quality__tiles{margin-top:24px;grid-template-columns:1fr;gap:12px}
  .quality__tile{min-height:0;padding:18px 18px 0}
  .quality__tile div:where([data-h="3"]),.quality__tile p{font-size:14px;line-height:1.4}
  .quality__tile img{width:calc(100% + 36px);margin:16px -18px 0;height:170px}
  .no-promises{padding:32px 0 0}
  .no-promises__title{font-size:23px;line-height:1.25;letter-spacing:-.5px;max-width:none}
  .no-promises__sub{margin-top:12px;font-size:14px;line-height:1.35}
  .no-promises__quote{display:none}
  .case__inner{padding:36px 0 36px}
  .case__list{gap:8px}
  .case__panel{border-radius:20px}
  .case__text{padding:0 16px}
  .case__title{font-size:22px}
  .case__label{margin-top:20px;font-size:15px}
  .case__list li{font-size:14px}
  .case__label--res{margin-top:20px}
  .case__metrics{grid-template-columns:1fr 1fr;gap:14px 12px;margin:16px 0 0}
  .case__metric{padding:16px;background:var(--c-white);border:1px solid var(--c-line);border-radius:14px}
  .case__metric dt{font-size:13px}
  .case__metric dd{font-size:22px}
  .case__media{margin-top:16px;width:100%}
  .rnp{padding:0 0 75px}
  .rnp__title{font-size:25px;line-height:1.25}
  .rnp__sub{margin-top:16px;max-width:none;font-size:14px;line-height:1.45}
  .rnp__list{gap:10px}
  .rnp__list li{font-size:14px;line-height:1.45}
  .rnp__author img{width:56px;height:56px}
  .rnp__author-title{font-size:15px;line-height:1.3}
  .rnp__cta{margin-top:32px}
  .btn--rnp{margin-top:20px;min-height:72px;font-size:11px}
  .rnp__shot img{border-radius:10px}
  .rnp__shot figcaption{margin-top:12px;font-size:13px;line-height:1.45}
  .crm-head{padding:30px 0 50px}
  .crm-head__title{font-size:22px}
  .crm-head__sub{margin-top:12px;font-size:14px;line-height:1.35}
  .crm-shot{margin-top:20px}
  .cta-panel{margin-top:28px}
  .cta-panel__box{padding:40px 22px 48px;margin:22px}
  .cta-panel__author img{width:56px;height:56px}
  .cta-panel__title{font-size:18px;line-height:1.25;max-width:none}
  .cta-panel__sub{font-size:13px;line-height:1.45}
  .btn--cta-panel{min-height:72px;font-size:10px}
  .stats-head{padding:36px 0 10px}
  .stats-head__title{font-size:22px;line-height:1.25}
  .stats{padding:16px 0 0}
  .stats__card{min-height:165px;padding:22px;border-radius:14px}
  .stats__value{font-size:26px;line-height:1.25}
  .stats__label{margin-top:14px;max-width:none;font-size:14px;line-height:1.4}
  .about{padding:30px 0 44px}
  .about__title{font-size:22px;line-height:1.25}
  .about__text p,.about__text h2+p,.about__text h2+p+p{margin-top:18px;font-size:14px;line-height:1.5}
  .about__media{margin-top:30px}
  .about__stats{margin-top:30px;gap:14px}
  .about__stat{min-height:110px;padding:18px}
  .about__stat-value{font-size:22px;line-height:1.25}
  .about__stat-label{margin-top:auto;font-size:12px;line-height:1.3}
  /* телефон: сначала плашка с текстом и кнопкой, потом ноутбук, «До/После/Итог» заходят на его низ — как на эталоне */
  .diag{display:flex;flex-direction:column}
  .diag>.container{order:1}
  .diag__visual{order:2;position:relative}
  .diag__title{font-size:22px}
  .diag__sub{font-size:14px}
  .diag__label{font-size:14px}
  .diag__list{grid-template-columns:repeat(3,1fr);gap:4px 0}
  .diag__list li{font-size:14px}
  .diag__bg{position:relative;height:auto}
  .diag__calc{position:relative;top:auto;left:auto;bottom:auto;width:auto;margin:-110px 10px 0}
  .diag__calc-card{padding:8px 15px;margin-top:10px}
  .diag__calc-row,.diag__calc-value{font-size:14px}
  .btn--diag{margin-top:20px;min-height:66px;font-size:10px}
  .expertise__panel{border-radius:20px}
  .expertise__grid{padding:44px 18px 0}
  .expertise__title{font-size:22px;line-height:1.25}
  .expertise__text>p{font-size:14px;line-height:1.5;margin-top:18px}
  .expertise__label{margin-top:26px !important;font-size:15px;line-height:1.25}
  .expertise__list{gap:8px}
  .expertise__list li{font-size:13px;line-height:1.5}
  .expertise__media{margin-top:32px;margin-bottom:32px}
  .social-head{padding:32px 0 20px}
  .social-head__title{font-size:22px;line-height:1.25}
  .social-head__sub{font-size:14px;line-height:1.4;margin-top:10px}
  .videos{padding:0 0 24px}
  .videos__card{padding-bottom:20px}
  .videos__title{font-size:15px;line-height:1.3;margin-left:18px;margin-right:18px}
  .videos__link{font-size:13px;line-height:1.3;margin-left:18px;margin-right:18px}
  .social-links{padding:30px 0 100px}
  .social-links__btn{height:52px;font-size:16px}
  .faq-head{padding:15px 0 35px}
  .faq-head__title{font-size:22px;line-height:1.25}
  .faq{padding:0 0 55px}
  .faq__q{min-height:0;padding:26px 22px;font-size:16px;line-height:1.3}
  .faq__item{margin-bottom:12px}
  .faq__a{padding:0 16px 16px;font-size:13px}
  .faq__icon{width:20px;height:20px}
  .faq__icon::before{width:18px}
  .faq__icon::after{height:18px}
  .final-cta{padding:25px 0 60px}
  .final-cta__box{padding:32px 20px;border-radius:18px}
  .final-cta__text img{width:56px;height:56px}
  .final-cta__title{font-size:18px;line-height:1.25;max-width:none}
  .final-cta__sub{font-size:13px;line-height:1.45}
  .btn--final{min-height:72px;font-size:10px;width:100%}
  .space--120{height:60px}
  .space--140{height:60px}
  .rv{padding:40px 15px 44px !important}
  .rv__title{font-size:26px !important}
  .rv__sub{font-size:14px !important}
}
@media (max-width:479px){
  /* CRM < 480 (эталон 360): картинка 469 со сдвигом −49, плашки 300 по центру в порядке c→b→a, первая наезжает на картинку на 72,
     рамка 2, поля 11/8, иконка 14×24, заголовок Unbounded 14/18, текст 14/20/300 — в vw */
  .crm-shot{margin-top:0;overflow:hidden}
  .crm-shot__bg{width:130.28vw;max-width:none;margin-left:-13.61vw;border-radius:0}
  .crm-shot__overlay{display:flex;flex-direction:column;gap:2.78vw;margin-top:-20vw;padding:0;position:relative;z-index:2}
  .crm-shot__item,.crm-shot__item+.crm-shot__item{width:83.33vw;margin:0 auto;padding:3.06vw 2.22vw;gap:2.22vw;border-width:2px;border-radius:8px}
  .crm-shot__item--c{order:1}.crm-shot__item--b{order:2}.crm-shot__item--a{order:3}
  .crm-shot__item img{width:3.89vw;height:6.67vw;margin-top:1.39vw}
  .crm-shot__item-title{font-size:3.89vw;line-height:5vw}
  .crm-shot__item p{margin-top:1.11vw;font-size:3.89vw;line-height:5.56vw}
  /* красная плашка < 480 (эталон 360: 300×136 по центру, иконка 32 сверху, текст 13/16 Unbounded по центру, низ 35) — в vw */
  .verdict{padding:0 0 9.72vw}
  .verdict__box{flex-direction:column;align-items:center;gap:2.78vw;width:83.33vw;margin:0 auto;padding:3.33vw 2.78vw;text-align:center}
  .verdict__box img{width:8.89vw;height:8.89vw}
  .verdict__box p{font-size:3.61vw;line-height:4.44vw}
  .topbar__tagline{display:none}
  .funnel-head__title--desktop{display:none}
  .funnel-head__title--mobile{display:block}
  /* Диагностика < 480: Тильда масштабирует артборд 320 под окно (×W/320), поэтому размеры в vw = px@320 × 0,3125
     (боксы эталона на 360 — ref_boxes.json: плашка 0..360 × 619, ноутбук x −182 y 645 806×430, «До» с y 964) */
  /* воронка < 480: за край карточки выходит только первая картинка (−14 px), остальные внутри (+4 px) — боксы эталона 360 */
  .funnel__card>img:first-child{margin-top:-14px}
  .funnel__card:not(:first-child)>img:first-child{margin-top:4px}
  .diag{padding-bottom:11.1vw}
  .diag>.container{padding:0}
  .diag__content{margin:0;padding:3.05vw 1.4vw 8.05vw 3.05vw;border-radius:5vw}
  .diag__title{font-size:6.875vw}
  .diag__sub{margin-top:4.44vw;font-size:4.375vw}
  .diag__label{margin-top:6.1vw;font-size:4.375vw}
  .diag__list{margin-top:5vw;grid-template-columns:repeat(3,30.3vw);gap:0}
  .diag__list li{min-height:8.75vw;padding:.83vw 0 0 4.44vw;font-size:4.375vw}
  .diag__list li::before{top:2.78vw;width:2.5vw;height:2.5vw}
  .btn--diag{margin-top:5.4vw;min-height:20.55vw;font-size:3.125vw;border-radius:3.44vw}
  .diag__bg{width:223.9vw;max-width:none;margin:7.2vw 0 0 -50.55vw}
  .diag__calc{margin:-30.8vw 3.05vw 0}
  .diag__calc-card{padding:2.5vw 4.69vw;margin-top:3.125vw;border-radius:2.5vw}
  .diag__calc-label{font-size:4.375vw}
  .diag__calc-label+.diag__calc-row{margin-top:1.25vw}
  .diag__calc-row,.diag__calc-value{font-size:4.375vw}
}



/* ===== footer ===== */
/* Подвал по эталону посадочных. Сброс стилей темы Reboot на .site-footer: размер шрифта .9em */
.site-footer{ font-size:16px; line-height:1.5; font-family:Onest,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; color:#fff; --footer-bg:#10091f; --footer-bg-2:#1b0f31; --footer-ink:#ffffff; --footer-muted:#b7abd4; --footer-purple:#8a4cff; --footer-purple-2:#6d32f0; --footer-line:rgba(255,255,255,.10); --footer-glass:rgba(255,255,255,.05); --footer-glass-2:rgba(255,255,255,.08); --footer-shadow:0 28px 80px rgba(68,34,126,.22); --container:1480px; padding:56px 24px 34px; background: radial-gradient(circle at 88% 2%,rgba(122,69,238,.16),transparent 26%), radial-gradient(circle at 8% 90%,rgba(93,50,203,.10),transparent 24%), linear-gradient(180deg,#faf8ff 0%,#f3effa 100%); } .site-footer__shell{ width:min(var(--container),100%); margin:0 auto; overflow:hidden; border-radius:36px; position:relative; background: radial-gradient(circle at 94% 4%,rgba(127,69,240,.14),transparent 28%), linear-gradient(145deg,rgba(23,13,43,.98),rgba(13,7,28,.99)); border:1px solid rgba(167,120,255,.18); box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 34px 90px rgba(63,30,117,.18), 0 0 0 1px rgba(255,255,255,.025); } .site-footer__shell::before{ content:""; position:absolute; inset:0; pointer-events:none; background: linear-gradient(120deg,rgba(255,255,255,.025),transparent 28%,transparent 72%,rgba(139,76,255,.035)); } .site-footer__main{ position:relative; z-index:2; padding:58px 58px 34px; display:grid; grid-template-columns:1.18fr .9fr 1fr 1fr; gap:46px; } .footer-brand__title{ margin:0 0 16px; color:#fff; font-size:27px; line-height:1; letter-spacing:.01em; font-weight:950; } .footer-brand__title span{ color:var(--footer-purple); } .footer-brand__line{ width:56px; height:3px; margin-bottom:18px; border-radius:999px; background:linear-gradient(90deg,var(--footer-purple),transparent); box-shadow:0 0 18px rgba(138,76,255,.48); } .footer-brand__text{ margin:0; max-width:350px; color:#c2b8da; font-size:15px; line-height:1.65; } .footer-stats{ display:flex; flex-wrap:wrap; gap:10px; margin-top:28px; } .footer-stat{ display:inline-flex; align-items:center; gap:8px; padding:10px 13px; border-radius:13px; color:#efe9ff; font-size:12px; line-height:1; border:1px solid rgba(154,101,255,.22); background:rgba(255,255,255,.045); box-shadow:inset 0 1px 0 rgba(255,255,255,.04); } .footer-stat svg{ width:16px; height:16px; fill:none; stroke:#a67cff; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; } .footer-stat strong{ color:#fff; font-weight:900; } .footer-socials{ display:flex; gap:10px; margin-top:28px; } .footer-social{ width:48px; height:48px; display:grid; place-items:center; border-radius:50%; color:#efe8ff; text-decoration:none; border:1px solid rgba(255,255,255,.10); background:rgba(255,255,255,.055); box-shadow:inset 0 1px 0 rgba(255,255,255,.05); transition:.2s ease; } .footer-social:hover{ transform:translateY(-2px); color:#fff; background:rgba(126,69,239,.18); border-color:rgba(150,101,255,.34); } .footer-social svg{ width:21px; height:21px; fill:currentColor; } .footer-col__title{ margin:0 0 18px; color:#fff; font-size:15px; line-height:1.2; font-weight:950; text-transform:uppercase; letter-spacing:.02em; } .footer-links{ display:grid; gap:14px; } .footer-link{ display:flex; align-items:flex-start; gap:10px; color:#bbaed6; text-decoration:none; font-size:14px; line-height:1.4; transition:.2s ease; } .footer-link:hover{ color:#fff; transform:translateX(2px); } .footer-link__arrow{ margin-left:auto; color:#a56fff; font-size:20px; line-height:1; opacity:.9; } .footer-link--case{ align-items:center; } .footer-link__icon{ width:34px; height:34px; flex:0 0 34px; display:grid; place-items:center; border-radius:10px; color:#a874ff; background:rgba(139,76,255,.10); border:1px solid rgba(153,103,255,.12); } .footer-link__icon svg{ width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; } .footer-contact__phone{ display:block; margin-bottom:16px; color:#fff; text-decoration:none; font-size:27px; line-height:1; font-weight:950; letter-spacing:-.035em; } .footer-contact__row{ display:flex; align-items:center; gap:10px; margin-bottom:13px; color:#b9acd5; font-size:14px; line-height:1.4; } .footer-contact__row svg{ width:20px; height:20px; flex:0 0 20px; fill:none; stroke:#a874ff; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; } .footer-contact__row a{ color:#fff; font-weight:800; text-decoration:none; } .footer-cta{ margin-top:22px; min-height:64px; padding:0 16px 0 20px; display:flex; align-items:center; justify-content:space-between; gap:14px; color:#fff; text-decoration:none; border-radius:18px; border:1px solid rgba(255,255,255,.15); background:linear-gradient(100deg,#5c21e5,#843cff); box-shadow: inset 0 1px 0 rgba(255,255,255,.22), 0 14px 30px rgba(103,46,230,.24), 0 0 0 5px rgba(135,78,255,.06); font-size:16px; font-weight:900; transition:.2s ease; } .footer-cta:hover{ transform:translateY(-2px); box-shadow: inset 0 1px 0 rgba(255,255,255,.28), 0 19px 40px rgba(103,46,230,.30), 0 0 0 6px rgba(135,78,255,.08); } .footer-cta__icon{ width:38px; height:38px; flex:0 0 38px; display:grid; place-items:center; border-radius:12px; background:rgba(255,255,255,.16); } .footer-cta__icon svg{ width:19px; height:19px; fill:none; stroke:#fff; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; } .footer-geo{ position:relative; z-index:2; margin:0 58px; padding:26px 0; display:grid; grid-template-columns:48px 1fr; gap:16px; border-top:1px solid var(--footer-line); border-bottom:1px solid var(--footer-line); } .footer-geo__icon{ width:48px; height:48px; display:grid; place-items:center; border-radius:14px; color:#b98cff; background:rgba(140,76,255,.10); border:1px solid rgba(153,105,255,.12); } .footer-geo__icon svg{ width:22px; height:22px; fill:currentColor; } .footer-geo p{ margin:0; color:#a99dc3; font-size:13px; line-height:1.6; } .footer-geo strong{ color:#f2ecff; font-weight:900; } .footer-geo .accent{ color:#bd8eff; font-weight:800; } .footer-bottom{ position:relative; z-index:2; padding:22px 58px 28px; display:grid; grid-template-columns:auto 1fr auto; gap:24px; align-items:start; color:#887da4; font-size:12px; line-height:1.55; } .footer-bottom__left{ white-space:nowrap; } .footer-bottom__center{ display:flex; flex-wrap:wrap; gap:14px 18px; } .footer-bottom a{ color:#ab7df9; text-decoration:underline; text-underline-offset:3px; } .footer-bottom__right{ max-width:360px; text-align:left; } @media(max-width:1180px){.site-footer__main{ grid-template-columns:1fr 1fr; }.footer-bottom{ grid-template-columns:1fr; }.footer-bottom__left{ white-space:normal; }} @media(max-width:720px){.site-footer{ padding:34px 14px 20px; }.site-footer__shell{ border-radius:26px; }.site-footer__main{ padding:34px 22px 24px; grid-template-columns:1fr; gap:34px; }.footer-brand__title{ font-size:24px; }.footer-contact__phone{ font-size:24px; }.footer-geo{ margin:0 22px; grid-template-columns:1fr; }.footer-bottom{ padding:20px 22px 24px; }.footer-cta{ width:100%; }} /* Заголовки — Unbounded (как на главной). Шрифт шире Inter: трекинг мягче, первый экран чуть меньше, иначе 6 строк оффера не влезают. */ h1,h2,h3,div:where([data-h]){font-family:Unbounded,"Segoe UI",Arial,sans-serif;overflow-wrap:break-word} /* сжатие -.015em — только заголовкам, которые в оригинале были h-тегами (класс oh); у div-текстов оригинала его нет */ .oh,.hero__title,.hero__eyebrow,.leads-system__title,.lead-card__title,.quiz-head h2,.qz-q,.gift h3,.results__title,.cta-leads__title,.rv__title,.bath-price__title,.bath-price__price strong,.bath-calc__title,.bath-calc__amount,.glass-cases__title,.glass-case__metric,.about2__heading,.about-row__title,.sb-title,.sb-card h3,.faq-baths__title,.footer-col__title,.hero__forecast-value,.payment__amount{font-family:Unbounded,"Segoe UI",Arial,sans-serif;letter-spacing:-.015em;overflow-wrap:break-word}.site-footer *{box-sizing:border-box}
.site-footer a{text-decoration:none}
.site-footer .footer-link{color:#bbaed6!important}
.site-footer .footer-link:hover{color:#fff!important}
.site-footer .footer-social{color:#efe8ff!important}
.site-footer .footer-contact__phone,.site-footer .footer-contact__row a,.site-footer .footer-cta{color:#fff!important}
.site-footer .footer-bottom a{color:#ab7df9!important}
.site-footer .footer-cta{max-width:100%}

/* ===== Круг 3: механики (видео-окно, форма, бургер+меню, калькулятор плана, квиз при уходе) ===== */
.video-modal{position:fixed;inset:0;z-index:9000;display:none;align-items:center;justify-content:center;padding:20px}
.video-modal.is-open{display:flex}
.video-modal__backdrop{position:absolute;inset:0;background:rgba(10,10,12,.86)}
.video-modal__dialog{position:relative;z-index:1;width:960px;max-width:100%;aspect-ratio:16/9;background:#000;border-radius:12px;overflow:hidden}
.video-modal__frame{width:100%;height:100%}
.video-modal__frame iframe{display:block;width:100%;height:100%;border:0}
.video-modal__close,.plan-modal__close{position:absolute;top:12px;right:12px;z-index:2;width:40px;height:40px;border:0;border-radius:50%;background:rgba(20,20,20,.55);color:#fff;font-size:26px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}

.burger{position:fixed;top:20px;right:20px;z-index:8000;width:52px;height:52px;border:0;border-radius:50%;background:#2d2d2d;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .25s ease}
.burger.is-visible{opacity:1;pointer-events:auto}
.burger.is-hidden{display:none}
.burger span{display:block;width:22px;height:2px;background:#f6f6f5;border-radius:2px}
.site-menu{position:fixed;inset:0;z-index:8500;display:none}
.site-menu.is-open{display:block}
.site-menu__backdrop{position:absolute;inset:0;background:rgba(10,10,12,.6)}
.site-menu__panel{position:absolute;top:0;right:0;bottom:0;width:550px;max-width:100%;padding:40px;background:#222;display:flex;flex-direction:column;overflow-y:auto}
.site-menu__close{position:absolute;top:20px;right:20px;width:40px;height:40px;border:0;border-radius:50%;background:rgba(255,255,255,.1);color:#fff;font-size:26px;cursor:pointer}
.site-menu__logo{width:140px;height:auto}
.site-menu__nav{margin-top:50px;display:flex;flex-direction:column;gap:18px}
.site-menu__nav a{font-family:var(--font-display);font-size:28px;font-weight:500;color:#cfcfcf}
.site-menu__nav a:hover{color:#fff}
.site-menu__tagline{margin-top:auto;padding-top:40px;font-size:14px;line-height:1.4;color:#9a9a9a;max-width:260px}
.site-menu__socials{margin-top:20px;display:flex;gap:12px}
.site-menu__socials a{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:1px solid #444;color:#cfcfcf}
.site-menu__phone{display:inline-flex;align-items:center;justify-content:center;margin-top:20px;height:52px;padding:0 24px;border-radius:12px;background:var(--c-accent);color:#fff;font-family:var(--font-display);font-size:15px;font-weight:600;width:max-content}
@media (max-width:639px){
  .site-menu__panel{width:100%;padding:28px 20px}
  .site-menu__nav a{font-size:22px}
}

/* Калькулятор плана (перенос plan-calculator-modal.js/css) */
.step-plan-modal{position:fixed;inset:0;z-index:9500;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(18,18,28,.72)}
.step-plan-modal.is-open{display:flex}
.step-plan-modal__dialog{display:flex;flex-direction:column;width:min(1180px,calc(100vw - 40px));height:min(900px,calc(100dvh - 40px));overflow:hidden;background:#fff;border-radius:18px;box-shadow:0 24px 80px rgba(0,0,0,.32)}
.step-plan-modal__header{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;min-height:64px;padding:10px 12px 10px 22px;border-bottom:1px solid #e8e8ee;background:#fff}
.step-plan-modal__title{margin:0;color:#222331;font:600 20px/1.25 Arial,sans-serif}
.step-plan-modal__close{display:inline-flex;flex:0 0 44px;align-items:center;justify-content:center;width:44px;height:44px;padding:0;color:#292936;background:#f2f2f6;border:0;border-radius:50%;cursor:pointer;font:400 34px/1 Arial,sans-serif}
.step-plan-modal__frame{display:block;flex:1 1 auto;width:100%;min-height:0;border:0;background:#f5f7fa}
@media (max-width:700px){
  .step-plan-modal{padding:0;background:#fff}
  .step-plan-modal__dialog{width:100vw;height:100dvh;border-radius:0}
  .step-plan-modal__title{font-size:16px}
}

/* Квиз при уходе — exit-intent-quiz.css оригинала без изменений (размытие 8px, Onest в заголовке, мобильные правила) */
html.step-exit-quiz-open,
body.step-exit-quiz-open {
  overflow: hidden !important;
}

.step-exit-quiz {
  position: fixed;
  inset: 0;
  z-index: 2147483200;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
  color: #171230;
  background: rgba(19, 16, 31, 0.74);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  font-family: Onest, Inter, Arial, sans-serif;
}

.step-exit-quiz.is-open {
  display: flex;
}

.step-exit-quiz *,
.step-exit-quiz *::before,
.step-exit-quiz *::after {
  box-sizing: border-box;
}

.step-exit-quiz__dialog {
  position: relative;
  display: grid;
  grid-template-columns: minmax(270px, 36%) minmax(0, 64%);
  width: min(980px, calc(100vw - 48px));
  min-height: 590px;
  max-height: min(720px, calc(100dvh - 48px));
  overflow: hidden;
  background: #f8f8fa;
  border: 1px solid rgba(255, 255, 255, 0.7);
  border-radius: 28px;
  box-shadow: 0 32px 100px rgba(12, 8, 25, 0.4);
}

.step-exit-quiz__close {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  padding: 0;
  color: #332d47;
  background: rgba(245, 243, 250, 0.94);
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  font: 400 30px/1 Arial, sans-serif;
  transition: background-color 0.2s ease, transform 0.2s ease;
}

.step-exit-quiz__close:hover {
  background: #e8e4f1;
  transform: scale(1.04);
}

.step-exit-quiz__close:focus-visible,
.step-exit-quiz button:focus-visible,
.step-exit-quiz input:focus-visible {
  outline: 3px solid rgba(111, 33, 255, 0.42);
  outline-offset: 3px;
}

.step-exit-quiz__expert {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  padding: 30px 30px 0;
  color: #fff;
  background:
    radial-gradient(circle at 10% 10%, rgba(255, 255, 255, 0.18), transparent 30%),
    linear-gradient(155deg, #7c32f4 0%, #5a12dc 60%, #4310a9 100%);
}

.step-exit-quiz__expert::after {
  position: absolute;
  right: -100px;
  bottom: -80px;
  width: 280px;
  height: 280px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 50%;
  content: "";
}

.step-exit-quiz__logo {
  position: relative;
  z-index: 1;
  width: 112px;
  height: auto;
}

.step-exit-quiz__expert-copy {
  position: relative;
  z-index: 1;
  margin-top: 36px;
}

.step-exit-quiz__expert-kicker {
  margin: 0 0 12px;
  color: rgba(255, 255, 255, 0.72);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.step-exit-quiz__expert-quote {
  margin: 0;
  font-size: clamp(20px, 2.1vw, 27px);
  font-weight: 550;
  line-height: 1.25;
}

.step-exit-quiz__photo-wrap {
  position: relative;
  z-index: 1;
  flex: 1 1 auto;
  min-height: 270px;
  margin: 24px -8px 0;
}

.step-exit-quiz__photo {
  position: absolute;
  bottom: 0;
  left: 50%;
  display: block;
  width: min(280px, 95%);
  max-height: 330px;
  object-fit: contain;
  object-position: center bottom;
  transform: translateX(-50%);
  filter: drop-shadow(0 18px 22px rgba(22, 7, 60, 0.26));
}

.step-exit-quiz__expert-card {
  position: absolute;
  right: 14px;
  bottom: 18px;
  left: 14px;
  z-index: 2;
  padding: 13px 15px;
  background: rgba(20, 12, 47, 0.72);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 15px;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

.step-exit-quiz__expert-name {
  display: block;
  font-size: 15px;
  font-weight: 650;
}

.step-exit-quiz__expert-role {
  display: block;
  margin-top: 3px;
  color: rgba(255, 255, 255, 0.72);
  font-size: 12px;
  line-height: 1.3;
}

.step-exit-quiz__content {
  display: flex;
  min-width: 0;
  overflow-y: auto;
  padding: 52px 52px 34px;
  background:
    linear-gradient(135deg, rgba(111, 33, 255, 0.035), transparent 38%),
    #fff;
}

.step-exit-quiz__form {
  display: flex;
  flex: 1 1 auto;
  min-width: 0;
  flex-direction: column;
}

.step-exit-quiz__topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 15px;
}

.step-exit-quiz__eyebrow {
  margin: 0;
  color: #6f21ff;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.step-exit-quiz__counter {
  flex: 0 0 auto;
  color: #777287;
  font-size: 13px;
  font-weight: 600;
}

.step-exit-quiz__progress {
  width: 100%;
  height: 6px;
  margin-bottom: 24px;
  overflow: hidden;
  background: #ebe8f0;
  border-radius: 99px;
}

.step-exit-quiz__progress-value {
  display: block;
  width: 25%;
  height: 100%;
  background: linear-gradient(90deg, #7d32f5, #5b16dc);
  border-radius: inherit;
  transition: width 0.25s ease;
}

.step-exit-quiz__title {
  max-width: 590px;
  margin: 0;
  color: #171230;
  font-family: Onest, Inter, Arial, sans-serif;
  font-size: clamp(26px, 3vw, 38px);
  font-weight: 650;
  line-height: 1.12;
  letter-spacing: -0.025em;
}

.step-exit-quiz__subtitle {
  max-width: 600px;
  margin: 13px 0 0;
  color: #696474;
  font-size: 16px;
  line-height: 1.48;
}

.step-exit-quiz__screen {
  display: flex;
  flex: 1 1 auto;
  min-height: 0;
  flex-direction: column;
  padding-top: 25px;
}

.step-exit-quiz__options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.step-exit-quiz__option {
  position: relative;
  display: flex;
  min-height: 72px;
  align-items: center;
  gap: 12px;
  padding: 15px 16px;
  color: #292334;
  background: #f6f5f8;
  border: 1px solid #e5e1eb;
  border-radius: 16px;
  cursor: pointer;
  font-size: 15px;
  font-weight: 550;
  line-height: 1.3;
  transition: border-color 0.18s ease, background-color 0.18s ease, transform 0.18s ease;
}

.step-exit-quiz__option:hover {
  background: #faf9fc;
  border-color: #bda5f1;
  transform: translateY(-1px);
}

.step-exit-quiz__option.is-selected {
  color: #4612a9;
  background: #f2ebff;
  border-color: #7a31ef;
}

.step-exit-quiz__option input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.step-exit-quiz__radio {
  display: inline-flex;
  flex: 0 0 22px;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  background: #fff;
  border: 2px solid #c7c1d0;
  border-radius: 50%;
}

.step-exit-quiz__option.is-selected .step-exit-quiz__radio {
  border: 6px solid #6f21ff;
}

.step-exit-quiz__phone-label {
  display: block;
  margin-bottom: 9px;
  color: #393344;
  font-size: 14px;
  font-weight: 650;
}

.step-exit-quiz__phone {
  display: block;
  width: 100%;
  height: 64px;
  padding: 0 18px;
  color: #171230;
  background: #f8f7fa;
  border: 1px solid #dcd7e3;
  border-radius: 16px;
  appearance: none;
  font: 600 19px/1 Onest, Inter, Arial, sans-serif;
}

.step-exit-quiz__phone.is-invalid {
  background: #fff7f7;
  border-color: #df4b4b;
}

.step-exit-quiz__error {
  min-height: 20px;
  margin: 8px 0 0;
  color: #c83333;
  font-size: 13px;
  line-height: 1.35;
}

.step-exit-quiz__summary {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 18px;
}

.step-exit-quiz__summary-item {
  padding: 7px 10px;
  color: #554d61;
  background: #f3f1f6;
  border-radius: 10px;
  font-size: 12px;
  line-height: 1.3;
}

.step-exit-quiz__policy {
  margin: 12px 0 0;
  color: #777180;
  font-size: 12px;
  line-height: 1.4;
}

.step-exit-quiz__policy a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.step-exit-quiz__actions {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: auto;
  padding-top: 24px;
}

.step-exit-quiz__button {
  min-height: 54px;
  padding: 0 22px;
  border: 0;
  border-radius: 14px;
  cursor: pointer;
  font-family: Onest, Inter, Arial, sans-serif;
  font-size: 15px;
  font-weight: 700;
  transition: transform 0.18s ease, background-color 0.18s ease, opacity 0.18s ease;
}

.step-exit-quiz__button:hover {
  transform: translateY(-1px);
}

.step-exit-quiz__button:disabled {
  cursor: wait;
  opacity: 0.65;
  transform: none;
}

.step-exit-quiz__button--back {
  color: #544c5f;
  background: #f1eff4;
}

.step-exit-quiz__button--next {
  flex: 1 1 auto;
  color: #fff;
  background: linear-gradient(100deg, #7a31ef, #5a15d7);
  box-shadow: 0 12px 25px rgba(101, 27, 224, 0.2);
}

.step-exit-quiz__button--next:hover {
  background: linear-gradient(100deg, #6e26e4, #4e0fc5);
}

@media (max-width: 780px) {
  .step-exit-quiz {
    align-items: stretch;
    padding: 0;
    background: #fff;
  }

  .step-exit-quiz__dialog {
    display: flex;
    width: 100vw;
    min-height: 100dvh;
    max-height: 100dvh;
    flex-direction: column;
    overflow-y: auto;
    border: 0;
    border-radius: 0;
  }

  .step-exit-quiz__close {
    position: fixed;
    top: max(10px, env(safe-area-inset-top));
    right: 10px;
  }

  .step-exit-quiz__expert {
    display: grid;
    grid-template-columns: 82px minmax(0, 1fr);
    flex: 0 0 auto;
    align-items: center;
    min-height: 126px;
    padding: max(18px, env(safe-area-inset-top)) 62px 18px 18px;
    overflow: hidden;
  }

  .step-exit-quiz__logo {
    display: none;
  }

  .step-exit-quiz__expert-copy {
    grid-column: 2;
    margin: 0 0 0 12px;
  }

  .step-exit-quiz__expert-kicker {
    display: none;
  }

  .step-exit-quiz__expert-quote {
    font-size: 16px;
    line-height: 1.3;
  }

  .step-exit-quiz__photo-wrap {
    grid-column: 1;
    grid-row: 1;
    min-height: 92px;
    margin: 22px 0 -18px;
  }

  .step-exit-quiz__photo {
    width: 92px;
    max-height: 112px;
  }

  .step-exit-quiz__expert-card {
    display: none;
  }

  .step-exit-quiz__content {
    flex: 1 1 auto;
    overflow: visible;
    padding: 26px 18px max(22px, env(safe-area-inset-bottom));
  }

  .step-exit-quiz__title {
    padding-right: 28px;
    font-size: 27px;
  }

  .step-exit-quiz__subtitle {
    margin-top: 9px;
    font-size: 14px;
  }

  .step-exit-quiz__screen {
    padding-top: 20px;
  }

  .step-exit-quiz__options {
    grid-template-columns: 1fr;
    gap: 9px;
  }

  .step-exit-quiz__option {
    min-height: 58px;
    padding: 11px 13px;
    font-size: 14px;
  }

  .step-exit-quiz__actions {
    position: sticky;
    bottom: 0;
    margin: 18px -18px -22px;
    padding: 12px 18px max(16px, env(safe-area-inset-bottom));
    background: linear-gradient(to top, #fff 80%, rgba(255, 255, 255, 0));
  }
}

@media (max-width: 370px) {
  .step-exit-quiz__title {
    font-size: 24px;
  }

  .step-exit-quiz__content {
    padding-right: 14px;
    padding-left: 14px;
  }

  .step-exit-quiz__actions {
    margin-right: -14px;
    margin-left: -14px;
    padding-right: 14px;
    padding-left: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .step-exit-quiz__progress-value,
  .step-exit-quiz__close,
  .step-exit-quiz__option,
  .step-exit-quiz__button {
    transition: none;
  }
}
.step-exit-quiz__button--back[hidden]{display:none}

/* ===== Круг 4: планшетные артборды Тильды (960/640/480, по центру окна) ===== */
@media (min-width:960px) and (max-width:1199px){
  .container{max-width:960px;padding-left:10px;padding-right:10px}
  .panel,.band::before,.cta-panel::before{width:96%}
  .tech__grid{gap:20px}
  .tech__card{height:284px}
  .tech__card img{height:153px}
  .tech__card p{padding:15px 15px 0;font-size:14px;line-height:1.35}
  [data-src="rec1968048711"]{height:80px}
  [data-src="rec1986698841"]{height:120px}
  .stats-head,.faq-head{padding:0 0 40px}
  .tech-head{padding:40px 0 40px}
  .big-budget{padding:0 0 45px}
  .big-budget__grid{grid-template-columns:495px 399px;column-gap:46px}
  .big-budget__title{max-width:495px}
  .big-budget__sub{max-width:399px}
  .verdict,.social-links{padding:0 0 80px}
  .case__inner{min-height:0;padding-top:80px;padding-bottom:50px}
  .case__text{width:500px}
  .case__title{max-width:411px;font-size:24px;line-height:30px}
  .case__label,.case__label--res{font-size:15px;line-height:19px}
  .case__list li{min-height:26px;font-size:16px;line-height:23px}
  .case__metric dt{font-size:16px;line-height:22px}
  .case__metric dd{font-size:24px;line-height:30px}
  .case__media,.case__media--mid,.case__media--mid2,.case__media--low{top:80px;left:calc(50% - 82px);width:945px}
  .stats{padding:0 0 50px}
  .stats__card{min-height:0;height:230px}
  .stats__value{font-size:26px;line-height:33px}
  .stats__label{max-width:166px;font-size:16px;line-height:23px}
  .filters__grid{gap:20px}
  .filters__card{min-height:0;height:220px}
  .filters__num{font-size:26px;line-height:33px}
  .filters__dot{margin-top:13px}
  .filters__text{max-width:246px;font-size:16px;line-height:23px}
  .no-promises{padding:0 0 55px}
  .no-promises__title{font-size:62px;line-height:78px}
  .no-promises__sub{margin-top:14px;max-width:880px;font-size:22px;line-height:30px}
  .no-promises__quote{left:10px;width:80px;height:80px}
  .no-promises__quote--close{left:auto;right:10px}
  .crm-head{padding:0 0 40px}
  .crm-head__title{max-width:717px}
  .crm-head__sub{max-width:592px;margin-left:auto;margin-right:auto}
  .problems{padding:0 0 60px}
  .problems__grid{gap:20px}
  .card--problem{height:290px}
  .card__img{width:90px;height:90px;border-radius:24px}
  .card__title{max-width:246px;font-size:15px;line-height:19px}
  .rnp{padding:0 0 80px}
  .rnp__grid{grid-template-columns:380px 1fr;gap:20px}
  .rnp__sub{max-width:380px;font-size:16px;line-height:23px}
  .rnp__list{margin-top:27px;gap:7px}
  .rnp__list li{font-size:16px;line-height:23px}
  .rnp__list li::before{top:7px}
  .rnp__cta{margin-top:26px}
  .rnp__author-title{font-size:15px;line-height:19px}
  .btn--rnp{margin-top:15px;width:380px}
  .rnp__shot img{width:629px;height:558px;object-fit:cover;object-position:left top}
  .rnp__shot figcaption{width:346px;margin:25px 0 0 97px;font-size:16px;line-height:23px}
}
@media (min-width:640px) and (max-width:959px){
  .h2{font-size:24px;line-height:1.25}
  .section-head{padding:0 0 35px}
  .fraud{padding:0 0 35px}
  .fraud__icon{margin-top:12px}
  .intro{padding:50px 0 40px}
  .intro__sub{margin-top:14px;max-width:449px;margin-left:auto;margin-right:auto;font-size:18px;line-height:24px}
  .final-cta{padding:0 0 50px}
  .final-cta__box{padding:34px}
  .final-cta__title{max-width:none;font-size:18px;line-height:23px}
  .final-cta__sub{margin-top:10px;font-size:15px;line-height:22px}
  .btn--final{margin-top:25px;width:100%;max-width:none}
  .budgets{padding:0 0 60px}
  .budgets__grid{display:block}
  .budgets__title{max-width:none;font-size:15px;line-height:19px}
  .budgets__list li{max-width:none;font-size:15px;line-height:22px}
  .budgets__gallery{margin-top:30px}
  .crm-shot{min-height:542px;padding:0;overflow:hidden}
  .crm-shot__bg{position:absolute;top:0;left:50%;width:990px;max-width:none;height:542px;margin:0 0 0 -495px;border-radius:0;object-fit:cover}
  .crm-shot__overlay{position:relative}
  .crm-shot__item,.crm-shot__item--a,.crm-shot__item+.crm-shot__item{position:absolute;width:300px;margin:0;padding:11px 8px 11px 8px;gap:8px;background:#1f1f1f;border:2px solid #2d2d2d;border-radius:8px}
  .crm-shot__item-title{max-width:none;font-size:14px;line-height:18px}
  .crm-shot__item p{margin-top:4px;font-size:13px;line-height:19px}
  .crm-shot__item--a{left:330px;top:380px}
  .crm-shot__item--b{left:330px;top:70px}
  .crm-shot__item--c{left:10px;top:251px}
  [data-src="rec1987523301"]{height:55px}
  [data-src="rec1986698841"]{height:80px}
  [data-src="rec1968048711"]{height:50px}
  [data-src="rec1986994081"]{height:100px}
  .stats-head,.faq-head{padding:0 0 40px}
  .faq-head__title{max-width:424px}
  .tech-head{padding:40px 0 40px}
  .tech-head .h2{font-size:24px;line-height:1.25}
  .big-budget{padding:0 0 35px}
  .big-budget__title{font-size:24px;line-height:1.25;max-width:none}
  .big-budget__sub{line-height:24px}
  .verdict{padding:0 0 55px}
  .social-links{padding:0 0 60px}
  .social-links__grid{gap:15px}
  .container{max-width:640px;padding-left:10px;padding-right:10px}
  .case__inner{padding-top:60px;padding-bottom:0}
  .case__panel{left:0;right:0;width:auto;top:0;bottom:403px;border-radius:30px}
  .case__text{width:auto;padding:0 0 50px}
  .case__title{font-size:24px;line-height:30px}
  .case__label,.case__label--res{margin-top:25px;font-size:15px;line-height:19px}
  .case__list{margin-top:16px;gap:4px}
  .case__list li{min-height:26px;font-size:15px;line-height:22px}
  .case__metrics{display:flex;column-gap:6px;margin:16px 0 0}
  .case__metric{flex:0 0 auto;height:140px;display:flex;flex-direction:column;justify-content:space-between;padding:18px 15px;border:3px solid var(--c-white);border-radius:14px;background:var(--c-card)}
  .case__metric dt{font-size:15px;line-height:20px}
  .case__metric:nth-child(1) dt{width:90px}
  .case__metric:nth-child(2) dt{width:80px}
  .case__metric dd{margin:0;font-size:24px;line-height:30px;white-space:nowrap}
  .case__media{position:relative;top:0;left:auto;z-index:1;display:block;width:720px;max-width:none;margin:-28px 0 0 -50px}
  .panel,.band::before,.cta-panel::before{width:100%}
  .problems__grid{grid-template-columns:repeat(2,1fr);gap:20px}
  .card--problem{height:290px}
  .card__img{width:90px;height:90px;margin-bottom:16px}
  .card__title{margin-top:8px;max-width:none;font-size:15px;line-height:1.3}
  .tech__grid{grid-template-columns:repeat(2,1fr);gap:20px}
  .tech__card{height:290px}
  .tech__card img{height:153px}
  .tech__card p{padding:15px 18px 0;font-size:15px;line-height:1.35}
  .big-budget__grid{display:block}
  .big-budget__sub{max-width:none;margin-top:14px;font-size:18px;line-height:1.35}
  .steps__grid{grid-template-columns:minmax(0,220px) minmax(0,400px);column-gap:0}
  .steps__aside{padding-top:0;padding-left:10px}
  .steps__sticky{flex-direction:column;align-items:flex-start;gap:16px}
  .steps__list{padding:60px 0 0}
  .steps__img{width:120px;height:83px}
  .steps__heading{margin-top:20px;font-size:18px;line-height:1.3;max-width:none}
  .steps__text{margin-top:10px;font-size:15px;line-height:1.4;max-width:none}
  .stats{padding:0 0 40px}
  .stats__grid{grid-template-columns:repeat(2,1fr);gap:20px}
  .stats__card{min-height:0;height:190px}
  .stats__value{font-size:24px;line-height:30px}
  .stats__label{max-width:246px;font-size:15px;line-height:22px}
  .filters__grid{grid-template-columns:repeat(2,1fr);gap:20px}
  .filters__card{min-height:0;height:190px}
  .filters__card:nth-child(3){grid-column:1/-1}
  .filters__num{font-size:24px;line-height:30px}
  .filters__dot{margin-top:11px}
  .filters__text{max-width:246px;font-size:15px;line-height:22px}
  .filters__card:nth-child(3) .filters__text{max-width:458px}
  .no-promises{padding:0 0 55px}
  .no-promises__title{font-size:42px;line-height:53px}
  .no-promises__sub{margin-top:14px;max-width:none;font-size:17px;line-height:23px}
  .no-promises__quote{display:block;left:10px;width:55px;height:55px}
  .no-promises__quote--close{left:auto;right:10px}
}
@media (min-width:480px) and (max-width:639px){
  .container{max-width:480px;padding-left:10px;padding-right:10px}
  [data-src="rec1987523301"],[data-src="rec1986698841"],[data-src="rec1986994081"]{height:55px}
  [data-src="rec1968048711"]{height:35px}
  .stats-head,.faq-head{padding:0 0 36px}
  .tech-head{padding:0 0 40px}
  .big-budget{padding:0 0 25px}
  .big-budget__sub{margin-top:14px;font-size:16px;line-height:1.35}
  .verdict{padding:0 0 35px}
  .verdict__box{flex-direction:column;align-items:center;gap:10px;width:auto;padding:14px 16px;text-align:center}
  .verdict__box img{width:28px;height:28px}
  .verdict__box p{max-width:405px;font-size:14px;line-height:18px}
  .social-links{padding:0 0 60px}
  .social-links__grid{gap:15px}
  .social-links__btn{height:60px}
  .case__inner{padding-top:60px;padding-bottom:0}
  .case__panel{left:0;right:0;width:auto;top:0;bottom:275px;border-radius:30px}
  .case__text{width:auto;padding:0 0 60px}
  .case__title{font-size:22px;line-height:28px}
  .case__label,.case__label--res{margin-top:25px;font-size:14px;line-height:18px}
  .case__list{margin-top:16px;gap:4px}
  .case__list li{min-height:26px;font-size:14px;line-height:20px}
  .case__metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:16px 0 0}
  .case__metric{height:120px;display:flex;flex-direction:column;justify-content:space-between;padding:15px;border:3px solid var(--c-white);border-radius:14px;background:var(--c-card)}
  .case__metric:nth-child(4){grid-column:1/-1}
  .case__metric dt{font-size:14px;line-height:19px}
  .case__metric dd{margin:0;font-size:22px;line-height:28px;white-space:nowrap}
  .case__media{position:relative;top:0;left:auto;z-index:1;display:block;width:520px;max-width:none;margin:-36px 0 0 -30px}
  .stats{padding:0 0 35px}
  .stats__grid{grid-template-columns:repeat(2,1fr);gap:20px}
  .stats__card{min-height:0;height:160px;padding:15px}
  .stats__value{font-size:22px;line-height:28px}
  .stats__label{margin-top:auto;max-width:184px;font-size:14px;line-height:20px}
  .filters{padding:0 0 55px}
  .filters__grid{grid-template-columns:repeat(2,1fr);gap:20px}
  .filters__card{min-height:0;height:160px;padding:15px}
  .filters__card:nth-child(3){grid-column:1/-1}
  .filters__num{font-size:22px;line-height:28px}
  .filters__dot{margin-top:10px}
  .filters__text{margin-top:auto;max-width:184px;font-size:14px;line-height:20px}
  .filters__card:nth-child(3) .filters__text{max-width:424px}
  .no-promises{padding:0 0 35px}
  .no-promises__title{font-size:30px;line-height:38px}
  .no-promises__sub{margin-top:14px;font-size:16px;line-height:22px}
  .no-promises__quote{display:block;left:10px;width:38px;height:38px}
  .no-promises__quote--close{left:auto;right:10px}
  .funnel-head__grid{padding-top:35px;padding-bottom:25px}
  .funnel-head__sub{margin-top:14px;max-width:377px;font-size:16px;line-height:22px}
  .h2{font-size:22px;line-height:1.25}
  .section-head{padding:0 0 25px}
  .fraud{padding:0 0 25px}
  .fraud__row{gap:14px}
  .fraud__icon{width:36px;height:36px;margin-top:10px}
  .fraud__title{font-size:22px;line-height:1.25}
  .intro{padding:40px 0 40px}
  .intro__sub{margin:14px 0 0;max-width:377px;font-size:16px;line-height:1.35}
  .crm-head{padding:0 0 35px}
  .crm-head__sub{margin-top:14px;font-size:16px;line-height:1.35}
  .quiz-intro{padding:0 0 35px}
  .strip__list{gap:15px}
  .strip__item,.strip__item:nth-child(n){height:76px}
  .strip__img{width:76px;height:76px}
  .strip__text{font-size:15px;line-height:19px}
  .cta-panel{margin-top:0;padding:0 0 36px}
  .cta-panel::before{top:109px}
  .cta-panel__box{padding:34px;margin:0}
  .cta-panel__author img{width:64px;height:64px}
  .cta-panel__title{max-width:262px;font-size:18px;line-height:1.25}
  .cta-panel__sub{margin-top:10px;max-width:306px;font-size:14px;line-height:1.45}
  .btn--cta-panel{margin-top:25px;width:100%;max-width:none;min-height:85px;font-size:12px}
  .problems{padding:0 0 55px}
  .problems__grid{grid-template-columns:1fr;gap:15px}
  .card--problem{display:grid;grid-template-columns:75px 1fr;grid-template-rows:auto 1fr;column-gap:15px;align-content:start;height:auto;min-height:0;padding:15px}
  .card__img{grid-row:1/3;width:75px;height:75px;margin:0;border-radius:16px}
  .card__num{margin:0;font-size:14px;line-height:19px}
  .card__title{margin-top:10px;max-width:none;font-size:14px;line-height:1.26}
}

/* ===== 07 квиз на планшете (11.11, окно «квиз 640–1199», срез snap17) =====
   Раскладку квиза у Тильды меняет не артборд Zero, а сам t-quiz (tilda-quiz-form-1.1.min.css): до 640 — телефонная
   (блок «07 квиз на телефоне» ниже), 641–960 — панель шапкой («облако» над шагом, карточка 600 по центру),
   ≥961 — панель слева (карточка 780 на 961–1199, 960 от 1200). Граница 960/961, а не 959/960, как у артбордов Zero:
   на 960 у оригинала «облако». Числа — quiz_probe.py --dump на 768, 960, 1100 (шаг 1 — dump1, шаг с телефоном — dump),
   сверка парами — quiz_step1_diff.py (шаг 1) и quiz_step_diff.py (шаг с телефоном, ошибка). */
@media (min-width:640px) and (max-width:960px){
  /* карточка: белое поле на всю карточку, углы r12 обрезаны (у оригинала overflow обёртки), поля 45, высота от
     содержимого (не меньше 650 — --min-height-tablet Тильды); полоса прогресса — по верху карточки */
  .quiz__card{position:relative;display:block;width:600px;min-height:650px;padding:45px;background:#fff;overflow:hidden}
  .quiz__aside{position:relative;width:441px;padding:10px 12px;background:#f6f6f5;border-radius:4px}
  .quiz__aside::after{content:"";position:absolute;top:15px;right:-8px;border-style:solid;border-width:8px 0 8px 8px;border-color:transparent transparent transparent #f6f6f5}
  .quiz__author img{position:absolute;top:0;right:-69px}
  .quiz__author>div{margin:0;width:auto}
  .quiz__aside-title{margin:9.5px 0 0;width:auto}
  .quiz__list{margin:0;width:auto}
  .quiz__main{position:static;display:block;min-height:0;margin:0;padding:0;background:none;border-radius:0;overflow:visible}
  .quiz__question{margin-top:28px}
  .quiz__options{margin-top:20px;max-width:none}
  .quiz__footer{margin-top:75px}  /* 55 — низ шага, 20 — верх подвала (t-quiz__footer-sticky) */
  /* шаг с телефоном: у Тильды отступы «≤959» действуют до 960 включительно (в блоке выше по файлу — до 959) */
  .tphone{margin-top:20px}
  .quiz__consent{margin-top:32px}
  /* плашка ошибки у Тильды — в потоке сразу под шагом (t-form__errorbox-middle: сверху низ шага 55; снизу обёртка 50
     + верх подвала 20 = 70 до кнопок; на телефоне подвал свой — там 50) */
  .quiz__errorbox{position:static;margin:55px 0 70px}
  .quiz__errorbox:not([hidden])+.quiz__footer{margin-top:0}
}
@media (min-width:961px) and (max-width:1199px){
  .quiz__card{width:780px}  /* панель 260 + белое поле 510 (колонка шага 420) + 10 */
  .quiz__aside-title{margin-top:9.5px}
  /* плашка ошибки: у Тильды в потоке под шагом (верх = низ согласия + 55), липкий подвал внизу поля ложится поверх;
     здесь — в потоке под формой, подвал прижат к низу поля (на 1100 до кнопок остаётся 17 px, как у оригинала) */
  .quiz__steps{flex:none}
  .quiz__errorbox{position:static;margin-top:55px}
  .quiz__footer{margin-top:auto}
}
@media (min-width:640px) and (max-width:1199px){
  /* общее для 640–1199: шрифты панели (t-name_xs, t-descr_xxs, t-descr_xs Тильды до 1200 мельче), вопрос, вариант, «Шаг» */
  .quiz__name{font-size:14px;line-height:18.9px}
  .quiz__role{font-size:12px;line-height:18.6px;opacity:.5}
  .quiz__aside-title,.quiz__list{font-size:14px;line-height:21.7px}
  .quiz__question{line-height:27.06px;color:#2d2d2d}
  .quiz__option{padding:10px 15px}
  .quiz__footer [data-quiz-counter]{font-size:12px;line-height:18.6px}
}

/* ===== ТЕЛЕФОН < 480: артборд 320 (11.11, окно «телефон и приёмка») =====
   Закон оригинала на телефоне снят числами (home_ref/phone_kinds.py):
   «масштаб» — Тильда растягивает артборд 320 на ×W/320 (zoom скриптом). Здесь то же чистым CSS: секция получает
               zoom от ширины окна, поэтому ВСЕ числа внутри неё — px артборда 320 (vw внутри zoom не писать: умножится дважды);
   «центр»   — артборд 320 стоит по центру окна без масштаба: колонка .container 320 px по центру.
   Числа — боксы оригинала на 320 (ref_boxes.json), сверка — phone_fit.py / compare.py на 320, 360, 390.
   Блок стоит последним и перекрывает прежние телефонные правила (max-width:639/479/370 выше по файлу). */
@media (max-width:479px){
  /* --- закон «масштаб»: 27 секций + 4 отбивки --- */
  .hero,.strip,.space,.space--80,.space--120,.space--140,.section-head,.problems,.quiz-intro,.intro,.steps,.tech-head,.tech,.session,
  .big-budget,.fraud,.funnel-head,.crm-head,.cta-panel,.stats-head,.stats,.about,.diag,.expertise,.social-head,.social-links,
  .faq-head,.final-cta{zoom:var(--sic-k,1);zoom:tan(atan2(100vw,320px))}  /* первое — страховка для браузеров без tan()/atan2(): --sic-k ставит app.js */
  /* --- поля артборда: текст с x 10, ширина 300 (оба закона); у «центра» колонка 320 стоит по центру окна --- */
  [data-src]>.container,[data-src] .container{width:320px;max-width:100%;margin-left:auto;margin-right:auto;padding-left:10px;padding-right:10px}
  [data-src="rec1987523301"],[data-src="rec1986698841"],[data-src="rec1986994081"]{height:55px}
  [data-src="rec1968048711"]{height:35px}
  .h2,.h2--center{font-size:22px;line-height:27.5px;letter-spacing:-.33px;text-align:left}

  /* 00 первый экран: лого 10,25; заголовок 10,80 21/26.25; текст 278; кнопка 359 300×75; подпись 451; картинка 10,527 300×275; плашка 534 */
  .hero{padding:25px 0 0;height:802px;overflow:hidden;background:#e5e5e5;border-radius:0 0 30px 30px}
  .topbar{height:34px;align-items:flex-start}
  .topbar__burger{margin:0 0 0 auto}
  .hero__body{margin-top:21px}
  .hero__title{font-size:21px;line-height:26.25px;letter-spacing:-.315px}
  .hero__lead{display:block;margin-top:14px;font-size:14px;line-height:18.9px}
  .hero__dash{display:none}
  .hero__cta{margin-top:24px}
  .btn--hero{width:300px;height:75px;min-height:0}
  .hero__cta-note{margin:0;padding:17px 0 0;font-size:12px;line-height:16.2px}
  .hero__visual{margin:44px 10px 0;height:275px}
  .hero__img{width:300px;height:275px;object-fit:cover;object-position:50% 0}
  .hero__badge{left:0;top:7px;width:300px;height:55px;padding:4px;gap:8px}
  .hero__badge-avatar{width:44px;height:44px}
  .hero__badge-text{width:238px;max-width:none;font-size:14px;line-height:20.3px}

  /* 01 три плашки: 300×55 шаг 70, картинка 55, текст с x 77 шириной 223, 13/16.25 */
  .strip__list{gap:15px}
  .strip__item,.strip__item:nth-child(n){height:55px;padding:0;gap:12px}
  .strip__img{width:55px;height:55px}
  .strip__text{width:223px;font-size:13px;line-height:16.25px}

  /* 03, 06, 10 заголовки-разделы: текст с y 0, низ по высоте записи */
  .section-head{padding:0 0 25px}
  [data-src="rec1883011361"] .h2{width:294px}
  .quiz-intro{padding:0 0 35px}
  .tech-head{padding:0 0 40px}

  /* 04 шесть проблем: карточка 300×203 шаг 218, рамка 3; картинка 75 с 18,18; номер +11; заголовок +10, 14/17.5; низ записи 51 */
  .problems{padding:0 0 51px}
  .problems__grid{grid-template-columns:1fr;gap:15px}
  .card--problem{display:flex;flex-direction:column;height:auto;min-height:0;padding:15px 15px 14.5px}
  .card--problem .card__img{width:75px;height:75px;margin:0 0 11px;border-radius:16px}
  .card--problem .card__num{margin:0;font-size:14px;line-height:18.9px}
  .card--problem .card__title{margin-top:10px;max-width:none;font-size:14px;line-height:17.5px}

  /* 05 «Сколько ещё готовы тратить» (центр): заголовок 22/28; цитата 132 300×76 рамка 2, аватар 50×72; картинка 228 300×340;
     плашки 588 300×150 шаг 162, рамка 3, иконка 36 с 15,21, текст +12, 14/20 шириной 258; низ 30 */
  .reality{padding:0 0 30px}
  .reality .h2{line-height:28px}
  .reality__quote{margin-top:20px;padding:0;gap:10px;height:76px;align-items:center}
  .reality__quote-avatar{width:50px;height:72px;object-fit:cover}
  .reality__quote-text{font-size:13px;line-height:18px}
  .reality__media{margin-top:20px;width:300px;height:340px}
  .reality__media img{width:300px;height:340px;object-fit:cover}
  .reality__list{margin-top:20px;gap:12px}
  .reality__item{flex-direction:column;gap:12px;width:300px;height:150px;padding:18px 12px}
  .reality__item img{padding:0}
  .reality__item p{width:258px;font-size:14px;line-height:20px}

  /* 08 «Работая с нами…»: серая плашка 320×343 радиус 30; заголовок 10,40; подпись 247, 14/18.9 */
  .intro{padding:40px 0 39px}
  .intro .h2,.intro .intro__title{text-align:left}
  .intro__sub{margin:14px 0 0;max-width:none;font-size:14px;line-height:18.9px;text-align:left}

  /* 09 пять шагов: аватар 70×87 слева, заголовок справа с x 100, 16/20; шаг: картинка 100×69, заголовок +11, текст +10 14/20.3; шаг 241; низ 40 */
  .steps{padding:0 0 40px}
  .steps__aside{padding:0}
  .steps__sticky{flex-direction:row;align-items:flex-start;gap:20px}
  .steps__avatar{width:70px;height:87px}
  .steps__sticky-body{width:210px}
  .steps__title{margin:0;font-size:16px;line-height:20px;letter-spacing:-.24px}
  .steps__note{margin-top:8px;font-size:14px;line-height:18.9px}
  .steps__list{padding-top:40px;gap:30px}
  .steps__img{width:100px;height:69px;border-radius:16px}
  .steps__heading{margin-top:11px;font-size:16px;line-height:20px}
  .steps__text{margin-top:10px;font-size:14px;line-height:20.3px}

  /* 11 три технологии: карточка 300×284/265/265 шаг +20, рамка 3; картинка 294×153; текст 14/18.9 с полями 15; низ записи 1 */
  .tech{padding:0 0 1px}
  .tech__grid{gap:20px}
  .tech__card img{width:294px;height:153px;object-fit:cover}
  .tech__card p{padding:15px 15px 15.5px;font-size:14px;line-height:18.9px}

  /* 12 стратсессия: запись 1200, серая плашка 909 со скруглением снизу; заголовок 10,30 без трекинга; подпись 237; «Что разберём» 313 14/17.5;
     список с 347 шаг 44,3, маркер 8 с x 10, текст с x 24; карточка плана 552 300×130 (картинка 80×128, текст с x 103 13/18.85, ссылка 11/15.95);
     кнопка 702 300×75; ноутбук −107,800 534×400 */
  .session{height:1200px;min-height:0;padding:30px 0 0;overflow:hidden}
  .session::before{left:0;width:100%;height:909px;border-radius:0 0 30px 30px}
  .session .h2{letter-spacing:normal}
  .session__sub{margin-top:14px;font-size:14px;line-height:18.9px}
  .session__label{margin-top:19px;font-size:14px;line-height:17.5px}
  .session__list{margin-top:16.5px;gap:3.7px}
  .session__list li{padding-left:14px;font-size:14px;line-height:20.3px}
  .session__list li::before{top:9px;width:8px;height:8px}
  .session__plan{height:130px;margin-top:31px;padding:0;gap:12px;align-items:flex-start}
  .session__plan>img{width:80px;height:128px;object-fit:cover}
  .session__plan-body{width:193px;padding:6px 0 0}
  .session__plan-body p{font-size:13px;line-height:18.85px}
  .session__plan-link{width:162px;margin-top:5.6px;gap:6px;font-size:11px;line-height:15.95px}
  .btn--session{width:300px;height:75px;min-height:0;margin-top:20px}
  .session__visual{position:relative;top:auto;left:auto;width:534px;margin:23px 0 0 -117px}
  .session__visual img{width:534px;height:400px;max-width:none}

  /* 13 «Умеем работать с большими бюджетами»: заголовок с y 0, подпись 124 14/18.9, низ 25 */
  .big-budget{padding:0 0 25px}
  .big-budget__sub{margin-top:14px;font-size:14px;line-height:18.9px}

  /* 14 большие бюджеты (центр): заголовок 14/18; список с 52, маркер 8 с x 10, текст с x 24 14/20, между пунктами 4;
     слайдер 374 300×170, стрелки 30 в 10 px от краёв, точки 8 через 8 на 19 ниже; низ записи 632 */
  .budgets{height:632px;padding:0}
  .budgets__title{font-size:14px;line-height:18px;letter-spacing:normal}
  .budgets__list{margin-top:16px;gap:4px}
  .budgets__list li{padding-left:14px;font-size:14px;line-height:20px}
  .budgets__list li::before{top:9px;width:8px;height:8px}
  .budgets__gallery{margin-top:30px}
  .budgets__track img{height:170px;border-radius:12px}
  .budgets__arrow{top:85px;width:30px;height:30px;margin-top:-15px}
  .budgets__arrow--prev{left:10px}
  .budgets__arrow--next{right:10px}
  .budgets__arrow svg{width:8px;height:16px}
  .budgets__dots{margin-top:19px;gap:8px}
  .budgets__dot{width:8px;height:8px}

  /* 15 «Фильтруем фрод…»: иконка 36 над заголовком, заголовок с y 50, низ 25 */
  .fraud{padding:0 0 25px}
  .fraud__row{flex-direction:column;gap:14px}
  .fraud__icon{width:36px;height:36px;margin:0}
  .fraud__title{font-size:22px;line-height:27.5px}

  /* 16 три фильтра (центр): карточка 300×139/159/159 шаг +20, рамка 3 + поле 15; номер 22/28, точка 8 справа на +10; текст +35 14/20; низ 55 */
  .filters{padding:0 0 55px}
  .filters__grid{grid-template-columns:1fr;gap:20px}
  .filters__card,.filters__card:nth-child(n){height:auto;min-height:0;padding:15px}
  .filters__num{font-size:22px;line-height:28px}
  .filters__dot{margin-top:10px}
  .filters__text,.filters__card:nth-child(3) .filters__text{margin-top:35px;max-width:none;font-size:14px;line-height:20px}

  /* кнопки 300×75 (первый экран, стратсессия, «качество»): поля 22/16, иконка 22, промежуток 8, текст 10/15.5 влево */
  .btn--hero,.btn--session,.btn--quality{width:300px;height:75px;min-height:0;padding:22px 16px;gap:8px;justify-content:flex-start}
  .btn--hero .btn__icon,.btn--session .btn__icon,.btn--quality .btn__icon{width:22px;height:22px}
  .btn--hero .btn__text,.btn--session .btn__text,.btn--quality .btn__text{font-size:10px;line-height:15.5px;text-align:left}

  /* 17 «Как мы приводим только квалифицированные заявки»: заголовок 10,35; подпись 132 14/18.9; низ 24 */
  .funnel-head__grid{padding-top:35px;padding-bottom:24px}
  .funnel-head__sub{margin-top:14px;max-width:none;font-size:14px;line-height:18.9px}

  /* 18 воронка (центр): карточка 300×180 шаг 215, рамка 3 + поле 15; картинка 75: у первой на 14 выше карточки, у остальных на 4 ниже верха;
     номер на 108 от верха карточки 14/19; название +10 20/25; стрелка 16 в правом верхнем углу на 18; верх записи 14, низ 35 */
  .funnel{padding:14px 0 35px}
  .funnel__grid{grid-template-columns:1fr;gap:35px}
  .funnel__card{height:auto;min-height:0;padding:0 15px 15px}
  .funnel__card>img:first-child{display:block;width:75px;height:75px;margin-top:-17px;border-radius:16px}
  .funnel__card:not(:first-child)>img:first-child{margin-top:1px}
  .funnel__num{margin-top:29px;font-size:14px;line-height:19px}
  .funnel__card:first-child .funnel__num{margin-top:47px}
  .funnel__title{margin-top:10px;font-size:20px;line-height:25px}
  .funnel__arrow{top:15px;right:15px}
  /* у оригинала на телефоне стрелка есть и на четвёртой карточке (на десктопе её нет) */
  .funnel__card:last-child::after{content:"";position:absolute;top:15px;right:15px;width:16px;height:16px;background:url(images/tild6161-6438-4462-a566-623837373632__arrow_-_right_square.svg) center/contain no-repeat}

  /* 19 красная плашка (центр): 300×136, рамка 3; иконка 32 на 15; текст 23,57 274 шириной 13/16 по центру; низ 35 */
  .verdict{padding:0 0 35px}
  .verdict__box{flex-direction:column;align-items:center;gap:10px;width:300px;margin:0;padding:12px 10px;text-align:center}
  .verdict__box img{width:32px;height:32px}
  .verdict__box p{max-width:none;font-size:13px;line-height:16px}

  /* 20 «Что мы делаем, чтобы заявки были…» (центр): заголовок 22/28; аватар 137 64; имя с x 90 14/18; текст 217 14/20; кнопка 273;
     плитки с 379 300×290 шаг 310, рамка 3 + поле 15: заголовок 14/18, текст +8 14/19, картинка 294 прижата к низу; низ записи 35 */
  .quality{padding:0 0 35px}
  .quality .h2{line-height:28px}
  .quality__cta{margin-top:25px}
  .quality__author{gap:16px}
  .quality__author img{width:64px;height:64px}
  .quality__author-title{width:161px;font-size:14px;line-height:18px}
  .quality__cta-text{width:294px;margin-top:16px;font-size:14px;line-height:20px}
  .btn--quality{margin-top:16px}
  .quality__tiles{margin-top:31px;gap:20px}
  .quality__tile{height:290px;padding:15px 15px 0}
  .quality__tile>div{font-size:14px;line-height:18px}
  .quality__tile>p{margin-top:8px;font-size:14px;line-height:19px}
  .quality__tile>img{width:294px;height:153px;margin:auto -15px 0;object-fit:cover;border-radius:0 0 16px 16px}
  .quality__tile:nth-child(1)>img{height:172px}
  .quality__tile:nth-child(4)>img{height:154px}

  /* 21 «Мы не обещаем…» (центр): заголовок 21/26 по центру; подпись 66 14/19; кавычки 28 в углах на y 0; низ 35 */
  .no-promises{padding:0 0 35px}
  .no-promises__title{font-size:21px;line-height:26px;letter-spacing:-.315px}
  .no-promises__sub{margin-top:14px;font-size:14px;line-height:19px}
  .no-promises__quote{display:block;top:0;left:10px;width:28px;height:28px}
  .no-promises__quote--close{left:auto;right:10px}

  /* 22–28 кейсы (центр; серая плашка — во всю ширину окна, скругление 30, кончается на 36 ниже верха ноутбука):
     заголовок 10,50 20/25; «Что было сделано» +25 14/18; список +16, маркер 8, текст с x 24 14/20, строка не ниже 26, между 4;
     плитки 145×110 через 10, рамка 3, подпись 14/19, число 20/25 снизу; ноутбук 380×227 с x −30 на 20 ниже плиток */
  .case__inner{width:320px;padding:50px 10px 0;position:static}
  .case__panel{left:0;right:0;width:auto;top:0;bottom:191px;border-radius:30px}
  .case__text{width:auto;padding:0}
  .case__title{font-size:20px;line-height:25px}
  .case__label,.case__label--res{margin-top:25px;font-size:14px;line-height:18px}
  .case__list{margin-top:16px;gap:4px}
  .case__list li{min-height:26px;padding-left:14px;font-size:14px;line-height:20px}
  .case__list li::before{left:0;top:9px;width:8px;height:8px}
  .case__metrics{display:grid;grid-template-columns:145px 145px;gap:10px;margin:16px 0 0}
  .case__metric,.case__metric:nth-child(4){grid-column:auto;height:110px;display:flex;flex-direction:column;justify-content:space-between;
    padding:15px 14px;border:3px solid var(--c-white);border-radius:14px;background:var(--c-card)}
  .case__metric dt{font-size:14px;line-height:19px}
  .case__metric dd{margin:0;font-size:20px;line-height:25px;white-space:nowrap}
  .case__media{position:relative;top:0;left:auto;z-index:1;display:block;width:380px;height:227px;max-width:none;margin:20px 0 0 -40px}
  /* верх ноутбука у оригинала задан отдельно в каждом кейсе (707/707/677/657/747/717/717), а не от плиток — отступ свой */
  [data-src="rec2287754481"] .case__media{margin-top:63px}
  [data-src="rec2287787651"] .case__media,[data-src="rec2287798411"] .case__media{margin-top:35px}
  [data-src="rec2287810871"] .case__media{margin-top:30px}
  [data-src="rec2287839431"] .case__media{margin-top:31px}
  [data-src="rec2287851731"] .case__media{margin-top:46px}

  /* 30 «Рука на пульсе» (центр): заголовок 22/28; текст 182 14/20; список с 260 шаг 30, маркер 8 на +6; аватар 388 64, имя с x 90 14/18;
     кнопка 468; снимок 546 300×290 (рамка 4, картинка cover от левого верха); подпись 851 14/20 по центру; низ 35 */
  .rnp{padding:0 0 35px}
  .rnp__title{line-height:28px}
  .rnp__sub{margin-top:14px;font-size:14px;line-height:20px}
  .rnp__list{margin-top:18px;gap:10px}
  .rnp__list li{padding-left:14px;font-size:14px;line-height:20px}
  .rnp__list li::before{left:0;top:6px;width:8px;height:8px}
  .rnp__cta{margin-top:18px}
  .rnp__author{gap:16px;height:64px}
  .rnp__author img{width:64px;height:64px}
  .rnp__author-title{width:161px;font-size:14px;line-height:18px}
  .btn--rnp{margin-top:16px}
  .rnp__shot{margin-top:3px}
  .rnp__shot img{width:300px;height:290px;object-fit:cover;object-position:0 0;border-radius:8px}
  .rnp__shot figcaption{margin:15px 3px 0;font-size:14px;line-height:20px}
  .btn--rnp,.btn--cta-panel{width:300px;height:75px;min-height:0;padding:22px 16px;gap:8px;justify-content:flex-start}
  .btn--rnp .btn__icon,.btn--cta-panel .btn__icon{width:22px;height:22px}
  .btn--rnp .btn__text,.btn--cta-panel .btn__text{font-size:10px;line-height:15.5px;text-align:left}

  /* 31 «Вы привыкли видеть в CRM…»: заголовок с y 0; подпись 179 14/18.9 влево; низ 35 */
  .crm-head{padding:0 0 35px}
  .crm-head__sub{margin-top:14px;font-size:14px;line-height:18.9px;text-align:left}

  /* 32 CRM (центр): ноутбук 469×257 с x −69; плашки 300 с y 185/301/417 (порядок c→b→a), рамка 2, поля 11/8,
     иконка 14×24 на +5, заголовок 14/18, текст +4 14/20 */
  .crm-shot{margin-top:0;padding:0;overflow:hidden}
  .crm-shot__bg{display:block;width:469px;height:257px;max-width:none;margin:0 0 0 calc(50% - 229px);border-radius:0}
  .crm-shot__overlay{display:flex;flex-direction:column;gap:10px;margin-top:-72px;position:relative;z-index:2}
  .crm-shot__item,.crm-shot__item+.crm-shot__item{width:300px;margin:0;padding:11px 8px;gap:8px;border-width:2px;border-radius:8px}
  .crm-shot__item--c{order:1}.crm-shot__item--b{order:2}.crm-shot__item--a{order:3}
  .crm-shot__item img{width:14px;height:24px;margin-top:5px}
  .crm-shot__item-title{font-size:14px;line-height:18px}
  .crm-shot__item p{margin-top:4px;font-size:14px;line-height:20px}

  /* 33 «Хотите такие лиды…»: карточка во всю ширину 320×327, рамка 3, радиус 16; аватар 13,18 64; заголовок 98 16/20 шириной 225;
     текст 148 14/20.3; кнопка 10,234 300×75; серая подложка с y 155 до низа записи, скругление 30 сверху; низ 55 */
  .cta-panel{margin-top:0;padding:0 0 55px}
  .cta-panel::before{top:155px;left:0;width:100%;border-radius:30px 30px 0 0}
  .cta-panel .container{padding-left:0;padding-right:0}
  .cta-panel__box{margin:0;padding:15px 10px;border-radius:16px}
  .cta-panel__author{flex-direction:column;gap:16px}
  .cta-panel__author img{width:64px;height:64px}
  .cta-panel__title{max-width:225px;font-size:16px;line-height:20px}
  .cta-panel__sub{margin-top:10px;max-width:none;font-size:14px;line-height:20.3px}
  .btn--cta-panel{margin:25px -3px 0;max-width:none}

  /* 34 «Результаты нашей работы в цифрах»: заголовок с y 0, низ 36 */
  .stats-head{padding:0 0 36px}

  /* 35 четыре цифры: карточка 300×139 (последняя 119) шаг +20, рамка 3 + поле 15; число 22/27.5; подпись +35 14/20.3; низ 35 */
  .stats{padding:0 0 35px}
  .stats__grid{grid-template-columns:1fr;gap:20px}
  .stats__card{height:auto;min-height:0;padding:15px}
  .stats__value{font-size:22px;line-height:27.5px}
  .stats__label{margin-top:35px;max-width:none;font-size:14px;line-height:20.3px}

  /* 36 «Step-in-context — ваш надёжный партнёр»: заголовок 10,40; абзацы через 14, 14/20.3; картинка 10,575 310×381;
     цифры в порядке 87 % (300×108) → 480 % (300×77, подпись справа с x 178) → 400+ и 100+ (145×108), первая наезжает на картинку на 40 */
  .about{padding:40px 0 0}
  .about__text p,.about__text h2+p,.about__text h2+p+p{margin-top:14px;font-size:14px;line-height:20.3px}
  .about__media{width:310px;max-width:none;height:381px;margin:36.5px 0 0}
  .about__stats{position:relative;top:auto;right:auto;z-index:1;width:300px;grid-template-columns:145px 145px;gap:10px;margin-top:-40px}
  .about__stat{height:auto;min-height:0;padding:15px}
  .about__stat:nth-child(4){order:1;grid-column:1/-1}
  .about__stat:nth-child(3){order:2;grid-column:1/-1;flex-direction:row;gap:35px}
  .about__stat:nth-child(1),.about__stat:nth-child(2){order:3}
  .about__stat-value{font-size:22px;line-height:27.5px}
  .about__stat-label{margin-top:3.5px;font-size:14px;line-height:20.3px}
  .about__stat:nth-child(4) .about__stat-label{max-width:236px;margin-top:4.5px}
  .about__stat:nth-child(3) .about__stat-value,.about__stat:nth-child(3) .about__stat-label{width:115px;margin-top:0}

  /* 38 диагностика: карточка во всю ширину 320×551, рамка 3 + поле 10; заголовок 13,13; текст 192 14/20.3; «Изучим» 293 14/17.5;
     список 3 колонки по 97 с y 330 шаг 28, маркер 8 на +6; кнопка 13,457 300×66; картинка −162,573 716×382;
     три плашки расчёта 300×79 с y 857 через 10 (поля 8/15, строки 14/18.9 и 14/20.3); низ 35. Все числа — px: vw внутри zoom нельзя */
  .diag{padding-bottom:35px}
  .diag>.container{padding:0}
  .diag__content{margin:0;padding:10px 4px 25px 10px;border-radius:16px}
  .diag__title{font-size:22px;line-height:27.5px}
  .diag__sub{margin-top:14px;font-size:14px;line-height:20.3px}
  .diag__label{margin-top:20px;font-size:14px;line-height:17.5px}
  .diag__list{margin-top:19.5px;grid-template-columns:repeat(3,97px);gap:0}
  .diag__list li{min-height:28px;padding:0 0 0 14px;font-size:14px;line-height:20.3px}
  .diag__list li::before{left:0;top:6px;width:8px;height:8px}
  .btn--diag{width:300px;height:66px;min-height:0;margin-top:15px;padding:17.5px 16px;gap:8px;justify-content:flex-start;font-size:10px;border-radius:11px}
  .btn--diag .btn__icon{width:22px;height:22px}
  .btn--diag .btn__text{font-size:10px;line-height:15.5px;text-align:left}
  .diag__bg{left:0;width:716px;height:382px;max-width:none;margin:22px 0 0 -162px}
  .diag__calc{margin:-98px 10px 0}
  .diag__calc-card{margin-top:10px;padding:8px 15px;border-radius:8px}
  .diag__calc-card:first-child{margin-top:0}
  .diag__calc-label{font-size:14px;line-height:18.9px}
  .diag__calc-label+.diag__calc-row{margin-top:4px}
  .diag__calc-row,.diag__calc-value{font-size:14px}

  /* 39 экспертность: белая плашка 320×1302 радиус 35; заголовок 10,40; абзацы через 14, 14/20.3; «Что формирует…» 410 14/17.5 шириной 295;
     список с 461 через 4, маркер 8 на +9, текст с x 30; картинка 20,847 280×455; низ записи 55 */
  .expertise{padding:0 0 55px}
  .expertise__panel{border-radius:35px}
  .expertise__grid{padding-top:40px}
  .expertise__text p{margin-top:14px;font-size:14px;line-height:20.3px}
  .expertise__text .expertise__label{width:295px;margin-top:15px !important;font-size:14px;line-height:17.5px}
  .expertise__list{margin-top:16px;gap:4px}
  .expertise__list li{width:295px;padding-left:20px;font-size:14px;line-height:20.3px}
  .expertise__list li::before{left:0;top:9px;width:8px;height:8px}
  .expertise__media{display:block;width:280px;height:455px;margin:45px 10px 0}

  /* 40 «Подписывайтесь…»: заголовок с y 0; подпись 97 14/18.9; низ 34.  43 «Ответы на ваши вопросы»: низ 36 */
  .social-head{padding:0 0 34px}
  .social-head__sub{margin-top:14px;font-size:14px;line-height:18.9px}
  .faq-head{padding:0 0 36px}

  /* 41 четыре видео (центр): карточка 300×268 (вторая 286) шаг +20, рамка 3; обложка 294×170; заголовок +15 14/18 с полями 15;
     «Смотреть» +11 12/15, стрелка 14 через 10; низ записи 30 */
  .videos{padding:0 0 30px}
  .videos__grid{grid-template-columns:1fr;gap:20px}
  .videos__card{padding:0 0 15px}
  .videos__media,.videos__media img{width:294px;height:170px}
  .videos__media img{object-fit:cover}
  .videos__title{margin:15px 15px 0;font-size:14px;line-height:18px}
  .videos__link{margin:11px 15px 0;gap:10px;font-size:12px;line-height:15px}

  /* 42 три кнопки соцсетей: 300×60 через 15; низ 60 */
  .social-links{padding:0 0 60px}
  .social-links__grid{gap:15px}
  .social-links__btn{height:60px}

  /* 45 финальный призыв — та же карточка, что в 33, без серой подложки; низ 55 */
  .final-cta{padding:0 0 55px}
  .final-cta .container{padding-left:0;padding-right:0}
  .final-cta__box{margin:0;padding:15px 10px;border-radius:16px}
  .final-cta__text{flex-direction:column;gap:16px}
  .final-cta__text img{width:64px;height:64px}
  .final-cta__title{max-width:225px;font-size:16px;line-height:20px}
  .final-cta__sub{margin-top:10px;max-width:none;font-size:14px;line-height:20.3px}
  .btn--final{width:300px;height:75px;min-height:0;margin:25px -3px 0;max-width:none;padding:22px 16px;gap:8px;justify-content:flex-start}
  .btn--final .btn__icon{width:22px;height:22px}
  .btn--final .btn__text{font-size:10px;line-height:15.5px;text-align:left}


  /* 44 вопросы-ответы — обычный блок Тильды (t668), тянется: карточки с полями 20 от краёв окна через 10; вопрос 18/22.5 с полями 20,
     справа под значок 30 + кружок 40 в 8 от края; низ записи 90 */
  .faq{padding:0 0 90px;overflow-x:hidden;overflow-x:clip}  /* хвост длинного вопроса обрезается краем окна, без прокрутки вбок — как у оригинала */
  .faq .container{width:auto;max-width:none;padding:0 20px}
  .faq__item{margin-bottom:10px;overflow:visible}  /* как t668__wrapper: длинный вопрос на 320 виден за карточкой до края экрана */
  .faq__item:last-child{margin-bottom:0}
  .faq__q{position:relative;display:block;min-height:0;padding:20px 50px 20px 20px;font-size:18px;line-height:22.5px}
  .faq__icon{position:absolute;top:50%;right:8px;width:40px;height:40px;margin-top:-20px}
  .faq__icon::before{width:24px}
  .faq__icon::after{height:24px}
  /* === ТЕЛЕФОН 320: конец === */
}

/* 07 квиз на телефоне (до 639 px): у Тильды t-quiz до 640 — одна раскладка, тянется по ширине окна (замер quiz_probe.py 11.11:
   на 480 те же 22/27,06, 16/23,2, поле 60, 12/18,6, что на 320). Перенесено из блока «ТЕЛЕФОН < 480» (11.11, окно приёмки snap15). */
@media (max-width:639px){
  /* 07 квиз — обычный блок Тильды (t-quiz), не артборд: тянется по ширине окна, без масштаба. Белое поле во всю ширину, поля 30/20/25,
     полоса шага 5 px по верхнему краю; «облако» консультанта (ширина − 69, поля 10/12, фон #f6f6f5, радиус 4) и аватар 54 справа;
     вопрос +28 22/27.06; варианты +20, 60 высотой через 15, поля 10/15, кружок 20, текст 11/11; низ записи 90.
     Подвал с кнопками на телефоне — отдельный блок «07 квиз — подвал на телефоне» в конце файла (11.11, автолистание). */
  .quiz{padding:0 0 90px}
  .quiz .container{width:auto;max-width:none;padding:0}
  .quiz__card{position:relative;display:block;min-height:80vh;padding:30px 20px 25px;border-radius:0}
  .quiz__aside{position:relative;width:calc(100% - 69px);padding:10px 12px;background:#f6f6f5;border-radius:4px}
  .quiz__aside::after{content:"";position:absolute;top:14px;left:100%;border:9px solid transparent;border-left:8px solid #f6f6f5;border-right:0}
  .quiz__author{display:block}
  .quiz__author img{position:absolute;top:0;right:-69px;width:54px;height:54px;border-radius:4px}
  .quiz__name{font-size:16px;line-height:21.6px}
  .quiz__role{font-size:14px;line-height:21.7px;opacity:.5}
  .quiz__aside-title{margin-top:10px;font-size:16px;line-height:21.6px}
  .quiz__list{margin-top:0;gap:0}
  .quiz__list li{font-size:16px;line-height:21.6px}
  .quiz__main{display:block;background:none}
  .quiz__progress{position:absolute;top:0;left:0;right:0;width:auto;height:5px;margin:0}
  .quiz__question{margin-top:28px;font-size:22px;line-height:27.06px;color:#2d2d2d}
  .quiz__options{margin-top:20px;gap:15px}
  .quiz__option{min-height:60px;padding:10px 15px;gap:10px}
  .quiz__radio{width:20px;height:20px}
  .quiz__option input:not(:checked)+.quiz__radio{opacity:.6}
  .quiz__option span:last-child{font-size:11px;line-height:11px}
  .quiz__footer{margin-top:25px}
  /* шаг с телефоном: подпись 16/23,2; плашка ошибки в потоке между шагом и кнопками, до кнопок 50 (t-form__errorbox-middle) */
  .quiz__phone-label{font-size:16px;line-height:23.2px}
  .quiz__errorbox{position:static;margin:0 0 50px;font-size:16px;line-height:23.2px}
}

/* 07 квиз — подвал на телефоне (до 639 px) = t-quiz__btn-wrapper_mobile оригинала (замер quiz_probe.py 11.11 на 320, 480, 640):
   «Шаг: N/6» скрыт; «←» 50×52.4 слева, «Далее» на всю остальную ширину (Unbounded 16/22.4, поля 15/30, r15), зазор 8;
   поля обёртки 25 сверху и 30 снизу, подложка белая .95 с маской 15 px; под обёрткой 5 px подвала.
   Виден, только пока верх квиза выше черты «высота окна − 500»: класс is-shown ставит app.js (как t_quiz__displayStickyBtnWrapper),
   появление снизу за .3 с (fadeInQuiz). Сдвиг по высоте страницы при появлении — как у оригинала. */
@media (max-width:639px){
  .quiz__footer{display:none;margin:0;padding:25px 0 30px;background:rgba(255,255,255,.95);-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 15px,#000);mask-image:linear-gradient(180deg,transparent 0,#000 15px,#000)}
  .quiz__footer.is-shown{display:flex;animation:quizBtnIn .3s forwards}
  .quiz__footer [data-quiz-counter]{display:none}
  .quiz__nav{flex:1;min-width:0}
  .btn--quiz{flex:1 1 0;min-width:0;height:auto;padding:15px 30px;font-size:16px;line-height:22.4px;border-radius:15px}
}
/* до 639 px (t-quiz Тильды до 640; было до 479 — на 480 плашка ошибки и кнопки стояли на 25 px выше, замер quiz_step_diff.py 11.11):
   шаг оригинала с полем 25 снизу, под обёрткой кнопок 5 px — без кнопок от вариантов до низа 30, с кнопками 137.4 */
@media (max-width:639px){
  .quiz__card{padding-bottom:5px}
  .quiz__steps{padding-bottom:25px}
}
@keyframes quizBtnIn{0%{transform:translateY(100%)}to{transform:translateY(0)}}

/* ===== Форма стратсессии = попап T1093 + Zero-форма rec1987349151 оригинала (11.11, окно snap16) =====
   Замер quiz_probe.py --strat на 9 ширинах (эталон с файлами, которые Тильда берёт с CDN на лету, — site/_cdn), сверка — strat_diff.py.
   Окно: слой прокрутки на весь экран (t-popup, overflow-y:auto, курсор-рука), подложка rgba(45,45,45,.8) + blur(4px) отдельным слоем;
   карточка по центру экрана (top:50% − 50%), а если выше окна — сверху с отступом 65 и прокруткой слоя (t-popup__container-static,
   класс is-static ставит app.js); подложка и карточка проявляются за 0,3 с. Крестик 23×23 белый в кнопке 43×43, fixed 10/10 от угла.
   Карточка — Zero-артборд: <480 — артборд 320 с масштабом ×W/320 (рамки Тильда держит 3 и 1 px — делим на масштаб), 480–639, 640–959,
   960–1199, ≥1200 — свои числа (ниже). Варианты связи — плитки-картинки t-img-select: ≤640 три в ряд (33,33 % − 12), выше — 25 % − 13,5;
   зазор 18, подпись через 12, у выбранной — круг 28 #7839f2 с белой галочкой на −7/−7 (scale .5→1 за .2 с).
   Ошибка — Zero-форма с плашкой (showErrorInPopup): рамка поля #f00; под полем через 5 белая подсказка r2 с тенью и стрелкой;
   справа снизу плашка #f95d51 (form-errorbox) — проявляется за 0,3 с, гаснет сама через 10 с, при фокусе/выборе в форме или по крестику. */
@keyframes fm-fade{from{opacity:0}to{opacity:1}}
.form-modal{position:fixed;inset:0;z-index:9000;display:none}
.form-modal.is-open{display:block}
.form-modal__backdrop{position:fixed;inset:0;background:rgba(45,45,45,.8);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;transition:opacity .3s}
.form-modal__scroll{position:fixed;inset:0;overflow-y:auto;cursor:pointer;outline:none}
.form-modal__box{position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);opacity:0;transition:opacity .3s ease-in-out;pointer-events:none}
.form-modal__box.is-static{position:relative;top:0;transform:none;margin:65px auto}
.form-modal.is-shown .form-modal__backdrop,.form-modal.is-shown .form-modal__box{opacity:1}
.form-modal__close{position:fixed;top:10px;right:10px;z-index:2;display:block;width:43px;height:43px;margin:0;padding:10px;border:0;background:transparent;font-size:0;cursor:pointer;transition:opacity .3s ease-in-out}
.form-modal__close-icon{display:block;width:23px;height:23px}
@media (min-width:429px) and (hover:hover){.form-modal__close:hover{opacity:.7}}

.form-modal__dialog{position:relative;width:460px;margin:0 auto;padding:25px;border:3px solid #fff;border-radius:16px;background:#f6f6f5;cursor:default;pointer-events:auto}
.form-modal__head{display:flex;align-items:flex-start}
.form-modal__avatar{flex:none;width:64px;height:64px;border-radius:12px;object-fit:cover}
.form-modal__title{width:205px;margin:9px 0 0 16px;font-family:var(--font-display);font-size:18px;line-height:23px;font-weight:500;color:#2d2d2d}
.form-modal__text{margin-top:18px;font-size:17px;line-height:25px;font-weight:400;color:#5b5b5b}
.form-modal__label{margin-top:26px;font-size:18px;line-height:24px;font-weight:500;color:#2d2d2d}
.form-modal__tiles{display:flex;align-items:flex-start;gap:18px;margin-top:23px}
.form-modal__option{position:relative;display:block;flex:none;width:calc(25% - 13.5px);margin:0;cursor:pointer}
.form-modal__option input{position:absolute;z-index:-1;margin:0;opacity:0}
.form-modal__tile{position:relative;display:block;width:100%;padding-bottom:100%;border-radius:4px;background-position:50%;background-size:cover;background-repeat:no-repeat}
.form-modal__tile--phone{background-image:url(images/tild3230-6631-4362-a130-313432316230__btn__wa.svg)}
.form-modal__tile--tg{background-image:url(images/tild3039-6537-4866-a263-353033663039__btn__tg.svg)}
.form-modal__tile--max{background-image:url(images/tild3761-6463-4966-a438-356466663762__btn__max.svg)}
.form-modal__tile::after{content:"";position:absolute;left:-7px;top:-7px;width:28px;height:28px;border-radius:100%;background:#7839f2 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 76.887 55.552'%3E%3Cpath fill='%23ffffff' d='M34.373 49.541L76.887 5.889 70.739 0 28.426 43.458 6.078 20.632 0 26.585l22.488 22.972 6.029 5.995-.091-.085.091.085 5.856-6.011z'/%3E%3C/svg%3E") 50%/50% no-repeat;opacity:0;transform:scale(.5);transition:all .2s ease-in}
.form-modal__option input:checked~.form-modal__tile::after{opacity:1;transform:scale(1)}
@media (min-width:1024px){.form-modal__option input:focus-visible~.form-modal__tile,.form-modal__option input:focus-visible~.form-modal__tile::after{box-shadow:0 0 0 3px #0096ff}}
.form-modal__tiletext{display:block;margin-top:12px;font-family:var(--font-display);font-size:14px;line-height:1.1;font-weight:300;color:#2d2d2d}
.form-modal .tphone{position:relative;margin-top:15.1px}
.form-modal .tphone__wrap{height:86px;background:#fff}
.form-modal .tphone__input{height:84px}
.form-modal .tphone__error{position:absolute;left:0;top:100%;z-index:2;margin-top:5px;padding:8px 10px;border-radius:2px;background:#fff;box-shadow:0 1px 20px 0 rgba(0,0,0,.2);line-height:normal;animation:fm-fade .3s linear}
.form-modal .tphone__error::after{content:"";position:absolute;left:15%;top:-12px;width:0;height:0;border:6px solid transparent;border-bottom-color:#fff}
.form-modal__submit{display:block;width:100%;height:88px;margin:15px 0 0;padding:0 15px;border:0;border-radius:16px;background:#641bf0;color:#fff;font-family:var(--font-display);font-size:14px;line-height:normal;font-weight:600;text-align:center;cursor:pointer;-webkit-appearance:none;appearance:none}
.form-modal__consent{margin-top:16px;font-size:12px;line-height:16px;font-weight:300;color:#656565;text-align:center}
.form-modal__consent a{color:inherit;text-decoration:inherit}

.form-errorbox{position:fixed;right:20px;bottom:20px;z-index:9001;box-sizing:content-box;min-width:260px;max-width:400px;padding:10px;border-radius:3px;background:#f95d51;box-shadow:0 0 3px 1px rgba(0,0,0,.2);font-family:Arial,sans-serif;text-align:left;animation:fm-fade .3s linear}
.form-errorbox[hidden]{display:none}
.form-errorbox__text{padding:0 10px 10px;color:#fff}
.form-errorbox__item{margin-top:10px;font-family:var(--font-display);font-size:14px;line-height:21.7px;font-weight:300;color:#fff}
.form-errorbox__close{position:absolute;right:8px;top:8px;width:14px;height:14px;margin:0;padding:0;border:0;background:transparent;cursor:pointer}
.form-errorbox__close span{position:absolute;left:0;top:50%;width:100%;height:1px;margin-top:-1px;background:#fff;transform:rotate(45deg)}
.form-errorbox__close span+span{transform:rotate(-45deg)}

@media (max-width:1199px){
  .form-modal__title{width:168px}
  .form-modal__text{width:346px;margin-top:15px;font-size:16px;line-height:23px}
  .form-modal__label,.form-modal__tiles{margin-top:15px}
  .form-modal__consent{margin-top:8px}
}
@media (max-width:959px){
  .form-modal__dialog{padding:17px 15px}
  .form-modal__title{width:235px;margin-top:4px;font-size:22px;line-height:28px}
  .form-modal__text{width:auto;font-size:15px;line-height:22px}
}
/* ≤640 (не 639): у t-img-select и .t-text_xs страницы граница 640/641 — на 640 плитки уже три в ряд, подписи 11 px */
@media (max-width:640px){
  .form-modal__option{width:calc(33.33333% - 12px)}
  .form-modal__tiletext{font-size:11px}
  .form-errorbox__item{font-size:11px;line-height:15.95px}
}
@media (max-width:639px){
  .form-modal__title{width:203px;margin-top:7px;font-size:20px;line-height:25px}
  .form-modal__text{font-size:14px;line-height:20.3px}
  .form-modal__label{margin-top:15.4px;line-height:24.3px}
  .form-modal__tiles{margin-top:14.7px}
  .form-modal .tphone{margin-top:14.6px}
  .form-modal__consent{line-height:16.2px}
}
@media (max-width:480px){.form-errorbox{max-width:280px}}
/* <480: артборд 320 с масштабом ×W/320 (как секции «масштаб» блока «ТЕЛЕФОН < 480»), карточка 300 по центру;
   рамки карточки и поля Тильда держит 3 и 1 px при любом масштабе — делим на масштаб */
@media (max-width:479px){
  .form-modal__dialog{width:300px;zoom:var(--sic-k,1);zoom:tan(atan2(100vw,320px));border-width:calc(3px / var(--sic-k,1));border-width:calc(3px / tan(atan2(100vw,320px)))}
  /* у Тильды тексты тянутся внутри тонкой рамки (заголовок — остаток строки за аватаром), а форма — ровно 264 от x = 18 */
  .form-modal__tiles,.form-modal .tphone,.form-modal__submit{width:264px;margin-left:calc(3px - 3px / var(--sic-k,1));margin-left:calc(3px - 3px / tan(atan2(100vw,320px)))}
  .form-modal .tphone__wrap{border-width:calc(1px / var(--sic-k,1));border-width:calc(1px / tan(atan2(100vw,320px)))}
  .form-modal__title{flex:1;width:auto}
  .form-modal__text{margin-top:16px}
  .form-modal__label{margin-top:15.1px}
  .form-modal__tiles{margin-top:14.4px}
  .form-modal .tphone{margin-top:15.9px}
  .form-modal .tphone__wrap{height:72px}
  .form-modal .tphone__input{height:70px}
  .form-modal__submit{height:76px;font-size:12px}
}
