/* pages.css — внутренние страницы в дизайн-системе v3.
   Только то, чего нет в style.css: блог, портфолио, статья, контакты, юрдоки.
   Все значения берутся из токенов v3 (--ink/--milk/--accent/--line/--font-*),
   чтобы страницы были неотличимы от главной. 11.08.2026 */

/* ---------- каркас внутренней страницы ---------- */
.pg{padding:calc(var(--head-h) + clamp(40px,7vh,90px)) var(--pad) 0}
/* ВАЖНО: без max-width — .site-head/.site-foot/.hero в v3 тоже идут во всю ширину
   и отбиваются только var(--pad). Ограничение здесь ломало вертикаль логотипа и H1. */
.pg-wide{max-width:var(--maxw)}
.pg-narrow{max-width:820px}

.crumbs{display:flex;flex-wrap:wrap;gap:8px;align-items:center;
  font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;color:var(--milk-faint);margin-bottom:22px}
.crumbs a{color:var(--milk-faint);text-decoration:none;transition:color .25s}
.crumbs a:hover{color:var(--accent)}
.crumbs span[aria-current]{color:var(--milk-dim)}

.pg-head{display:flex;flex-direction:column;gap:16px;margin-bottom:clamp(34px,5vw,60px)}
.pg-h1{font-family:var(--font-display);font-weight:800;line-height:.98;letter-spacing:-.02em;
  font-size:clamp(2.1rem,6vw,4.4rem);color:var(--milk);text-wrap:balance;margin:0}
.pg-h1 em{font-style:normal;color:var(--accent)}
.pg-lead{color:var(--milk-dim);font-size:clamp(1rem,1.5vw,1.2rem);max-width:62ch;margin:0}

/* ---------- сетка карточек (блог + портфолио) ---------- */
.grid-cards{display:grid;gap:clamp(16px,2vw,26px);
  grid-template-columns:repeat(auto-fill,minmax(320px,1fr));padding-bottom:clamp(60px,10vh,120px)}
.grid-cards.two{grid-template-columns:repeat(auto-fill,minmax(430px,1fr))}

.pcard{position:relative;display:flex;flex-direction:column;overflow:hidden;
  border:1px solid var(--line);border-radius:22px;background:var(--ink-2);
  text-decoration:none;color:inherit;transition:border-color .35s,transform .35s}
.pcard:hover{border-color:var(--line-strong);transform:translateY(-3px)}
.pcard-shot{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--ink-3);flex:0 0 auto}
.pcard-shot img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.16,1,.3,1)}
.pcard:hover .pcard-shot img{transform:scale(1.04)}
.pcard-noimg{display:flex;align-items:center;justify-content:center;height:100%;
  font-family:var(--font-mono);font-size:12px;color:var(--milk-faint)}
.pcard-body{display:flex;flex-direction:column;gap:10px;padding:clamp(18px,2.2vw,26px);flex:1 1 auto}
.pcard-tag{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--accent)}
.pcard-h{font-family:var(--font-display);font-weight:700;letter-spacing:-.01em;line-height:1.18;
  font-size:clamp(1.05rem,1.7vw,1.32rem);color:var(--milk);margin:0;text-wrap:balance}
.pcard-p{color:var(--milk-dim);font-size:.95rem;line-height:1.55;margin:0;flex:1 1 auto}
.pcard-meta{display:flex;gap:14px;align-items:center;margin-top:6px;
  font-family:var(--font-mono);font-size:11.5px;color:var(--milk-faint)}

/* обложки статей — 1200×630, режем меньше */
.grid-cards.posts .pcard-shot{aspect-ratio:1200/630}
.grid-cards.posts .pcard-shot img{object-fit:cover;object-position:center}

/* ---------- фильтры ---------- */
.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:clamp(26px,4vw,44px)}
.filters a{font-family:var(--font-body);font-size:.93rem;font-weight:600;padding:9px 18px;
  border:1.5px solid var(--line);border-radius:999px;color:var(--milk-dim);text-decoration:none;
  transition:border-color .25s,color .25s,background .25s}
.filters a:hover{border-color:var(--line-strong);color:var(--milk)}
.filters a.is-on{background:var(--accent);border-color:var(--accent);color:var(--ink)}

/* ---------- пагинация ---------- */
.pager{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;
  padding:0 0 clamp(60px,10vh,120px);font-family:var(--font-mono);font-size:13px}
.pager a,.pager span{min-width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;
  padding:0 12px;border:1px solid var(--line);border-radius:12px;color:var(--milk-dim);text-decoration:none;transition:.25s}
.pager a:hover{border-color:var(--accent);color:var(--milk)}
.pager .is-on{background:var(--accent);border-color:var(--accent);color:var(--ink)}
.pager .is-off{opacity:.35}

/* ---------- текст статьи ---------- */
.prose{color:var(--milk-dim);font-size:clamp(1rem,1.25vw,1.09rem);line-height:1.72;max-width:70ch}
.prose > * + *{margin-top:1.15em}
.prose h2{font-family:var(--font-display);font-weight:800;color:var(--milk);line-height:1.16;
  letter-spacing:-.015em;font-size:clamp(1.4rem,2.6vw,2rem);margin-top:2em;text-wrap:balance}
.prose h3{font-family:var(--font-display);font-weight:700;color:var(--milk);line-height:1.25;
  font-size:clamp(1.15rem,1.9vw,1.4rem);margin-top:1.7em;text-wrap:balance}
.prose p{margin:0}
.prose a{color:var(--accent);text-decoration:underline;text-underline-offset:3px;
  text-decoration-thickness:1px;text-decoration-color:rgba(255,106,43,.45)}
