/* ST8 «Служебные страницы» (contacts · about · legal · thanks · logo) — задача В плана v0.5.1.
   Поверх service.css (палитра, s-*, шрифт Rubik) и blocks.css, которые functions.php подключает
   всем шаблонам ST3–ST8. Планка вёрстки — макет 02_SEO_AND_SITE/mockups-2026-09-23/st8-contacts.

   ceny.css теме ST8 НЕ подключается (её правила висят на классе .p-ceny страницы цен), поэтому
   общий ритм секции — .c-section / .c-head / .c-note / .c-gap / .c-steps — повторён здесь под
   .p-st8 один в один с ceny.css: так страница ST8 совпадает с макетом и не тянет чужие
   правила блоков страницы цен (.p-ceny #bNN из blocks.css). Префикс c-. */

/* ---------- общий ритм секции (эквивалент ceny.css под .p-st8) ---------- */
.p-st8 .c-section{padding-block:90px;position:relative}
.p-st8 .c-section+.c-section{border-top:1px solid var(--line)}
.p-st8 .c-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:42px}
.p-st8 .c-head>p{max-width:420px;font-size:15px}
.p-st8 .c-head h2{margin:0}
/* Шапка без подводки: колонки не заводим — иначе H2 слева, справа пустое поле
   (критик 23.09: «правая колонка под лид-абзац пустая, справа дыра»). */
