/* Медпульс v8 — правовые документы (/policy/, /consent/).
   Один файл на обе страницы: разметка у них одинаковая, различается только
   текст. Лежит РЯДОМ с index.html, а не внутри policy/ — тогда пути к
   шрифтам («assets/…») считаются от этого файла и одинаково верны на проде
   (корень — сама версия) и на дев-стенде (страница живёт в /v8/).

   Почему отдельные страницы, а не модалка или аккордеон в подвале:
   152-ФЗ (ст. 18.1 ч. 2) требует «неограниченного доступа» к документу, а
   и Роскомнадзору, и модерации Директа нужен постоянный адрес, который
   открывается сам по себе. У свёрнутого блока на главной такого адреса нет.

   Страницы самодостаточны: интернет не нужен, скриптов, кроме подсветки
   активного пункта содержания, здесь нет. */

/* Шрифты те же, что на главной; подмножества — как в index.html. */
@font-face{font-family:'Montserrat';font-style:normal;font-weight:100 900;font-display:swap;src:url("assets/montserrat-cyrillic-ext.woff2") format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:100 900;font-display:swap;src:url("assets/montserrat-cyrillic.woff2") format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:100 900;font-display:swap;src:url("assets/montserrat-latin-ext.woff2") format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:100 900;font-display:swap;src:url("assets/montserrat-latin.woff2") format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400 500;font-display:swap;src:url("assets/jbmono-cyrillic-ext.woff2") format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400 500;font-display:swap;src:url("assets/jbmono-cyrillic.woff2") format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400 500;font-display:swap;src:url("assets/jbmono-latin-ext.woff2") format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400 500;font-display:swap;src:url("assets/jbmono-latin.woff2") format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* Палитра — та же, что на главной: белый · синий · графит. */
:root{
--bg:#FFFFFF;--tint:#F3F7FC;--card:#FFFFFF;
--ink:#161B22;--mut:#5C6675;--dim:#8B94A3;
--line:#E4EAF2;--line2:#CBD6E4;
--blue:#1080F0;--blue-dk:#0B62C4;--sky:#E8F2FE;
--graph:#161B22;--gmut:#9AA4B5;--gline:rgba(255,255,255,.13);--gblue:#4DA3FF;
--sans:'Montserrat',system-ui,sans-serif;--mono:'JetBrains Mono',monospace;
--r-lg:24px;--r-md:18px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55;
  -webkit-font-smoothing:antialiased;overflow-x:clip}
a{color:var(--blue);text-decoration:none}
img{display:block;max-width:100%}
::selection{background:var(--blue);color:#fff}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:4px}
.wrap{max-width:1240px;margin:0 auto;padding:0 clamp(20px,4vw,56px)}
[id]{scroll-margin-top:96px}

/* ── шапка: логотип и возврат на главную ── */
header{position:sticky;top:0;z-index:90;background:rgba(255,255,255,.9);
  backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);
  border-bottom:1px solid var(--line)}
header .bar{display:flex;align-items:center;gap:20px;height:68px}
.logo{display:flex;align-items:center;gap:10px;font-weight:700;font-size:14.5px;letter-spacing:.1em;
  color:var(--ink)}
.logo img{height:28px;width:auto}
.back{margin-left:auto;display:inline-flex;align-items:center;gap:9px;font-size:13.5px;font-weight:600;
  color:var(--mut);transition:color .2s}
.back:hover{color:var(--blue)}
.back svg{flex:none;transition:transform .2s}
.back:hover svg{transform:translateX(-3px)}

/* ── титул документа ── */
.dhead{padding:clamp(38px,5.5vw,72px) 0 clamp(26px,3.4vw,40px)}
.flabel{display:inline-block;font-family:var(--mono);font-size:11px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--blue);margin-bottom:16px}
.dhead h1{font-weight:800;font-size:clamp(27px,4.2vw,50px);line-height:1.1;letter-spacing:-.025em;
  max-width:20ch;text-wrap:balance}
.drev{margin-top:18px;display:inline-flex;align-items:center;gap:9px;font-family:var(--mono);
  font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);
  background:var(--tint);border:1px solid var(--line);border-radius:999px;padding:8px 16px}
.drev::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--blue)}

/* ── две колонки: содержание слева, текст справа ──
   Колонка текста ограничена по ширине абзаца (74ch) — таблица в разделе 3
   при этом занимает всю ширину колонки, ей нужно больше. */