.prose a:hover{text-decoration-color:var(--accent)}
.prose strong,.prose b{color:var(--milk);font-weight:700}
.prose ul,.prose ol{padding-left:1.3em;margin:0}
.prose li{margin:.45em 0}
.prose li::marker{color:var(--accent)}
.prose blockquote{border-left:2px solid var(--accent);padding:2px 0 2px 20px;margin:0;color:var(--milk)}
.prose img{max-width:100%;height:auto;border-radius:18px;border:1px solid var(--line);display:block}
.prose code{font-family:var(--font-mono);font-size:.88em;background:var(--ink-3);
  border:1px solid var(--line);border-radius:6px;padding:.12em .4em;color:var(--cream)}
.prose pre{background:var(--ink-3);border:1px solid var(--line);border-radius:16px;
  padding:18px 20px;overflow-x:auto}
.prose pre code{background:none;border:0;padding:0}
.prose table{width:100%;border-collapse:collapse;font-size:.95rem;
  display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
.prose table tbody,.prose table thead{display:table;width:100%;min-width:520px}
.prose table th,.prose table td{white-space:normal}
.prose th,.prose td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:top}
.prose th{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.08em;
  text-transform:uppercase;color:var(--milk-faint);font-weight:600}
.prose-wrap{overflow-x:auto}

/* ---------- шапка статьи ---------- */
.art-meta{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;
  font-family:var(--font-mono);font-size:12px;color:var(--milk-faint);margin-bottom:26px}
.art-meta .dot{width:3px;height:3px;border-radius:50%;background:var(--milk-faint)}
.art-cover{border-radius:22px;overflow:hidden;border:1px solid var(--line);
  margin-bottom:clamp(28px,4vw,48px);background:var(--ink-3)}
.art-cover img{width:100%;height:auto;display:block}

.art-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(30px,4vw,56px);
  padding-bottom:clamp(60px,10vh,110px)}
@media(min-width:1080px){.art-layout{grid-template-columns:minmax(0,1fr) 300px}}
.art-side{display:flex;flex-direction:column;gap:18px;align-self:start;position:sticky;top:calc(var(--head-h) + 24px)}
.side-box{border:1px solid var(--line);border-radius:20px;padding:22px;background:var(--ink-2)}
.side-box h4{font-family:var(--font-display);font-weight:700;font-size:1rem;color:var(--milk);margin:0 0 12px}
.side-box a{display:block;color:var(--milk-dim);text-decoration:none;font-size:.93rem;
  padding:7px 0;border-bottom:1px solid var(--line);transition:color .25s}
.side-box a:last-child{border-bottom:0}
.side-box a:hover{color:var(--accent)}

/* ---------- автор ---------- */
.author{display:flex;gap:16px;align-items:center;border:1px solid var(--line);
  border-radius:20px;padding:20px 22px;background:var(--ink-2);margin-top:clamp(34px,5vw,54px)}
.author-ava{width:52px;height:52px;border-radius:50%;flex:0 0 auto;object-fit:cover;
  background:var(--ink-3);border:1px solid var(--line)}
.author-n{font-family:var(--font-display);font-weight:700;color:var(--milk);font-size:1rem;margin:0}
.author-r{color:var(--milk-faint);font-size:.86rem;margin:2px 0 0}

/* ---------- CTA в конце ---------- */
.pg-cta{border:1px solid var(--line-strong);border-radius:24px;
  padding:clamp(28px,4vw,52px);background:var(--ink-2);text-align:center;
  display:flex;flex-direction:column;align-items:center;gap:16px;
  margin:clamp(40px,6vw,72px) 0 clamp(60px,10vh,120px)}
.pg-cta h2{font-family:var(--font-display);font-weight:800;line-height:1.08;letter-spacing:-.02em;
  font-size:clamp(1.5rem,3.4vw,2.5rem);color:var(--milk);margin:0;text-wrap:balance}
.pg-cta h2 em{font-style:normal;color:var(--accent)}
.pg-cta p{color:var(--milk-dim);max-width:56ch;margin:0}

/* ---------- контакты ---------- */
.cnt-grid{display:grid;gap:clamp(14px,2vw,22px);
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));padding-bottom:clamp(40px,6vw,70px)}
.cnt-card{border:1px solid var(--line);border-radius:22px;padding:clamp(20px,2.6vw,30px);
  background:var(--ink-2);display:flex;flex-direction:column;gap:8px;text-decoration:none;
  transition:border-color .3s,transform .3s}
a.cnt-card:hover{border-color:var(--accent);transform:translateY(-3px)}
.cnt-l{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--accent)}
.cnt-v{font-family:var(--font-display);font-weight:700;font-size:clamp(1.05rem,1.7vw,1.3rem);
  color:var(--milk);line-height:1.25;word-break:break-word}
.cnt-n{color:var(--milk-faint);font-size:.88rem}

/* ---------- юридические документы ---------- */
.legal{padding-bottom:clamp(60px,10vh,110px)}
.legal .prose{max-width:78ch}
.legal .prose h2{font-size:clamp(1.2rem,2vw,1.55rem)}

/* ---------- пусто ---------- */
.empty{border:1px dashed var(--line-strong);border-radius:22px;padding:44px 22px;text-align:center;
  color:var(--milk-faint);font-family:var(--font-mono);font-size:13px}

@media(max-width:640px){
  .grid-cards,.grid-cards.two{grid-template-columns:1fr}
  .art-side{position:static}
}

/* ============ ПОСАДОЧНЫЕ СТРАНИЦЫ УСЛУГ (перенос с v2 на v3, 11.08.2026) ============ */
.lp-hero{padding:calc(var(--head-h) + clamp(38px,6vh,80px)) var(--pad) clamp(30px,5vh,60px)}
.lp-h1{font-family:var(--font-display);font-weight:800;line-height:1;letter-spacing:-.025em;
  /* 12.08.2026: нижняя граница была 2.1rem — слово «индивидуально» на 390px давало 3px
     горизонтального скролла. Ниже 487px кегль чуть меньше; break-word — страховка. */
  font-size:clamp(1.92rem,6.4vw,5rem);color:var(--milk);margin:14px 0 0;max-width:20ch;
  text-wrap:balance;overflow-wrap:break-word}