.p-st8 .c-head-solo{display:block}
/* Чип-маркер служебной пометки макета — та же конвенция, что у пробелов карты. */
.p-st8 .c-tag{display:inline-block;border:1px dashed #d9bd7e99;border-radius:3px;padding:1px 8px;font-size:10px;letter-spacing:.06em;text-transform:none;color:var(--gold);white-space:nowrap}
.p-st8 .c-note{font-size:12px;color:#9ca893;line-height:1.7;margin-top:22px;max-width:720px}
.p-st8 .c-gap{display:inline-block;border:1px dashed #d9bd7e99;border-radius:3px;padding:1px 8px;font-size:12px;color:var(--gold);white-space:nowrap}
.p-st8 .c-steps{list-style:none;margin:0;padding:0;counter-reset:step;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.p-st8 .c-steps li{counter-increment:step;border:1px solid #cbbb9250;border-radius:3px;padding:24px 24px 26px;background:linear-gradient(160deg,#1d2b22,#111d17);font-size:14px;color:#c4ccb8;line-height:1.6}
.p-st8 .c-steps li:before{content:'0' counter(step);display:block;font-size:12px;color:var(--gold);margin-bottom:14px;letter-spacing:.08em}
.p-st8 .c-steps b{display:block;font-size:19px;font-weight:500;color:var(--paper);letter-spacing:-.02em;margin-bottom:8px;line-height:1.25}
.p-st8 .c-gapline{display:flex;gap:10px;flex-wrap:wrap;font-size:12px;line-height:1.65;color:#9ca893;margin:16px 0 0;max-width:640px}
.p-st8 .c-gapline .c-gap{flex-shrink:0}
.p-st8 .c-hero .c-gapline{margin-top:24px}
/* Посетителю чипы пробелов приходят скрытыми узлами (odyssey_gap_chip): строка остаётся
   в разметке ради гейта Г3-5, но на экране от неё не должно быть даже отступа. Прячем
   ту строку, где нет НИ ОДНОГО видимого чипа; у редактора и по ?gaps=1 чипы видимые,
   и правило не срабатывает. */
.p-st8 .c-gapline:not(:has(> .c-gap:not(.c-gap--hidden))){display:none}

/* блок формы mu-plugin внутри карточки макета: своя рамка не нужна — она у .c-form-card.
   Сетка в две колонки: имя и контакт стоят в одной строке (ритм макета), остальное — во всю
   ширину. Разметку формы даёт общий mu-plugin, менять её нельзя, поэтому первые два поля
   выбираются порядком div-ов внутри формы (1-й div — скрытая ловушка спама). */
.p-st8 .c-form-card .slb-form{border:0;padding:0;margin:0;background:none;max-width:none;
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px;align-items:start}
.p-st8 .c-form-card .slb-form>*{grid-column:1/-1}
.p-st8 .c-form-card .slb-field:nth-of-type(2),
.p-st8 .c-form-card .slb-field:nth-of-type(3){grid-column:span 1}
.p-st8 .c-form-card .slb-form-heading{font-size:clamp(28px,2.6vw,38px);line-height:1.1;letter-spacing:-.035em;margin:0}
.p-st8 .c-form-card .slb-form-lead{font-size:15px;color:#c9cdb9;margin-top:12px;max-width:460px}
.p-st8 .c-form-card .slb-field{margin-top:16px}
.p-st8 .c-form-card .slb-field label{display:block;font-size:12px;letter-spacing:.03em;color:#c8ccb5}
.p-st8 .c-form-card .slb-field input,.p-st8 .c-form-card .slb-field textarea{display:block;width:100%;margin-top:8px;padding:13px 14px;min-height:50px;background:#0d1a13;border:1px solid #b6a57755;border-radius:2px;color:var(--paper);font-size:16px}
.p-st8 .c-form-card .slb-field textarea{min-height:104px;resize:vertical;line-height:1.5}
.p-st8 .c-form-card .slb-field input::placeholder,.p-st8 .c-form-card .slb-field textarea::placeholder{color:#6f7d6c}
.p-st8 .c-form-card .slb-field input:focus,.p-st8 .c-form-card .slb-field textarea:focus{border-color:var(--gold);outline:none}
.p-st8 .c-form-card .slb-consents{margin-top:22px;border-top:1px solid var(--line);padding-top:16px}
.p-st8 .c-form-card .slb-consent{display:flex;align-items:center;gap:12px;margin-top:6px;font-size:13px;line-height:1.5;color:#c4ccb8;min-height:44px;cursor:pointer}
.p-st8 .c-form-card .slb-consent input{width:19px;height:19px;flex-shrink:0;margin:0;accent-color:#e7b96e}
.p-st8 .c-form-card .slb-consent a{color:var(--gold);border-bottom:1px solid #d6bb8466}
.p-st8 .c-form-card .slb-error{font-size:12px;color:#e9a1a1;margin:6px 0 0;min-height:0}
.p-st8 .c-form-card .slb-submit{display:inline-flex;align-items:center;justify-content:center;gap:10px;margin-top:24px;min-width:260px;min-height:50px;padding:14px 26px;border:1px solid var(--gold);border-radius:3px;background:var(--gold);color:#12201a;font-size:14px;font-weight:600;letter-spacing:.02em;cursor:pointer}
.p-st8 .c-form-card .slb-submit:hover{filter:brightness(1.06)}
/* Строка-спутник кнопки: запасной канал рядом с отправкой (CTA доказательного блока). */
/* «Что будет после отправки» — подпись прямо под кнопкой: это ответ на вопрос момента
   отправки, поэтому она заметнее служебной строки .c-form-note под ней. */
.p-st8 .c-form-after{display:flex;align-items:baseline;gap:8px;margin:14px 0 0;font-size:13px;line-height:1.6;color:#c4ccb8;max-width:460px}
.p-st8 .c-form-after-mark{color:var(--gold);flex-shrink:0}
.p-st8 .c-form-note{margin:8px 0 0;font-size:12px;line-height:1.6;color:#9ca893;max-width:460px}
.p-st8 .c-form-note a{color:var(--gold)}
.p-st8 .c-form-card .slb-result{font-size:13px;line-height:1.6;color:#c4ccb8;margin-top:14px}
.p-st8 .c-form-card .slb-req,.p-st8 .c-form-card .slb-opt{color:#9ca893}

/* ---------- contacts (S999) — планка макета st8-contacts ---------- */
.p-contacts{overflow-x:hidden}
.p-contacts .c-section{padding-block:96px}

/* B01 · первый экран: канал связи виден сразу, форма — следом.
   Сцена — полосой в верхней части секции (секция высокая: проценты в градиенте не годятся, только px). */
.p-contacts #b01.s-hero{
  min-height:0;
  background:
    radial-gradient(ellipse at 74% 26%,#25322b4d,transparent 55%),
    url('../img/scene-contacts-T8-hero-1280.webp') right -60px top -10px/auto 880px no-repeat;
}
@media(min-width:1600px){.p-contacts #b01.s-hero{background-image:radial-gradient(ellipse at 74% 26%,#25322b4d,transparent 55%),url('../img/scene-contacts-T8-hero.webp')}}
.p-contacts #b01.s-hero:before{
  background:
    linear-gradient(90deg,#0b1512 6%,#0b1512f2 32%,#0b1512a6 56%,#0b15122b 78%),
    linear-gradient(180deg,#0b151200 460px,#0b1512c4 720px,#0b1512 880px);
}
.p-contacts #b01 .s-hero-copy{width:58%;padding-top:46px;padding-bottom:34px}
.p-contacts #b01 .s-eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:22px;color:var(--gold);font-size:11px;letter-spacing:.11em;text-transform:uppercase}
.p-contacts #b01 .s-eyebrow:before{content:'';width:22px;height:1px;background:var(--gold)}
.p-contacts #b01 h1{max-width:700px}
.p-contacts #b01 .s-hero-intro{margin:22px 0 0;max-width:540px;font-size:18px}
.p-st8 .c-hours{display:inline-flex;align-items:center;gap:9px;margin-top:20px;padding:9px 15px;border:1px solid #cdb88e66;border-radius:30px;font-size:13px;color:#dccca7;background:#111d1799}
.p-st8 .c-hours span{color:var(--gold)}

/* каналы — три равные карточки, хит-бокс во всю карточку */
.p-st8 .c-channels{position:relative;z-index:4;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none}
.p-st8 .c-channels a{
  display:flex;flex-direction:column;gap:6px;height:100%;min-height:186px;padding:22px 24px 20px;
  border:1px solid #cbbb9250;border-radius:3px;background:linear-gradient(160deg,#1d2b22f2,#111d17f2);
  transition:border-color .2s,transform .2s;
}
.p-st8 .c-channels a:hover{border-color:var(--gold);transform:translateY(-2px)}
.p-st8 .c-ch-label{font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:#cdbb93}
.p-st8 .c-ch-value{font-size:25px;font-weight:500;letter-spacing:-.035em;line-height:1.2;color:var(--paper);word-break:break-word}
.p-st8 .c-ch-note{font-size:12px;line-height:1.55;color:#aeb4a4;max-width:260px}
.p-st8 .c-ch-go{margin-top:auto;padding-top:14px;font-size:12px;color:var(--gold)}

/* форма + заметка о состояниях */
.p-contacts .c-form-band{position:relative;z-index:4;display:grid;grid-template-columns:minmax(0,1.32fr) minmax(0,1fr);gap:28px;align-items:start;margin:22px 0 0;padding-bottom:96px;scroll-margin-top:90px}
.p-contacts .c-form-card{border:1px solid #cbbb9250;border-radius:3px;padding:32px 34px 34px;background:linear-gradient(160deg,#1d2b22f2,#101c16f7)}
/* Правая колонка полосы — панель «состояния формы», то есть заметка макета для приёмки.
   Посетителю её нет (Г2, 23.09), и вторая колонка осталась бы пустым полем шириной
   в треть экрана. Тогда полоса становится одноколоночной, а карточка получает предел
   ширины: поле ввода во весь экран читается хуже короткого. */
.p-contacts .c-form-band:not(:has(>.c-states)){grid-template-columns:minmax(0,1fr)}
.p-contacts .c-form-band:not(:has(>.c-states)) .c-form-card{max-width:760px}
.p-st8 .c-states{border:1px dashed #cbbb9266;border-radius:3px;padding:26px 26px 24px;background:#101c16cc}
.p-st8 .c-states-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:#cdbb93;margin:0 0 6px}
.p-st8 .c-states-list{list-style:none;margin:0;padding:0;counter-reset:st}
.p-st8 .c-states-list li{counter-increment:st;display:grid;grid-template-columns:32px minmax(0,1fr);gap:0 12px;padding:14px 0;border-bottom:1px solid var(--line)}
.p-st8 .c-states-list li:before{content:'0' counter(st);font-size:11px;letter-spacing:.09em;color:var(--gold);padding-top:4px}
.p-st8 .c-states-list b{font-size:15px;font-weight:500;color:var(--paper);letter-spacing:-.015em}
.p-st8 .c-states-list p{grid-column:2;margin:5px 0 0;font-size:13px;line-height:1.6;color:#c4ccb8}

/* B02 · офис, карта, реквизиты */
.p-contacts .c-office{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:34px;align-items:start}
.p-contacts .c-map-frame{
  position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;
  aspect-ratio:1.55;border:1px dashed #cbbb9266;border-radius:3px;overflow:hidden;
  background:
    radial-gradient(ellipse at 50% 46%,#25382c,transparent 70%),
    repeating-linear-gradient(0deg,transparent 0 47px,#dfcca518 47px 48px),
    repeating-linear-gradient(90deg,transparent 0 47px,#dfcca518 47px 48px),
    #0e1a14;
}
.p-contacts .c-map-frame.c-map-live{border-style:solid;border-color:#cbbb9250;padding:0}
.p-contacts .c-map-frame iframe{width:100%;height:100%;border:0;display:block}
.p-contacts .c-map-pin{width:16px;height:16px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--gold);box-shadow:0 0 0 7px #e7b96e22,0 0 26px #e7b96e55;margin-bottom:8px}
.p-contacts .c-map-label{font-size:14px;color:var(--paper);letter-spacing:-.01em}
.p-contacts .c-map-sub{font-size:12px;color:#9ca893}
.p-contacts .c-map-foot{margin-top:16px}
.p-contacts .c-map-foot .s-link{color:var(--gold)}
.p-contacts .c-office-side{padding-top:2px}
.p-contacts .c-address{font-size:clamp(23px,2.3vw,30px);font-weight:500;letter-spacing:-.035em;line-height:1.25;color:var(--paper);margin:0}
.p-contacts .c-geo{list-style:none;margin:20px 0 0;padding:0;border-top:1px solid var(--line)}
.p-contacts .c-geo li{position:relative;padding:12px 0 12px 20px;border-bottom:1px solid var(--line);font-size:14px;line-height:1.55;color:#c4ccb8}
.p-contacts .c-geo li:before{content:'+';position:absolute;left:0;color:var(--gold)}
.p-st8 .c-req{margin-top:26px;border:1px solid #cbbb9250;border-radius:3px;background:linear-gradient(160deg,#1d2b22,#111d17);padding:22px 24px 8px}
.p-st8 .c-req h2,.p-st8 .c-req h3{font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:#cdbb93;font-weight:500;margin:0}
.p-st8 .c-req ul{list-style:none;margin:8px 0 0;padding:0}
.p-st8 .c-req li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 0;border-top:1px solid var(--line);font-size:14px;color:var(--paper);line-height:1.45}
.p-st8 .c-copy{flex-shrink:0;border:1px solid #cdb88e66;border-radius:2px;padding:7px 12px;min-height:34px;font-size:11px;color:#c9ccb6;background:#14231b;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center}
.p-st8 .c-copy:hover{border-color:var(--gold);color:var(--gold)}

/* B03 · что будет после отправки */
.p-st8 .c-steps-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.p-st8 .c-steps-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.p-st8 .c-step-meta{display:block;margin-top:10px;font-size:12px;line-height:1.5;color:#9ca893}

/* B04 · куда дальше */
.p-st8 .c-links{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.p-st8 .c-links a{
  display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:74px;padding:18px 20px;
  border:1px solid #cbbb9250;border-radius:3px;background:linear-gradient(160deg,#1d2b22,#111d17);transition:border-color .2s,color .2s;
}
.p-st8 .c-links a:hover{border-color:var(--gold);color:var(--gold)}
.p-st8 .c-links b{font-size:16px;font-weight:500;letter-spacing:-.02em;line-height:1.3}
.p-st8 .c-links>li>a>span[aria-hidden]{color:var(--gold);font-size:17px}
.p-st8 .c-links-notes{grid-template-columns:repeat(2,minmax(0,1fr))}
.p-st8 .c-links-notes a{align-items:flex-start;min-height:92px}
.p-st8 .c-link-text{display:flex;flex-direction:column;gap:6px}
.p-st8 .c-link-text small{font-size:12px;line-height:1.5;color:#9ca893}
.p-st8 .c-legal-links{display:flex;gap:28px;flex-wrap:wrap;margin:26px 0 0}

/* ---------- about (S996) ---------- */
/* Срез Т-в (V-02): фон героя — чистая сцена hero-art-v2 (та же планета и рука, что на главной),
   а не 01-hero с впечатанным макетом другой страницы (меню, кнопки, «ЛАБОРАТОРИЯ ОТРАСЛЕВЫХ
   РЕШЕНИЙ»). Размер и кадр файлов те же (1280×720, 768×432). */
.p-about #b01.s-hero{min-height:0;background:radial-gradient(ellipse at 74% 26%,#25322b4d,transparent 55%),url('../img/hero-art-v2-1280.webp') right top/auto 820px no-repeat}
.p-about #b01.s-hero:before{background:linear-gradient(90deg,#0b1512 6%,#0b1512f2 34%,#0b1512a6 58%,#0b15122b 80%),linear-gradient(180deg,#0b151200 420px,#0b1512c4 680px,#0b1512 820px)}
.p-about #b01 .s-hero-copy{width:60%;padding-top:46px;padding-bottom:30px}
.p-about .c-who{margin-top:18px;font-size:15px;line-height:1.7;color:#c4ccb8;max-width:560px}
.p-about .c-credo{margin-top:14px;font-size:19px;line-height:1.5;color:var(--gold);max-width:560px}
.p-about .c-hero-stats{position:relative;z-index:4;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:26px 0 0;padding:0}
.p-about .c-hero-stats li{border:1px solid #cbbb9250;border-radius:3px;padding:22px 24px;background:linear-gradient(160deg,#1d2b22f2,#111d17f2)}
.p-about .c-hero-stats b{display:block;font-size:34px;font-weight:600;letter-spacing:-.04em;color:var(--paper);line-height:1.1}
.p-about .c-hero-stats span{display:block;margin-top:8px;font-size:12px;line-height:1.5;color:#aeb4a4}
.p-about .c-person{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);gap:34px;align-items:start}
.p-about .c-person-card{border:1px solid #cbbb9250;border-radius:3px;background:linear-gradient(160deg,#1d2b22,#111d17);padding:28px 28px 24px}
.p-about .c-person-mark{display:grid;place-items:center;width:96px;height:96px;border:1px solid var(--gold);border-radius:3px;font-size:34px;font-weight:600;color:var(--gold);letter-spacing:-.03em}
.p-about .c-person-photo{width:100%;height:auto;border-radius:3px;display:block}
.p-about .c-person-name{margin:20px 0 0;font-size:22px;font-weight:500;letter-spacing:-.03em;color:var(--paper)}
.p-about .c-person-role{margin:6px 0 0;font-size:13px;color:var(--gold)}
.p-about .c-person-since,.p-about .c-person-spec{margin:10px 0 0;font-size:13px;line-height:1.6;color:#aeb4a4}
.p-about .c-person-links{list-style:none;margin:18px 0 0;padding:0;border-top:1px solid var(--line)}
.p-about .c-person-links li{padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}
.p-about .c-person-body>p{font-size:15px;line-height:1.75;color:#c4ccb8;margin:0 0 16px;max-width:660px}
/* 23.10.2026, замер 320: карточка основателя и текст рядом шире экрана на 3 px (длинное слово/ссылка держит
   min-content колонки) — колонкам разрешено сжиматься, длинные строки переносятся */
.p-about .c-person>*{min-width:0}.p-about .c-person-card,.p-about .c-person-body{overflow-wrap:anywhere}
@media(max-width:360px){.p-about .c-person-card{padding:22px 18px 20px}}
.p-about .c-team{margin-top:26px;border-top:1px solid var(--line);padding-top:22px}
.p-about .c-team h3{font-size:19px;font-weight:500;letter-spacing:-.02em;color:var(--paper);margin:0}
.p-about .c-team-lead{margin:10px 0 0;font-size:14px;line-height:1.65;color:#c4ccb8}
.p-about .c-team ul{list-style:none;margin:16px 0 0;padding:0}
.p-about .c-team li{position:relative;padding:11px 0 11px 20px;border-top:1px solid var(--line);font-size:14px;line-height:1.55;color:#c4ccb8}
.p-about .c-team li:before{content:'+';position:absolute;left:0;color:var(--gold)}
.p-st8 .c-scroll{overflow-x:auto}
.p-st8 .c-table{width:100%;border-collapse:collapse;font-size:14px}
.p-st8 .c-table th,.p-st8 .c-table td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.5;color:#c4ccb8}
.p-st8 .c-table thead th{font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:#cdbb93;font-weight:500}
.p-st8 .c-table tbody th{color:var(--paper);font-weight:500}
.p-st8 .c-metrics strong{font-size:19px;color:var(--paper);letter-spacing:-.02em}
.p-st8 .c-metrics small{color:#9ca893}
.p-about .c-clients{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.p-about .c-clients li>a,.p-about .c-clients li{border:1px solid #cbbb9250;border-radius:3px;background:linear-gradient(160deg,#1d2b22,#111d17)}
.p-about .c-clients li{padding:0}
.p-about .c-clients li>a{display:block;border:0;background:none}
.p-about .c-clients li>a,.p-about .c-clients li>b{padding:22px 24px}
.p-about .c-clients li>a{padding:22px 24px}
.p-about .c-client-name{display:block;font-size:19px;font-weight:500;letter-spacing:-.02em;color:var(--paper)}
.p-about .c-client-logo{display:block;max-width:180px;height:auto}
.p-about .c-client-caption{display:block;margin-top:8px;font-size:13px;line-height:1.55;color:#aeb4a4}
.p-about .c-cta{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:26px}

/* ---------- legal (S516, S938) ---------- */
.p-legal #b01.s-hero,.p-thanks #b01.s-hero,.p-logo #b01.s-hero{min-height:0;background:radial-gradient(ellipse at 78% 30%,#25322b4d,transparent 58%),#0b1512}
.p-legal #b01.s-hero:before,.p-thanks #b01.s-hero:before,.p-logo #b01.s-hero:before{background:linear-gradient(180deg,#0b151200,#0b1512)}
.p-legal #b01 .s-hero-copy,.p-thanks #b01 .s-hero-copy,.p-logo #b01 .s-hero-copy{width:100%;max-width:820px;padding-top:44px;padding-bottom:26px}
.p-legal #b01 h1,.p-thanks #b01 h1,.p-logo #b01 h1{font-size:clamp(38px,4.2vw,62px)}
.p-legal .c-toc{position:relative;z-index:4;border:1px solid #cbbb9250;border-radius:3px;background:linear-gradient(160deg,#1d2b22f2,#111d17f2);padding:24px 26px 12px;margin-bottom:34px}
.p-legal .c-toc-title{margin:0;font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:#cdbb93}
.p-legal .c-toc ol{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px}
.p-legal .c-toc li{border-top:1px solid var(--line)}
.p-legal .c-toc a{display:flex;align-items:center;gap:12px;min-height:44px;padding:8px 0;font-size:14px;line-height:1.45;color:#c4ccb8}
.p-legal .c-toc a:hover{color:var(--gold)}
.p-legal .c-toc-n{color:var(--gold);font-size:12px;min-width:16px}
.p-legal .c-pointer{position:relative;z-index:4;border:1px dashed #cbbb9266;border-radius:3px;background:#101c16cc;padding:22px 24px;max-width:760px;margin-bottom:24px}
.p-legal .c-pointer-h{margin:0 0 8px;font-size:15px;font-weight:500;color:var(--paper)}
.p-legal .c-pointer p{margin:0;font-size:14px;line-height:1.7;color:#c4ccb8}
.p-legal .c-doc{max-width:860px}
.p-legal .c-doc-h{font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:#cdbb93;font-weight:500;margin:0 0 20px}
.p-legal .c-doc-preamble{font-size:15px;line-height:1.8;color:#c9cdb9;margin:0 0 16px}
.p-legal .c-doc-section{padding-top:30px;border-top:1px solid var(--line);margin-top:30px}
.p-legal .c-doc-section:first-of-type{border-top:0;margin-top:0}
.p-legal .c-doc-section h3{font-size:clamp(21px,2vw,27px);font-weight:500;letter-spacing:-.03em;line-height:1.25;color:var(--paper);margin:0 0 16px;scroll-margin-top:90px}
.p-legal .c-doc-section p{font-size:15px;line-height:1.8;color:#c4ccb8;margin:0 0 14px}
.p-legal .c-doc-section table{width:100%;border-collapse:collapse;font-size:14px;margin:18px 0}
.p-legal .c-doc-section th,.p-legal .c-doc-section td{text-align:left;padding:13px 15px;border:1px solid var(--line);vertical-align:top;line-height:1.55;color:#c4ccb8}
.p-legal .c-doc-section thead th{font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:#cdbb93;font-weight:500}
.p-legal .c-doc-section a{color:var(--gold);border-bottom:1px solid #d6bb8466}

/* ---------- thanks (S521) ---------- */
.p-thanks .c-honest{margin-top:18px;font-size:15px;line-height:1.8;color:#c4ccb8;max-width:720px}
.p-thanks .c-honest a{color:var(--gold)}

/* ---------- logo (S549) ---------- */
.p-logo .c-logos{position:relative;z-index:4;list-style:none;margin:26px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.p-logo .c-logos li{border:1px solid #cbbb9250;border-radius:3px;background:linear-gradient(160deg,#1d2b22,#111d17);padding:0 0 18px;overflow:hidden}
.p-logo .c-logo-frame{display:grid;place-items:center;min-height:190px;padding:26px;background:#0e1a14}
.p-logo .c-logos li.is-dark .c-logo-frame{background:#0b1512}
.p-logo .c-logos li.is-light .c-logo-frame{background:repeating-conic-gradient(#182620 0% 25%,#141f1a 0% 50%) 50%/22px 22px}
.p-logo .c-logo-frame img{max-width:100%;max-height:140px;height:auto;display:block}
.p-logo .c-logo-caption{display:block;padding:16px 22px 0;font-size:13px;line-height:1.6;color:#aeb4a4}
.p-logo .c-rules{position:relative;z-index:4;max-width:760px}
.p-logo .c-files{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.p-logo .c-files li{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid #cbbb9250;border-radius:3px;background:linear-gradient(160deg,#1d2b22,#111d17);padding:16px 20px;min-height:72px}
.p-logo .c-file-label{display:flex;flex-direction:column;gap:5px}
.p-logo .c-file-label b{font-size:15px;font-weight:500;letter-spacing:-.02em;color:var(--paper);line-height:1.35}
.p-logo .c-file-label small{font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:#cdbb93}
.p-logo .c-next{margin-top:34px;border-top:1px solid var(--line);padding-top:26px}
.p-logo .c-next h3{font-size:19px;font-weight:500;letter-spacing:-.02em;color:var(--paper);margin:0 0 16px}
.p-st8 .c-channels-flat{grid-template-columns:repeat(2,minmax(0,1fr))}
.p-st8 .c-channels-flat a{min-height:0;padding:18px 20px}

/* ---------- планшет ---------- */
@media(max-width:1150px){
  .p-st8 .c-section{padding-block:76px}
  .p-contacts .c-section{padding-block:76px}
  .p-contacts #b01 .s-hero-copy{width:66%}
  .p-about #b01 .s-hero-copy{width:74%}
  .p-st8 .c-channels{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
  .p-st8 .c-channels a{padding:20px 18px;min-height:178px}
  .p-st8 .c-ch-value{font-size:21px}
  .p-contacts .c-form-band{grid-template-columns:1fr;gap:22px}
  .p-contacts .c-office{grid-template-columns:1fr;gap:28px}
  .p-contacts .c-map-frame{aspect-ratio:1.9}
  .p-st8 .c-links{grid-template-columns:repeat(2,minmax(0,1fr))}
  .p-st8 .c-steps-5{grid-template-columns:repeat(2,minmax(0,1fr))}
  .p-about .c-person{grid-template-columns:1fr;gap:24px}
  .p-about .c-clients{grid-template-columns:repeat(2,minmax(0,1fr))}
  .p-logo .c-logos{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* ---------- телефон ---------- */
@media(max-width:800px){
  .p-st8 .c-section{padding-block:56px}
  .p-contacts .c-section{padding-block:56px}
  .p-contacts #b01.s-hero{background-image:url('../img/scene-contacts-T8-hero-768.webp');background-position:56% top;background-size:auto 320px;background-repeat:no-repeat}
  .p-contacts #b01.s-hero:before{background:linear-gradient(180deg,#0b151233 0,#0b15128c 140px,#0b1512e0 250px,#0b1512 320px)}
  .p-contacts #b01 .s-hero-copy{width:100%;padding-top:228px;padding-bottom:26px}
  .p-contacts #b01 .s-hero-intro{font-size:16px}
  .p-about #b01.s-hero{background-size:auto 300px;background-position:60% top}
  .p-about #b01.s-hero:before{background:linear-gradient(180deg,#0b151233 0,#0b15128c 130px,#0b1512e0 240px,#0b1512 300px)}
  .p-about #b01 .s-hero-copy{width:100%;padding-top:210px}
  .p-about .c-hero-stats{grid-template-columns:1fr;gap:10px}
  .p-about .c-clients{grid-template-columns:1fr}
  .p-st8 .c-hours{font-size:12px;padding:8px 13px}
  .p-st8 .c-channels{grid-template-columns:1fr;gap:10px}
  .p-st8 .c-channels a{min-height:0;padding:18px 18px 16px;flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:4px 12px}
  .p-st8 .c-ch-label{width:100%}
  .p-st8 .c-ch-value{font-size:23px;flex:1 1 auto}
  .p-st8 .c-ch-note{width:100%;max-width:none;margin-top:2px}
  .p-st8 .c-ch-go{margin-top:8px;padding-top:0;width:100%}
  .p-contacts .c-form-band{margin-top:18px;padding-bottom:56px;gap:18px}
  .p-contacts .c-form-card{padding:24px 20px 26px}
  .p-st8 .c-form-card .slb-form{grid-template-columns:1fr}
  .p-st8 .c-form-card .slb-field:nth-of-type(2),
  .p-st8 .c-form-card .slb-field:nth-of-type(3){grid-column:1/-1}
  .p-st8 .c-form-card .slb-submit{width:100%;min-width:0}
  .p-st8 .c-states{padding:22px 18px 20px}
  .p-st8 .c-head{display:block}
  .p-st8 .c-head>p{margin-top:18px;max-width:none}
  /* якорная лента: пять пунктов в строку не помещаются — переносим, иначе последний срезается */
  .p-st8 .s-service-nav .s-wrap{min-height:0;padding-block:8px}
  .p-st8 .s-service-nav nav{flex-wrap:wrap;justify-content:flex-start;gap:4px 16px;font-size:11px}
  .p-st8 .s-service-nav nav a{padding-block:8px}
  .p-contacts .c-map-frame{aspect-ratio:1.35}
  .p-st8 .c-req li{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}
  .p-st8 .c-steps-3,.p-st8 .c-steps-5{grid-template-columns:1fr;gap:10px}
  .p-st8 .c-links,.p-st8 .c-links-notes,.p-st8 .c-channels-flat{grid-template-columns:1fr;gap:9px}
  .p-st8 .c-links a{min-height:62px;padding:15px 18px}
  .p-st8 .c-legal-links{gap:0;flex-direction:column}
  .p-legal .c-toc ol{grid-template-columns:1fr}
  .p-logo .c-logos,.p-logo .c-files{grid-template-columns:1fr}
  .p-st8 .s-footer{padding-bottom:70px}
}
@media(max-width:560px){
  .p-contacts #b01 .s-hero-copy{padding-top:200px}
  .p-st8 .c-ch-value{font-size:21px}
  .p-contacts .c-address{font-size:23px}
  .p-st8 .c-req li{font-size:13px}
  .p-st8 .c-states-list li{grid-template-columns:26px minmax(0,1fr);gap:0 9px}
  .p-st8 .c-gapline{font-size:11px}
  /* Срез Т-б (раунд 2): таблица цифр S996 после снятия колонки «Источник» была шире обёртки
     .c-scroll на 4 px (339 / 335 на 390 с полосой прокрутки) — лишняя горизонтальная прокрутка.
     Поля ячеек и разрядка шапки уже, длинная подпись строки переносится. */
  .p-st8 .c-metrics th,.p-st8 .c-metrics td{padding:12px 8px}
  .p-st8 .c-metrics th:first-child,.p-st8 .c-metrics td:first-child{padding-left:0}
  .p-st8 .c-metrics thead th{letter-spacing:.05em}
  .p-st8 .c-metrics tbody th{overflow-wrap:anywhere}
  /* Срез Т-в: на 390 слово «конфиденциальности» в H1 политики (38 px) было шире экрана и
     срезалось краем героя (Г11-2), а таблица раздела 2 из трёх колонок с прописной шапкой
     раздвигала документ до 404 px (Г11-1). Заголовок — кегль от ширины экрана с переносом
     как страховкой; таблица помещается в колонку целиком: поля уже, шапка без широкой
     разрядки, длинные слова переносятся (колонки не прячутся за край).
     18.10.2026 (проверка перед выгрузкой, строка 17): перенос по слогам у H1 снят (hyphens:manual) —
     «конфиденциальности» при кегле 7.4vw (27,75 px на 375) помещается в строку целиком, страховкой
     остаётся overflow-wrap:break-word; у таблиц раздела 2 перенос по слогам как был. */
  .p-legal #b01 h1,.p-thanks #b01 h1,.p-logo #b01 h1{font-size:clamp(24px,7.4vw,38px);overflow-wrap:break-word;hyphens:manual}
  .p-legal .c-doc-section table{font-size:13px;table-layout:fixed}
  .p-legal .c-doc-section th,.p-legal .c-doc-section td{padding:10px 8px;overflow-wrap:anywhere;hyphens:auto}
  .p-legal .c-doc-section thead th{font-size:10px;letter-spacing:.03em}
}
