@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+2000-206F,U+2074,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+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'PT Sans';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/pt-sans-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 Sans';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/pt-sans-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+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'PT Sans';font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/pt-sans-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 Sans';font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/pt-sans-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+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --paper:#f2f4f1; --ink:#14231f; --ink-soft:#43544e; --line:#cdd6d1;
  --rung-0:#e1e8e3; --rung-1:#c3d3ca; --rung-2:#8fb0a2; --rung-3:#4d8271; --rung-4:#1f5a4a;
  --accent:#d98e04; --on-dark:#f2f4f1;
  --serif:"PT Serif","Source Serif 4",Georgia,"Times New Roman",serif;
  --sans:"PT Sans","IBM Plex Sans","Segoe UI",system-ui,sans-serif;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --paper:#101a17; --ink:#e8eeea; --ink-soft:#a9b8b1; --line:#2a3b35;
    --rung-0:#1a2a25; --rung-1:#21382f; --rung-2:#2c5244; --rung-3:#3a7260; --rung-4:#4f9d84;
    --on-dark:#0d1512;
  }
}
:root{box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
html{scroll-padding-top:env(safe-area-inset-top,0px);scroll-behavior:smooth}
*,*::before,*::after{box-sizing:inherit}
body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.6 var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit;text-underline-offset:.18em;text-decoration-thickness:1px}
a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:2px}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}
header.top{padding:22px 0;border-bottom:1px solid var(--line)}
header.top .wrap{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap}
.brand{font:700 20px/1 var(--serif);text-decoration:none;letter-spacing:.01em}
nav a{margin-left:22px;font-size:16px;color:var(--ink-soft);text-decoration:none}
nav a:hover{color:var(--ink);text-decoration:underline}

.hero{padding:72px 24px 56px}
.hero h1{font:700 clamp(34px,5.4vw,60px)/1.08 var(--serif);margin:0 0 24px;max-width:17em;letter-spacing:-.01em}
.hero p.lede{font-size:clamp(19px,2vw,22px);max-width:34em;margin:0 0 32px;color:var(--ink-soft)}
.btn{display:inline-block;background:var(--rung-4);color:#fff;padding:15px 26px;border-radius:3px;text-decoration:none;font-weight:700;font-size:17px}
.btn:hover{background:var(--ink)}
.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--ink);margin-left:12px}
.btn.ghost:hover{background:var(--ink);color:var(--paper)}
.hero .actions{display:flex;flex-wrap:wrap;gap:12px 0}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .btn{color:#0d1512}}

section{padding:56px 0;border-top:1px solid var(--line)}
section h2{font:700 clamp(26px,3.4vw,38px)/1.15 var(--serif);margin:0 0 20px;max-width:20em}
section p{max-width:40em;margin:0 0 16px}
.muted{color:var(--ink-soft)}

/* Лестница уровней: каждая ступень сдвинута правее предыдущей */
.ladder{list-style:none;margin:36px 0 8px;padding:0;display:grid;gap:6px}
.rung{--i:0;margin-left:calc(var(--i) * clamp(0px,6vw,88px));padding:18px 22px;border-radius:3px;display:grid;grid-template-columns:auto 1fr;gap:4px 22px;align-items:baseline}
.rung:nth-child(1){--i:0;background:var(--rung-0)}
.rung:nth-child(2){--i:1;background:var(--rung-1)}
.rung:nth-child(3){--i:2;background:var(--rung-2)}
.rung:nth-child(4){--i:3;background:var(--rung-3);color:#fff}
.rung:nth-child(5){--i:4;background:var(--rung-4);color:#fff}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .rung:nth-child(n+3){color:#0d1512}}
.rung .lv{font:700 30px/1 var(--serif);min-width:2.2em}
.rung h3{margin:0;font:700 20px/1.25 var(--sans)}
.rung p{grid-column:2;margin:0;max-width:none;font-size:16.5px;line-height:1.5}
.rung .can{font-weight:700}
.ladder-note{font-size:15.5px;color:var(--ink-soft);max-width:44em}
.target{display:inline-block;width:.7em;height:.7em;background:var(--accent);border-radius:50%;margin-right:.45em;vertical-align:baseline}

/* Таблица характеристик */
.tablewrap{overflow-x:auto;margin:28px 0 8px;border:1px solid var(--line);border-radius:3px}
table{border-collapse:collapse;width:100%;min-width:640px;font-size:16px;line-height:1.45}
th,td{text-align:left;padding:13px 16px;border-bottom:1px solid var(--line);vertical-align:top}
th{font-weight:700;background:color-mix(in srgb,var(--rung-0) 70%,var(--paper))}
tr:last-child td{border-bottom:0}
td.num{font-weight:700;white-space:nowrap}

.two{display:grid;grid-template-columns:1fr 1fr;gap:40px}
@media (max-width:760px){.two{grid-template-columns:1fr;gap:8px}}
dl.tools{margin:28px 0 0;display:grid;gap:0}
dl.tools div{display:grid;grid-template-columns:minmax(150px,230px) 1fr;gap:6px 28px;padding:18px 0;border-bottom:1px solid var(--line)}
dl.tools div:first-child{border-top:1px solid var(--line)}
dl.tools dt{font:700 19px/1.3 var(--serif)}
dl.tools dd{margin:0}
@media (max-width:640px){dl.tools div{grid-template-columns:1fr}}

details{border-bottom:1px solid var(--line);padding:16px 0;max-width:46em}
details:first-of-type{border-top:1px solid var(--line)}
summary{cursor:pointer;font-weight:700;list-style:none;padding-right:28px;position:relative}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";position:absolute;right:4px;top:0;font-size:22px;line-height:1.3;color:var(--ink-soft)}
details[open] summary::after{content:"–"}
details p{margin:12px 0 0}

.cta-band{background:var(--rung-4);color:#fff;padding:56px 0;border-top:0}
.cta-band h2{color:inherit}
.cta-band p{color:inherit;opacity:.92}
.cta-band .btn{background:var(--paper);color:var(--ink)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .cta-band{color:#0d1512}:root:not([data-theme="light"]) .cta-band .btn{background:#0d1512;color:var(--ink)}}

footer{padding:40px 0 56px;font-size:15px;color:var(--ink-soft);border-top:1px solid var(--line)}
footer .cols{display:grid;grid-template-columns:2fr 1fr;gap:32px}
@media (max-width:700px){footer .cols{grid-template-columns:1fr}}
footer p{margin:0 0 10px;max-width:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{header.top nav,.btn,.cta-band{display:none}body{background:#fff}}

.crumbs{margin:0 0 20px;font-size:16px}
.doc{padding:56px 24px 72px}
.doc h1{font:700 clamp(32px,4.6vw,52px)/1.1 var(--serif);margin:0 0 12px}
.doc p{max-width:40em}
.stamp{color:var(--ink-soft);margin:0 0 20px}
.links a{margin-right:18px}
footer .cols>*{min-width:0}
footer p{overflow-wrap:anywhere}
@media (max-width:700px){footer .cols{grid-template-columns:minmax(0,1fr)}}