.lp-h1 .word{display:inline-block}
.lp-h1 .accent,.lp-h1 .w-accent{color:var(--accent)}
.lp-h1 .struck,.lp-h1 .w-strike{color:var(--milk-faint);text-decoration:line-through;
  text-decoration-color:var(--accent);text-decoration-thickness:3px}
.lp-sub{color:var(--milk-dim);font-size:clamp(1rem,1.5vw,1.2rem);max-width:64ch;margin:20px 0 0;line-height:1.6}
.lp-sub b{color:var(--milk)}
.lp-sub a{color:var(--accent)}
.lp-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px;align-items:center}
.lp-trust{display:flex;flex-wrap:wrap;gap:clamp(18px,3vw,44px);margin-top:clamp(26px,4vw,44px);
  padding-top:clamp(20px,3vw,30px);border-top:1px solid var(--line)}
.lp-trust-i{display:flex;flex-direction:column;gap:3px}
.lp-trust-i b{font-family:var(--font-display);font-weight:800;font-size:clamp(1.2rem,2.2vw,1.7rem);color:var(--milk)}
.lp-trust-i span{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.09em;color:var(--milk-faint)}
.lp-note{color:var(--milk-faint);font-size:.92rem;line-height:1.6;margin:18px 0 0;max-width:72ch}
.lp-note b{color:var(--milk-dim)}
.lp-note a{color:var(--accent)}
.lp-note-c{text-align:center;margin-left:auto;margin-right:auto}

.lp-sec{padding:clamp(56px,9vh,120px) var(--pad)}
.lp-sec .sec-head{padding:0}
.lp-prose{max-width:74ch}

/* бегущая строка */
.lp-ticker{overflow:hidden;border-block:1px solid var(--line);padding:18px 0;margin-block:clamp(26px,3.4vw,44px);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.lp-ticker-in{display:flex;gap:22px;align-items:center;white-space:nowrap;width:max-content;
  animation:lp-run 34s linear infinite;font-family:var(--font-mono);font-size:12.5px;
  letter-spacing:.16em;text-transform:lowercase;color:var(--milk-faint)}
.lp-ticker-in i{color:var(--accent);font-style:normal}
@keyframes lp-run{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.lp-ticker-in{animation:none}}

/* форматы */
.lp-cards{display:grid;gap:clamp(14px,1.8vw,22px);grid-template-columns:repeat(auto-fit,minmax(270px,1fr))}
.lp-card{border:1px solid var(--line);border-radius:22px;padding:clamp(20px,2.4vw,28px);
  background:var(--ink-2);display:flex;flex-direction:column;gap:12px;transition:border-color .3s,transform .3s}
.lp-card:hover{border-color:var(--line-strong);transform:translateY(-3px)}
.lp-card.accent{border-color:rgba(255,106,43,.42)}
.lp-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.lp-card-ic{font-size:1.5rem;color:var(--accent);line-height:1}
.lp-card-price{font-family:var(--font-mono);font-size:12.5px;letter-spacing:.06em;color:var(--cream);
  border:1px solid var(--line-strong);border-radius:999px;padding:5px 12px;white-space:nowrap}
.lp-card h3{font-family:var(--font-display);font-weight:700;font-size:clamp(1.05rem,1.7vw,1.28rem);
  color:var(--milk);margin:0;line-height:1.22;text-wrap:balance}
.lp-card ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:9px}
.lp-card li{color:var(--milk-dim);font-size:.94rem;line-height:1.5;padding-left:18px;position:relative}
.lp-card li::before{content:'—';position:absolute;left:0;color:var(--accent)}

/* что входит */
.lp-chips{display:grid;gap:clamp(12px,1.6vw,18px);grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.lp-chip{border:1px solid var(--line);border-radius:18px;padding:18px 20px;background:var(--ink-2);
  display:flex;flex-direction:column;gap:6px}
.lp-chip-ic{color:var(--accent);font-size:1.15rem;line-height:1}
.lp-chip b{font-family:var(--font-display);font-weight:700;color:var(--milk);font-size:1rem}
.lp-chip span:last-child{color:var(--milk-faint);font-size:.88rem;line-height:1.45}

/* конвейер */
.lp-pipe{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:clamp(24px,3vw,38px)}
.lp-pipe-i{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;color:var(--milk-dim);
  border:1px solid var(--line);border-radius:999px;padding:8px 16px;background:var(--ink-2)}
.lp-pipe i{color:var(--accent);font-style:normal}
.lp-get{display:grid;gap:clamp(12px,1.6vw,18px);grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.lp-get-i{border-left:2px solid var(--accent);padding-left:16px;display:flex;flex-direction:column;gap:4px}
.lp-get-i b{font-family:var(--font-display);font-weight:700;color:var(--milk);font-size:1.02rem}
.lp-get-i span{color:var(--milk-faint);font-size:.9rem}

/* сравнение */
.lp-vs-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:22px;background:var(--ink-2)}
.lp-vs{border-collapse:collapse;width:100%;min-width:760px;font-size:.93rem}
.lp-vs th,.lp-vs td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:top;color:var(--milk-dim)}
.lp-vs thead th{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--milk-faint);background:var(--ink-3);white-space:nowrap}
.lp-vs thead th.us{color:var(--accent)}
.lp-vs tbody th{font-family:var(--font-body);font-weight:600;color:var(--milk);white-space:nowrap}
.lp-vs td.us{background:rgba(255,106,43,.06);color:var(--milk)}
.lp-vs tr:last-child th,.lp-vs tr:last-child td{border-bottom:0}
.lp-vs .m{font-family:var(--font-mono);font-weight:700;margin-right:6px}
.lp-vs .m-yes{color:#5FD08A}.lp-vs .m-mid{color:#E8B45A}.lp-vs .m-no{color:#E8776A}

/* основатель */
.lp-founder{border:1px solid var(--line-strong);border-radius:24px;padding:clamp(26px,4vw,48px);background:var(--ink-2)}
.lp-founder-n{font-family:var(--font-display);font-weight:800;color:var(--milk);
  font-size:clamp(1.4rem,3vw,2.2rem);margin:12px 0 4px;letter-spacing:-.02em}
.lp-founder-r{color:var(--accent);font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;margin:0 0 16px}
.lp-founder-q{color:var(--milk-dim);font-size:clamp(1rem,1.4vw,1.12rem);line-height:1.62;max-width:62ch;margin:0}

/* форма сметы */
/* блок сметы держим в общем контейнере, а не в узкой центрированной колонке */
.lp-final{max-width:none;margin-left:0;margin-right:0}
.lp-final > *{max-width:62ch}
.lp-final h2{max-width:20ch}
.lp-form{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;width:100%;max-width:660px;margin-top:6px}
.lp-in{flex:1 1 200px;min-width:180px;padding:12px 18px;border:1.5px solid var(--line);border-radius:999px;
  background:transparent;color:var(--milk);font:inherit;font-size:.95rem}
.lp-in::placeholder{color:var(--milk-faint)}
.lp-in:focus{outline:none;border-color:var(--accent)}
.lp-form .btn{margin:0}

@media(max-width:640px){
  .lp-cards,.lp-chips,.lp-get{grid-template-columns:1fr}
  .lp-trust{gap:16px}
}

/* Единый контейнер: .sec-head в v3 ограничен 1440px и центрируется, из-за чего
   секции уезжали внутрь относительно шапки и героя. На лендингах выравниваем всё по --pad. */
.lp-sec{padding-left:var(--pad);padding-right:var(--pad)}
.lp-sec > .sec-head{max-width:none;margin-left:0;margin-right:0;padding:0}
.lp-sec > .acc{max-width:none;margin:0}

/* Шапка на внутренних страницах: в v3 у неё мягкий градиент под герой главной,
   и контент читается сквозь неё при скролле. Внутри сайта делаем плотную подложку. */
body.inner .site-head::before{
  background:rgba(7,8,11,.92);
  -webkit-mask-image:none;mask-image:none;
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);opacity:1}
body.inner .site-head{opacity:1;visibility:visible}