.doc{display:grid;grid-template-columns:210px minmax(0,1fr);gap:clamp(28px,3.6vw,56px);
  padding-bottom:clamp(50px,7vw,96px);align-items:start}
.toc{position:sticky;top:96px}
.toc h2{font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;
  color:var(--dim);font-weight:500;margin-bottom:16px}
.toc ol{list-style:none;counter-reset:t;display:grid;gap:2px}
.toc a{display:block;counter-increment:t;position:relative;padding:7px 0 7px 26px;font-size:13px;
  line-height:1.4;color:var(--mut);border-left:2px solid var(--line);transition:color .2s,border-color .2s}
.toc a::before{content:counter(t);position:absolute;left:11px;font-family:var(--mono);font-size:10.5px;
  color:var(--dim)}
.toc a:hover{color:var(--ink);border-color:var(--line2)}
.toc a.on{color:var(--blue);border-color:var(--blue);font-weight:600}
.toc a.on::before{color:var(--blue)}

/* ── текст документа ── */
.body>section+section{margin-top:clamp(32px,4vw,52px)}
.body h2{font-weight:700;font-size:clamp(18px,2.1vw,24px);line-height:1.25;letter-spacing:-.015em;
  display:flex;gap:14px;margin-bottom:16px;max-width:34ch;scroll-margin-top:96px}
.body h2 .n{flex:none;font-family:var(--mono);font-size:12px;font-weight:500;color:var(--blue);
  padding-top:.42em}
.body p{max-width:74ch;color:var(--mut);font-size:15px;line-height:1.72}
.body p+p{margin-top:14px}
/* Преамбула «Согласия»: она стоит до первого раздела и вводит весь документ,
   поэтому крупнее основного текста и отбита линией. */
.body .lead{color:var(--ink);font-size:clamp(15.5px,1.7vw,17.5px);line-height:1.7;
  padding-bottom:clamp(26px,3.4vw,38px);margin-bottom:clamp(26px,3.4vw,38px);
  border-bottom:1px solid var(--line)}
.body p b{color:var(--ink);font-weight:600}
.body a{text-decoration:underline;text-underline-offset:2px}
.body ul{list-style:none;max-width:74ch;margin-top:14px;display:grid;gap:10px}
.body li{position:relative;padding-left:22px;color:var(--mut);font-size:15px;line-height:1.7}
.body li::before{content:"";position:absolute;left:2px;top:.65em;width:6px;height:6px;border-radius:50%;
  background:var(--blue);opacity:.55}
.body ul+p{margin-top:16px}
/* Абзац-вывод после таблицы: заметнее обычного текста, но не заголовок. */
.note{margin-top:22px;padding:18px 22px;background:var(--sky);border-radius:var(--r-md);
  color:var(--ink);font-size:14.5px;line-height:1.65;max-width:74ch}

/* ── таблица раздела 3 ──
   На широком экране — обычная таблица; ниже 1080px строки превращаются в
   карточки, подписи колонок берутся из data-l. Горизонтальной прокрутки нет
   нигде: в юридическом тексте её не заметят и половину столбцов не прочтут. */
.t3-wrap{margin-top:22px;border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}
.t3{width:100%;border-collapse:collapse;font-size:12.5px;line-height:1.55}
.t3 th{text-align:left;font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;
  text-transform:uppercase;font-weight:500;color:var(--mut);background:var(--tint);
  padding:13px 14px;border-bottom:1px solid var(--line2);vertical-align:bottom}
