/* ===== Дизайн-система «Синтез G» — токены ===== */
  :root {
    --bg:        #F4F7FA;
    --surface:   #FFFFFF;
    --ink:       #17222C;
    --text:      #2A3B4D;
    --muted:     #5A6C7F;
    --faint:     #A9BBCB;
    --line:      #DCE3EB;
    --accent:    #4F8EF7;      /* акцент на тёмном фоне (5.3:1 на --dark) */
    --accent-ink:#2E6BD4;      /* акцент на светлом фоне (4.68:1 на --bg, 5.0:1 на #fff); спековый #2F6FDB давал 4.42:1 на --bg — затемнён на шаг */
    --dark:      #141E28;
    --dark-line: #223140;
    --dark-hover:#182432;
    --dark-muted:#8fa1ad;
    --dark-text: #F4F7FA;
    --ease:      cubic-bezier(0.25, 1, 0.5, 1); /* ease-out-quart */
  }
  @font-face { font-family:'Daray'; src:url('/assets/fonts/Daray.woff2') format('woff2'), url('/assets/fonts/Daray.ttf') format('truetype'); font-display:swap; }

  * { margin:0; padding:0; box-sizing:border-box; }
  html { scroll-behavior:smooth; }
  body { font-family:'Onest',system-ui,sans-serif; background:var(--bg); color:var(--text); line-height:1.55; }

  /* ===== Страницы ===== */
  .page { margin:0 auto; background:var(--bg); }
  
  body.narrow .page { max-width:400px; border-left:6px solid #2a3540; border-right:6px solid #2a3540; }

  .wrap { max-width:1120px; margin:0 auto; padding:0 6%; }

  /* ===== Шапка сайта ===== */
  header.site { border-bottom:1px solid var(--line); }
  header.site .wrap { display:flex; justify-content:space-between; align-items:center; padding-top:18px; padding-bottom:18px; flex-wrap:wrap; gap:10px 18px; }
  .logo { font-family:'Daray',sans-serif; font-size:23px; letter-spacing:.5px; color:var(--ink); cursor:pointer; line-height:1.1; }
  nav.sitenav { display:flex; flex-wrap:wrap; gap:6px 20px; }
  nav.sitenav a { text-decoration:none; color:var(--text); font-size:14px; font-weight:600; cursor:pointer; transition:color .15s ease; display:inline-block; padding:6px 0; } /* тап-таргет ≥24px */
  nav.sitenav a:hover { color:var(--accent-ink); }

  /* ===== Секции ===== */
  section { padding:80px 0; border-bottom:1px solid var(--line); }
  /* Ритм: структура не меняется — варьируем только воздух и разделители (перенос из Claude Design) */
  section.s-flush { border-bottom:none; }
  section.s-tight { padding-top:clamp(28px,3.5vw,44px); }
  section.s-air   { padding:clamp(64px,8vw,120px) 0 clamp(52px,6.5vw,104px); }
  section:last-of-type { border-bottom:none; }

  /* Ступени Daray: десктоп / планшет / телефон через clamp() (H1 76/56/40, H1-sub 56/44/34, H2 44/36/28) */
  h1 { font-family:'Daray',sans-serif; font-weight:400; font-size:clamp(40px, 24px + 4vw, 76px); line-height:1.03; letter-spacing:1px; color:var(--ink); }
  h1.h1-sub { font-size:clamp(34px, 24px + 2.5vw, 56px); line-height:1.09; } /* уровень «H1 подстраницы»: /konsultaciya, /biznesu, /press; интерлиньяж чуть свободнее — узкий Daray в 3 строки не рябит */
  h2 { font-family:'Daray',sans-serif; font-weight:400; font-size:clamp(28px, 21px + 1.8vw, 44px); line-height:1.06; letter-spacing:.5px; color:var(--ink); margin-bottom:22px; }
  h3 { font-family:'Daray',sans-serif; font-weight:400; font-size:23px; line-height:1.15; letter-spacing:.5px; color:var(--ink); margin-bottom:8px; }
  h1, h2, h3 { text-wrap:balance; }
  p { margin-bottom:12px; }
  .lead { font-size:21px; line-height:1.5; color:var(--text); margin-top:20px; max-width:31em; }
  .sub { font-size:15px; line-height:1.6; color:var(--muted); max-width:36em; margin-top:14px; }
  .sub.small { font-size:14px; }

  /* ===== Кнопка CTA — одна визуальная доминанта ===== */
  .btn { display:inline-block; background:var(--ink); color:var(--bg); padding:16px 38px; border-radius:6px;
         font-size:16px; font-weight:600; text-decoration:none; margin-top:26px;
         transition:background .18s ease, transform .18s ease; }
  .btn:hover { background:var(--text); transform:translateY(-1px); }
  .btn.on-dark { background:var(--dark-text); color:var(--ink); }
  .btn.on-dark:hover { background:#ffffff; }
  a.tlink { color:var(--accent-ink); text-decoration:none; font-weight:600; transition:color .15s ease; }
  a.tlink:hover { color:var(--ink); }
  p a:not(.btn):not(.tlink) { color:var(--accent-ink); text-decoration:none; transition:color .15s ease; }
  p a:not(.btn):not(.tlink):hover { color:var(--ink); }

  /* ===== Hero ===== */
  .hero { display:flex; gap:52px; align-items:center; flex-wrap:wrap; }
  .hero .txt { flex:1.25 1 400px; }
  .hero .pic { flex:1 1 290px; }
  .hero .pic img { width:100%; display:block; border-radius:6px; object-fit:cover; max-height:560px; filter:grayscale(1); }
  .widephoto img { width:100%; display:block; border-radius:8px; object-fit:cover; max-height:440px; filter:grayscale(1); }
  .widephoto .cap { font-family:var(--mono); font-size:13px; color:var(--muted); margin-top:12px; }

  /* ===== Hero-столбик данных (/biznesu) — светлые терминальные ячейки ===== */
  .herostats { flex:1 1 280px; max-width:360px; border:1px solid var(--line); border-radius:6px; overflow:hidden; background:var(--bg); }
  .hstat { padding:22px 24px; border-bottom:1px solid var(--line); }
  .hstat:last-child { border-bottom:none; }
  .hstat b { display:block; font-family:'JetBrains Mono',monospace; font-size:24px; font-weight:700; color:var(--ink); line-height:1.3; margin-bottom:6px; }
  .hstat small { font-family:'JetBrains Mono',monospace; font-size:11px; letter-spacing:.06em; color:var(--muted); }

  /* ===== Карточки ===== */
  .tiles { display:flex; gap:14px; flex-wrap:wrap; margin-top:8px; }
  .tile { flex:1 1 260px; background:var(--surface); border:1px solid var(--line); border-radius:8px; padding:20px 22px; font-size:14px; color:var(--muted); line-height:1.55; }
  .tile .no { font-family:'JetBrains Mono',monospace; font-size:11px; letter-spacing:.06em; color:var(--accent-ink); margin-bottom:10px; }
  .tiles.grid2 { display:grid; grid-template-columns:repeat(2, 1fr); } /* 4 tile → 2×2, без сироты */
  .tile b { font-family:'Daray',sans-serif; font-weight:400; display:block; font-size:23px; letter-spacing:.5px; margin-bottom:8px; color:var(--ink); line-height:1.15; }

  /* ===== Двери (две услуги) ===== */
  .doors { display:flex; gap:16px; margin-top:8px; flex-wrap:wrap; align-items:flex-start; }
  .door { flex:1 1 320px; background:var(--surface); border:1px solid var(--line); border-radius:8px; padding:26px 28px; cursor:pointer; transition:border-color .18s ease, transform .18s ease; }
  .door:hover { border-color:var(--accent); transform:translateY(-2px); }
  .door .no { font-family:'JetBrains Mono',monospace; font-size:11px; letter-spacing:.06em; color:var(--accent-ink); margin-bottom:12px; }
  .door p { font-size:15px; color:var(--muted); margin:8px 0 0; }
  .door ul { margin:14px 0 0 18px; font-size:15px; color:var(--text); }
  .door li { margin-bottom:6px; }
  .door .go { display:inline-block; margin-top:16px; font-family:'JetBrains Mono',monospace; font-weight:700; color:var(--accent-ink); }

  /* ===== Тёмная терминальная секция (одна на страницу) ===== */
  .darksec { background:var(--dark); border-bottom:1px solid var(--dark-line); }
  .darksec section, section.darkinner { border-bottom:none; }
  .darksec h2 { color:var(--dark-text); }
  .darksec .sub { color:var(--dark-muted); }
  .dgrid { display:flex; flex-wrap:wrap; margin-top:8px; border:1px solid var(--dark-line); border-radius:6px; overflow:hidden; }
  .dnum { flex:1 1 300px; padding:22px 24px; border-right:1px solid var(--dark-line); border-bottom:1px solid var(--dark-line); cursor:pointer; transition:background .18s ease; }
  .dnum:hover { background:var(--dark-hover); }
  .dnum b { display:block; font-family:'JetBrains Mono',monospace; font-size:22px; font-weight:700; color:var(--dark-text); line-height:1.3; margin-bottom:8px; }
  .dnum p { font-size:14px; color:var(--dark-muted); line-height:1.55; margin:0 0 10px; }
  .dnum small { font-family:'JetBrains Mono',monospace; font-size:11px; letter-spacing:.06em; color:var(--accent); }

  /* ===== Pain-цитаты ===== */
  .pain { background:var(--surface); border:1px solid var(--line); border-radius:8px; padding:20px 24px; margin-bottom:12px; }
  .pain b { display:block; font-size:17px; font-weight:600; color:var(--ink); line-height:1.4; }
  .pain p { margin:8px 0 0; font-size:14px; color:var(--muted); line-height:1.55; max-width:46em; }

  /* ===== Ситуации (/konsultaciya) — выровненная сетка 2 колонки ===== */
  .situgrid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
  .situ { background:var(--surface); border:1px solid var(--line); border-radius:8px; padding:18px 22px; font-size:16px; color:var(--text); line-height:1.55; }

  /* ===== Шаги ===== */
  .steps { display:grid; grid-template-columns:repeat(2, 1fr); gap:12px; margin:20px 0 12px; } /* 4 шага → 2×2, без сироты */
  .step { background:var(--surface); border:1px solid var(--line); border-radius:8px; padding:20px 22px; font-size:14px; color:var(--muted); line-height:1.55; }
  .step .no { font-family:'JetBrains Mono',monospace; font-size:11px; letter-spacing:.06em; color:var(--accent-ink); margin-bottom:10px; }
  .step b { font-family:'Daray',sans-serif; font-weight:400; display:block; font-size:23px; letter-spacing:.5px; margin-bottom:8px; color:var(--ink); line-height:1.15; }

  /* ===== Факты-параметры (mono-слой данных) ===== */
  .fact { font-size:15px; margin-bottom:8px; color:var(--text); }
  .fact b { color:var(--ink); }
  .fact-mono { font-family:'JetBrains Mono',monospace; font-size:13px; letter-spacing:.02em; color:var(--text); margin-bottom:6px; }

  /* ===== FAQ и кейсы-раскрывашки ===== */
  .faqlist details { background:var(--surface); border:1px solid var(--line); border-radius:8px; padding:18px 24px; margin-bottom:10px; }
  .faqlist summary { font-size:17px; font-weight:600; color:var(--ink); cursor:pointer; line-height:1.4; }
  .faqlist details p { max-width:46em; }
  .caselist details { background:var(--surface); border:1px solid var(--line); border-radius:8px; padding:26px 28px; margin-bottom:12px; }
  /* заголовки кейсов длинные → Onest 600 (Daray не длиннее 2 строк по DS) */
  .caselist summary { font-family:'Onest',system-ui,sans-serif; font-weight:600; font-size:19px; color:var(--ink); cursor:pointer; line-height:1.4; }
  /* кастомный mono-маркер раскрывашек вместо браузерного */
  .faqlist summary, .caselist summary { list-style:none; }
  .faqlist summary::-webkit-details-marker, .caselist summary::-webkit-details-marker { display:none; }
  .faqlist summary::before, .caselist summary::before { content:'▸'; font-family:'JetBrains Mono',monospace; font-weight:400; color:var(--accent-ink); margin-right:12px; }
  .faqlist details[open] summary::before, .caselist details[open] summary::before { content:'▾'; }
  .caselist details p { margin:12px 0 0; font-size:15px; color:var(--text); line-height:1.6; max-width:46em; }
  .caselist details p b { color:var(--ink); }

  /* ===== Соцдоказательства (скрины) ===== */
  .proof { display:flex; gap:14px; flex-wrap:wrap; }
  .proofcard { flex:1 1 260px; background:var(--surface); border:1px solid var(--line); border-radius:8px; padding:14px; }
  .proofcard img { width:100%; display:block; border-radius:4px; max-height:300px; object-fit:cover; object-position:top; margin-bottom:10px; }
  .prooffull img { max-height:none; }
  .proofcard p { font-family:'JetBrains Mono',monospace; font-size:13px; line-height:1.6; color:var(--muted); margin:0; }

  /* ===== Citable (GEO-абзацы) ===== */
  /* без бокового стрипа (он — маркер pain-цитат): полная тонкая рамка + лёгкий тинт-тень */
  .citable { background:var(--surface); border:1px solid var(--line); border-radius:8px; padding:26px 30px; max-width:46em; box-shadow:0 1px 3px rgba(23,34,44,.06); }
  .citable p { font-size:16px; line-height:1.65; color:var(--text); }
  .citable b { color:var(--ink); }

  /* ===== Timeline (/press) ===== */
  .timeline { position:relative; margin-top:16px; padding-left:30px; border-left:2px solid var(--line); max-width:620px; }
  .tl-item { position:relative; margin-bottom:32px; }
  .tl-item:last-child { margin-bottom:0; }
  .tl-item::before { content:''; position:absolute; left:-38px; top:4px; width:13px; height:13px; border-radius:50%; background:var(--accent); border:3px solid var(--bg); }
  .tl-year { font-family:'JetBrains Mono',monospace; font-size:12px; font-weight:700; color:var(--accent-ink); letter-spacing:.08em; }
  .tl-item h3 { margin:4px 0 6px; }
  .tl-item p { font-size:15px; color:var(--muted); line-height:1.6; margin:0; max-width:40em; }

  /* ===== Финальный CTA ===== */
  .cta-soft { text-align:center; }
  .cta-soft .lead, .cta-soft .sub { margin-left:auto; margin-right:auto; }

  /* ===== Тихие соцсети ===== */
  .socials { font-family:'JetBrains Mono',monospace; font-size:12px; letter-spacing:.08em; color:var(--muted); text-align:center; }
  .socials a { color:var(--muted); text-decoration:none; transition:color .18s ease; display:inline-block; padding:6px 2px; } /* тап-таргет ≥24px */
  .socials a:hover { color:var(--accent-ink); }
  .socials .sep { color:var(--line); margin:0 8px; }
  section.socsec { padding:30px 0; }

  /* ===== Подвал ===== */
  footer.site { border-top:1px solid var(--line); }
  footer.site .wrap { padding-top:26px; padding-bottom:32px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px 24px; font-family:'JetBrains Mono',monospace; font-size:12px; line-height:1.6; color:var(--muted); }
  footer.site a { color:var(--accent-ink); text-decoration:none; cursor:pointer; display:inline-block; padding:6px 0; } /* тап-таргет ≥24px */
  footer.site a:hover { color:var(--ink); }

  /* ===== Фотосетка /press ===== */
  .photoswitch { font-family:'JetBrains Mono',monospace; font-size:11px; letter-spacing:.06em; color:var(--muted);
                 background:var(--surface); border:1px solid var(--line); border-radius:6px; padding:6px 12px; cursor:pointer; margin-bottom:14px;
                 transition:color .15s ease, border-color .15s ease; }
  .photoswitch:hover { color:var(--accent-ink); border-color:var(--accent-ink); }
  .photogrid { display:grid; grid-template-columns:repeat(2, 1fr); gap:14px; }
  .photogrid img { width:100%; display:block; border-radius:6px; object-fit:cover; aspect-ratio:3/2; filter:grayscale(1); transition:filter .25s ease; }
  .photogrid.color img { filter:none; }
  .presspic img { width:100%; display:block; border-radius:6px; object-fit:cover; max-height:480px; filter:grayscale(1); }
  /* пресс-герой: короткий текст-заголовок — выравниваем по верху, а не по центру фото */
  #p-press .hero { align-items:flex-start; }
  /* ===== PR-мастхед /press: портрет обтекается биографией (планшет+десктоп), на телефоне — стопкой (перенос из Claude Design) ===== */
  .pressmast .wrap::after { content:''; display:block; clear:both; }        /* сдержать float внутри секции */
  .pressmast h1 { margin-bottom:16px; }
  .pressmast .lead { margin-top:0; }
  .pressmast-pic { float:right; width:min(40%,400px); margin:2px 0 22px 46px; }
  .pressmast-pic img { max-height:none; height:auto; }                       /* высота по ширине — портрет целиком, без кропа (height:auto — иначе HTML-атрибут height растягивает) */
  .pressbio { margin-top:22px; }
  .pressbio p { font-size:16px; line-height:1.65; color:var(--text); margin-bottom:14px; max-width:none; text-wrap:pretty; }
  .pressbio p:last-child { margin-bottom:0; }
  .pressbio b { color:var(--ink); }
  @media (max-width:640px) {
    .pressmast-pic { float:none; width:100%; margin:20px 0 6px; }
    .pressmast-pic img { max-height:60vh; }
    .pressbio { margin-top:20px; }
  }

  /* ===== Иерархия в карточках: primary-строка + мелкое пояснение ===== */
  .tile .lede { display:block; color:var(--text); font-size:15px; line-height:1.5; }
  .tile .fine { display:block; margin-top:9px; font-size:13px; color:var(--muted); line-height:1.5; }

  /* ===== Тихие ховеры карточек (feedback, не декор) ===== */
  .tile, .proofcard { transition:border-color .18s var(--ease), box-shadow .18s var(--ease); }
  .tile:hover, .proofcard:hover { border-color:#c7d3e0; box-shadow:0 4px 16px rgba(23,34,44,.06); }
  .situ { transition:border-color .18s var(--ease); }
  .situ:hover { border-color:#c7d3e0; }

  /* ===== Citable на всю ширину (/biznesu) ===== */
  .citable.wide { max-width:none; }
  .citable.wide .cbody { columns:2; column-gap:46px; }
  .citable.wide .cbody p { break-inside:avoid; margin-bottom:14px; }
  .citable.wide .cbody p:first-child { column-span:all; font-size:17px; color:var(--ink); }
  .citable.wide .cbody p:last-child { margin-bottom:0; }

  /* ===== Блок-кредо (главная) ===== */
  .credosec { border-bottom:1px solid var(--line); }
  .credo { text-align:center; }
  .credo-words { display:flex; flex-wrap:wrap; justify-content:center; align-items:baseline; gap:0 14px;
                 font-family:'Daray',sans-serif; color:var(--ink); font-weight:400;
                 font-size:clamp(36px, 6.2vw, 62px); line-height:1.06; letter-spacing:1px; }
  .credo-words i { color:var(--accent-ink); font-style:normal; font-family:'JetBrains Mono',monospace;
                   font-size:.42em; transform:translateY(-.18em); }
  .credo-sub { margin-top:20px; font-family:'JetBrains Mono',monospace; font-size:13px; letter-spacing:.06em; color:var(--muted); }

  /* ===== /press: «Ключевые темы» — 2 колонки на десктопе (текст заполняет ширину, длина строки ≤46em) ===== */
  .topics { }
  .topics .topic-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; align-items:start; }
  .topics .topic-grid .pain { margin-bottom:0; }
  .topics .topic-grid .pain p { max-width:none; }
  .topics .topic-grid .pain p + p { margin-top:12px; }

  /* ===== Микроанимации: появление секций + раскрывашки ===== */
  .reveal { opacity:0; transform:translateY(18px); transition:opacity .55s var(--ease), transform .55s var(--ease); }
  .reveal.in { opacity:1; transform:none; }
  @keyframes fadein { from { opacity:0; transform:translateY(-4px); } to { opacity:1; transform:none; } }
  .faqlist details[open] > p, .caselist details[open] > p, .caselist details[open] > .proof { animation:fadein .35s var(--ease); }

  /* ===== Узкий вид + мобильные ===== */
  body.narrow .citable.wide .cbody { columns:1; }
  body.narrow h1 { font-size:46px; }
  body.narrow h1.h1-sub { font-size:38px; }
  body.narrow h2 { font-size:32px; }
  body.narrow .steps { grid-template-columns:1fr; }
  body.narrow .tiles.grid2 { grid-template-columns:1fr; }
  body.narrow .situgrid { grid-template-columns:1fr; }
  body.narrow .topics .topic-grid { grid-template-columns:1fr; }
  body.narrow .hero { flex-direction:column; align-items:stretch; gap:20px; }
  body.narrow .hero .txt, body.narrow .hero .pic { flex:0 0 auto; }
  body.narrow .credo-words { flex-direction:column; gap:2px 0; font-size:40px; }
  body.narrow .credo-words i { display:none; }
  body.narrow .hero .pic img { max-height:56vh; object-fit:cover; }
  body.narrow .lead { font-size:19px; }
  body.narrow section { padding:40px 0 44px; }
  body.narrow .dgrid { display:grid; grid-template-columns:1fr 1fr; }
  body.narrow .dnum { border-right:none; padding:16px 16px; }
  body.narrow .dnum:nth-child(odd) { border-right:1px solid var(--dark-line); }
  body.narrow .dnum:nth-child(odd):last-child { grid-column:1 / -1; border-right:none; } /* нечётный хвост — на всю ширину, без пустого слота */
  body.narrow .dnum b { font-size:17px; }
  body.narrow .photogrid { grid-template-columns:1fr 1fr; }
  body.narrow .citable { padding:20px 20px; }
  body.narrow .caselist summary { font-size:17px; }
  body.narrow .herostats { max-width:none; }
  body.narrow .btn { display:block; text-align:center; }
  /* ===== Планшет (641–1024): 2 колонки, выровненные сетки, без сирот ===== */
  @media (min-width:641px) and (max-width:1024px) {
    .wrap { padding:0 5%; }
    .hero { display:grid; grid-template-columns:1.15fr 1fr; gap:36px; align-items:center; }
    #p-press .hero { align-items:start; }
    .hero .pic img { max-height:62vh; }
    .herostats { max-width:none; }
    .tiles { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
    .tiles > .tile:nth-child(odd):last-child { grid-column:1 / -1; } /* нечётный хвост — на всю ширину */
    .proof { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
    .proof > .proofcard:nth-child(odd):last-child { grid-column:1 / -1; }
    .dgrid { display:grid; grid-template-columns:1fr 1fr; }
    .dnum { flex:none; border-right:none; }
    .dnum:nth-child(odd) { border-right:1px solid var(--dark-line); }
    .dnum:nth-child(odd):last-child { grid-column:1 / -1; border-right:none; }
    .dnum b { font-size:19px; }
    .citable.wide .cbody { columns:1; }
    .photogrid { grid-template-columns:1fr 1fr; }
  }
  /* ===== Тап-таргеты ≥44px и кроп лиц (планшет + телефон) ===== */
  @media (max-width:1024px) {
    nav.sitenav a { padding:12px 0; }
    .socials a { padding:13px 8px; }
    footer.site a { padding:13px 0; }
    .photoswitch { padding:14px 18px; min-height:44px; }
    .faqlist summary, .caselist summary { padding:7px 0; }
    .hero .pic img, .presspic img { object-position:center top; }
  }
  @media (max-width:640px) {
    header.site .wrap { flex-direction:column; align-items:flex-start; gap:12px; }
    nav.sitenav { width:100%; gap:2px 18px; }
    .hero { flex-direction:column; align-items:stretch; gap:20px; }
    .hero .txt, .hero .pic { flex:0 0 auto; }
    .hero .pic img { max-height:56vh; object-fit:cover; }
    .lead { font-size:19px; }
    section { padding:40px 0 44px; }
    .steps { grid-template-columns:1fr; }
    .situgrid { grid-template-columns:1fr; }
    .topics .topic-grid { grid-template-columns:1fr; }
    .credo-words { flex-direction:column; gap:2px 0; font-size:40px !important; }
    .credo-words i { display:none; }
    .tiles { display:block; }
    .tiles .tile { margin-bottom:14px; }
    .tiles .tile:last-child { margin-bottom:0; }
    .tiles.grid2 { grid-template-columns:1fr; }
    .proof { display:block; }
    .proof .proofcard { margin-bottom:14px; }
    .proof .proofcard:last-child { margin-bottom:0; }
    .doors { flex-direction:column; }
    .dgrid { display:grid; grid-template-columns:1fr 1fr; }
    .dnum { border-right:none; padding:16px 16px; }
    .dnum:nth-child(odd) { border-right:1px solid var(--dark-line); }
    .dnum:nth-child(odd):last-child { grid-column:1 / -1; border-right:none; }
    .dnum b { font-size:17px; }
    .citable { padding:20px 20px; }
    .caselist summary { font-size:17px; }
    .herostats { max-width:none; }
    .btn { display:block; text-align:center; }
    .citable.wide .cbody { columns:1; }
    .credo-words { gap:0 10px; }
  }
  @media (prefers-reduced-motion: reduce) {
    html { scroll-behavior:auto; }
    * { transition:none !important; animation:none !important; }
    .reveal { opacity:1 !important; transform:none !important; }
  }

  /* prod: навигационные обёртки-ссылки */
  a.logo,a.door,a.dnum{ text-decoration:none; color:inherit; }
  a.logo{ display:inline-block; }
  a.door,a.dnum{ display:block; }
  .pdf-soon{ color:var(--muted); }

/* Маркер-выделение смысловых фраз: тёплый свайп-highlighter */
.mark { background:linear-gradient(104deg, rgba(240,178,74,0) .3em, rgba(240,178,74,.36) .3em, rgba(240,178,74,.42) calc(100% - .3em), rgba(240,178,74,0) calc(100% - .3em));
        padding:.02em .16em; color:inherit; border-radius:1px;
        -webkit-box-decoration-break:clone; box-decoration-break:clone; }