/* Этапы: у v3 .step жёсткая ширина 640px — он сделан под горизонтальную ленту главной.
   Здесь свои классы, чтобы ничего оттуда не наследовать. */
.lp-steps-grid{display:grid;gap:clamp(14px,1.8vw,22px);
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.lp-step{border:1px solid var(--line);border-radius:22px;padding:clamp(20px,2.4vw,28px);
  background:var(--ink-2);display:flex;flex-direction:column;gap:9px;min-width:0}
.lp-step.accent{border-color:rgba(255,106,43,.42)}
.lp-step-n{font-family:var(--font-mono);font-size:12px;letter-spacing:.1em;color:var(--accent)}
.lp-step h3{font-family:var(--font-display);font-weight:700;font-size:1.08rem;color:var(--milk);
  margin:0;line-height:1.25;text-wrap:balance}
.lp-step p{color:var(--milk-dim);font-size:.94rem;line-height:1.55;margin:0;flex:1 1 auto}
.lp-step-t{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.08em;color:var(--milk-faint)}

/* каталог услуг */
a.lp-card.srv-card{text-decoration:none;color:inherit}
.srv-desc{color:var(--milk-dim);font-size:.94rem;line-height:1.55;margin:0;flex:1 1 auto}
.srv-more{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.09em;color:var(--accent);margin-top:2px}


/* сообщения формы лендинга (13.08.26) */
.lp-ok, .lp-err {
  max-width: 640px; margin: 0 auto 16px; padding: 14px 18px; border-radius: 14px;
  font-size: .96rem; line-height: 1.45; text-align: center;
}
.lp-ok { background: rgba(255, 106, 43, .12); border: 1px solid var(--accent); color: var(--milk); }
.lp-err { background: rgba(255, 80, 80, .10); border: 1px solid rgba(255, 80, 80, .5); color: var(--milk); }


/* ============================================================
   ИНТЕРАКТИВНЫЙ СЛОЙ ЛЕНДИНГОВ (13.08.2026)
   Включается только флагом 'interactive' в config/landings/*.php.
   Все классы свои (lp-*) — ничего из главной не переиспользуем,
   кроме .btn*/.kicker/.lead/.sec-head/.acc*/.scene/.chip.
   ============================================================ */

/* ---------- герой в две колонки (текст + квиз) ---------- */
.lp-hero-main{min-width:0}
@media(min-width:1080px){
  .lp-hero-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,430px);
    gap:clamp(28px,3.4vw,60px);align-items:start}
  .lp-hero-split .lp-h1{font-size:clamp(2.2rem,3.9vw,3.7rem);max-width:15ch}
  .lp-hero-split .lp-sub{max-width:50ch;font-size:clamp(.98rem,1.15vw,1.08rem)}
  .lp-hero-split .lp-trust{gap:clamp(16px,2vw,30px)}
  .lp-hero-split .lp-note{max-width:52ch}
}

/* ---------- мини-квиз ---------- */
.lp-quiz{position:relative;min-width:0}
/* ВАЖНО: без отрицательных left/right — они дают горизонтальный скролл на 820/390px
   (проверено 13.08.26: -8% давало +28px на 820 и +8px на 390). Свечение расширяет blur. */
.lp-quiz::before{content:'';position:absolute;inset:-10% 0 auto 0;height:72%;z-index:0;pointer-events:none;
  background:radial-gradient(60% 60% at 50% 40%,rgba(255,106,43,.16),transparent 70%);filter:blur(34px)}
.lp-quiz-form{position:relative;z-index:1;border:1px solid var(--line-strong);border-radius:24px;
  background:linear-gradient(160deg,var(--ink-3),var(--ink-2));padding:clamp(20px,2.6vw,30px);
  display:flex;flex-direction:column;gap:0}