.t3 td{padding:14px;vertical-align:top;color:var(--mut);border-top:1px solid var(--line)}
.t3 td:first-child{color:var(--ink);font-weight:600}
.t3 tbody tr:first-child td{border-top:0}
@media(max-width:1080px){
  .t3-wrap{border:0;border-radius:0;overflow:visible}
  .t3,.t3 tbody,.t3 tr,.t3 td{display:block}
  /* Шапку убираем совсем, а не прячем «доступно»: в режиме карточек подписи
     колонок и так выводятся из data-l перед каждым значением, а спрятанный
     table-header-group продолжает занимать своё табличное место и торчать
     за правым краем экрана. */
  .t3 thead{display:none}
  .t3 tr{border:1px solid var(--line);border-radius:var(--r-md);padding:clamp(18px,3vw,24px);
    background:var(--card)}
  .t3 tr+tr{margin-top:12px}
  .t3 td{padding:0;border:0;font-size:14px;line-height:1.65}
  .t3 td::before{content:attr(data-l);display:block;font-family:var(--mono);font-size:9.5px;
    letter-spacing:.16em;text-transform:uppercase;color:var(--dim);margin-bottom:5px}
  .t3 td+td{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
  .t3 td:first-child{font-size:16px;font-weight:700}
  .t3 td:first-child::before{color:var(--blue)}
}

/* ── переход ко второму документу ── */
.xdoc{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;
  margin-top:clamp(38px,5vw,64px);padding:clamp(22px,3vw,30px);border:1px solid var(--line);
  border-radius:var(--r-lg);background:var(--tint);transition:border-color .2s,transform .2s}
/* Карточка лежит внутри .body, где ссылки подчёркнуты. Селектор с .body
   обязателен: у одиночного .xdoc специфичность ниже, чем у «.body a». */
.body a.xdoc{text-decoration:none}
.xdoc:hover{border-color:var(--blue);transform:translateY(-2px)}
/* Подпись и название — одним флекс-элементом (див), иначе они встают в строку
   со стрелкой и на узком экране разъезжаются по разным строкам. */
.xdoc>div{min-width:0}
.xdoc span{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--dim);margin-bottom:7px}
.xdoc b{display:block;font-size:clamp(16px,1.9vw,20px);font-weight:700;color:var(--ink);line-height:1.3}
.xdoc i{font-style:normal;flex:none;display:grid;place-items:center;width:44px;height:44px;
  border-radius:50%;background:var(--blue);color:#fff}

/* ── подвал ── */
footer{background:var(--graph);color:var(--gmut);padding:clamp(38px,5vw,56px) 0 34px}
.fdoc{display:flex;justify-content:space-between;gap:clamp(24px,4vw,56px);flex-wrap:wrap}
.fdoc .logo{color:#fff;margin-bottom:12px}
.fdoc .dirig{font-size:14px;font-weight:700;color:#fff}
.fdoc ul{list-style:none;display:grid;gap:9px}
.fdoc h4{font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;
  color:#fff;margin-bottom:15px;font-weight:500}
.fdoc a{color:var(--gmut);font-size:13.5px;transition:color .2s}
.fdoc a:hover{color:var(--gblue)}
.fbot{border-top:1px solid var(--gline);margin-top:clamp(26px,3vw,36px);padding-top:22px;
  display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:12px}
.fbot a{color:var(--gmut);text-decoration:underline}
.fbot a:hover{color:var(--gblue)}

@media(max-width:900px){
  .doc{grid-template-columns:1fr;gap:0}
  /* На узком экране содержание уезжает наверх обычным списком: липкая
     колонка там съедала бы пол-экрана. */
  .toc{position:static;margin-bottom:clamp(30px,5vw,42px);padding-bottom:clamp(26px,4vw,34px);
    border-bottom:1px solid var(--line)}
  .toc ol{grid-template-columns:1fr 1fr;gap:2px 18px}
  .body h2{max-width:none}
}
@media(max-width:560px){.toc ol{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .back svg,.xdoc{transition:none}
}

/* ── печать ──
   Юридический документ распечатывают и сохраняют в PDF — это его обычная
   жизнь, а не редкий случай. Убираем всю навигацию, оставляем текст. */
@media print{
  header,.toc,.xdoc,footer{display:none}
  body{font-size:11pt;color:#000;background:#fff}
  .wrap{max-width:none;padding:0}
  .doc{display:block;padding:0}
  .dhead{padding:0 0 12pt}
  .dhead h1{font-size:20pt;max-width:none}
  .drev{background:none;border:0;padding:0;margin-top:8pt}
  .body p,.body li,.note{color:#000;font-size:11pt;max-width:none}
  .note{background:none;border:1px solid #999;border-radius:0}
  .body>section{break-inside:avoid-page}
  .body h2{break-after:avoid-page}
  .t3-wrap{border:0;border-radius:0}
  .t3{font-size:8.5pt}
  .t3 th,.t3 td{border:1px solid #999;color:#000}
  .t3 tr{break-inside:avoid-page}
  @page{margin:16mm}
}
