/* ==========================================================================
   ХИТ НК - общий стиль сайта.
   Строгая редакционная верстка в духе «Известий»: газетная бумага, черный текст с засечками, линейки вместо плашек.
   ========================================================================== */

/* ---------- шрифты: локальные woff2, только кириллица и латиница ---------- */
@font-face{font-family:"Golos Text";font-style:normal;font-weight:400;font-display:swap;
  src:url(/assets/fonts/golos-text-cyrillic-400-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Golos Text";font-style:normal;font-weight:400;font-display:swap;
  src:url(/assets/fonts/golos-text-latin-400-normal.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:"Golos Text";font-style:normal;font-weight:500;font-display:swap;
  src:url(/assets/fonts/golos-text-cyrillic-500-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Golos Text";font-style:normal;font-weight:500;font-display:swap;
  src:url(/assets/fonts/golos-text-latin-500-normal.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:"Golos Text";font-style:normal;font-weight:600;font-display:swap;
  src:url(/assets/fonts/golos-text-cyrillic-600-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Golos Text";font-style:normal;font-weight:600;font-display:swap;
  src:url(/assets/fonts/golos-text-latin-600-normal.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:"Golos Text";font-style:normal;font-weight:700;font-display:swap;
  src:url(/assets/fonts/golos-text-cyrillic-700-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Golos Text";font-style:normal;font-weight:700;font-display:swap;
  src:url(/assets/fonts/golos-text-latin-700-normal.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}
/* Unbounded - только логотип */
@font-face{font-family:"Unbounded";font-style:normal;font-weight:700;font-display:swap;
  src:url(/assets/fonts/unbounded-cyrillic-700-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Unbounded";font-style:normal;font-weight:700;font-display:swap;
  src:url(/assets/fonts/unbounded-latin-700-normal.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}

/* PT Serif (ParaType, OFL) - текст и заголовки в газетном стиле */
@font-face{font-family:"PT Serif";font-style:normal;font-weight:400;font-display:swap;
  src:url(/assets/fonts/pt-serif-cyrillic-400-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"PT Serif";font-style:normal;font-weight:400;font-display:swap;
  src:url(/assets/fonts/pt-serif-latin-400-normal.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:"PT Serif";font-style:italic;font-weight:400;font-display:swap;
  src:url(/assets/fonts/pt-serif-cyrillic-400-italic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"PT Serif";font-style:italic;font-weight:400;font-display:swap;
  src:url(/assets/fonts/pt-serif-latin-400-italic.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:"PT Serif";font-style:normal;font-weight:700;font-display:swap;
  src:url(/assets/fonts/pt-serif-cyrillic-700-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"PT Serif";font-style:normal;font-weight:700;font-display:swap;
  src:url(/assets/fonts/pt-serif-latin-700-normal.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:"PT Serif";font-style:italic;font-weight:700;font-display:swap;
  src:url(/assets/fonts/pt-serif-cyrillic-700-italic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"PT Serif";font-style:italic;font-weight:700;font-display:swap;
  src:url(/assets/fonts/pt-serif-latin-700-italic.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:#FCF9EE;             /* фон страницы: слегка светло-желтый */
  --hdr-bg:var(--bg);       /* фон шапки: та же газетная бумага */
  --menu-bg:#F0E8D0;        /* фон открытого мобильного меню: бумага чуть темнее */
  --ink:#141210;            /* основной текст и темные линейки: черная газетная краска */
  --ink-2:#34302A;          /* вторичный текст: лиды, описания */
  --muted:#6A6356;          /* служебный текст: даты, подписи, крошки */
  --rule:#D8D0BC;           /* тонкая линейка между материалами */
  --rule-dark:#141210;      /* темная линейка: начало раздела, шапка */
  --rule-input:#B5AD98;     /* рамка полей ввода */
  --accent:#1F6F5C;         /* зеленый акцент - только там, где без него никак */
  --tile-hover:#F6F1DF;     /* фон блока-материала при наведении, едва заметно */
  --title-hover:#4A5260;    /* заголовок блока при наведении */
  --link-line:#A89F88;      /* подчеркивание ссылок в тексте */

  --f-text:"Golos Text",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  --f-logo:"Unbounded","Arial Black",sans-serif;
  --f-serif:"PT Serif",Georgia,"Times New Roman",serif;   /* газетный текст и заголовки */

  --max:1240px;             /* ширина общего контейнера: шапка, контент, подвал */
  --gutter:24px;            /* боковой отступ контейнера */
  --measure:36em;           /* колонка текста: до ~68 знаков при 18 px */
  --wide:880px;             /* таблицы и схемы в статьях */
  --tile-pad:20px;          /* внутренний отступ блока в сетке материалов */
}

/* ---------- основа ---------- */
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;background:var(--bg)}
body{margin:0;background:var(--bg);color:var(--ink);font:400 18px/1.6 var(--f-text);
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
/* один контейнер для шапки, контента и подвала: все начинается с одной вертикали */
.wrap{max-width:calc(var(--max) + 2 * var(--gutter));margin:0 auto;padding:0 var(--gutter)}

a{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em;
  text-decoration-color:var(--link-line);transition:color .15s,text-decoration-color .15s}
a:hover{text-decoration-color:currentColor}
a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--ink);outline-offset:2px}

/* ---------- типографика ---------- */
h1,h2,h3,h4{font-family:var(--f-text);font-weight:700;line-height:1.15;letter-spacing:-.012em;color:var(--ink)}
h1{font-size:clamp(32px,3.6vw,46px);margin:8px 0 18px;max-width:var(--wide)}
h2{font-size:clamp(24px,2.3vw,30px);margin:56px 0 16px}
h3{font-size:21px;line-height:1.2;margin:32px 0 10px}
h4{font-size:18px;line-height:1.25;margin:24px 0 8px}
p{margin:0 0 18px}
ul,ol{padding-left:22px;margin:0 0 18px}
li{margin:0 0 8px}
strong,b{font-weight:700}
.lead{font-size:21px;line-height:1.5;color:var(--ink-2);margin:0 0 20px}
.kicker{font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 10px}
blockquote{margin:24px 0;padding:0 0 0 18px;border-left:2px solid var(--rule-dark);color:var(--ink-2)}

/* колонка текста - не шире ~68 знаков, от левого края контейнера */
:is(main,.sec-body) > :is(p,ul,ol,dl,blockquote,h3,h4,.note,.alarm,.steps,.faq,.lead,.pagemeta,.author){max-width:var(--measure)}
:is(main,.sec-body) > :is(table,.fig,.osn-list){max-width:var(--wide)}

/* служебный текст */
.crumbs{font-size:13px;line-height:1.5;color:var(--muted);padding:18px 0 6px}
.crumbs a{color:var(--muted);text-decoration:none}
.crumbs a:hover{color:var(--ink);text-decoration:underline}
.pagemeta{font-size:13px;line-height:1.5;color:var(--muted);margin:4px 0 32px;padding-bottom:14px;border-bottom:1px solid var(--rule)}

/* разделы страницы начинаются с темной линейки - как полосы газеты (в статьях подзаголовки без линеек) */
:is(main:not(.article), main:not(.article) > .sec) > h2{padding-top:12px;border-top:2px solid var(--rule-dark)}

/* ---------- кнопки: прямоугольные, без скруглений ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 22px;
  background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:0;cursor:pointer;
  font:600 15px/1.2 var(--f-text);text-decoration:none;transition:background-color .15s,color .15s}
.btn:hover{background:#2E2E2E;color:#fff}
.btn.ghost{background:var(--bg);color:var(--ink)}
.btn.ghost:hover{background:var(--tile-hover)}
.btn.compact{min-height:38px;padding:0 16px;font-size:14px}

/* ---------- метки и заглушки ---------- */
.tag{display:inline-block;font-size:12px;font-weight:600;line-height:1.4;letter-spacing:.06em;text-transform:uppercase;
  color:var(--muted);margin:0 10px 6px 0}
.tbd{display:inline-block;padding:0 3px;border-bottom:1px dashed var(--muted);color:var(--muted);font-size:.9em;white-space:nowrap}

/* ---------- сетка материалов: колонки, разделенные тонкими линейками ---------- */
/* Внешние линейки срезаются overflow:hidden, отрицательные поля выравнивают текст первой колонки по контейнеру */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));margin:20px calc(-1 * var(--tile-pad)) 32px;overflow:hidden}
.card{position:relative;margin:-1px 0 0 -1px;padding:18px var(--tile-pad) 22px;border-left:1px solid var(--rule);
  background:var(--bg);transition:background-color .15s}
/* горизонтальная линейка - в пределах колонки, с просветом у вертикальных линеек; у первого ряда срезается */
.card::after{content:"";position:absolute;top:0;left:var(--tile-pad);right:var(--tile-pad);border-top:1px solid var(--rule)}
.card h3{font-size:20px;line-height:1.2;margin:0 0 8px}
.card h3 a{color:var(--ink);text-decoration:none;transition:color .15s}
.card p{margin:0 0 8px;font-size:15px;line-height:1.5;color:var(--ink-2)}
.card p:last-child{margin-bottom:0}
.card > b:first-child{display:block;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.card .price,.card .card-meta{display:block;margin-top:10px;font-size:13px;line-height:1.45;color:var(--muted)}
.card .tag{display:block;margin:0 0 8px}
.grid.numbered{counter-reset:cardnum}
.grid.numbered .card{counter-increment:cardnum}
.grid.numbered .card::before{content:counter(cardnum,decimal-leading-zero);display:block;margin-bottom:8px;
  font-size:13px;font-weight:700;letter-spacing:.06em;color:var(--muted)}

/* блок кликабелен целиком: ссылка .card-link растянута на него псевдоэлементом */
.card.is-link{cursor:pointer}
.card.is-link:hover{background:var(--tile-hover)}
.card.is-link:hover :is(h3 a,.card-link){color:var(--title-hover)}
.card-link::after{content:"";position:absolute;inset:0;z-index:1}
.card p .card-link{font-weight:600;color:var(--ink)}
.card.is-link :is(a:not(.card-link),button,input,select,textarea,label){position:relative;z-index:2}
/* фокус с клавиатуры обводит весь блок, а не только заголовок */
.card.is-link:has(.card-link:focus-visible){outline:2px solid var(--ink);outline-offset:-2px}
.card.is-link .card-link:focus-visible{outline:none}
@supports not selector(:has(*)){
  .card.is-link:focus-within{outline:2px solid var(--ink);outline-offset:-2px}
}

/* ---------- таблицы: только горизонтальные линейки ---------- */
table{border-collapse:collapse;width:100%;margin:24px 0 28px;font-size:15px;line-height:1.5}
th,td{padding:10px 14px 10px 0;text-align:left;vertical-align:top;border-bottom:1px solid var(--rule)}
th{font-size:13px;font-weight:700;letter-spacing:.02em;border-bottom:1px solid var(--rule-dark)}
thead th{border-top:0}
tr:last-child td{border-bottom:1px solid var(--rule)}

/* ---------- врезки ---------- */
.alarm{margin:28px 0;padding:14px 0 16px;border-top:2px solid var(--rule-dark);border-bottom:1px solid var(--rule)}
.alarm p:last-child{margin-bottom:0}
.note{margin:24px 0;padding:12px 0 0;border-top:1px solid var(--rule);font-size:15px;line-height:1.55;color:var(--ink-2)}
.note p:last-child{margin-bottom:0}

/* ---------- шаги ---------- */
.steps{counter-reset:s;padding:0;list-style:none;margin:20px 0 28px}
.steps li{counter-increment:s;position:relative;margin:0;padding:12px 0 12px 44px;border-top:1px solid var(--rule)}
.steps li:last-child{border-bottom:1px solid var(--rule)}
.steps li::before{content:counter(s);position:absolute;left:0;top:12px;font-weight:700;font-size:18px;line-height:1.6;color:var(--ink)}

/* ---------- вопросы и ответы ---------- */
.faq{margin:20px 0 28px}
.faq dt{font-weight:700;font-size:19px;line-height:1.3;margin:0;padding:18px 0 8px;border-top:1px solid var(--rule)}
.faq dt:first-child{border-top:1px solid var(--rule-dark)}
.faq dd{margin:0 0 4px;color:var(--ink-2)}

/* ---------- оглавление ---------- */
.toc{margin:0 0 40px;padding:12px 0 0;border-top:2px solid var(--rule-dark);max-width:var(--wide)}
.toc b{display:block;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);margin-bottom:10px}
.toc ol{margin:0;padding-left:20px;columns:2;column-gap:40px}
.toc li{margin:0 0 6px;font-size:15px;line-height:1.45;break-inside:avoid}
.toc a{text-decoration:none}
.toc a:hover{text-decoration:underline}
/* собственное оглавление статьи (nav.note с «Содержанием») оформлено так же */
nav.note{margin:0 0 40px;padding:12px 0 0;border-top:2px solid var(--rule-dark);max-width:var(--wide);color:var(--ink)}
nav.note p:first-child{margin:0 0 10px;font-size:12px;letter-spacing:.06em;text-transform:uppercase}
nav.note ol{margin:0;padding-left:20px;columns:2;column-gap:40px}
nav.note li{margin:0 0 6px;font-size:15px;line-height:1.45;break-inside:avoid}
nav.note a{text-decoration:none}
nav.note a:hover{text-decoration:underline}

/* ---------- заявка ---------- */
.cta{margin:72px 0 0;padding:14px 0 0;border-top:2px solid var(--rule-dark)}
.cta h3{margin:0 0 8px;font-size:clamp(24px,2.3vw,30px);line-height:1.15}
.cta p{color:var(--ink-2);margin:0;max-width:var(--measure)}
.cta form{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px;max-width:var(--wide)}
.cta input{flex:1;min-width:210px;min-height:46px;padding:0 14px;border:1px solid var(--rule-input);border-radius:0;
  font:400 16px var(--f-text);background:#fff;color:var(--ink)}
.cta input::placeholder{color:var(--muted)}
.cta input:focus{outline:0;border-color:var(--ink)}
/* форма заявки: согласие, ловушка для ботов, ответ после отправки */
.cta .lead-consent{flex-basis:100%;display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.5;color:var(--ink-2);cursor:pointer}
.cta .lead-consent input{flex:none;min-width:0;min-height:0;width:18px;height:18px;margin:2px 0 0;padding:0;accent-color:var(--ink)}
.cta .lead-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cta .lead-status{flex-basis:100%;margin:0;font-size:15px}
.cta .lead-status:empty{display:none}
.cta .lead-form.is-error .lead-status{color:#B3261E}
.cta .lead-form.is-sent > :not(.lead-status){display:none}
.cta .lead-form.is-sent .lead-status{font-size:18px;color:var(--ink)}
.cta .lead-form.is-busy button{opacity:.6;pointer-events:none}

/* ---------- иллюстрации ---------- */
.fig{margin:32px 0;padding:0}
.fig img{width:100%;height:auto;display:block;border:1px solid var(--rule);background:#fff}
.fig figcaption{font-size:13px;line-height:1.5;color:var(--muted);margin-top:8px}
.img-placeholder{border:1px dashed var(--rule-input);min-height:190px;display:flex;flex-direction:column;align-items:center;
  justify-content:center;gap:8px;padding:24px;text-align:center}
.img-placeholder b{font-size:12px;letter-spacing:.08em;color:var(--muted)}
.img-placeholder span{font-size:15px;color:var(--muted);max-width:520px}

/* ---------- статьи: колонка для чтения от левого края контейнера ---------- */
.article > *{max-width:var(--measure)}
.article > :is(h1,.crumbs){max-width:var(--wide)}
.article > :is(table,.fig,.toc,.cta,.grid,.osn-list){max-width:var(--wide)}
.article > .sec{max-width:none}   /* раздел со схемой - на всю ширину контейнера, текст внутри по колонке */
.article > .grid{max-width:calc(var(--wide) + 2 * var(--tile-pad))}
.article .lead{font-size:22px}
.article h2{scroll-margin-top:24px;margin:52px 0 14px}
.article p,.article li{font-size:18px;line-height:1.6}
.author{margin-top:48px;padding-top:14px;border-top:1px solid var(--rule);font-size:14px;line-height:1.5;color:var(--muted)}
.author a{color:var(--muted)}

/* список оснований */
.osn-list a{display:flex;gap:14px;padding:12px 0;border-bottom:1px solid var(--rule);color:var(--ink);text-decoration:none}
.osn-list a:hover{background:var(--tile-hover)}
.osn-list b{color:var(--muted);flex:0 0 78px;font-weight:600}

/* ---------- подвал ---------- */
.ftr{margin-top:88px;font-size:14px;line-height:1.5;color:var(--ink-2)}
.ftr-cols{display:grid;gap:24px 32px;grid-template-columns:repeat(4,minmax(0,1fr));padding:20px 0 32px;border-top:1px solid var(--rule-dark)}
.ftr-cols b{display:block;margin-bottom:8px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.ftr-cols a,.ftr-cols span{display:block;padding:3px 0;color:var(--ink-2);text-decoration:none}
.ftr-cols a:hover{color:var(--ink);text-decoration:underline}
.ftr-legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 24px;padding:14px 0 28px;border-top:1px solid var(--rule);
  font-size:13px;color:var(--muted)}

/* ---------- декоративные схемы планов в правом поле раздела ---------- */
/* Раздел с схемой - сетка: заголовок с линейкой на всю ширину, текст слева, схема в своей правой колонке.
   Правый край схемы совпадает с краем линейки; по вертикали - по верху первого или низу последнего
   абзаца (поправка .3em - половина межстрочного интервала). Только на широком десктопе. */
.sec-plan{display:none}
@media (min-width:1400px){
  .sec{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:48px;margin-bottom:18px}
  .sec > h2{grid-column:1 / -1}
  .sec-body{grid-column:1;min-width:0}
  /* края текста раздела - это края первого и последнего блока, без их внешних отступов */
  .sec-body > :first-child{margin-top:0}
  .sec-body > :last-child,.sec-body > :last-child > :last-child{margin-bottom:0}
  .sec-plan{display:block;grid-column:2;grid-row:2;color:var(--ink);pointer-events:none;user-select:none;-webkit-user-select:none}
  .sec.plan-top .sec-plan{align-self:start;margin-top:.3em}
  .sec.plan-bottom .sec-plan{align-self:end;margin-bottom:.3em}
}

/* ---------- адаптив ---------- */
@media (max-width:860px){
  .ftr-cols{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:700px){
  :root{--gutter:16px;--tile-pad:16px}
  body{font-size:17px}
  .lead,.article .lead{font-size:19px}
  h2{margin-top:44px}
  .article p,.article li{font-size:17px}
  .toc ol,nav.note ol{columns:1}
  /* колонки складываются в одну, линейки между блоками становятся горизонтальными */
  .grid{grid-template-columns:minmax(0,1fr)}
  table{display:block;overflow-x:auto}
}
@media (max-width:480px){
  .ftr-cols{grid-template-columns:minmax(0,1fr)}
}

/* ---------- адрес почты с кнопкой копирования (кнопка работает только со скриптами) ---------- */
.email{white-space:nowrap}
.copy-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin:-6px 0 -6px 2px;padding:0;
  border:0;background:none;color:var(--muted);cursor:pointer;vertical-align:middle;position:relative}
.copy-btn:hover{color:var(--ink)}
.copy-btn.is-done{color:var(--ink)}
.copy-btn.is-done::after{content:"Скопировано";position:absolute;left:50%;bottom:calc(100% + 4px);transform:translateX(-50%);
  padding:3px 8px;font:500 12px/1.4 var(--f-text);white-space:nowrap;color:#fff;background:var(--ink)}
html:not(.js) .copy-btn{display:none}
.ftr-cols .email{display:flex;align-items:center}
.ftr-cols .email a{display:inline}

/* ---------- заголовок пункта: жирная фраза в начале пункта или абзаца - отдельной строкой над текстом ---------- */
.lead-in{display:block;margin-bottom:2px}

/* ==========================================================================
   Газетный стиль, как «Известия»: текст и заголовки с засечками, буквица в начале статьи. Служебное (крошки, даты, метки, кнопки, форма,
   подвал) - без засечек, как рубрики и выходные данные в газете. Шапка не меняется.
   ========================================================================== */
body{font-family:var(--f-serif)}
h1,h2,h3,h4{font-family:var(--f-serif);letter-spacing:0}
h1{font-size:clamp(34px,4.2vw,54px);line-height:1.08}
h2{font-size:clamp(26px,2.5vw,32px);line-height:1.12}
.lead{font-style:italic}
blockquote{font-style:italic}
.faq dt{font-family:var(--f-serif)}

/* служебное - без засечек */
:is(.crumbs,.pagemeta,.tag,.kicker,.card-meta,.price,.toc b,nav.note p:first-child,th,.fig figcaption,.author,
  .ftr,.cta form,.osn-list b,.card > b:first-child,.img-placeholder){font-family:var(--f-text)}
.grid.numbered .card::before,.steps li::before{font-family:var(--f-text)}

/* текст полосы - с выключкой влево, без растяжки по ширине. Вернуть газетную выключку по ширине:
   :is(main,.sec-body) > :is(p,blockquote):not([class]) и пункты списков - text-align:justify;hyphens:auto */

/* буквица в начале статьи */
.article > :is(.pagemeta,.toc,nav.note) + p:not([class])::first-letter,
.article > :is(.toc,nav.note) + h2 + p:not([class])::first-letter{float:left;margin:6px 8px 0 0;
  font:700 4.1em/.8 var(--f-serif);color:var(--ink)}

/* разделы полосы: жирная линейка сверху, как у газетной рубрики */
:is(main:not(.article), main:not(.article) > .sec) > h2{border-top-width:3px}
.cta{border-top-width:3px}
.hero-btn,.hero-terms span{font-family:var(--f-text)}

/* ряд кнопок в абзаце: отступ между кнопками; на телефоне - одна под другой, одной ширины */
p:has(> .btn){display:flex;flex-wrap:wrap;gap:16px;margin-top:24px;text-align:left}
@media (max-width:560px){
  p:has(> .btn) > .btn{flex:1 1 100%}
}

/* ---------- подсказка к ссылке на статью закона (показывает site.js) ---------- */
.law-tip{position:absolute;z-index:60;width:max-content;max-width:min(380px,calc(100vw - 24px));padding:12px 14px 12px;
  background:var(--bg);color:var(--ink);border:1px solid var(--ink);box-shadow:0 6px 24px rgba(20,18,16,.16);
  opacity:0;transform:translateY(4px);transition:opacity .15s,transform .15s;pointer-events:none}
.law-tip.is-open{opacity:1;transform:none;pointer-events:auto}
.law-tip-doc{margin:0 0 6px;font:500 12px/1.4 var(--f-text);color:var(--muted)}
.law-tip-title{margin:0 0 10px;font:700 16px/1.35 var(--f-serif)}
.law-tip-text{margin:-4px 0 10px;font:400 15px/1.45 var(--f-serif);color:var(--ink-2)}
.law-tip-link{font:600 13px/1.3 var(--f-text);color:var(--ink)}