.lp-q-head{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}
.lp-q-h{font-family:var(--font-display);font-weight:800;letter-spacing:-.02em;line-height:1.12;
  font-size:clamp(1.25rem,2.1vw,1.6rem);color:var(--milk);margin:0;text-wrap:balance}
.lp-q-sub{color:var(--milk-dim);font-size:.93rem;line-height:1.5;margin:0}

.lp-q-bar{display:none;align-items:center;gap:12px;margin-bottom:20px;
  font-family:var(--font-mono);font-size:11.5px;letter-spacing:.08em}
.lp-quiz-form.is-on .lp-q-bar{display:flex}
.lp-q-track{flex:1;height:4px;border-radius:4px;background:var(--line);overflow:hidden}
.lp-q-track i{display:block;height:100%;width:0;border-radius:4px;
  background:linear-gradient(90deg,var(--accent),var(--accent-2));transition:width .45s cubic-bezier(.65,0,.35,1)}
.lp-q-pct{width:38px;text-align:right;color:var(--accent)}

.lp-q-step+.lp-q-step{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}
.lp-quiz-form.is-on .lp-q-step{display:none;margin-top:0;padding-top:0;border-top:0}
.lp-quiz-form.is-on .lp-q-step.is-active{display:block;animation:lp-q-in .38s ease}
@keyframes lp-q-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.lp-quiz-form.is-on .lp-q-step.is-active{animation:none}}
.lp-q-done{display:none}

.lp-q-q{font-family:var(--font-display);font-weight:700;font-size:clamp(1.02rem,1.5vw,1.18rem);
  color:var(--milk);margin:0;line-height:1.25;display:flex;gap:9px;align-items:baseline;text-wrap:balance}
.lp-q-n{font-family:var(--font-mono);font-size:.66em;color:var(--accent);flex:0 0 auto}
.lp-q-hint{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;color:var(--milk-faint);margin:7px 0 0}

.lp-q-opts{display:grid;gap:9px;grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));margin-top:14px}
.lp-q-opt{position:relative;cursor:pointer;min-width:0}
.lp-q-opt input{position:absolute;opacity:0;pointer-events:none}
.lp-q-face{display:flex;flex-direction:column;gap:3px;height:100%;padding:12px 14px;
  border:1.5px solid var(--line-strong);border-radius:14px;
  transition:border-color .22s,background .22s,transform .22s}
.lp-q-face b{font-family:var(--font-body);font-weight:600;font-size:.94rem;color:var(--milk);line-height:1.25}
.lp-q-face i{font-style:normal;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.05em;color:var(--milk-faint)}
.lp-q-opt:hover .lp-q-face{border-color:var(--accent);transform:translateY(-2px)}
.lp-q-opt input:checked+.lp-q-face{border-color:var(--accent);background:rgba(255,106,43,.14)}
.lp-q-opt input:checked+.lp-q-face b{color:var(--accent)}
.lp-q-opt input:focus-visible+.lp-q-face{outline:2px solid var(--accent);outline-offset:2px}

.lp-q-nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;align-items:center}
.lp-q-next,.lp-q-prev{display:none}
.lp-quiz-form.is-on .lp-q-next,.lp-quiz-form.is-on .lp-q-prev{display:inline-flex}

.lp-q-fields{display:grid;gap:12px;margin-top:14px}
.lp-q-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.lp-q-field span{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--milk-dim)}
.lp-q-field input{font-family:var(--font-body);font-size:.98rem;color:var(--milk);background:rgba(0,0,0,.28);
  border:1.5px solid var(--line-strong);border-radius:12px;padding:12px 15px;transition:border-color .22s;width:100%;min-width:0}
.lp-q-field input:focus{outline:none;border-color:var(--accent)}
.lp-q-field input::placeholder{color:var(--milk-faint)}

.lp-q-sum{display:none;flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px}
.lp-quiz-form.is-on .lp-q-sum{display:flex}
.lp-q-sum-l{font-family:var(--font-mono);font-size:11px;letter-spacing:.07em;color:var(--milk-faint)}
.lp-q-sum-c{display:flex;flex-wrap:wrap;gap:6px}
.lp-q-sum-c span{font-family:var(--font-mono);font-size:11px;padding:5px 10px;border-radius:999px;
  border:1px solid var(--line-strong);color:var(--milk)}
.lp-q-err{color:#ff8a6a;font-size:.88rem;margin:10px 0 0;min-height:0}
.lp-q-err:empty{margin:0}
.lp-q-legal{color:var(--milk-faint);font-size:.8rem;line-height:1.45;margin:12px 0 0}
.lp-q-legal a{color:var(--accent)}
.lp-q-msg{margin-top:14px}

.lp-quiz-form.is-on .lp-q-done.is-active{display:flex;flex-direction:column;align-items:center;
  text-align:center;gap:12px;padding:10px 0}
.lp-q-mark{width:58px;height:58px;border-radius:50%;background:var(--accent);color:var(--ink);
  display:flex;align-items:center;justify-content:center;font-size:1.7rem;font-weight:800}
.lp-q-done h3{font-family:var(--font-display);font-weight:800;font-size:1.25rem;color:var(--milk);margin:0}
.lp-q-done p{color:var(--milk-dim);font-size:.93rem;margin:0;max-width:38ch}

/* ---------- полоса цифр со счётчиком ---------- */
.lp-stats{padding:0 var(--pad)}
.lp-stats{margin-top:clamp(18px,2.4vw,30px)}
.lp-stats-in{display:grid;gap:clamp(12px,1.6vw,18px);
  grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));
  border-block:1px solid var(--line);padding:clamp(20px,2.6vw,30px) 0}
.lp-stat{display:flex;flex-direction:column;gap:4px;min-width:0}
.lp-stat b{font-family:var(--font-display);font-weight:800;letter-spacing:-.02em;
  font-size:clamp(1.35rem,2.4vw,2.05rem);color:var(--milk);line-height:1}
