@font-face{font-family:'Inter';font-style:normal;font-weight:400 700;font-display:swap;src:url('fonts/Inter-Variable-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:'Inter';font-style:normal;font-weight:400 700;font-display:swap;src:url('fonts/Inter-Variable-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 700;font-display:swap;src:url('fonts/Inter-Variable-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:'Montserrat';font-style:normal;font-weight:500 600;font-display:swap;src:url('fonts/Montserrat-Variable-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:500 600;font-display:swap;src:url('fonts/Montserrat-Variable-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:500 600;font-display:swap;src:url('fonts/Montserrat-Variable-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:'Source Serif 4';font-style:italic;font-weight:400 700;font-display:swap;src:url('fonts/SourceSerif4-Italic-Variable-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:'Source Serif 4';font-style:italic;font-weight:400 700;font-display:swap;src:url('fonts/SourceSerif4-Italic-Variable-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;}
@font-face{font-family:'Source Serif 4';font-style:italic;font-weight:400 700;font-display:swap;src:url('fonts/SourceSerif4-Italic-Variable-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:'Source Serif 4';font-style:normal;font-weight:400 700;font-display:swap;src:url('fonts/SourceSerif4-Variable-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:'Source Serif 4';font-style:normal;font-weight:400 700;font-display:swap;src:url('fonts/SourceSerif4-Variable-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;}
@font-face{font-family:'Source Serif 4';font-style:normal;font-weight:400 700;font-display:swap;src:url('fonts/SourceSerif4-Variable-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;}
/* Парциальный Дракоша — color tokens */
:root{
  /* Brand / logo */
  --logo-red-face:#AE2F20;--logo-red-word:#922616;--logo-green-mane:#4A532C;--logo-ink:#222C13;--logo-horn:#36241A;--logo-gold:#E69845;--logo-earring:#F1E5CA;

  /* Primary greens */
  --forest-900:#1C3420;--forest-700:#255635;--sage-500:#82A081;--sage-300:#B4C8B9;--sage-200:#D6E1D2;--sage-100:#E3E9DE;--sage-50:#EAEDE3;
  --forest-950:#14271A;/* hover on forest-900 (derived) */
  --forest-success:#1E4121;

  /* Accent reds — use sparingly */
  --red-600:#C9403D;--red-800:#931611;

  /* Neutrals */
  --paper:#FAF8F3;--surface:#FBFAF6;--panel:#F3F3EC;--muted:#F3F3ED;--border:#E5E4E0;--white:#FFFFFF;
  --ink-900:#0B0F0D;--ink-700:#404345;--ink-500:#707273;--ink-400:#8D9193;--ink-on-dark:#CAD2C8;
  --quote-ink:#323B32;--subtitle-sage:#7A897E;

  /* Semantic callouts (bg / fg) */
  --info-bg:#EEF2F5;--info-fg:#10478C;--info-border:#D3DFEA;
  --warning-bg:#F8EDE7;--warning-fg:#990C0F;--warning-border:#EFD6CB;
  --success-bg:#EFF0E9;--success-fg:#1E4121;--success-border:#DFE2D6;

  /* Material-type badges (bg / fg) */
  --badge-note-bg:#EAEFE6;--badge-note-fg:#2C3E2C;
  --badge-scheme-bg:#F9E6E2;--badge-scheme-fg:#A12C29;
  --badge-test-bg:#EDEAEF;--badge-test-fg:#5B5990;
  --badge-feature-bg:#E1EADA;--badge-feature-fg:#405141;
  --badge-update-bg:#FDE5CA;--badge-update-fg:#A46537;
  --badge-news-bg:#FBDED9;--badge-news-fg:#A61F1A;
  --badge-single-bg:#E6EFF2;--badge-single-fg:#545C61;
  --badge-level-bg:#EAE6EE;--badge-level-fg:#635C87;

  /* Icon tints (tile bg / stroke) */
  --tint-red-bg:#FCEDE9;--tint-red-fg:#C53333;
  --tint-green-bg:#ECF3EA;--tint-green-fg:#477352;
  --tint-violet-bg:#EFECF7;--tint-violet-fg:#5249B0;
  --tint-blue-bg:#E7F1F9;--tint-blue-fg:#145FBE;
  --tint-amber-bg:#FDF1DF;--tint-amber-fg:#A0590C;
  --tint-orange-bg:#FCE5D6;--tint-orange-fg:#C82C03;

  /* News card washes */
  --news-green-bg:#F5F5EE;--news-orange-bg:#FAF5EE;--news-red-bg:#FBF2EE;

  /* Avatar pastels (comments) */
  --avatar-violet-bg:#ECE9F6;--avatar-violet-fg:#5249B0;--avatar-green-bg:#E3EEDF;--avatar-green-fg:#477352;--avatar-blue-bg:#E4EEF7;--avatar-blue-fg:#145FBE;--avatar-amber-bg:#FBEEDB;--avatar-amber-fg:#A0590C;

  /* Semantic aliases */
  --bg-page:var(--paper);--surface-card:var(--surface);--surface-panel:var(--panel);--surface-muted:var(--muted);--surface-soft:var(--sage-50);--surface-raised:var(--white);
  --surface-selected:var(--sage-100);--surface-inverse:var(--forest-900);
  --text-heading:var(--ink-900);--text-body:var(--ink-700);--text-secondary:var(--ink-500);--text-muted:var(--ink-400);--text-on-dark:var(--ink-on-dark);--text-on-primary:#FFFFFF;--text-link:var(--forest-900);--text-accent:var(--red-800);
  --border-default:var(--border);--border-strong:var(--forest-900);--border-selected:var(--forest-700);--accent-bar:var(--sage-300);
  --action-primary:var(--forest-900);--action-primary-hover:var(--forest-950);--action-danger:var(--red-800);
  --progress-track:var(--border);--progress-fill:var(--forest-700);
  --focus-ring:rgba(37,86,53,.28);
}

/* Typography tokens */
:root{
  --font-serif:'Source Serif 4','Literata','PT Serif',Georgia,serif;
  --font-sans:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --font-logo-caps:'Montserrat','Inter',sans-serif;
  --font-hand:'Marck Script','Caveat',cursive;
  --font-display:var(--font-serif);--font-heading:var(--font-serif);--font-body:var(--font-sans);--font-ui:var(--font-sans);

  --weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;

  /* Desktop scale */
  --fs-display:56px;--fs-h1:48px;--fs-h2:26px;--fs-h3:18px;--fs-question:20px;--fs-lead:17px;--fs-body:16px;--fs-body-sm:15px;--fs-small:14px;--fs-meta:13px;--fs-caption:12px;--fs-eyebrow:13px;--fs-quote:24px;--fs-stat:34px;
  /* Mobile scale */
  --fs-display-m:36px;--fs-h1-m:34px;--fs-h2-m:22px;--fs-h3-m:17px;--fs-lead-m:16px;

  --lh-tight:1.1;/* @kind font */--lh-heading:1.2;/* @kind font */--lh-snug:1.35;/* @kind font */--lh-body:1.6;/* @kind font */
  --ls-display:-0.01em;--ls-eyebrow:0.15em;--ls-logo-caps:0.3em;--ls-signature:0.18em;
}

/* Spacing, radii, borders, elevation, layout */
:root{
  --space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;
  --pad-card:20px;--pad-card-sm:16px;--pad-card-lg:24px;--gap-section:56px;

  --radius-badge:6px;--radius-control:8px;--radius-chip:8px;--radius-icon-btn:10px;--radius-tile:12px;--radius-card:12px;--radius-popover:16px;--radius-round:999px;

  --border-width:1px;--rule:1px solid var(--border);

  --shadow-none:none;--shadow-xs:0 1px 2px rgba(28,52,32,.04);--shadow-popover:0 12px 32px rgba(28,52,32,.08),0 1px 2px rgba(28,52,32,.04);

  --control-h-sm:36px;--control-h:44px;--control-h-lg:48px;--icon-btn-size:44px;--tabbar-h:64px;--header-h:72px;--header-h-m:64px;

  --container:1200px;--col-sidebar:210px;--col-content:530px;--col-sidebar-right:210px;--reading-measure:68ch;

  --icon-stroke:1.75;--icon-sm:16px;--icon-md:20px;--icon-lg:24px;--icon-xl:32px;

  --ease-standard:cubic-bezier(.2,0,0,1);/* @kind other */--dur-fast:120ms;/* @kind other */--dur-base:180ms;/* @kind other */--dur-slow:260ms;/* @kind other */
}

/* Element defaults */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg-page);color:var(--text-body);font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4{font-family:var(--font-heading);font-weight:var(--weight-bold);color:var(--text-heading);line-height:var(--lh-heading);margin:0;text-wrap:balance}
h1{font-size:var(--fs-h1);line-height:var(--lh-tight);letter-spacing:var(--ls-display)}
h2{font-size:var(--fs-h2)}
h3{font-size:var(--fs-h3)}
p{margin:0;text-wrap:pretty}
a{color:var(--text-link);text-decoration:none;font-weight:var(--weight-medium)}
a:hover{color:var(--forest-700);text-decoration:underline;text-underline-offset:3px}
strong,b{font-weight:var(--weight-semibold);color:var(--text-heading)}
button{font:inherit}
::selection{background:var(--sage-200);color:var(--ink-900)}
:focus-visible{outline:2px solid var(--forest-700);outline-offset:2px}
.pd-eyebrow{font-family:var(--font-ui);font-weight:500;font-size:var(--fs-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-secondary)}
.pd-hand{font-family:var(--font-hand);color:var(--forest-900)}

html{scroll-behavior:smooth}body{margin:0;background:var(--paper)}a{color:var(--forest-900)}a:hover{color:var(--forest-700)}section[id]{scroll-margin-top:76px}
/* --- наведение из атрибутов style-hover макета --- */
.scp0:hover { color: var(--forest-900) !important; }
.scp1:hover { color: rgb(255, 255, 255) !important; }

/* --- добавлено сборкой: то, что в макете делал React --- */
.kn-primary:hover{background:var(--forest-950)!important}
.kn-secondary:hover{background:var(--sage-50)!important}
.kn-outline:hover{background:var(--panel)!important;border-color:var(--sage-500)!important}
.usl-btn{background:transparent}
.usl-btn[aria-current="true"]{background:var(--sage-100);box-shadow:inset 3px 0 0 var(--forest-900)}
.usl-btn .usl-chev{display:none!important}
.usl-btn[aria-current="true"] .usl-chev{display:block!important}
.usl-panel[hidden]{display:none!important}
.kadr{display:block;object-fit:cover;object-position:top center;border-radius:14px 14px 0 0}

/* --- шапка на узком экране: строка логотипа с кнопкой и полоса навигации --- */
/* Замер на 390 px: логотип 216 + кнопка со значком 122 + зазор 12 = 350 при свободных 342,
   кнопка уезжала на свою строку. Сетка не даёт строке переноситься, значок кнопки на
   телефоне убран (кнопка 96), на экранах уже 370 px поля шапки 16 вместо 24. */
@media (max-width:760px){
  .shapka{--pole:24px;display:grid!important;grid-template-columns:minmax(0,1fr) auto;padding:8px var(--pole)!important;gap:6px 12px!important}
  .shapka>a:first-child{min-width:0;overflow:hidden}
  .shapka>.kn{grid-column:2;grid-row:1}
  .shapka>.kn svg{display:none!important}
  .shapka-nav{grid-column:1/-1;grid-row:2;flex-wrap:nowrap!important;justify-content:space-between!important;gap:0 11px!important;overflow-x:auto;scrollbar-width:none;margin:0 calc(-1*var(--pole));padding:2px var(--pole) 4px;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent)}
  .shapka-nav::-webkit-scrollbar{display:none}
  .shapka-nav a{flex:none;white-space:nowrap;font-size:13px!important}
  section[id]{scroll-margin-top:104px}
  /* в макете метка стоит в коробке 120 px с выравниванием вправо; на телефоне коробка
     переносится на свою строку, и метка повисает с отступом от края */
  .reestr-metka{flex:0 0 auto!important;justify-content:flex-start!important}
}
@media (max-width:370px){.shapka{--pole:16px}}
