/* ST3/ST4 — перенос планки макета-эталона ST2 (вариант default) в тему.
   ФАЙЛ СОБИРАЕТСЯ СКРИПТОМ: правки вносить в макет
   01_KLIENTY/001-sidiuslab/02_SEO_AND_SITE/mockups-2026-09-23/st2-default/st2.css
   и пересобирать, а не править здесь. Отличия ST3 (гео) и ST4 (отрасль) от родителя —
   в соседнем st34-blocks.css, он подключается следующим.

   Класс на <body>: p-ceny (правила ceny.css написаны под него) + p-st34 + p-st3|p-st4.
   Служебная панель макета (.m-legend) на страницу сайта не переносится — её правила сняты. */

/* Макет типа «подуслуга без цены» (ST2, вариант default) — страница S1026 «SEO-аудит сайта».
   Задача Б1 плана v0.5: показать владельцу ВИД до вёрстки шаблона темы.

   Что откуда:
   - service.css  — копия из plans/maps/pilot/ (палитра, Rubik, классы s-*; оболочка Сид 3);
   - ceny.css     — копия оттуда же (классы c-* страницы цен S1017 — образец плотности и ритма);
   - st2.css      — этот файл: только то, чего у S1017 нет, плюс починка путей к картинкам.

   Почему на <body> стоит класс p-ceny вместе с p-st2: все правила ceny.css написаны под .p-ceny.
   Макет наследует их как есть (тот же тип страницы, тот же ритм), а p-st2 поднимает специфичность
   там, где вариант default отличается от варианта ceny — прежде всего в первом экране (цены нет)
   и в блоке B07 («параметр → влияние» вместо тарифной таблицы).

   Мобильные стили S1017 (ceny-mobile.css) НЕ подключены: они сделаны под другой первый экран.
   Мобильная раскладка макета — в конце этого файла.

   Макет статический: ни одного скрипта, все сцены — картинками. */

/* ─── пути к картинкам: у Сид 3 они абсолютные (/odyssey/assets/…), на стенде макета их нет.
       Специфичность держим на уровне ceny.css (.p-ceny #b01.s-hero …) — иначе фон страницы цен
       побеждает и первый экран остаётся чёрным. st2.css подключён последним, поэтому выигрываем. ─── */