/* только прямой потомок: span со счётчиком лежит ВНУТРИ <b> и должен наследовать крупный кегль */
.lp-stat > span{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;color:var(--milk-faint);line-height:1.4}
.lp-stat b span{font:inherit;color:inherit;letter-spacing:inherit}

/* ---------- карточки форматов: раскрытие + выбор ---------- */
.lp-card-x{cursor:default}
.lp-card-x:hover{border-color:var(--accent);transform:translateY(-4px)}
.lp-card-more{display:flex;flex-direction:column;gap:10px;margin-top:2px;
  border-top:1px solid var(--line);padding-top:12px}
.lp-card-more[hidden]{display:none}
.lp-card-more p{margin:0;color:var(--milk-dim);font-size:.9rem;line-height:1.5}
.lp-card-more b{display:block;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--accent);font-weight:600;margin-bottom:3px}
.lp-card-act{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:auto;padding-top:12px}
.lp-card-tog,.lp-card-pick{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.06em;
  border:1px solid var(--line-strong);border-radius:999px;padding:8px 14px;color:var(--milk-dim);
  background:none;cursor:pointer;transition:border-color .22s,color .22s,background .22s;white-space:nowrap}
.lp-card-tog:hover,.lp-card-pick:hover{border-color:var(--accent);color:var(--milk)}
.lp-card-tog i{font-style:normal;color:var(--accent);display:inline-block;transition:transform .28s}
.lp-card-x.is-open .lp-card-tog i{transform:rotate(45deg)}
.lp-card-pick{background:rgba(255,106,43,.12);border-color:rgba(255,106,43,.42);color:var(--accent)}
.lp-card-pick:hover{background:rgba(255,106,43,.2);color:var(--accent)}

/* ---------- лента шагов (свой класс, .step из v3 не трогаем) ---------- */
.lp-flow{position:relative}
.lp-flow-track{display:flex;gap:clamp(12px,1.6vw,20px);overflow-x:auto;scroll-snap-type:x proximity;
  padding-bottom:14px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.lp-flow-track::-webkit-scrollbar{display:none}
.lp-flow-i{flex:1 0 min(280px,78vw);scroll-snap-align:start;min-width:0;position:relative;
  border:1px solid var(--line);border-radius:22px;padding:clamp(20px,2.4vw,28px);background:var(--ink-2);
  display:flex;flex-direction:column;gap:9px;transition:border-color .3s,transform .3s,background .3s}
.lp-flow-i:hover{border-color:var(--accent);transform:translateY(-4px)}
.lp-flow-i.accent{border-color:rgba(255,106,43,.42)}
.lp-flow-i.is-on{border-color:var(--accent);background:linear-gradient(160deg,rgba(255,106,43,.09),var(--ink-2))}
.lp-flow-n{font-family:var(--font-mono);font-size:12px;letter-spacing:.1em;color:var(--accent)}
.lp-flow-i h3{font-family:var(--font-display);font-weight:700;font-size:1.06rem;color:var(--milk);
  margin:0;line-height:1.25;text-wrap:balance}
.lp-flow-i p{color:var(--milk-dim);font-size:.93rem;line-height:1.55;margin:0;flex:1 1 auto}
.lp-flow-t{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.08em;color:var(--milk-faint)}
.lp-flow-bar{height:2px;border-radius:2px;background:var(--line);overflow:hidden;margin-top:4px}
.lp-flow-bar i{display:block;height:100%;width:22%;border-radius:2px;
  background:linear-gradient(90deg,var(--accent),var(--accent-2));transition:width .3s ease,transform .3s ease}
.lp-flow-cta{display:flex;justify-content:center;margin-top:clamp(22px,3vw,34px)}

/* конвейер: бегущая подсветка */
.lp-pipe-i{transition:border-color .3s,color .3s,background .3s}
[data-lp-pipe] .lp-pipe-i.is-on{border-color:var(--accent);color:var(--milk);background:rgba(255,106,43,.12)}

/* ---------- липкая панель CTA ---------- */
.lp-sticky{position:fixed;left:10px;right:10px;bottom:10px;z-index:55;display:none;
  align-items:center;gap:10px;padding:10px 12px;border-radius:18px;
  border:1px solid var(--line-strong);background:rgba(12,14,19,.94);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  box-shadow:0 18px 40px -18px rgba(0,0,0,.9);
  transform:translateY(140%);transition:transform .35s cubic-bezier(.16,1,.3,1)}
.lp-sticky.is-in{transform:none}
.lp-sticky-t{display:flex;flex-direction:column;gap:2px;flex:1 1 auto;min-width:0}
.lp-sticky-t b{font-family:var(--font-body);font-weight:700;font-size:.9rem;color:var(--milk);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lp-sticky-t i{font-style:normal;font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:var(--milk-faint);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lp-sticky .btn{flex:0 0 auto;white-space:nowrap}
.lp-sticky-tg{flex:0 0 auto;width:40px;height:40px;border-radius:12px;border:1px solid var(--line-strong);
  display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:11px;
  letter-spacing:.06em;color:var(--milk-dim);transition:border-color .22s,color .22s}
.lp-sticky-tg:hover{border-color:var(--accent);color:var(--accent)}
@media(max-width:900px){
  .lp-sticky[aria-hidden="false"]{display:flex}
  body.has-lp-sticky .site-foot{padding-bottom:96px}
}

/* ---------- узкие экраны ---------- */
@media(max-width:1079px){
  .lp-quiz{margin-top:clamp(28px,5vw,44px)}
}
@media(max-width:520px){
  .lp-q-opts{grid-template-columns:1fr}
  .lp-card-act{gap:6px}
  .lp-card-tog,.lp-card-pick{padding:7px 12px;font-size:11px}
}

/* ============================================================
   SCROLL-МОУШЕН ЛЕНДИНГОВ (13.08.2026)
   Живёт только на страницах с флагом 'interactive' (сейчас — /sites).
   ПРИНЦИП: базовое состояние — БЕЗ анимаций, всё видно и читается.
   Классы is-pin / is-seq / is-pinned / is-scrub вешает app.js и только
   тогда, когда эффект реально включён (есть GSAP, не reduced-motion,
   нужная ширина). Нет JS — страница остаётся обычным лендингом.
   ============================================================ */

/* ---------- герой: слои параллакса ---------- */
.lp-hero-x{position:relative;isolation:isolate}
.lp-hero-x > .lp-hero-main,.lp-hero-x > .lp-quiz{position:relative;z-index:1}
.lp-hero-fx{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;contain:paint}
.lp-hero-fx > span{position:absolute;display:block;will-change:transform}
.lp-fx-grid{inset:-22% -3% -26% -3%;opacity:.62;
  background-image:linear-gradient(to right,rgba(244,239,230,.05) 1px,transparent 1px),
                   linear-gradient(to bottom,rgba(244,239,230,.05) 1px,transparent 1px);
  background-size:82px 82px;
  -webkit-mask-image:radial-gradient(78% 62% at 24% 36%,#000 0%,transparent 76%);
          mask-image:radial-gradient(78% 62% at 24% 36%,#000 0%,transparent 76%)}
.lp-fx-orb{left:-14%;top:-30%;width:min(64vw,760px);aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle at 50% 50%,rgba(255,106,43,.13),transparent 66%)}
.lp-fx-ring{right:-8%;top:-16%;width:min(44vw,540px);aspect-ratio:1;border-radius:50%;
  border:1px solid rgba(244,239,230,.075);
  box-shadow:0 0 0 58px rgba(244,239,230,.024) inset,0 0 0 118px rgba(244,239,230,.016) inset}
@media(max-width:820px){.lp-fx-ring{display:none}.lp-fx-grid{opacity:.42}}

/* ---------- раскрытие заголовков маской по прогрессу ---------- */
/* Окно маски выше строки на выносные элементы (padding), а отрицательный
   margin возвращает line-box на место: высота заголовка не меняется ни на
   пиксель — проверено сравнением с обычным текстом на 390 и 1280. */
.lp-mw{display:inline-block;overflow:hidden;vertical-align:bottom;
  padding:.2em 0 .24em;margin:-.2em 0 -.24em}
.lp-mw > i{display:inline-block;font-style:inherit;will-change:transform}

/* ---------- манифест: заливка слов по прогрессу ---------- */
.lp-manifest{display:flex;justify-content:center;padding-block:clamp(48px,8vh,110px)}
.lp-fill{font-family:var(--font-display);font-weight:700;letter-spacing:-.022em;line-height:1.26;
  font-size:clamp(1.4rem,4.1vw,2.9rem);text-align:center;max-width:23ch;margin:0;
  color:var(--milk);text-wrap:balance}
.lp-fw{display:inline-block}

/* ============================================================
   СБОРКА САЙТА — pin + scrub + рисующийся SVG
   ============================================================ */
.lp-build{position:relative;padding:clamp(52px,8vh,110px) var(--pad)}
.lp-build-fx{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;contain:paint}
.lp-build-fx > span{position:absolute;display:block;will-change:transform}
.lp-bfx-grid{inset:-24% -3% -28% -3%;opacity:.5;
  background-image:linear-gradient(to right,rgba(244,239,230,.045) 1px,transparent 1px),
                   linear-gradient(to bottom,rgba(244,239,230,.045) 1px,transparent 1px);
  background-size:64px 64px;
  -webkit-mask-image:radial-gradient(72% 58% at 70% 46%,#000 0%,transparent 74%);
          mask-image:radial-gradient(72% 58% at 70% 46%,#000 0%,transparent 74%)}
.lp-bfx-orb{right:-16%;top:-14%;width:min(58vw,680px);aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle at 50% 50%,rgba(255,106,43,.11),transparent 68%)}

.lp-b-pin{position:relative;z-index:1;max-width:var(--maxw);margin-inline:auto;width:100%}
.lp-b-head{display:flex;flex-direction:column;gap:11px;margin-bottom:clamp(22px,3.4vw,40px)}
.lp-b-h{font-family:var(--font-display);font-weight:800;letter-spacing:-.026em;line-height:1.06;
  font-size:clamp(1.7rem,3.3vw,2.85rem);color:var(--milk);margin:0;text-wrap:balance}
.lp-b-lede{color:var(--milk-dim);font-size:clamp(.95rem,1.2vw,1.06rem);line-height:1.6;margin:0;max-width:58ch}

.lp-b-grid{display:grid;gap:clamp(22px,3vw,52px);align-items:start}
@media(min-width:900px){.lp-b-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center}}

.lp-b-vis{margin:0;display:flex;flex-direction:column;gap:11px;min-width:0;
  position:sticky;top:calc(var(--head-h) + 12px);z-index:2}
/* Своей рамки у холста нет: рамку «браузера» рисует сам SVG по скроллу,
   две скруглённые рамки одна в одной читались бы как ошибка вёрстки. */
.lp-bsvg{width:100%;height:auto;display:block;border-radius:18px;
  background:radial-gradient(120% 90% at 30% 0%,#0F131A,#08090D 70%)}
.lp-bsvg [data-g] > *{will-change:opacity,transform}
/* Счётчик дня, метки и полоса готовности показывают ПРОГРЕСС СКРОЛЛА.
   Если движения нет (нет JS, reduced-motion), они врали бы «0%» при полной
   схеме — поэтому по умолчанию скрыты и включаются классом is-live из app.js. */
.lp-b-hud,.lp-b-bar{display:none}
.lp-b-hud.is-live{display:flex}
.lp-b-bar.is-live{display:block}
.lp-b-hud{align-items:center;gap:clamp(10px,1.6vw,20px);flex-wrap:wrap;
  font-family:var(--font-mono);font-size:11.5px;letter-spacing:.08em;color:var(--milk-faint)}
.lp-b-hud b{color:var(--accent);font-weight:600;font-variant-numeric:tabular-nums}
.lp-b-hud-r{margin-left:auto}
.lp-b-days{display:flex;gap:5px}
.lp-b-days span{width:20px;height:20px;border-radius:6px;border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--milk-faint);
  transition:border-color .3s,color .3s,background .3s}
.lp-b-days span.is-on{border-color:var(--accent);color:var(--accent);background:rgba(255,106,43,.12)}
.lp-b-bar{height:2px;border-radius:2px;background:var(--line);overflow:hidden;transform:translateZ(0)}
.lp-b-bar i{display:block;height:100%;width:100%;transform-origin:0 50%;
  background:linear-gradient(90deg,var(--accent),var(--accent-2))}

.lp-b-panes{display:flex;flex-direction:column;gap:clamp(18px,2.6vw,28px);min-width:0}
.lp-b-p{border-left:2px solid var(--line);padding-left:clamp(14px,1.6vw,20px);
  display:flex;flex-direction:column;gap:9px;transition:border-color .35s ease}
.lp-b-p.is-on{border-color:var(--accent)}
.lp-b-d{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.11em;color:var(--accent)}
.lp-b-p h3{font-family:var(--font-display);font-weight:700;letter-spacing:-.015em;
  font-size:clamp(1.08rem,1.8vw,1.42rem);color:var(--milk);margin:0;line-height:1.2;text-wrap:balance}
.lp-b-p p{color:var(--milk-dim);font-size:clamp(.93rem,1.1vw,1.02rem);line-height:1.62;margin:0;max-width:46ch}
.lp-b-m{font-family:var(--font-mono);font-size:11px;letter-spacing:.09em;color:var(--milk-faint)}

/* режим залипания (десктоп, ставит app.js): панели наложены и меняются по прогрессу */
.lp-build.is-pin{min-height:100vh;display:flex;align-items:center;
  padding-block:clamp(16px,3vh,40px);overflow:clip}
.lp-build.is-pin .lp-b-vis{position:static;max-width:min(100%,700px)}
.lp-build.is-pin .lp-b-panes{position:relative;min-height:clamp(210px,26vh,270px)}
.lp-build.is-pin .lp-b-p{position:absolute;inset:0;margin:0}
.lp-build.is-pin .lp-b-head{margin-bottom:clamp(14px,2.2vh,28px)}

/* режим последовательного раскрытия (мобильный, ставит app.js) */
.lp-build.is-seq .lp-bsvg [data-g]{opacity:.07;transition:opacity .55s ease}
.lp-build.is-seq .lp-bsvg [data-g].is-on{opacity:1}
/* липкая схема должна быть непрозрачной — иначе текст панелей просвечивает сквозь неё */
@media(max-width:899px){
  .lp-b-vis{background:var(--ink);padding-block:10px 12px;margin-block:-10px -12px}
  .lp-b-vis::after{content:'';position:absolute;left:0;right:0;top:100%;height:18px;pointer-events:none;
    background:linear-gradient(var(--ink),transparent)}
  .lp-b-vis{position:sticky}
}

/* ============================================================
   ЛЕНТА ШАГОВ — горизонтальный проезд по вертикальному скроллу
   ============================================================ */
.lp-flow-end{justify-content:flex-start}
.lp-flow-end .btn{align-self:flex-start;margin-top:4px}
.lp-steps.is-pinned{min-height:100vh;display:flex;flex-direction:column;justify-content:center;
  padding-block:clamp(18px,4vh,44px);overflow:clip}
.lp-steps.is-pinned .sec-head{margin-bottom:clamp(20px,3.4vh,44px)}
.lp-flow.is-pinned{overflow:clip;overflow-clip-margin:0}
.lp-flow.is-pinned .lp-flow-i:hover{transform:none}
.lp-flow.is-pinned .lp-flow-track{overflow:visible;width:max-content;scroll-snap-type:none;padding-bottom:0;
  will-change:transform}
.lp-flow.is-pinned .lp-flow-i{flex:0 0 min(520px,40vw);scroll-snap-align:none}
.lp-flow.is-pinned .lp-flow-bar{margin-top:clamp(18px,2.4vh,28px)}
.lp-flow-bar.is-scrub i{width:100%;transform:scaleX(0);transform-origin:0 50%;transition:none}

/* ---------- если движения быть не должно ---------- */
@media(prefers-reduced-motion:reduce){
  .lp-hero-fx,.lp-build-fx{display:none}
  .lp-build.is-pin,.lp-steps.is-pinned{min-height:0;display:block;overflow:visible}
  .lp-build.is-pin .lp-b-panes{position:static;min-height:0}
  .lp-build.is-pin .lp-b-p{position:static}
  .lp-build.is-seq .lp-bsvg [data-g]{opacity:1}
  .lp-b-days span,.lp-b-p{transition:none}
}


/* концепты по нишам (13.08.26) */
.lp-concepts .lead { max-width: 62ch; margin-top: 10px; }
.lp-concept .pcard-shot { position: relative; overflow: hidden; }
.lp-concept .pcard-shot img { transition: transform .5s cubic-bezier(.2,.6,.2,1); }
.lp-concept:hover .pcard-shot img { transform: scale(1.035); }
.lp-concept .pcard-meta { color: var(--accent); }
.lp-concepts-note {
  margin: clamp(18px, 2.4vw, 28px) 0 0;
  font-family: var(--font-mono); font-size: 12px; letter-spacing: .04em;
  color: var(--milk-faint); max-width: 70ch;
}
@media (prefers-reduced-motion: reduce) { .lp-concept:hover .pcard-shot img { transform: none; } }

/* узкие экраны: кнопка ленты шагов не раздвигает страницу (13.08.26) */
@media (max-width: 380px){
  .lp-flow-cta .btn{white-space:normal;text-align:center;max-width:100%;line-height:1.3;padding:12px 18px}
}