/* ─── маркер пробела: код + что именно не заполнено ─── */
.p-st34 .c-gap{display:inline-block;border:1px dashed #d9bd7e99;border-radius:3px;padding:2px 9px;font-size:12px;color:var(--gold);line-height:1.5;white-space:normal}
.p-st34 .c-gap b{font-weight:500;letter-spacing:.06em;font-size:11px;color:#e7c98e}

/* ─── B01: первый экран без цены. Иерархия «H1 → срок и цена по запросу → лид → CTA → опыт» ─── */
.p-st34 #b01.s-hero{min-height:700px}
.p-st34 #b01 .s-hero-copy{width:57%;padding-top:40px;padding-bottom:86px}
.p-st34 #b01 .s-eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:20px;color:var(--gold);font-size:11px;letter-spacing:.11em;text-transform:uppercase}
.p-st34 #b01 .s-eyebrow:before{content:'';width:22px;height:1px;background:var(--gold)}
.p-st34 #b01 h1{max-width:700px;font-size:clamp(46px,4.7vw,70px)}
.p-st34 #b01 .c-hero-facts{display:flex;flex-wrap:wrap;gap:0 34px;margin:24px 0 0;padding:0;list-style:none;max-width:700px;border-top:1px solid #d3bd8555;padding-top:20px}
.p-st34 #b01 .c-hero-facts li{display:flex;flex-direction:column;gap:7px;min-width:0;max-width:320px}
.p-st34 #b01 .c-hero-facts li+li{border-left:1px solid #d3bd8555;padding-left:34px}
.p-st34 #b01 .c-hero-facts strong{font-size:23px;font-weight:500;letter-spacing:-.025em;line-height:1.25;color:var(--paper);white-space:normal}
.p-st34 #b01 .c-hero-facts span{font-size:12px;line-height:1.55;color:#b6bcab;max-width:300px}
.p-st34 #b01 .s-hero-intro{margin:22px 0 22px;max-width:560px;font-size:17px}
.p-st34 #b01 .s-hero-actions{align-items:center}
.p-st34 #b01 .c-cta-sub{font-size:13px;line-height:1.5;color:#c9cdb9;max-width:300px}
.p-st34 #b01 .c-cta-note{font-size:12px;line-height:1.6;color:#b3b9a8;margin-top:14px;max-width:540px}
.p-st34 #b01 .c-hero-stats{display:flex;gap:30px;flex-wrap:wrap;border-top:1px solid var(--line);margin:24px 0 0;padding:18px 0 0;list-style:none;max-width:640px}
.p-st34 #b01 .c-hero-stats li{display:flex;flex-direction:column;gap:2px}
.p-st34 #b01 .c-hero-stats b{font-size:22px;font-weight:500;letter-spacing:-.03em;color:var(--paper);line-height:1.2}
.p-st34 #b01 .c-hero-stats span{font-size:11px;color:#aeb4a4}

/* ─── B02: паспорт услуги. Ритм как у планки S1017: широкая первая строка + три ячейки ─── */
.p-st34 #b02 .c-passport-wide{max-width:none;grid-template-columns:repeat(3,minmax(0,1fr))}
.p-st34 #b02 .c-passport-wide>div{grid-template-columns:1fr;gap:9px;padding:24px 26px 26px;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.p-st34 #b02 .c-passport-wide>.c-pass-lead{grid-column:1 / -1;grid-template-columns:150px 1fr;gap:0 24px;align-items:center;padding:22px 26px;border-top:0;border-left:0}
.p-st34 #b02 .c-passport-wide>.c-pass-lead dt{align-self:center}
.p-st34 #b02 .c-passport-wide>div:nth-child(2){border-left:0}
.p-st34 #b02 .c-passport dt{align-self:start;font-size:11px;letter-spacing:.06em;text-transform:uppercase}
.p-st34 #b02 .c-passport dd{font-size:20px;letter-spacing:-.02em}
.p-st34 #b02 .c-passport-wide>.c-pass-lead dd{font-size:26px;font-weight:500}
.p-st34 #b02 .c-passport dd em{font-style:normal;color:#adb5a4;font-size:13.5px;display:block;margin-top:9px;line-height:1.55}

/* ─── B04: механизм + место под схему F24 (её рисует другой агент по F-GRAPHICS-TOOL) ─── */
.p-st34 .c-mech{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:6%;align-items:start}
.p-st34 .c-scheme{border:1px dashed #bfad7d66;border-radius:3px;background:linear-gradient(160deg,#1d2b22,#111d17);min-height:280px;display:flex;flex-direction:column;justify-content:center;gap:12px;padding:32px 30px;text-align:center}
.p-st34 .c-scheme p{font-size:13px;line-height:1.6;color:#aeb4a4;max-width:320px;margin-inline:auto}
.p-st34 .c-scheme .c-gap{align-self:center}

/* ─── B05: шаги «работа / от клиента / выход» ─── */
.p-st34 .c-steps li{padding:24px 24px 22px}
.p-st34 .c-steps li p{font-size:13.5px;line-height:1.6;color:#b7c0ac;margin:0 0 16px}
.p-st34 .c-steps dl{margin:0;border-top:1px solid var(--line);padding-top:12px}
.p-st34 .c-steps dl>div{display:grid;grid-template-columns:72px minmax(0,1fr);gap:0 12px;padding:7px 0}
.p-st34 .c-steps dt{font-size:11px;letter-spacing:.06em;color:#c9b78c;padding-top:2px}
.p-st34 .c-steps dd{margin:0;font-size:13px;line-height:1.55;color:#c4ccb8}

/* ─── B07: «параметр → влияние» (F14). Сумм нет — решение В-5, не пробел ─── */
.p-st34 .c-factors{list-style:none;margin:0;padding:0;counter-reset:f;border-top:1px solid var(--line)}
.p-st34 .c-factors li{counter-increment:f;display:grid;grid-template-columns:44px minmax(0,34%) minmax(0,1fr);gap:0 26px;padding:20px 0;border-bottom:1px solid var(--line);align-items:start}
.p-st34 .c-factors li:before{content:'0' counter(f);font-size:11px;letter-spacing:.09em;color:var(--gold);padding-top:5px}
.p-st34 .c-factors b{font-size:17px;font-weight:500;color:var(--paper);letter-spacing:-.015em;line-height:1.35}
.p-st34 .c-factors span{font-size:14px;line-height:1.65;color:#c0c9b5}
.p-st34 .c-price-intro{background:#e3d8bd;color:#152219;border-radius:2px;padding:26px 30px;max-width:860px;margin-bottom:34px}
.p-st34 .c-price-intro p{color:#3f4d3d;font-size:15px;line-height:1.65;margin:0}
.p-st34 .c-price-intro strong{display:block;font-size:19px;font-weight:600;letter-spacing:-.02em;color:#152219;margin-bottom:8px;line-height:1.3}
.p-st34 .c-modules{margin:34px 0 0;padding:26px 28px;border:1px solid #cbbb9250;border-radius:3px;background:linear-gradient(160deg,#1d2b22,#111d17)}
.p-st34 .c-modules h3{font-size:11px;letter-spacing:.09em;text-transform:uppercase;font-weight:500;color:var(--gold);margin-bottom:16px}
.p-st34 .c-modules ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.p-st34 .c-modules li{border:1px solid #cbbb9250;border-radius:30px;padding:9px 16px;font-size:13px;color:#c4ccb8}
.p-st34 .c-modules p{font-size:12px;color:#9ca893;margin-top:16px;line-height:1.7}
.p-st34 .c-price-actions{display:flex;align-items:center;justify-content:space-between;gap:26px;flex-wrap:wrap;margin-top:30px;padding-top:24px;border-top:1px solid var(--line)}
.p-st34 .c-price-actions>div{max-width:440px}
.p-st34 .c-price-actions strong{display:block;font-size:19px;font-weight:500;letter-spacing:-.02em;color:var(--paper);line-height:1.3}
.p-st34 .c-price-actions p{font-size:13px;margin-top:6px;color:#aeb4a4}
.p-st34 .c-price-actions .s-button{flex-shrink:0}

/* ─── B08: доказательства ─── */
.p-st34 .c-proof-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:start;margin-bottom:26px}
.p-st34 .c-proof-media{position:relative;border:1px solid #bfaf8759;background:#0d1812;border-radius:4px;padding:14px;box-shadow:0 22px 50px #0004}
.p-st34 .c-proof-media img{width:100%;display:block;aspect-ratio:1.6;object-fit:cover;object-position:top;border-radius:2px}
.p-st34 .c-proof-media figcaption{font-size:11px;color:#9ca893;margin-top:12px;line-height:1.5}
.p-st34 .c-proof-copy h3{font-size:34px;margin-bottom:6px}
.p-st34 .c-proof-copy .c-proof-type{font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--gold);margin-bottom:14px}
.p-st34 .c-proof-copy dl{margin:18px 0 0}
.p-st34 .c-proof-copy dl>div{border-top:1px solid var(--line);padding:14px 0}
.p-st34 .c-proof-copy dt{font-size:11px;letter-spacing:.06em;color:#c9b78c;margin-bottom:7px}
.p-st34 .c-proof-copy dd{margin:0;font-size:14px;line-height:1.6;color:#c4ccb8}
.p-st34 .c-case{margin:0}
.p-st34 .c-case .c-gap{align-self:flex-start;margin:2px 0 4px}
.p-st34 .c-proof-media{margin:0}
.p-st34 .c-archive{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;margin-top:30px;padding-top:26px;border-top:1px solid var(--line)}
.p-st34 .c-archive h3{font-size:11px;letter-spacing:.09em;text-transform:uppercase;font-weight:500;color:var(--gold);margin-bottom:14px}
.p-st34 .c-archive p{font-size:14px;line-height:1.7;color:#c0c9b5}
.p-st34 .c-archive ul{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.p-st34 .c-archive li{border:1px solid #cbbb9250;border-radius:30px;padding:8px 14px;font-size:12.5px;color:#c4ccb8}

/* ─── B09: вопросы (каркас s-faq-* хаба) ─── */
.p-st34 #b09 .s-faq-intro{font-size:15px;max-width:380px;color:#c4ccb8}
.p-st34 #b09 .s-faq-list summary{font-size:18px;font-weight:500;line-height:1.35;padding-block:19px}
.p-st34 #b09 .s-faq-list summary:after{top:12px}
.p-st34 #b09 .s-faq-list details p{padding-bottom:20px;max-width:680px}
.p-st34 #b09 .s-faq-list details p b{font-weight:500;color:var(--paper)}
.p-st34 #b09 .c-faq-ask{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:16px;padding-top:22px}
.p-st34 #b09 .c-faq-ask>div{max-width:420px}
.p-st34 #b09 .c-faq-ask strong{display:block;font-size:19px;font-weight:500;letter-spacing:-.02em;color:var(--paper);line-height:1.3}
.p-st34 #b09 .c-faq-ask p{font-size:13px;margin-top:6px;color:#aeb4a4}

/* ─── B10: как начать ─── */
.p-st34 #b10.s-contact{text-align:left;padding:88px 0 96px;min-height:0}
.p-st34 #b10 .c-contact-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:7%;align-items:start}
.p-st34 #b10 h2{font-size:clamp(42px,4.8vw,68px);margin:0;max-width:560px}
.p-st34 #b10 .c-lead{margin:22px 0 0;max-width:500px;font-size:17px;color:#c7cbb6}
.p-st34 #b10 .c-cta{margin-top:30px;max-width:500px}
.p-st34 #b10 .c-cta .s-button{margin-top:0;min-width:290px}
.p-st34 #b10 .c-cta-hint{font-size:13px;line-height:1.65;color:#b3b9a8;margin:14px 0 0;max-width:460px}
.p-st34 #b10 .c-next-title{font-size:11px;letter-spacing:.09em;color:#cdbb93;margin:0 0 6px}
.p-st34 #b10 .c-next{list-style:none;margin:0;padding:0;counter-reset:next;border-top:1px solid #dfcca54d}
.p-st34 #b10 .c-next li{counter-increment:next;display:grid;grid-template-columns:38px minmax(0,1fr);gap:0 14px;padding:16px 0 17px;border-bottom:1px solid #dfcca52b}
.p-st34 #b10 .c-next li:before{content:'0' counter(next);font-size:11px;letter-spacing:.09em;color:var(--gold);padding-top:4px}
.p-st34 #b10 .c-next b{font-size:16px;font-weight:500;color:var(--paper);letter-spacing:-.015em;line-height:1.35}
.p-st34 #b10 .c-direct{font-size:12px;color:#b3b9a8;margin:26px 0 0}
.p-st34 #b10 .c-contact-grid{justify-content:flex-start;gap:10px;margin-top:12px}
.p-st34 #b10 .c-contact-grid a{flex:1 1 auto;justify-content:space-between;gap:10px;min-height:48px;padding:0 16px;font-size:15px;background:#0b151299}
.p-st34 #b10 .c-contact-grid small{font-size:11px;color:#9ca893;font-weight:400}
.p-st34 #b10 .c-contact-meta{margin:16px 0 0;font-size:12px;line-height:1.7;color:#b3b9a8}

/* ═══ планшет ═══ */
@media(max-width:1150px){
  .p-st34 #b01 .s-hero-copy{width:64%}
  .p-st34 .c-mech{grid-template-columns:1fr;gap:30px}
  .p-st34 .c-scheme{min-height:200px}
  .p-st34 .c-factors li{grid-template-columns:36px minmax(0,38%) minmax(0,1fr);gap:0 20px}
  .p-st34 .c-proof-main{grid-template-columns:1fr;gap:26px}
  .p-st34 .c-archive{grid-template-columns:1fr;gap:18px}
}

/* ═══ телефон: одна колонка везде; сцена уходит под текст рамкой ═══ */
@media(max-width:768px){
  body.p-st34 .c-section{padding-block:56px}
  body.p-st34 .c-head{display:block;margin-bottom:26px}
  body.p-st34 .c-head>p{margin-top:16px;max-width:none;font-size:14px;line-height:1.6}
  body.p-st34 h2{font-size:clamp(30px,8.4vw,38px);line-height:1.06}
  body.p-st34 .s-faq-layout h2{font-size:clamp(30px,8.4vw,38px)}
  body.p-st34 .c-lead{font-size:15px}
  body.p-st34 .c-note{font-size:12px;margin-top:18px;max-width:none}

  /* липкая навигация — шесть пунктов одной строкой со скроллом внутри себя */
  body.p-st34 .s-service-nav .s-wrap{min-height:48px}
  body.p-st34 .s-service-nav strong{display:none}
  body.p-st34 .s-service-nav nav{width:100%;justify-content:flex-start;flex-wrap:nowrap;gap:18px;overflow-x:auto;font-size:11px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  body.p-st34 .s-service-nav nav::-webkit-scrollbar{display:none}
  body.p-st34 .s-service-nav nav a{white-space:nowrap;padding:15px 0;flex:0 0 auto}

  /* B01 */
  body.p-st34 #b01.s-hero{min-height:0;background:radial-gradient(ellipse at 50% 0%,#25322b73,transparent 62%),var(--ink)}
  body.p-st34 #b01.s-hero:before{display:none}
  body.p-st34 #b01 .s-breadcrumb{padding-top:16px;flex-wrap:wrap;row-gap:4px}
  body.p-st34 #b01 .s-hero-copy{width:100%;padding:20px 0 0}
  body.p-st34 #b01 .s-eyebrow{margin-bottom:14px}
  body.p-st34 #b01 h1{max-width:none;font-size:clamp(33px,9vw,50px);line-height:1.05}
  body.p-st34 #b01 .c-hero-facts{display:flex;flex-direction:column;gap:0;margin-top:16px;padding-top:0;max-width:none;border-top:0}
  body.p-st34 #b01 .c-hero-facts li{max-width:none;gap:5px;padding:12px 0;border-top:1px solid #d3bd8555}
  body.p-st34 #b01 .c-hero-facts li+li{border-left:0;padding-left:0}
  body.p-st34 #b01 .c-hero-facts strong{font-size:18px;white-space:normal}
  body.p-st34 #b01 .c-hero-facts span{font-size:12px;max-width:none}
  body.p-st34 #b01 .s-hero-intro{font-size:15px;line-height:1.6;margin:14px 0 16px;max-width:none}
  body.p-st34 #b01 .s-hero-actions{gap:12px;display:block}
  body.p-st34 #b01 .s-hero-actions .s-button{width:100%}
  body.p-st34 #b01 .c-cta-sub{max-width:none;margin-top:10px;font-size:13px}
  body.p-st34 #b01 .c-cta-note{margin-top:10px;max-width:none}
  body.p-st34 #b01 .c-hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px;padding-top:14px;max-width:none}
  body.p-st34 #b01 .c-hero-stats b{font-size:20px}
  body.p-st34 #b01 .c-hero-stats span{font-size:10.5px;line-height:1.4}
  body.p-st34 #b01 .s-hero-copy:after{content:'';display:block;height:min(58vw,240px);margin:18px 0 0;border:1px solid #bfad7d3d;border-radius:3px;background:url('../img/scene-subservice-T2-hero-768.webp') 62% 45%/cover no-repeat;box-shadow:0 22px 50px #0006}
  body.p-st34 #b01 .s-wrap{padding-bottom:30px}

  /* B02–B09 */
  body.p-st34 #b02 .c-passport-wide{grid-template-columns:1fr}
  body.p-st34 #b02 .c-passport-wide>div,
  body.p-st34 #b02 .c-passport-wide>.c-pass-lead{grid-template-columns:1fr;gap:6px;padding:16px 20px;border-left:0;border-top:1px solid var(--line)}
  body.p-st34 #b02 .c-passport-wide>div:first-child{border-top:0}
  body.p-st34 #b02 .c-passport dd,
  body.p-st34 #b02 .c-passport-wide>.c-pass-lead dd{font-size:17px}
  body.p-st34 #b02 .c-passport dd em{font-size:13px;margin-top:6px}
  body.p-st34 .c-two{grid-template-columns:1fr;gap:14px}
  body.p-st34 .c-box{padding:22px 20px}
  body.p-st34 .c-box h3{font-size:20px}
  body.p-st34 .c-box li{font-size:14px}
  body.p-st34 .c-prose{max-width:none}
  body.p-st34 .c-prose p{font-size:15px;line-height:1.7}
  body.p-st34 .c-steps{grid-template-columns:1fr;gap:10px}
  body.p-st34 .c-steps li{padding:20px 18px}
  body.p-st34 .c-steps b{font-size:17px}
  body.p-st34 .c-steps dl>div{grid-template-columns:66px minmax(0,1fr);gap:0 10px}
  body.p-st34 .c-price-intro{padding:22px 20px}
  body.p-st34 .c-price-intro strong{font-size:17px}
  body.p-st34 .c-price-intro p{font-size:14px}
  body.p-st34 .c-factors li{grid-template-columns:1fr;gap:8px;padding:18px 0}
  body.p-st34 .c-factors li:before{padding-top:0}
  body.p-st34 .c-factors b{font-size:16px}
  body.p-st34 .c-factors span{font-size:13.5px}
  body.p-st34 .c-modules{padding:22px 18px}
  body.p-st34 .c-price-actions{display:block}
  body.p-st34 .c-price-actions .s-button{width:100%;margin-top:18px}
  body.p-st34 .c-cases,body.p-st34 .c-proof-main{grid-template-columns:1fr;gap:14px}
  body.p-st34 .c-proof-copy h3{font-size:28px}
  body.p-st34 .c-case img{height:auto}
  body.p-st34 .c-case div{padding:16px 18px 18px}
  body.p-st34 .c-case h3{font-size:19px}
  body.p-st34 #b09.s-faq-layout{gap:22px}
  body.p-st34 #b09 .s-faq-list summary{font-size:15.5px;padding:16px 36px 16px 0;line-height:1.4}
  body.p-st34 #b09 .s-faq-list summary:after{top:10px}
  body.p-st34 #b09 .s-faq-list details p{font-size:13.5px;line-height:1.7;padding-bottom:18px}
  body.p-st34 #b09 .c-faq-ask{display:block}
  body.p-st34 #b09 .c-faq-ask .s-button{width:100%;margin-top:18px}

  /* B10 */
  /* шапка на телефоне: на макете вместо меню Сид 3 стояла живая кнопка к B10 (меню требовало скрипта).
     18.10.2026 (проверка перед выгрузкой, строка 7): правило body.p-st34 .s-header>.s-button{display:inline-flex}
     снято — кнопка «Бесплатная консультация» (11 px) выпадала второй строкой под логотип, шапка 160 px
     против 75 на остальных шаблонах (S1030, S1074–S1076). Меню теперь открывает пол blocks.js и st34.js,
     кнопка с подписью живёт в выпадающем меню (.s-nav-cta, header.php) — как на услугах и статьях. */

  body.p-st34 #b10.s-contact{padding:60px 0 64px;background-position:62% 36%;background-image:linear-gradient(90deg,#0b1512 4%,#0b1512e8 34%,#0b1512c4 58%,#0b1512d6 100%),linear-gradient(0deg,#0b1512,#0b151200 34%),url('../img/scene-contacts-T8-hero-768.webp')}
  body.p-st34 #b10 .c-contact-layout{grid-template-columns:1fr;gap:0}
  body.p-st34 #b10 h2{font-size:clamp(32px,8.6vw,42px)}
  body.p-st34 #b10 .c-lead{font-size:15px;max-width:none}
  body.p-st34 #b10 .c-cta{max-width:none}
  body.p-st34 #b10 .c-cta .s-button{min-width:0;width:100%}
  body.p-st34 #b10 .c-after{padding-top:34px}
  body.p-st34 #b10 .c-contact-grid{flex-direction:column;align-items:stretch}
  body.p-st34 #b10 .c-contact-grid a{width:100%}

  body.p-st34 .m-legend h2{font-size:13px;line-height:1.5;letter-spacing:.07em}
  body.p-st34 .m-legend dl{grid-template-columns:1fr;gap:0}
  body.p-st34 .m-legend dl>div{grid-template-columns:96px minmax(0,1fr);gap:0 10px}
}

@media(max-width:400px){
  body.p-st34 .c-section{padding-block:48px}
  body.p-st34 h2,body.p-st34 .s-faq-layout h2{font-size:32px}
  body.p-st34 #b01 h1{font-size:34px}
  body.p-st34 #b01 .c-hero-stats{gap:9px}
  body.p-st34 #b01 .c-hero-stats b{font-size:19px}
  body.p-st34 #b01 .c-hero-stats span{font-size:10px}
  body.p-st34 #b01 .s-hero-copy:after{height:210px}
  body.p-st34 .s-service-nav nav{gap:15px;font-size:10.5px}
  body.p-st34 #b10 .c-contact-grid a{font-size:14px;padding:0 13px}
}

/* ─── Г2 · «что будет после нажатия» — под кнопкой, а не в подвале ───────────────────────
   Подпись .c-cta-after печатает odyssey_st34_cta_after() у каждой кнопки, открывающей бриф
   (первый экран B01, расчёт B07, вопрос B09, контакт B10). Базовый вид первого экрана уже
   задан в ceny.css (.p-ceny #b01 .c-cta-after) — здесь только места, которых там нет.
   У флекс-строк (.c-price-actions, .c-faq-ask) подпись печатается СНАРУЖИ ряда с классом
   .c-cta-after-row: внутри ряда flex-basis:100% вместе с max-width строку не переносит
   (перенос считается по ограниченному размеру), и обещание вставало бы сбоку от кнопки.
   .c-cta-after-right прижимает её под кнопку там, где ряд разведён по краям (B09). */
.p-st34 .c-cta-after{font-size:12px;line-height:1.6;color:#b3b9a8;margin:12px 0 0;max-width:470px}
.p-st34 .c-cta-after-row{margin:10px 0 0;max-width:470px}
.p-st34 .c-cta-after-right{margin-left:auto;text-align:right}
.p-st34 #b10 .c-cta .c-cta-after{margin:12px 0 0;max-width:460px}
.p-st34 #b10 .c-cta-hint{margin-top:10px}

@media(max-width:768px){
  body.p-st34 .c-cta-after-row{margin:12px 0 0;max-width:none}
  body.p-st34 .c-cta-after-right{margin-left:0;text-align:left}
  body.p-st34 #b10 .c-cta .c-cta-after{max-width:none}
}
