/* Версия A «Светлый день». Собрано export_wp.py из design/a-svetlyj-den/src, не править вручную. */
/* Шрифты локально (variable woff2, кириллица и латиница). Источник: Google Fonts, лицензия OFL. */
@font-face{font-family:'Golos Text';font-style:normal;font-weight:400 600;font-display:swap;src:url('../fonts/golos-text-cyrillic.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 600;font-display:swap;src:url('../fonts/golos-text-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:'Manrope';font-style:normal;font-weight:600 800;font-display:swap;src:url('../fonts/manrope-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Manrope';font-style:normal;font-weight:600 800;font-display:swap;src:url('../fonts/manrope-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}

/* ===== Версия A «Светлый день» ===== */
:root{
  --bg:#F3F5F9; --surface:#FFFFFF; --line:#E1E5EC; --line-2:#D3D9E4;
  --ink:#0E1424; --text:#3C4458; --muted:#5F6880;
  --accent:#FF5A1F; --accent-hover:#F24B0E;
  --track:#E6EAF1;
  --s1:#0E1424; --s2:#2A3350; --s3:#444F6E; --s4:#646F8E; --s5:#97A1B8; --s6:#C9D0DD;
  --r:24px; --r-lg:28px; --r-btn:12px;
  --container:min(1280px, 100% - 8vw);
  --pad:clamp(80px, 8vw, 128px);
  --hdr:72px;
  --f-head:'Manrope','Golos Text',Arial,sans-serif;
  --f-text:'Golos Text','Manrope',Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:calc(var(--hdr) + 24px);-webkit-text-size-adjust:100%}
html.motion-ok{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:400 17.5px/1.6 var(--f-text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg{display:block;max-width:100%}
a{color:inherit}
p{margin:0}
h1,h2,h3,h4{font-family:var(--f-head);color:var(--ink);margin:0;font-weight:800;text-wrap:balance}
ul,ol{margin:0;padding:0;list-style:none}
button{font:inherit;color:inherit}
.sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:6px}
.dark :focus-visible{outline-color:#fff}
.wrap{width:var(--container);margin-inline:auto}
.num-t{font-variant-numeric:tabular-nums}

/* ---- Типографика ---- */
h1{font-size:min(4.4vw,68px);line-height:1.0;letter-spacing:-.03em}
h2{font-size:min(2.9vw,46px);line-height:1.06;letter-spacing:-.02em}
h3{font-size:24px;line-height:1.15;letter-spacing:-.015em}
.mark{white-space:nowrap;text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:.07em;text-underline-offset:.12em;text-decoration-skip-ink:none}
.lead{font-size:20px;line-height:1.55;max-width:30em}
.fine{font-size:14.5px;line-height:1.55;color:var(--muted)}

/* ---- Кнопки ---- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;height:56px;padding:0 28px;border-radius:var(--r-btn);border:0;font:800 17px/1 var(--f-head);letter-spacing:-.005em;text-decoration:none;cursor:pointer;transition:background-color .18s,color .18s,box-shadow .18s}
.btn svg{width:20px;height:20px;transition:transform .2s}
@media (hover:hover){.btn:hover svg{transform:translateX(3px)}}
.btn--accent{background:var(--accent);color:var(--ink)}
@media (hover:hover){.btn--accent:hover{background:var(--accent-hover)}}
.btn--ink{background:var(--ink);color:#fff}
@media (hover:hover){.btn--ink:hover{background:#1E2740}}
.btn--line{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line-2)}
@media (hover:hover){.btn--line:hover{box-shadow:inset 0 0 0 1.5px var(--ink)}}
.btn--line[hidden]{display:none}
.btn--line-inv{color:#fff;box-shadow:inset 0 0 0 1.5px #4A5472}
@media (hover:hover){.btn--line-inv:hover{box-shadow:inset 0 0 0 1.5px #fff}}
.btn--sm{height:44px;padding:0 20px;font-size:15px}
.link-arrow{display:inline-flex;align-items:center;gap:8px;font:700 16px/1.2 var(--f-head);color:var(--ink);text-decoration:none;border-bottom:2px solid var(--line-2);padding-block:4px;transition:border-color .18s}
@media (hover:hover){.link-arrow:hover{border-color:var(--accent)}}
.link-arrow svg{width:18px;height:18px}

/* ---- Шапка ---- */
.hdr{position:sticky;top:0;z-index:50;height:var(--hdr);background:var(--bg);border-bottom:1px solid transparent;transition:border-color .2s}
.hdr.is-stuck{border-bottom-color:var(--line)}
.hdr .wrap{height:100%;display:flex;align-items:center;gap:44px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}
.brand__mark{position:relative;display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:12px;background:var(--ink);color:#fff;font:800 17px/1 var(--f-head);letter-spacing:-.01em}
.brand__mark::after{content:"";position:absolute;left:9px;right:9px;bottom:8px;height:3px;border-radius:2px;background:var(--accent)}
.brand__mark span{transform:translateY(-3px)}
.brand__t{display:flex;flex-direction:column;line-height:1.1}
.brand__n{font:800 18px/1.1 var(--f-head);letter-spacing:-.015em}
.brand__s{font:400 13px/1.2 var(--f-text);color:var(--muted);margin-top:3px;letter-spacing:0}
.nav{display:flex;gap:4px}
.nav a{display:inline-flex;align-items:center;height:40px;padding:0 14px;border-radius:10px;text-decoration:none;font:500 16px/1 var(--f-text);color:var(--text);transition:background-color .15s,color .15s}
@media (hover:hover){.nav a:hover{background:#fff;color:var(--ink)}}
.nav a[aria-current]{color:var(--ink);font-weight:600;box-shadow:inset 0 -3px 0 var(--accent);border-radius:10px 10px 0 0}
.hdr .btn{margin-left:auto}

/* ---- Первый экран ---- */
.hero{padding-block:clamp(40px,4.4vw,64px) clamp(72px,7vw,104px)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:clamp(40px,5vw,76px);align-items:center}
.pill{display:inline-flex;align-items:center;gap:10px;height:36px;padding:0 16px 0 12px;background:#fff;border:1px solid var(--line);border-radius:99px;font:500 14.5px/1 var(--f-text);color:var(--ink)}
.pill i{width:8px;height:8px;border-radius:50%;background:var(--accent)}
.hero h1{margin-top:26px}
.hero .lead{margin-top:24px}
.hero-act{display:flex;align-items:center;gap:28px;margin-top:34px}
.stats{display:grid;grid-template-columns:.7fr .8fr 1.05fr 1.15fr;gap:24px;margin-top:52px;padding-top:26px;border-top:1px solid var(--line-2)}
.stats dt{font:800 clamp(24px,2.1vw,30px)/1 var(--f-head);color:var(--ink);letter-spacing:-.02em;font-variant-numeric:tabular-nums;white-space:nowrap}
.stats dd{margin:8px 0 0;font-size:14.5px;line-height:1.35;color:var(--muted);max-width:11em}
.stats dd .st-upd{display:block;margin-top:4px;font-size:13px;line-height:1.3;font-weight:600;font-variant-numeric:tabular-nums}
.stats div{margin:0}

.stack-h{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 14px 4px;font-size:14.5px;color:var(--muted)}
.stack-h b{font:700 15px/1 var(--f-head);color:var(--ink)}
.stack{display:flex;flex-direction:column;gap:14px}
.top{--off:0;display:block;margin-left:calc(var(--off) * 1px);background:#fff;border:0;border-radius:var(--r);padding:22px 26px 20px;text-decoration:none;color:inherit;box-shadow:0 1px 2px rgba(14,20,36,.05),0 18px 32px -22px rgba(14,20,36,.32);transition:box-shadow .2s,border-color .2s,transform .2s}
@media (hover:hover){.top:hover{box-shadow:0 1px 2px rgba(14,20,36,.06),0 24px 36px -22px rgba(14,20,36,.4);transform:translateY(-2px)}}
.top-row{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:14px}
.place{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--ink);color:#fff;font:800 19px/1 var(--f-head);font-variant-numeric:tabular-nums}
.logo{width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:#fff;overflow:hidden;flex:none}
.logo img{width:100%;height:100%;object-fit:cover}
.top-name{font:800 20px/1.15 var(--f-head);color:var(--ink);letter-spacing:-.015em;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.top-co{display:block;font-size:13px;line-height:1.35;color:var(--muted);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.top-score{font:800 44px/1 var(--f-head);letter-spacing:-.03em;color:var(--ink);font-variant-numeric:tabular-nums;text-align:right}
.top .bar{margin-top:20px;height:10px}
.top-meta{display:flex;align-items:center;gap:8px;margin-top:14px;font-size:14.5px;color:var(--text);font-variant-numeric:tabular-nums}
.top-meta svg{width:15px;height:15px;color:var(--ink)}
.top-meta .sep{color:var(--muted)}
.top-meta .of{margin-left:auto;color:var(--muted)}

@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
html.motion-ok .top{animation:rise .6s cubic-bezier(.22,.8,.3,1) backwards;animation-delay:calc(var(--i) * 100ms + 120ms)}

/* ---- Полоса «из чего сложился балл» ---- */
.bar{display:block;height:8px;border-radius:99px;background:var(--track);overflow:hidden;--gap:2px}
.bar-fill{display:flex;height:100%;transform-origin:left center}
.seg{display:block;height:100%;flex:none;border-right:var(--gap) solid var(--track)}
.s1{background:var(--s1)}.s2{background:var(--s2)}.s3{background:var(--s3)}.s4{background:var(--s4)}.s5{background:var(--s5)}.s6{background:var(--s6)}
.sw{display:inline-block;width:10px;height:10px;border-radius:3px;flex:none}
.sw.s1{background:var(--s1)}.sw.s2{background:var(--s2)}.sw.s3{background:var(--s3)}.sw.s4{background:var(--s4)}.sw.s5{background:var(--s5)}.sw.s6{background:var(--s6)}
html.motion-ok .grow .bar-fill{transform:scaleX(0)}
html.motion-ok .grow.is-in .bar-fill{transform:scaleX(1);transition:transform .9s cubic-bezier(.3,.7,.2,1)}

/* ---- Секции ---- */
.sec{padding-block:var(--pad)}
.sec--white{background:var(--surface)}
.sec--bg{background:var(--bg)}
.sh{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:56px;align-items:end;margin-bottom:clamp(36px,3.6vw,52px)}
.sh p{color:var(--text);font-size:17.5px;max-width:28em}
.sh--solo{display:block}
.sh--solo h2{max-width:17em}

/* Короткий ответ: темная карточка */
.answer{background:var(--ink);color:#C4CBDA;border-radius:var(--r-lg);padding:clamp(32px,3.4vw,52px) clamp(28px,3.4vw,52px) clamp(32px,3.4vw,48px)}
.answer-k{display:flex;align-items:center;gap:14px;font:500 17px/1 var(--f-text);color:#C4CBDA;margin-bottom:26px}
.answer-k i{width:32px;height:4px;border-radius:2px;background:var(--accent)}
.answer-t{font:800 clamp(24px,2.5vw,34px)/1.22 var(--f-head);letter-spacing:-.02em;color:#fff;max-width:36em;text-wrap:balance}
.ans-list{margin-top:34px;border-top:1px solid #28314D}
.ans-list li{display:grid;grid-template-columns:44px minmax(0,1fr) minmax(120px,26%) 84px;align-items:center;gap:20px;min-height:86px;border-bottom:1px solid #28314D}
.ans-n{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#171E33;color:#fff;font:800 19px/1 var(--f-head);font-variant-numeric:tabular-nums}
.ans-name{font:800 clamp(22px,1.9vw,28px)/1.15 var(--f-head);letter-spacing:-.02em;color:#fff;text-decoration:none}
@media (hover:hover){.ans-name:hover{text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:5px}}
.ans-bar{display:block;height:8px;border-radius:99px;background:#2A3350;overflow:hidden}
.ans-bar i{display:block;height:100%;border-radius:99px;background:#F3F5F9;transform-origin:left center}
.ans-sc{text-align:right;font:800 clamp(24px,2vw,30px)/1 var(--f-head);letter-spacing:-.02em;color:#fff;font-variant-numeric:tabular-nums}
html.motion-ok .answer .ans-bar i{transform:scaleX(0)}
html.motion-ok .answer.is-in .ans-bar i{transform:scaleX(1);transition:transform .9s cubic-bezier(.3,.7,.2,1)}
.ans-p{margin-top:20px;font-size:19px;line-height:1.6;color:#E6EAF3;max-width:50em}
.ans-lead{margin-top:28px;font-size:18px;line-height:1.55;color:#C4CBDA;max-width:46em}
.ans-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.ans-chips li{display:inline-flex;align-items:center;height:44px;padding:0 20px;border-radius:99px;background:#171E33;color:#E3E8F1;font:500 16.5px/1 var(--f-text)}
.ans-foot{display:flex;align-items:center;justify-content:space-between;gap:20px 28px;flex-wrap:wrap;margin-top:32px;padding-top:26px;border-top:1px solid #28314D}
.ans-date{display:flex;align-items:center;gap:12px;font-size:17px;color:#C4CBDA;font-variant-numeric:tabular-nums}
.ans-date svg{width:22px;height:22px;flex:none;color:#C4CBDA}
.ans-more{font:700 17px/1.2 var(--f-head);color:#fff;text-decoration:none;border-bottom:2px solid #4A5472;padding-block:4px;transition:border-color .18s}
@media (hover:hover){.ans-more:hover{border-color:var(--accent)}}
.ans-why{margin-top:30px;padding-top:28px;border-top:1px solid #28314D}
.ans-why h3{font:700 18px/1.2 var(--f-head);color:#fff;letter-spacing:-.01em;margin-bottom:16px}
.ans-why__t{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,3.4vw,52px)}
.ans-why__t p{font-size:15.5px;line-height:1.65;color:#AEB7CB}
.answer + .transp{margin-top:20px}
.transp{display:flex;align-items:center;gap:16px;margin-top:40px;padding:18px 22px;background:#fff;border:1px solid var(--line);border-radius:18px}
.transp svg{width:28px;height:28px;flex:none;color:var(--ink)}
.transp p{font-size:16.5px;color:var(--ink);font-weight:500;line-height:1.45}
.transp .link-arrow{margin-left:auto;white-space:nowrap}
.seo{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,4vw,64px);margin-top:44px;padding-top:40px;border-top:1px solid var(--line-2)}
.seo p{font-size:16.5px;line-height:1.65}

/* ---- Таблица ---- */
.tbl-wrap{margin-inline:calc((100% - min(1392px, 100vw - 64px)) / 2)}
.tbl-card{background:#fff;border:1px solid var(--line);border-radius:var(--r)}
table.rt{width:100%;border-collapse:separate;border-spacing:0;font-size:15px;font-variant-numeric:tabular-nums}
.rt th,.rt td{padding:0 8px;text-align:center;vertical-align:middle}
.rt thead th{position:sticky;top:var(--hdr);z-index:6;height:56px;background:#fff;border-bottom:1px solid var(--line);font:600 13.5px/1.15 var(--f-text);color:var(--muted);white-space:nowrap}
.rt thead th:first-child{border-top-left-radius:var(--r)}
.rt thead th:last-child{border-top-right-radius:var(--r)}
.rt th.l,.rt td.l{text-align:left}
.rt td,.rt tbody th{height:68px;border-bottom:1px solid var(--line);background:#fff;transition:background-color .15s;font-weight:400}
.rt tbody tr:last-child td,.rt tbody tr:last-child th{border-bottom:0}
.rt tbody tr:last-child td:first-child{border-bottom-left-radius:var(--r)}
.rt tbody tr:last-child td:last-child{border-bottom-right-radius:var(--r)}
@media (hover:hover){.rt tbody tr:hover td,.rt tbody tr:hover th{background:#F8F9FC}}
.rt .c-pl{width:64px;padding-left:18px}
.rt .c-co{min-width:250px}
.rt th.l{padding-left:8px}
.rt .c-act{width:72px;padding-right:18px}
.rt .c-sc{width:158px;text-align:left;padding-left:14px}
.rt td.c-sc{position:relative}
.rt thead th.c-sc{position:sticky}
.sort{display:inline-flex;align-items:center;gap:5px;border:0;background:none;padding:6px 4px;margin:-6px -4px;cursor:pointer;font:inherit;color:inherit;border-radius:6px;position:relative}
.sort svg{width:11px;height:11px;opacity:.5;transition:transform .2s,opacity .2s}
@media (hover:hover){.sort:hover{color:var(--ink)}}
@media (hover:hover){.sort:hover svg{opacity:1}}
th[aria-sort] .sort{color:var(--ink)}
th[aria-sort] .sort::after{content:'';position:absolute;left:4px;right:4px;bottom:-1px;height:3px;border-radius:2px;background:var(--accent)}
th[aria-sort] .sort svg{opacity:1}
th[aria-sort="ascending"] .sort svg{transform:rotate(180deg)}
.co{display:flex;align-items:center;gap:12px;text-align:left}
.co .logo{width:36px;height:36px;border-radius:10px}
.co-n{display:flex;align-items:center;gap:8px;font:800 16px/1.15 var(--f-head);color:var(--ink);letter-spacing:-.01em}
.co-c{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;max-width:204px;margin-top:3px;font:400 12.5px/1.32 var(--f-text);color:var(--muted)}
.pl{display:inline-grid;place-items:center;min-width:30px;height:30px;border-radius:9px;font:800 15px/1 var(--f-head)}
.pl--top{background:var(--ink);color:#fff}
.pl--n{color:var(--muted);font-weight:700}
.yes{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--bg);color:var(--ink)}
.yes svg{width:15px;height:15px}
.no{color:var(--muted);font-size:16px;line-height:1}
.nd{font:400 13px/1 var(--f-text);color:var(--muted);letter-spacing:0}
.su{font:500 13px/1 var(--f-text);color:var(--text)}
.rating-v{display:inline-flex;align-items:center;gap:5px;font-weight:600;color:var(--ink)}
.rating-v svg{width:13px;height:13px}
.price-v{font-weight:600;color:var(--ink);white-space:nowrap}
.score{display:block}
.score-n{display:block;font:800 22px/1 var(--f-head);letter-spacing:-.02em;color:var(--ink);margin-bottom:9px}
.rt .bar{width:128px}
.rt .bar{--gap:1px}
.pop{position:absolute;right:8px;bottom:calc(100% + 4px);width:340px;z-index:30;background:#fff;border:0;border-radius:16px;padding:14px 16px 12px;box-shadow:0 2px 6px rgba(14,20,36,.08),0 18px 30px -12px rgba(14,20,36,.3);opacity:0;pointer-events:none;transition:opacity .15s;text-align:left;font-size:13.5px}
.pop.pop-below{bottom:auto;top:calc(100% + 4px)}
.rt td.c-sc:hover .pop,.rt td.c-sc:focus-within .pop,.rt td.c-sc:focus .pop{opacity:1}
.rt td.c-sc:focus{outline:2px solid var(--ink);outline-offset:-2px;border-radius:8px}
.pop-t{font:700 13.5px/1.3 var(--f-head);color:var(--ink);margin-bottom:8px}
.pop li{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:9px;align-items:center;padding:2.5px 0;color:var(--text);line-height:1.25}
.pop li b{font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}
.pop li span.mx{color:var(--muted);font-weight:400}
.go{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:12px;border:1px solid var(--line-2);color:var(--ink);transition:background-color .15s,border-color .15s,color .15s}
.go svg{width:18px;height:18px}
@media (hover:hover){.go:hover{background:var(--ink);border-color:var(--ink);color:#fff}}

.tbl-foot{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;padding:28px 32px 30px;border-top:1px solid var(--line);margin-top:0}
.lg-h{font:700 14px/1 var(--f-head);color:var(--ink);margin-bottom:14px}
.lg-flags{display:flex;flex-direction:column;gap:10px;font-size:15px}
.lg-flags li{display:flex;align-items:center;gap:12px}
.lg-flags .mk{width:26px;display:inline-flex;justify-content:center}
.lg-blocks{display:grid;grid-template-columns:1fr 1fr;gap:8px 24px;font-size:14.5px}
.lg-blocks li{display:flex;align-items:center;gap:10px;line-height:1.3}
.lg-blocks .lt{font:800 13px/1 var(--f-head);color:var(--ink);width:14px}
.lg-note{margin-top:14px;color:var(--muted);font-size:14px}
.tbl-notes{margin-top:36px;display:grid;grid-template-columns:1fr 1fr;gap:20px 56px}
.tbl-notes p{font-size:15.5px;line-height:1.6}
.tbl-notes strong{color:var(--ink);font-weight:600}
.tip{margin-top:28px;display:flex;gap:20px;align-items:flex-start;padding:26px 30px;border-radius:20px;background:#fff;border:1px solid var(--line)}
.tip::before{content:'';flex:none;width:4px;align-self:stretch;border-radius:2px;background:var(--accent)}
.tip p{font-size:16.5px;line-height:1.65;max-width:62em}

/* ---- Выбирайте (плитки) ---- */
.routes{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:20px}
.route{display:flex;flex-direction:column;justify-content:space-between;gap:48px;min-height:330px;padding:36px;border-radius:var(--r-lg);background:var(--bg);text-decoration:none;color:inherit;border:1px solid transparent;transition:background-color .2s,border-color .2s}
.route h3{font-size:clamp(24px,2.2vw,32px);line-height:1.1;letter-spacing:-.02em;max-width:14em}
.route p{margin-top:16px;font-size:17px;line-height:1.55;max-width:24em}
.route-go{display:flex;align-items:center;gap:14px;font:700 16px/1 var(--f-head);color:var(--ink)}
.route-go i{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--ink);color:#fff;transition:background-color .2s,color .2s,transform .2s}
.route-go svg{width:22px;height:22px}
@media (hover:hover){.route:hover{background:#fff;border-color:var(--line-2)}}
@media (hover:hover){.route:hover .route-go i{background:var(--accent);color:var(--ink);transform:translateX(4px)}}

/* ---- Зачем ---- */
.why{display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border:1px solid var(--line);border-radius:var(--r-lg)}
.why > div{padding:clamp(32px,3.4vw,52px) clamp(28px,3vw,48px) clamp(36px,3.6vw,56px)}
.why > div + div{border-left:1px solid var(--line)}
.why i{display:block;width:32px;height:4px;border-radius:2px;background:var(--accent);margin-bottom:28px}
.why h3{font-size:clamp(22px,1.9vw,28px);line-height:1.12;max-width:13em}
.why p{margin-top:18px;font-size:17px;line-height:1.62}

/* ---- Процесс ---- */
.steps{display:grid;grid-template-columns:repeat(4,1fr)}
.step{position:relative;padding:0 36px 0 0}
.step b{display:block;font:800 clamp(56px,6vw,88px)/.9 var(--f-head);letter-spacing:-.04em;color:var(--ink);font-variant-numeric:tabular-nums}
.step .ln{position:relative;display:block;height:2px;background:var(--line-2);margin:28px -36px 0 0}
.step:last-child .ln{margin-right:0}
.step .ln::after{content:'';position:absolute;left:0;top:-6px;width:14px;height:14px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px #fff}
.step h3{margin-top:28px;font-size:23px}
.step p{margin-top:12px;font-size:16.5px;line-height:1.6}

/* ---- Критерии ---- */
.wbar-k{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:14px;font-size:15px;color:var(--muted)}
.wbar-k b{font:800 15px/1 var(--f-head);color:var(--ink)}
.wbar{display:flex;gap:3px;height:92px;border-radius:20px;overflow:hidden}
.wseg{position:relative;flex:none;padding:12px 14px 12px;display:flex;flex-direction:column;justify-content:space-between;color:#fff;min-width:0}
.wseg.s5,.wseg.s6{color:var(--ink)}
.wseg .lt{font:700 14px/1 var(--f-head);opacity:.85}
.wseg .wn{font:800 clamp(26px,2.6vw,38px)/1 var(--f-head);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.crit{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;margin-top:44px}
.crit > div{padding:0 22px 0 0}
.crit > div + div{padding-left:22px;border-left:1px solid var(--line-2)}
.crit .hd{display:flex;align-items:center;gap:10px;margin-bottom:16px}
.crit .hd .sw{width:14px;height:14px;border-radius:4px}
.crit .hd span.w{font:700 14px/1 var(--f-head);color:var(--muted)}
.crit h3{font-size:21px;line-height:1.2;min-height:3.55em;letter-spacing:-.01em}
.crit ul{margin-top:18px;display:flex;flex-direction:column;gap:16px}
.crit li{display:block;font-size:14.5px;line-height:1.35;color:var(--ink);font-weight:500}
.crit li .cm{display:flex;justify-content:space-between;margin-bottom:3px;font:700 12.5px/1.2 var(--f-head);color:var(--muted)}
.crit li .cm b{font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}
.crit li .ct{hyphens:auto;overflow-wrap:break-word}
.crit details{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}
.crit summary{cursor:pointer;font:600 13.5px/1.2 var(--f-text);color:var(--ink);list-style:none;display:flex;align-items:center;gap:6px}
.crit summary::-webkit-details-marker{display:none}
.crit summary svg{width:12px;height:12px;transition:transform .2s}
.crit details[open] summary svg{transform:rotate(180deg)}
.crit details p{margin-top:10px;font-size:13.5px;line-height:1.5;color:var(--text)}
.crit details p b{color:var(--ink);font-weight:600}
.crit-more{margin-top:44px}

/* ---- Тёмная: методология ---- */
.dark{background:var(--ink);color:#C4CBDA}
.dark h2,.dark h3{color:#fff}
.dark .fine{color:#98A2B8}
.dark a{color:#fff}
.m-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(48px,6vw,96px);align-items:start}
.m-lead{margin-top:28px;font:700 clamp(21px,1.9vw,26px)/1.35 var(--f-head);color:#fff;letter-spacing:-.012em;max-width:26em}
.m-txt{margin-top:28px;display:flex;flex-direction:column;gap:18px;max-width:40em}
.m-txt p{font-size:17px;line-height:1.65}
.m-txt a{text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:3px}
.incl{background:#171E33;border:1px solid #28314D;border-radius:var(--r-lg);padding:36px}
.incl h3{font-size:20px;margin-bottom:28px}
.incl ul{display:grid;grid-template-columns:1fr 1fr;gap:34px 28px}
.incl .v{display:block;font:800 clamp(40px,3.8vw,56px)/1 var(--f-head);color:var(--accent);letter-spacing:-.035em;font-variant-numeric:tabular-nums}
.incl .t{display:block;margin-top:10px;font-size:15.5px;line-height:1.4;color:#C4CBDA}
.incl .dt{display:flex;align-items:center;gap:10px;margin-top:34px;padding-top:24px;border-top:1px solid #28314D;font-size:15px;color:#fff}
.incl .dt svg{width:20px;height:20px;color:var(--accent);flex:none}
.m-row{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:clamp(56px,5vw,80px)}
.m-box{background:#171E33;border:1px solid #28314D;border-radius:var(--r-lg);padding:clamp(28px,3vw,44px)}
.m-box h3{font-size:clamp(22px,1.9vw,26px);margin-bottom:20px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.m-box p{font-size:17px;line-height:1.65}
.m-box .big{font:700 clamp(21px,1.8vw,24px)/1.4 var(--f-head);color:#fff;letter-spacing:-.01em}
.m-big{display:flex;align-items:flex-end;gap:14px;margin-bottom:20px}
.m-big b{font:800 clamp(56px,5.6vw,84px)/.9 var(--f-head);color:#fff;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.m-big span{font-size:15.5px;line-height:1.35;color:#98A2B8;max-width:12em;padding-bottom:6px}
.m-ns{margin-top:24px;padding:26px 32px;border:1px solid #28314D;border-radius:20px;display:flex;gap:24px}
.m-ns::before{content:'';flex:none;width:4px;border-radius:2px;background:#5E688A}
.m-ns p{font-size:16px;line-height:1.6;max-width:62em}

/* ---- Советы ---- */
.guide{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr);gap:clamp(48px,6vw,104px);align-items:start}
.guide-side{position:sticky;top:calc(var(--hdr) + 40px)}
.toc{margin-top:36px;border-left:2px solid var(--line)}
.toc a{display:block;padding:11px 0 11px 20px;margin-left:-2px;border-left:2px solid transparent;font:600 16.5px/1.3 var(--f-head);color:var(--muted);text-decoration:none;transition:color .15s,border-color .15s}
@media (hover:hover){.toc a:hover{color:var(--ink)}}
.toc a.is-on{color:var(--ink);border-left-color:var(--accent)}
.tips article{padding:44px 0}
.tips article:first-child{padding-top:0}
.tips article + article{border-top:1px solid var(--line)}
.tips h3{font-size:clamp(25px,2.3vw,32px);line-height:1.1;letter-spacing:-.02em}
.tips p{margin-top:18px;font-size:18px;line-height:1.7;max-width:36em}
.tips article{scroll-margin-top:calc(var(--hdr) + 32px)}

/* ---- FAQ ---- */
.faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr);gap:clamp(48px,6vw,104px);align-items:start}
.faq-side{position:sticky;top:calc(var(--hdr) + 40px)}
.faq-side p{margin-top:24px;font-size:16.5px;max-width:19em}
.faq-side .link-arrow{margin-top:20px}
.faq{display:flex;flex-direction:column;gap:12px}
.faq details{background:#fff;border:1px solid var(--line);border-radius:20px}
.faq summary{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px;cursor:pointer;list-style:none;font:800 clamp(18px,1.55vw,20px)/1.28 var(--f-head);color:var(--ink);letter-spacing:-.012em;border-radius:20px}
.faq summary::-webkit-details-marker{display:none}
.faq summary i{flex:none;position:relative;width:34px;height:34px;border-radius:50%;border:1.5px solid var(--line-2);background:#fff}
.faq summary i::before,.faq summary i::after{content:'';position:absolute;left:50%;top:50%;width:12px;height:2px;margin:-1px 0 0 -6px;background:var(--ink);border-radius:1px}
.faq summary i::after{transform:rotate(90deg)}
.faq details[open] summary i{background:var(--ink);border-color:var(--ink)}
.faq details[open] summary i::before,.faq details[open] summary i::after{background:#fff}
.faq details[open] summary i::after{transform:none;opacity:0}
@media (hover:hover){.faq summary:hover i{border-color:var(--ink)}}
.faq .a{padding:0 28px 28px;font-size:17px;line-height:1.7;max-width:46em}
.faq .a strong{color:var(--ink);font-weight:600}

/* ---- Финал ---- */
.final{position:relative;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:48px;align-items:center;background:var(--accent);border-radius:32px;padding:clamp(40px,5vw,80px);color:var(--ink);overflow:hidden}
.final h2{font-size:min(3.6vw,56px);line-height:1.02;letter-spacing:-.03em;color:var(--ink);max-width:13em}
.final p{margin-top:24px;font-size:18.5px;line-height:1.55;max-width:30em;font-weight:500}
.final .btn{margin-top:34px}
.slot{background:rgba(255,255,255,.92);border-radius:24px;padding:26px 28px;box-shadow:0 30px 50px -30px rgba(14,20,36,.5)}
.slot-r{display:flex;align-items:center;gap:14px;padding:12px 0}
.slot-r + .slot-r{border-top:1px solid #F0F1F5}
.slot-r .ph{width:44px;height:44px;border-radius:12px;background:var(--bg);flex:none}
.slot-r .ln{height:10px;border-radius:5px;background:var(--track)}
.slot-r .sc{margin-left:auto;font:800 22px/1 var(--f-head);color:#B7BFCE}
.slot-r.you{border:2px dashed var(--ink);border-radius:16px;padding:14px 16px;margin:10px -4px;background:#fff}
.slot-r.you .ph{border:2px dashed var(--ink);background:#fff;display:grid;place-items:center}
.slot-r.you .ph svg{width:20px;height:20px;color:var(--ink)}
.slot-r.you b{font:800 17px/1.1 var(--f-head);color:var(--ink)}
.slot-r.you small{display:block;font:400 13px/1.2 var(--f-text);color:var(--muted);margin-top:3px}
.slot-r.you .bar{width:100%;margin-top:9px;height:8px;background:var(--track)}

/* ---- Подвал ---- */
.ftr{background:var(--bg);padding-block:72px 40px;border-top:1px solid var(--line)}
.ftr-g{display:grid;grid-template-columns:1.4fr repeat(2,1fr);gap:48px}
.ftr .brand{margin-bottom:18px}
.ftr-p{font-size:15.5px;max-width:22em;color:var(--muted)}
.ftr .fh{display:block;font:800 16px/1 var(--f-head);color:var(--ink);margin-bottom:18px}
.ftr li a{display:inline-block;padding:6px 0;text-decoration:none;font-size:16px;color:var(--text)}
@media (hover:hover){.ftr li a:hover{color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:4px}}
.ftr-b{display:flex;justify-content:space-between;gap:24px;margin-top:56px;padding-top:24px;border-top:1px solid var(--line-2);font-size:14.5px;color:var(--muted)}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

/* короткий ответ: крупный абзац без заголовка */
.answer-plain{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(32px,4vw,56px)}
.ap-lead{font:700 clamp(22px,2.2vw,29px)/1.45 var(--f-head);letter-spacing:-.012em;color:var(--ink);max-width:40.5em;text-wrap:pretty}
.ap-why{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,3vw,48px);margin-top:clamp(28px,3vw,40px);padding-top:clamp(24px,2.6vw,36px);border-top:1px solid var(--line)}
.ap-why p{font-size:16.5px;line-height:1.65;color:var(--muted)}

/* тёмный блок «Коротко» перед белым ответом */
.ans-intro{background:var(--ink);color:#fff;border-radius:var(--r-lg);padding:clamp(28px,3.4vw,48px) clamp(28px,4vw,56px);margin-bottom:20px}
.ans-intro__k{display:flex;align-items:center;gap:12px;font:600 15px/1 var(--f-text);color:#C4CBDA}
.ans-intro__k i{display:block;width:28px;height:3px;border-radius:2px;background:var(--accent)}
.ans-intro__t{margin-top:18px;font:800 clamp(24px,2.7vw,38px)/1.25 var(--f-head);letter-spacing:-.02em;max-width:34em;text-wrap:balance}

/* короткий ответ: вид первого прототипа версии A (светлая плитка, подпись, абзац, два абзаца, полоса про независимость внутри) */
.answer-plain{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(32px,4vw,56px)}
.ap-k{display:flex;align-items:center;gap:12px;font:600 15px/1 var(--f-text);color:var(--ink)}
.ap-k i{display:block;width:28px;height:3px;border-radius:2px;background:var(--accent)}
.ap-lead{margin-top:clamp(22px,2.4vw,34px);font:700 clamp(22px,1.8vw,26px)/1.43 var(--f-head);letter-spacing:-.012em;color:var(--ink);max-width:40.5em;text-wrap:pretty}
.ap-why p{font-size:16px;line-height:1.7}
.answer-plain .transp{margin-top:clamp(24px,2.6vw,36px)}

/* короткий ответ: темно-синий вариант */
.answer-plain{background:var(--ink);border-color:var(--ink);color:#fff}
.ap-k{color:#C4CBDA}
.ap-lead{color:#fff}
.ap-why{border-top-color:rgba(255,255,255,.16)}
.ap-why p{color:#B3BDD0}

/* ===== Подстраницы и карточка центра ===== */
.crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font:500 15px/1.2 var(--f-text);color:var(--muted)}
.crumbs a{color:var(--text);text-decoration:none;border-bottom:1px solid var(--line-2)}
@media (hover:hover){.crumbs a:hover{color:var(--ink);border-color:var(--accent)}}
.crumbs .cs{color:var(--muted)}
.crumbs [aria-current]{color:var(--ink);font-weight:600}
.hero--sub{padding-block:clamp(28px,3vw,44px) clamp(64px,6vw,88px)}
.hero--sub h1{margin-top:24px;font-size:min(3.9vw,60px)}
.stats--3{grid-template-columns:.9fr 1fr 1.1fr}
.btn--wide{width:100%}
.routes--eq{grid-template-columns:repeat(3,1fr)}
.tbl-sign{margin-top:22px;font-size:16px;color:var(--text)}
.tbl-sign a{color:var(--ink);font-weight:600;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:3px}
.rt .co-a{color:inherit;text-decoration:none}
@media (hover:hover){.rt .co-a:hover{text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:3px}}
.rt .num-b{font:800 18px/1 var(--f-head);color:var(--ink)}
.rt thead th.c-pl{line-height:1.2}

/* выбор онлайн */
.guide-one{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr);gap:clamp(48px,6vw,104px);align-items:start}
.tip-card{background:var(--bg);border-radius:var(--r-lg);padding:clamp(28px,3.4vw,48px);border:1px solid var(--line)}
.tip-card h3{font-size:clamp(25px,2.3vw,32px);line-height:1.1;letter-spacing:-.02em}
.tip-card p{margin-top:18px;font-size:18px;line-height:1.7;max-width:38em}

/* адреса */
.cities{display:flex;flex-direction:column;gap:44px}
.city h3{display:flex;align-items:baseline;gap:14px;font-size:clamp(24px,2.2vw,30px);margin-bottom:16px}
.city h3 span{font:500 15px/1 var(--f-text);color:var(--muted);letter-spacing:0}
.city-card{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
table.mt{width:100%;border-collapse:collapse;font-size:15px;font-variant-numeric:tabular-nums}
.mt th,.mt td{padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:middle;text-align:center;font-weight:400}
.mt thead th{font:600 13.5px/1.2 var(--f-text);color:var(--muted);background:var(--bg);white-space:nowrap}
.mt th.l,.mt td.l{text-align:left}
.mt tbody tr:last-child th,.mt tbody tr:last-child td{border-bottom:0}
.mt tbody th{font-weight:600;color:var(--ink)}
.mt .co .logo{width:36px;height:36px;border-radius:10px}
.mt .co-a{font:800 16px/1.15 var(--f-head);color:var(--ink);text-decoration:none;letter-spacing:-.01em}
@media (hover:hover){.mt .co-a:hover{text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:3px}}
.mt td.ad{color:var(--ink)}
.mt td.ad svg{display:inline-block;vertical-align:-4px;width:18px;height:18px;margin-right:8px;color:var(--muted)}
.mp{display:inline-flex;flex-direction:column;gap:3px;text-decoration:none;color:var(--ink);padding:4px 0}
.mp b{font:500 12.5px/1 var(--f-text);color:var(--muted)}
.mp span{display:inline-flex;align-items:center;gap:5px;font-weight:600}
.mp span svg{width:13px;height:13px}
.mp span i{font-style:normal;color:var(--muted)}
@media (hover:hover){.mp:hover span{text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:3px}}
.mp-no{font-size:14px;color:var(--muted)}

/* предметы */
.subjs{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.subj{min-height:148px;display:flex;flex-direction:column;justify-content:space-between;gap:20px;padding:26px 28px;border-radius:var(--r);background:var(--bg);border:1px dashed var(--line-2)}
.subj h3{font-size:24px;color:var(--text)}
.subj p{font-size:14.5px;color:var(--muted)}

/* карточка центра */
.cpage{padding-block:clamp(28px,3vw,44px) clamp(64px,6vw,96px)}
.cgrid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;align-items:start;margin-top:28px}
.cmain{display:flex;flex-direction:column;gap:20px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(26px,2.8vw,40px)}
.card h2{font-size:clamp(24px,2.2vw,30px);line-height:1.1;letter-spacing:-.02em;margin-bottom:26px}
.card h3{font-size:18px;line-height:1.2;margin-bottom:18px}
.card .fine{margin-top:22px}
.chead{display:flex;align-items:center;gap:24px}
.logo--lg{width:64px;height:64px;border-radius:16px}
.chead-t{flex:1;min-width:0}
.chead-co{font-size:14.5px;color:var(--muted);margin-bottom:8px}
.chead h1{font-size:clamp(28px,2.9vw,42px);line-height:1.05;letter-spacing:-.025em}
.chead-pl{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:4px;font-size:14.5px;color:var(--muted);white-space:nowrap}
.chead-pl b{display:inline-flex;align-items:center;height:36px;padding:0 16px;border-radius:12px;background:var(--ink);color:#fff;font:800 16px/1 var(--f-head)}
.cscore{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(28px,4vw,56px);align-items:center}
.cscore-n{display:flex;align-items:baseline;gap:12px}
.cscore-n b{font:800 clamp(72px,7.2vw,108px)/.9 var(--f-head);letter-spacing:-.045em;color:var(--ink);font-variant-numeric:tabular-nums}
.cscore-n span{font:600 20px/1 var(--f-head);color:var(--muted)}
.bar--lg{height:18px;--gap:2px}
.cscore-b .lg-h{margin-bottom:16px}
.lg-blocks--3{grid-template-columns:repeat(3,auto);gap:10px 28px;margin-top:18px;justify-content:start}
.lg-blocks--3 li{gap:7px}
.lg-blocks--3 .lt{width:auto}
.lg-blocks--3 li span:last-child{font-variant-numeric:tabular-nums;color:var(--ink);font-weight:600}
.kd{display:grid;grid-template-columns:repeat(4,1fr);gap:28px 24px}
.kd dt{font-size:14px;line-height:1.3;color:var(--muted)}
.kd dd{margin:8px 0 0;font:800 26px/1.1 var(--f-head);color:var(--ink);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.kd dd .nd{font:400 15px/1 var(--f-text)}
.kd .rating-v svg{width:18px;height:18px}
.brows{display:flex;flex-direction:column;gap:20px}
.brow{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1.4fr) auto;gap:20px;align-items:center}
.brow .bl{display:flex;align-items:center;gap:10px;font-size:16px;line-height:1.25;color:var(--ink);font-weight:500}
.brow .bl b{font:800 14px/1 var(--f-head);width:14px;flex:none}
.brow .btrack{display:block;height:12px;border-radius:99px;background:var(--track);overflow:hidden}
.brow .btrack i{display:block;height:100%;border-radius:99px}
.brow .bv{font-size:15px;color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums;min-width:96px;text-align:right}
.brow .bv b{font:800 17px/1 var(--f-head);color:var(--ink)}
.sw2{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,56px)}
.sw2 > div + div{border-left:1px solid var(--line);padding-left:clamp(28px,4vw,56px)}
.brow--s{grid-template-columns:1fr auto;gap:10px 16px}
.brow--s .btrack{grid-column:1 / -1;grid-row:2}
.mt-wrap{margin:0 calc(-1 * clamp(26px,2.8vw,40px));border-top:1px solid var(--line)}
.mt--card th,.mt--card td{padding:13px 12px}
.mt--card tbody th{min-width:190px}
.mt--card tbody td:nth-child(2){white-space:nowrap}
.mt--card thead th{white-space:normal;line-height:1.2}
.mt--card th:first-child,.mt--card td:first-child{padding-left:clamp(26px,2.8vw,40px)}
.mt--card th:last-child,.mt--card td:last-child{padding-right:clamp(26px,2.8vw,40px)}
.mt--card tbody th{font-weight:500;color:var(--ink)}
.mp-l{display:inline-flex;align-items:center;gap:6px;color:var(--ink);font-weight:600;text-decoration:none;white-space:nowrap;border-bottom:2px solid var(--line-2);padding-block:2px}
@media (hover:hover){.mp-l:hover{border-color:var(--accent)}}
.mp-l svg{width:15px;height:15px}
.nbs{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.nbs--1{grid-template-columns:1fr}
.nb{display:flex;flex-direction:column;gap:14px;padding:22px 24px;border-radius:20px;background:var(--bg);border:1px solid transparent;text-decoration:none;color:inherit;transition:background-color .2s,border-color .2s}
@media (hover:hover){a.nb:hover{background:#fff;border-color:var(--line-2)}}
.nb--empty{background:transparent;border:1px dashed var(--line)}
.nb-k{font:500 14px/1 var(--f-text);color:var(--muted)}
.nb-r{display:flex;align-items:center;gap:14px}
.nb-r > span:nth-child(2){flex:1;min-width:0}
.nb-r > svg{width:20px;height:20px;flex:none;color:var(--ink)}
.nb-n{display:block;font:800 19px/1.15 var(--f-head);color:var(--ink)}
.nb-s{display:block;margin-top:4px;font-size:14.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.cta{position:sticky;top:calc(var(--hdr) + 24px);background:#fff;border:0;border-radius:var(--r-lg);padding:32px;box-shadow:0 1px 2px rgba(14,20,36,.04),0 24px 40px -28px rgba(14,20,36,.35)}
.cta-k{font-size:14.5px;color:var(--muted)}
.cta-price{display:block;margin-top:8px;font:800 40px/1.05 var(--f-head);letter-spacing:-.03em;color:var(--ink);font-variant-numeric:tabular-nums}
.cta-price--na{font-size:24px;line-height:1.2;letter-spacing:-.02em;color:var(--text)}
.cta-l{margin:26px 0 28px;border-top:1px solid var(--line)}
.cta-l li{display:flex;align-items:center;justify-content:space-between;gap:16px;height:52px;border-bottom:1px solid var(--line);font-size:16px;color:var(--ink)}
.cta-l .yes{width:28px;height:28px}
.cta-dom{margin-top:14px;text-align:center;font-size:14.5px;color:var(--muted)}
.cta .link-arrow{margin-top:22px}
.final--ink{background:var(--ink);color:#C4CBDA;grid-template-columns:1fr}
.final--ink h2{color:#fff;font-size:min(3.2vw,48px);max-width:18em}
.final--ink p{color:#C4CBDA}
.final-act{display:flex;align-items:center;gap:32px;margin-top:34px;flex-wrap:wrap}
.final--ink .btn{margin-top:0}
.link-arrow--inv{color:#fff;border-color:#4A5472}
@media (hover:hover){.link-arrow--inv:hover{border-color:var(--accent)}}

.city-card .mt{table-layout:fixed}
.city-card .mt th:nth-child(1){width:25%}
.city-card .mt th:nth-child(2){width:29%}
.city-card .mt th:nth-child(3),.city-card .mt th:nth-child(4){width:23%}
.sw2 > div{min-width:0}
.brow--s .bv{min-width:0;font-size:14px;white-space:normal}
.brow--s .bl{min-width:0}
@media (max-width:1360px){.sw2{gap:24px}.sw2 > div + div{padding-left:24px}.brow--s .bl{font-size:15px}}

/* матрица предметов */
.m-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.m-tbl{width:100%;border-collapse:collapse;min-width:980px}
.m-tbl th,.m-tbl td{padding:14px 10px;text-align:center;border-bottom:1px solid var(--line)}
.m-tbl thead th{font:600 13.5px/1.2 var(--f-text);color:var(--muted);background:#fff;white-space:normal}
.m-tbl tbody tr:last-child th,.m-tbl tbody tr:last-child td{border-bottom:0}
.m-tbl .m-c{text-align:left;padding-left:20px;min-width:230px}
.m-tbl .nd{white-space:nowrap}
.legend--inline{display:flex;flex-wrap:wrap;gap:12px 28px;margin:22px 0 4px;padding:0;list-style:none;font-size:15px;color:var(--muted)}
.legend--inline li{display:flex;align-items:center;gap:10px}


/* ===== Отзывы учеников: цифры и ссылки ===== */
.rv-aggs{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.rv-agg{display:flex;flex-direction:column;align-items:flex-start;padding:26px 28px;border-radius:20px;background:var(--bg)}
.rv-svc{font:600 14px/1 var(--f-text);color:var(--muted)}
.rv-big{display:flex;align-items:center;gap:8px;margin-top:14px;font:800 44px/1 var(--f-head);letter-spacing:-.03em;color:var(--ink);font-variant-numeric:tabular-nums}
.rv-big svg{width:28px;height:28px}
.rv-big .nd{font:400 16px/1 var(--f-text)}
.rv-sub{margin-top:12px;font-size:15px;line-height:1.4;color:var(--text);font-variant-numeric:tabular-nums}
.rv-agg .btn{margin-top:auto;height:48px;padding:0 20px;font-size:15px}
.rv-agg .btn svg{width:18px;height:18px}
.rv-agg > .rv-sub + .btn{margin-top:22px}
.rv-agg--none{border:1px dashed var(--line-2)}
.rv-none{margin-top:14px;font-size:17px;line-height:1.4;color:var(--text)}
.card .rv-fine{margin-top:18px}

/* служебные страницы */
.phero{padding-block:clamp(28px,3vw,44px) clamp(32px,3.4vw,52px);background:var(--bg)}
.phero h1{margin-top:24px;font-size:min(3.9vw,58px);max-width:18em}
.phero .lead{margin-top:20px}
.guide--m{grid-template-columns:minmax(0,.55fr) minmax(0,2.2fr);gap:clamp(40px,5vw,80px)}
.toc-h{font:800 15px/1 var(--f-head);color:var(--ink)}
.guide--m .toc{margin-top:18px}
.mcol section,.legal article{scroll-margin-top:calc(var(--hdr) + 24px)}
.mcol > section{padding-bottom:56px}
.mcol h2,.legal h2{font-size:clamp(26px,2.3vw,34px);line-height:1.1;letter-spacing:-.02em;margin-bottom:24px}
.mcol > section + section{padding-top:48px;border-top:1px solid var(--line)}
.m-light p{font-size:17.5px;line-height:1.7;max-width:46em}
.m-light p + p{margin-top:16px}
.incl-l{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.incl-l--1{grid-template-columns:1fr 1fr;gap:24px 20px}
.incl-l .v{display:block;font:800 clamp(32px,3vw,44px)/1 var(--f-head);letter-spacing:-.035em;color:var(--ink);font-variant-numeric:tabular-nums;width:max-content;text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:.07em;text-underline-offset:.14em;text-decoration-skip-ink:none}
.incl-l .t{display:block;margin-top:14px;font-size:15.5px;line-height:1.4;color:var(--text)}
.wlist{margin-top:24px;display:grid;grid-template-columns:1fr 1fr;gap:12px 40px}
.wlist li{display:flex;align-items:center;gap:10px;font-size:16px;color:var(--ink)}
.wlist li span:nth-of-type(2){flex:1}
.wlist .lt{font:800 14px/1 var(--f-head);width:14px}
.wlist b{font:800 17px/1 var(--f-head)}
.mblock{margin-top:36px}
.mblock:first-of-type{margin-top:0}
.mb-h{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.mb-h .sw{width:14px;height:14px;border-radius:4px}
.mb-h h3{font-size:clamp(20px,1.7vw,24px)}
.mb-w{margin-left:auto;font:700 15px/1 var(--f-head);color:var(--muted)}
.ct-wrap{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:#fff}
table.ct{width:100%;border-collapse:collapse;font-size:14px;line-height:1.45;font-variant-numeric:tabular-nums}
.ct th,.ct td{padding:13px 12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);font-weight:400;color:var(--text)}
.ct thead th{background:var(--bg);font:600 13px/1.2 var(--f-text);color:var(--muted)}
.ct tbody tr:last-child th,.ct tbody tr:last-child td{border-bottom:0}
.ct tbody th{font:800 14px/1.45 var(--f-head);color:var(--ink);white-space:nowrap}
.ct .ct-n{font-weight:600;color:var(--ink)}
.ct .ct-r{font-size:13.5px;overflow-wrap:anywhere}
.ct .ct-m{white-space:nowrap;font-weight:700;color:var(--ink)}
.callout{padding:26px 30px;border-radius:20px;background:var(--bg);border:1px solid var(--line);display:flex;flex-direction:column;gap:20px}
.callout p{font-size:17px;line-height:1.65;max-width:50em;color:var(--ink)}
.callout .lg-flags{gap:10px}
.datebox{display:inline-flex;align-items:center;gap:12px;font:700 18px/1 var(--f-head);color:var(--ink)}
.datebox svg{width:24px;height:24px;color:var(--accent)}
.m-after{margin-top:16px;display:flex;flex-wrap:wrap;gap:12px 28px;align-items:center;font-size:17px}
.seo--lead{margin-top:0;padding-top:0;border-top:0}
.seo--lead p{font-size:18px;line-height:1.7}
.stats--page{grid-template-columns:repeat(4,1fr);margin-top:48px}
.m-links{display:flex;gap:32px;flex-wrap:wrap;margin-top:28px}
#independence h2{font-size:clamp(26px,2.4vw,34px);margin-bottom:20px;color:#fff}
#independence .big{max-width:34em}

/* форма */
.addgrid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:28px;align-items:start}
.form h2,.ok h2{font-size:clamp(24px,2.1vw,30px);margin-bottom:28px}
.fld{display:flex;flex-direction:column;gap:8px;margin-bottom:22px;min-width:0}
.fld label,.fld .chk{font:600 15.5px/1.3 var(--f-text);color:var(--ink)}
.req{color:#B3330A}
.fld input[type=text],.fld textarea{width:100%;height:52px;padding:0 16px;border:1.5px solid var(--line-2);border-radius:var(--r-btn);background:#fff;font:400 17px/1.3 var(--f-text);color:var(--ink);transition:border-color .15s}
.fld textarea{height:auto;padding:14px 16px;resize:vertical;min-height:110px}
.fld input::placeholder{color:#8590A8}
@media (hover:hover){.fld input:hover,.fld textarea:hover{border-color:#B7BFCE}}
.fld input:focus-visible,.fld textarea:focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-color:var(--ink)}
.fld.is-bad input,.fld.is-bad textarea{border-color:#B3330A;background:#FFF8F5}
.hint{font-size:14px;color:var(--muted)}
.err{font:500 14.5px/1.35 var(--f-text);color:#B3330A}
.err::before{content:'';display:inline-block;width:6px;height:6px;margin-right:8px;border-radius:50%;background:#B3330A;vertical-align:middle}
.err[hidden],.err-sum[hidden]{display:none}
.err-sum{margin-bottom:24px;padding:16px 20px;border-radius:14px;background:#FFF1EC;border:1px solid #F2B8A4;color:#7A2208;font:500 15.5px/1.45 var(--f-text)}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}
.chk{position:relative;display:flex;align-items:flex-start;gap:14px;cursor:pointer;font-weight:500}
.chk input{position:absolute;opacity:0;width:24px;height:24px;margin:0}
.chk .box{flex:none;width:24px;height:24px;border:1.5px solid var(--line-2);border-radius:7px;background:#fff;display:grid;place-items:center;transition:background-color .15s,border-color .15s}
.chk input:checked + .box{background:var(--ink);border-color:var(--ink)}
.chk input:checked + .box::after{content:'';width:11px;height:6px;border-left:2.5px solid #fff;border-bottom:2.5px solid #fff;transform:translateY(-2px) rotate(-45deg)}
.chk input:focus-visible + .box{outline:2px solid var(--ink);outline-offset:3px}
.fld.is-bad .chk .box{border-color:#B3330A}
.chk a{text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:3px}
.form-act{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:8px}
.form-note{font-size:14.5px;color:var(--muted)}
.ok[hidden],.form[hidden]{display:none}
.ok-i{display:grid;place-items:center;width:56px;height:56px;margin-bottom:20px;border-radius:50%;background:var(--ink);color:#fff}
.ok-i svg{width:26px;height:26px}
.ok p{font-size:17px;margin-bottom:22px}
.ok button{background:none;border:0;border-bottom:2px solid var(--line-2);cursor:pointer}
.aside-add{display:flex;flex-direction:column;gap:20px}
.aside-add h2{font-size:clamp(22px,1.9vw,26px);margin-bottom:22px}
.aside-add p{font-size:16.5px;line-height:1.6}
.aside-add .fine{margin-top:18px}
.aside-add a{text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:3px}

/* юридические страницы */
.ribbon{margin-bottom:40px;padding:16px 22px;border-radius:14px;border:1px dashed var(--muted);background:var(--bg);font-size:15.5px;line-height:1.5;color:var(--ink)}
.legal article{padding:36px 0;border-top:1px solid var(--line)}
.legal .ribbon + article{border-top:0;padding-top:0}
.legal p{font-size:17.5px;line-height:1.7;max-width:44em}
.legal p + p{margin-top:14px}
.legal a{text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:3px}
.legal .legal-end{margin-top:24px;padding-top:24px;border-top:1px solid var(--line);font-size:15.5px;color:var(--muted)}
.fill{display:inline;padding:2px 8px;border-radius:6px;border:1px dashed #B3330A;background:#FFF8F5;font:500 .92em/1.5 var(--f-text);color:#7A2208}
table.ct{table-layout:fixed}
.ct th:nth-child(1){width:54px}
.ct th:nth-child(2){width:15%}
.ct th:nth-child(3){width:21%}
.ct th:nth-child(4){width:21%}
.ct th:nth-child(5){width:13%}
.ct th:nth-child(6){width:19%}
.ct th:nth-child(7){width:84px}
.legal .legal-end{max-width:none}
.rv-agg{padding:26px 24px}.rv-agg .btn{gap:8px;padding:0 16px;font-size:14.5px;white-space:nowrap}

/* ===== История обновлений ===== */
.hist{display:flex;flex-direction:column;max-width:860px;border-left:2px solid var(--line-2);margin-left:6px}
.hist li{position:relative;display:grid;grid-template-columns:200px minmax(0,1fr);gap:8px 32px;padding:0 0 36px 32px}
.hist li:last-child{padding-bottom:0}
.hist li::before{content:'';position:absolute;left:-8px;top:6px;width:14px;height:14px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px var(--bg)}
.hist time{font:700 16px/1.5 var(--f-head);color:var(--ink);font-variant-numeric:tabular-nums}
.hist h3{font-size:clamp(20px,1.8vw,24px);margin-bottom:8px}
.hist p{font-size:17px;line-height:1.6;max-width:40em}
.m-hist{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px;margin-top:24px}
.m-hist > div{background:#171E33;border:1px solid #28314D;border-radius:var(--r-lg);padding:clamp(24px,2.6vw,36px)}
.m-hist h3{font-size:clamp(20px,1.7vw,24px);margin-bottom:18px}
.hist-last{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}
.hist-last time{font:600 15px/1.4 var(--f-text);color:#98A2B8;font-variant-numeric:tabular-nums}
.hist-last b{font:800 19px/1.3 var(--f-head);color:#fff;letter-spacing:-.01em}
.hist-last p{font-size:16px;line-height:1.55;color:#C4CBDA}
.m-hist__r p{font-size:16px;line-height:1.6;margin-bottom:22px;color:#C4CBDA;max-width:30em}
.m-sub{margin-top:16px;font-size:17px;line-height:1.65;color:#C4CBDA;max-width:40em}
.m-box .big .mark{text-decoration-thickness:.09em}

/* ===== Сообщить об ошибке: кнопка и диалог ===== */
.kd-act{margin-top:28px}
.kd-act .btn{height:48px;font-size:15.5px}
.m-after .js-report{height:48px;font-size:15.5px;margin-left:auto}
.rv-aggs--1{grid-template-columns:1fr}
.mp-e{background:transparent}
.dlg{width:min(560px,calc(100% - 32px));max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);padding:0;border:0;border-radius:var(--r-lg);background:#fff;color:var(--text);box-shadow:0 40px 80px -30px rgba(14,20,36,.55);overflow:auto}
.dlg::backdrop{background:rgba(14,20,36,.55)}
.dlg__in{position:relative;padding:clamp(26px,3vw,40px)}
.dlg h2{font-size:clamp(22px,2vw,28px);margin-bottom:14px;padding-right:48px}
.dlg__ctx{font-size:15px;color:var(--muted);margin-bottom:22px}
.dlg__x{position:absolute;right:14px;top:14px;display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:12px;background:var(--bg);color:var(--ink);cursor:pointer}
.dlg__x svg{width:20px;height:20px}
.dlg__ok[hidden],#report-form[hidden]{display:none}
.dlg__ok .ok-i{margin-bottom:18px}
.dlg__ok h2{padding-right:0;margin-bottom:24px}
.dlg .fld input[type=text]{height:52px}


/* ===== Блог: архив /stati/, статья, блок на главной ===== */
.posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.post-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;text-decoration:none;color:inherit;transition:border-color .2s,box-shadow .2s,transform .2s}
@media (hover:hover){.post-card:hover{border-color:var(--line-2);box-shadow:0 24px 40px -28px rgba(14,20,36,.35);transform:translateY(-2px)}}
.post-card__img{display:block;aspect-ratio:16/9;background:var(--track);overflow:hidden}
.post-card__img img{width:100%;height:100%;object-fit:cover}
.post-card__b{display:flex;flex-direction:column;flex:1;padding:24px 26px 28px}
.post-meta{display:flex;flex-wrap:wrap;gap:4px 14px;font:500 14.5px/1.3 var(--f-text);color:var(--muted);font-variant-numeric:tabular-nums}
.post-card h3{margin-top:12px;font-size:clamp(20px,1.6vw,23px);line-height:1.22;letter-spacing:-.015em}
.post-card p{margin-top:12px;font-size:16px;line-height:1.55;color:var(--text);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.post-card__more{margin-top:auto;padding-top:20px;display:inline-flex;align-items:center;gap:8px;font:700 15.5px/1 var(--f-head);color:var(--ink)}
.post-card__more svg{width:18px;height:18px;transition:transform .2s}
@media (hover:hover){.post-card:hover .post-card__more svg{transform:translateX(4px)}}
.posts-empty{padding:48px 32px;border:1px dashed var(--line-2);border-radius:var(--r-lg);background:#fff;font-size:18px;color:var(--text)}
.pager{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:48px}
.pager a,.pager span{display:inline-grid;place-items:center;min-width:48px;height:48px;padding:0 16px;border-radius:12px;background:#fff;border:1px solid var(--line);font:700 16px/1 var(--f-head);color:var(--ink);text-decoration:none}
@media (hover:hover){.pager a:hover{border-color:var(--ink)}}
.pager .current{background:var(--ink);border-color:var(--ink);color:#fff}
.pager .dots{border-color:transparent;background:transparent}
.home-posts-more{margin-top:36px}

/* страница статьи */
.art-hero{padding-block:clamp(28px,3vw,44px) clamp(28px,3vw,44px);background:var(--bg)}
.art-hero h1{margin-top:24px;font-size:min(3.8vw,56px);line-height:1.04;max-width:18em}
.art-lead{margin-top:24px;font-size:clamp(18px,1.5vw,21px);line-height:1.6;max-width:36em;color:var(--text)}
.art-meta{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:22px;font:500 15.5px/1.3 var(--f-text);color:var(--muted);font-variant-numeric:tabular-nums}
.art-cover{margin:clamp(28px,3vw,44px) 0 0;border-radius:var(--r-lg);overflow:hidden;background:var(--track);aspect-ratio:2/1}
.art-cover img{width:100%;height:100%;object-fit:cover}
.art{display:grid;grid-template-columns:minmax(0,.55fr) minmax(0,2.2fr);gap:clamp(40px,5vw,80px);align-items:start}
.art-side{position:sticky;top:calc(var(--hdr) + 40px);max-height:calc(100vh - var(--hdr) - 64px);overflow-y:auto;overscroll-behavior:contain}
.art-side .toc{margin-top:18px}
.art-body{min-width:0;max-width:760px}
.prose{font-size:18.5px;line-height:1.72;color:var(--text)}
.prose > *:first-child{margin-top:0}
.prose h2{margin-top:56px;margin-bottom:20px;font-size:clamp(26px,2.4vw,34px);line-height:1.12;letter-spacing:-.02em;scroll-margin-top:calc(var(--hdr) + 24px)}
.prose h3{margin-top:36px;margin-bottom:14px;font-size:clamp(21px,1.8vw,25px);line-height:1.2;scroll-margin-top:calc(var(--hdr) + 24px)}
.prose p{margin-top:18px}
.prose h2 + p,.prose h3 + p{margin-top:0}
.prose a{color:var(--ink);font-weight:600;text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:4px}
@media (hover:hover){.prose a:hover{background:#FFE9E0}}
.prose strong{color:var(--ink);font-weight:600}
.prose ul,.prose ol{margin-top:18px;display:flex;flex-direction:column;gap:10px}
.prose ul li{position:relative;padding-left:30px}
.prose ul li::before{content:'';position:absolute;left:6px;top:.72em;width:8px;height:8px;border-radius:2px;background:var(--accent)}
.prose ol{counter-reset:li}
.prose ol li{position:relative;padding-left:44px;counter-increment:li}
.prose ol li::before{content:counter(li);position:absolute;left:0;top:.18em;display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--ink);color:#fff;font:800 14.5px/1 var(--f-head);font-variant-numeric:tabular-nums}
.prose blockquote{margin:28px 0 0;padding:20px 26px;border-left:4px solid var(--accent);background:var(--bg);border-radius:0 16px 16px 0;color:var(--ink)}
.prose blockquote p{margin-top:0}
.prose figure{margin:40px 0 0}
.prose figure img,.prose .art-fig img{width:100%;height:auto;border-radius:var(--r);background:var(--track)}
.prose figcaption{margin-top:12px;font-size:14.5px;line-height:1.5;color:var(--muted)}
.prose-tbl{margin-top:28px;overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:#fff;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.prose-tbl:focus-visible{outline-offset:2px}
.prose table{width:100%;min-width:560px;border-collapse:collapse;font-size:16px;line-height:1.5}
.prose th,.prose td{padding:14px 18px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.prose thead th{background:var(--bg);font:700 14.5px/1.3 var(--f-head);color:var(--ink)}
.prose thead th strong{font-weight:inherit}
.prose tbody tr:last-child td{border-bottom:0}
.prose tbody td:first-child{font-weight:600;color:var(--ink)}
.art-cta{margin-top:64px;padding:clamp(26px,3vw,40px);border-radius:var(--r-lg);background:var(--ink);color:#C4CBDA}
.art-cta h2{margin:0 0 14px;font-size:clamp(24px,2.2vw,32px);color:#fff}
.art-cta p{margin:0;font-size:17px;line-height:1.6;max-width:34em}
.art-cta ul{margin-top:26px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.art-cta a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:60px;padding:14px 18px;border-radius:16px;background:#171E33;border:1px solid #28314D;color:#fff;text-decoration:none;font:700 16px/1.25 var(--f-head);transition:background-color .15s,border-color .15s}
@media (hover:hover){.art-cta a:hover{background:#1E2740;border-color:var(--accent)}}
.art-cta a svg{width:18px;height:18px;flex:none}
.art-more{margin-top:clamp(48px,5vw,72px)}
.art-more h2{font-size:clamp(24px,2.2vw,32px);margin-bottom:24px}
.art-more .posts{grid-template-columns:repeat(2,minmax(0,1fr))}

@media (max-width:1100px){
  .posts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .art{grid-template-columns:1fr;gap:28px}
  .art-side{position:static;max-height:none;overflow:visible}
  .art-body{max-width:none}
  .prose{max-width:46em}
}
@media (max-width:768px){
  .posts{grid-template-columns:1fr;gap:16px}
  .post-card__b{padding:20px 18px 22px}
  .art-hero{padding-block:20px 24px !important}
  .art-hero h1{font-size:clamp(28px,8vw,36px);margin-top:18px}
  .art-lead{font-size:17.5px;margin-top:18px}
  .art-meta{margin-top:16px;font-size:14.5px}
  .art-cover{border-radius:20px;margin-top:22px;aspect-ratio:16/9}
  .prose{font-size:17px;line-height:1.7}
  .prose h2{margin-top:44px;font-size:clamp(24px,6.6vw,28px)}
  .prose h3{margin-top:30px;font-size:21px}
  .prose figure{margin-top:30px}
  .prose figure img{border-radius:16px}
  .prose table{min-width:520px;font-size:15.5px}
  .prose th,.prose td{padding:12px 14px}
  .art-cta{margin-top:48px;padding:24px 18px}
  .art-cta ul{grid-template-columns:1fr}
  .art-more .posts{grid-template-columns:1fr}
  .pager{margin-top:32px}
}


/* ==========================================================================
   Адаптив версии A: планшет до 1100px, телефон до 768px, малый телефон до 400px.
   Все правила под медиазапросами, десктоп 1280 и выше не меняется.
   ========================================================================== */

/* элементы, которых нет на десктопе */
.nav-toggle,.nav .nav-cta,.sort-m,.m-hint,.cta-bar{display:none}
.toc-box > summary{display:block;list-style:none;pointer-events:none}
.toc-box > summary::-webkit-details-marker{display:none}

/* ---------------------------------------------------------------- планшет */
@media (max-width:1100px){
  :root{--container:calc(100% - 64px)}
  .hdr .wrap{gap:20px}
  .nav a{padding:0 10px}
  .hero-grid{gap:36px}
  .stats{gap:16px}
  .routes,.routes--eq{grid-template-columns:1fr 1fr}
  .route{min-height:260px;padding:28px}
  .why{grid-template-columns:1fr}
  .why > div + div{border-left:0;border-top:1px solid var(--line)}
  .steps{grid-template-columns:repeat(2,1fr);gap:48px 0}
  .step:nth-child(2n) .ln{margin-right:0}
  .crit{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 0}
  .crit > div:nth-child(3n+1){padding-left:0;border-left:0}
  .crit > div:nth-child(n+4){padding-top:0}
  .m-grid,.m-row{grid-template-columns:1fr}
  .guide,.faq-grid,.guide-one,.guide--m{grid-template-columns:1fr;gap:32px}
  .guide-side,.faq-side{position:static}
  .toc-box{background:#fff;border:1px solid var(--line);border-radius:16px;padding:0 18px}
  .toc-box > summary{pointer-events:auto;display:flex;align-items:center;justify-content:space-between;min-height:52px;cursor:pointer}
  .toc-box > summary::after{content:'';width:10px;height:10px;border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);transform:rotate(45deg) translate(-2px,-2px);transition:transform .2s}
  .toc-box[open] > summary::after{transform:rotate(-135deg)}
  .toc-box .toc{margin:0 0 12px;border-left:0}
  .toc-box .toc a{margin-left:0;padding-left:0;border-left:0;min-height:44px;display:flex;align-items:center}
  .toc-box .toc a.is-on{color:var(--ink);font-weight:700}
  .addgrid{grid-template-columns:1fr}
  .cgrid{grid-template-columns:minmax(0,1fr) 320px;gap:20px}
  .kd{grid-template-columns:repeat(2,1fr)}
  .cscore{grid-template-columns:1fr;gap:24px}
  .incl-l{grid-template-columns:repeat(2,1fr)}
  .tbl-wrap{margin-inline:calc((100% - min(1392px, 100vw - 32px)) / 2)}
  .rt .c-co{min-width:200px}
  .ftr-g{grid-template-columns:1fr 1fr 1fr;gap:36px}
  .ftr-g > div:first-child{grid-column:1 / -1}
  .final{grid-template-columns:1fr;gap:32px}
  .final .slot{max-width:520px}
  .seo{gap:32px}
  .lg-blocks--3{grid-template-columns:repeat(3,auto)}
}

/* ---------------------------------------------------------------- телефон */
@media (max-width:768px){
  :root{--container:calc(100% - 40px);--hdr:64px;--r:20px;--r-lg:20px;--pad:56px}
  html{scroll-padding-top:80px}
  body{font-size:16px;line-height:1.55}
  h1{font-size:clamp(34px,9.6vw,40px);line-height:1.04}
  h2{font-size:clamp(26px,7vw,34px);line-height:1.1}
  h3{font-size:20px}
  .sec{padding-block:56px !important}
  .sh{grid-template-columns:1fr;gap:14px;margin-bottom:28px}
  .sh p{font-size:16px;max-width:none}
  .lead{font-size:18px;line-height:1.5}

  /* шапка */
  .hdr .wrap{gap:12px}
  .brand{gap:10px;min-width:0}
  .brand__mark{width:40px;height:40px}
  .brand__n{font-size:17px}
  .brand__s{font-size:12px}
  .hdr-cta{display:none}
  .nav-toggle{display:inline-grid;place-items:center;flex:none;width:44px;height:44px;margin-left:auto;padding:0;border:1px solid var(--line-2);border-radius:12px;background:#fff;color:var(--ink);cursor:pointer}
  .nav-toggle svg{width:24px;height:24px}
  .nav-toggle .i-x,.nav-toggle[aria-expanded=true] .i-b{display:none}
  .nav-toggle[aria-expanded=true] .i-x{display:inline}
  .nav{position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;gap:0;padding:6px 20px 20px;background:var(--bg);border-bottom:1px solid var(--line);box-shadow:0 28px 36px -24px rgba(14,20,36,.4);max-height:calc(100vh - var(--hdr));max-height:calc(100dvh - var(--hdr));overflow:auto}
  html.js .nav{display:none}
  html.js .nav.is-open{display:flex}
  .nav a{height:54px;padding:0 4px;border-radius:0;border-bottom:1px solid var(--line);font-size:18px}
  .nav a[aria-current]{box-shadow:inset 3px 0 0 var(--accent);padding-left:14px;border-radius:0;color:var(--ink);font-weight:600}
  .nav .nav-cta{display:inline-flex;justify-content:center;width:100%;height:52px;margin:16px 0 0;border:0;border-radius:var(--r-btn);background:var(--ink);color:#fff;font-size:16px}
  html:not(.js) .hdr{position:static;height:auto}
  html:not(.js) .hdr .wrap{flex-wrap:wrap;padding-block:12px}
  html:not(.js) .nav{position:static;display:flex;flex-direction:row;flex-wrap:wrap;width:100%;padding:0;border:0;box-shadow:none;background:transparent}
  html:not(.js) .nav a{height:44px;border:0;font-size:16px}
  html:not(.js) .nav .nav-cta{display:none}
  html:not(.js) .nav-toggle{display:none}

  /* первый экран */
  .hero{padding-block:24px 48px !important}
  .hero--sub{padding-block:20px 48px !important}
  .hero-grid{grid-template-columns:1fr;gap:32px}
  .pill{height:auto;min-height:34px;padding:7px 14px 7px 12px;font-size:13.5px;line-height:1.3;max-width:100%}
  .hero h1{margin-top:20px}
  .hero--sub h1{margin-top:18px;font-size:clamp(32px,9vw,40px)}
  .hero .lead{margin-top:18px}
  .hero-act{flex-direction:column;align-items:stretch;gap:12px;margin-top:26px}
  .hero-act .btn{width:100%}
  .hero-act .link-arrow{align-self:center}
  .stats,.stats--3,.stats--page{grid-template-columns:1fr 1fr;gap:22px 16px;margin-top:32px;padding-top:22px}
  .stats--3 > div:last-child{grid-column:1 / -1}
  .stats dt{font-size:26px}
  .stats dd{font-size:14px;max-width:none}
  .stack{gap:12px}
  .top{margin-left:0 !important;padding:18px 16px 16px;border-radius:20px}
  .top-row{grid-template-columns:auto auto minmax(0,1fr) auto;gap:10px}
  .place{width:36px;height:36px;font-size:17px;border-radius:10px}
  .logo{width:40px;height:40px}
  .top-name{font-size:18px}
  .top-co{white-space:nowrap}
  .top-score{font-size:34px}
  .top .bar{margin-top:16px}
  .crumbs{font-size:14.5px}

  /* короткий ответ */
  .answer{padding:26px 20px 24px;border-radius:20px}
  .answer-k{font-size:16px;margin-bottom:20px}
  .answer-k i{width:30px}
  .answer-t{font-size:clamp(22px,6.4vw,26px);line-height:1.28}
  .ans-list{margin-top:24px}
  .ans-list li{grid-template-columns:36px minmax(0,1fr) auto;gap:14px;min-height:74px}
  .ans-n{width:36px;height:36px;border-radius:10px;font-size:17px}
  .ans-name{font-size:21px}
  .ans-bar{display:none}
  .ans-sc{font-size:23px}
  .ans-p{margin-top:16px;font-size:17px;line-height:1.55}
  .ans-lead{margin-top:22px;font-size:16.5px}
  .ans-chips{gap:8px;margin-top:16px}
  .ans-chips li{height:40px;padding:0 16px;font-size:15.5px}
  .ans-foot{flex-direction:column;align-items:flex-start;gap:14px;margin-top:24px;padding-top:20px}
  .ans-date{font-size:16px;align-items:flex-start}
  .ans-date svg{margin-top:2px}
  .ans-more{min-height:44px;display:inline-flex;align-items:center}
  .ans-why{margin-top:22px;padding-top:22px}
  .ans-why__t{grid-template-columns:1fr;gap:16px}
  .ans-why__t p{font-size:15.5px}
  .seo{grid-template-columns:1fr;gap:20px;margin-top:28px;padding-top:26px}
  .seo p{font-size:16px}
  .transp{flex-direction:column;align-items:flex-start;gap:12px;padding:16px}
  .transp .link-arrow{margin-left:0}

  /* таблица рейтинга: карточки вместо колонок */
  .sort-m{display:none;align-items:center;gap:10px;margin-bottom:16px}
  html.js .sort-m{display:flex}
  .sort-m label{flex:none;font:600 15px/1.2 var(--f-text);color:var(--ink)}
  .sort-m select{flex:1;min-width:0;height:52px;padding:0 40px 0 14px;border:1.5px solid var(--line-2);border-radius:12px;background:#fff url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2 4l4 4 4-4' fill='none' stroke='%230E1424' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 14px center/12px;font:600 16px/1 var(--f-text);color:var(--ink);-webkit-appearance:none;appearance:none}
  .sort-m button{flex:none;display:grid;place-items:center;width:52px;height:52px;padding:0;border:1.5px solid var(--line-2);border-radius:12px;background:#fff;color:var(--ink);cursor:pointer}
  .sort-m button svg{width:20px;height:20px;transition:transform .2s}
  .sort-m button.is-asc svg{transform:rotate(180deg)}
  .tbl-wrap{margin-inline:0}
  .tbl-card{background:transparent;border:0;border-radius:0}
  table.rt,.rt tbody{display:block}
  .rt thead{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .rt tbody tr{position:relative;display:grid;grid-template-columns:1fr 1fr;column-gap:12px;margin-bottom:12px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:20px}
  .rt tbody td,.rt tbody th{display:block;height:auto;min-width:0;padding:0;border:0 !important;border-radius:0 !important;background:transparent;text-align:left}
@media (hover:hover){  .rt tbody tr:hover td,.rt tbody tr:hover th{background:transparent}}
  .rt tbody .c-pl{position:absolute;left:16px;top:16px;width:auto;padding:0}
  .rt tbody .pl{min-width:32px;height:32px}
  .rt tbody .c-co{grid-column:1 / -1;min-height:44px;padding:0 92px 0 44px;min-width:0}
  .rt .co{gap:10px;min-width:0}
  .rt .co > span:last-child{min-width:0;flex:1}
  .rt .co-n{font-size:17px}
  .rt .co-c{display:block;max-width:100%;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-line-clamp:unset}
  .rt tbody td.c-sc{grid-column:1 / -1;position:static;width:auto;padding:12px 0 8px}
  .rt .score{display:block}
  .rt .score-n{position:absolute;right:16px;top:14px;margin:0;font-size:30px}
  .rt .bar{width:100%;height:10px}
  .rt .pop{display:none}
  .rt tbody td[data-label]{padding-top:10px;font-size:15px}
  .rt tbody td[data-label]::before{content:attr(data-label);display:block;margin-bottom:3px;font:500 12.5px/1.2 var(--f-text);color:var(--muted)}
  .rt tbody td[data-col=price]{order:1}
  .rt tbody td[data-col=rating]{order:2}
  .rt tbody td[data-col=trial]{order:3}
  .rt tbody td[data-col=group]{order:4}
  .rt tbody td[data-col=subjects]{order:5}
  .rt tbody td[data-col=reviews]{order:6}
  .rt tbody td[data-col=online]{order:7}
  .rt tbody td[data-col=offline]{order:8}
  .rt tbody td[data-col=links]{display:none}
  .rt tbody td[data-col=online],.rt tbody td[data-col=offline]{display:flex;align-items:center;gap:10px}
  .rt tbody td[data-col=online]::before,.rt tbody td[data-col=offline]::before{margin:0}
  .rt tbody td.c-act{grid-column:1 / -1;order:10;width:auto;padding:14px 0 0}
  .rt .go{display:flex;flex-direction:row-reverse;align-items:center;justify-content:center;gap:10px;width:100%;height:48px;font:700 15.5px/1 var(--f-head)}
  .rt .go .sr{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto;white-space:normal}
  .tbl-foot{grid-template-columns:1fr;gap:28px;padding:22px 18px;margin-top:20px;background:#fff;border:1px solid var(--line);border-radius:20px}
  .lg-blocks{grid-template-columns:1fr}
  .tbl-notes{grid-template-columns:1fr;gap:14px;margin-top:28px}
  .tbl-notes p{font-size:15.5px}
  .tip{padding:20px 18px;flex-direction:column;gap:14px}
  .tip::before{width:36px;height:4px;align-self:flex-start}
  .tbl-sign{font-size:16px}
  .wbar-k{flex-direction:column;align-items:flex-start;gap:4px}
  .link-arrow{min-height:44px}
  .crumbs a{padding:12px 2px;margin:-12px -2px;border-bottom:0;text-decoration:underline;text-decoration-color:var(--line-2);text-underline-offset:4px}
  .rt .co-a{display:inline-block;padding:12px 0;margin:-12px 0}
  .rt tbody td[data-col] .yes{width:24px;height:24px}

  /* матрица предметов: прокрутка внутри блока, первый столбец закреплен */
  .m-hint{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:14.5px;line-height:1.35;color:var(--muted)}
  .m-hint[hidden]{display:none}
  .m-hint svg{width:18px;height:18px;flex:none}
  .m-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
  .m-tbl{min-width:820px}
  .m-tbl th,.m-tbl td{padding:12px 8px}
  .m-tbl .m-c{min-width:150px;padding-left:12px;position:sticky;left:0;z-index:2;background:#fff;box-shadow:1px 0 0 var(--line)}
  .m-tbl .co{gap:8px}
  .m-tbl .co .logo{width:32px;height:32px}
  .m-tbl .co-n{font-size:15px}
  .legend--inline{flex-direction:column;align-items:flex-start;gap:10px;font-size:15px}

  /* плитки, процесс, критерии, гид */
  .routes,.routes--eq{grid-template-columns:1fr;gap:14px}
  .route{min-height:0;gap:28px;padding:24px 20px}
  .route h3{font-size:22px}
  .route p{font-size:16px;margin-top:10px}
  .why > div{padding:26px 20px}
  .why p{font-size:16px}
  .steps{grid-template-columns:1fr;gap:34px}
  .step{padding:0}
  .step .ln{margin:20px 0 0 !important}
  .step b{font-size:56px}
  .wbar{height:68px;border-radius:16px}
  .wseg{padding:8px 6px}
  .wseg .wn{font-size:19px}
  .wseg .lt{font-size:12px}
  .crit{grid-template-columns:1fr;gap:0;margin-top:28px}
  .crit > div,.crit > div + div{padding:24px 0;border-left:0;border-top:1px solid var(--line-2)}
  .crit > div:first-child{border-top:0;padding-top:0}
  .crit h3{min-height:0;font-size:20px}
  .crit li{font-size:15.5px}
  .crit summary{min-height:44px;font-size:15px}
  .crit details p{font-size:15px}
  .guide .toc{display:none}
  .tips article{padding:28px 0}
  .tips p{font-size:16.5px}
  .tips h3{font-size:22px}
  .m-grid{gap:32px}
  .m-lead{font-size:20px}
  .m-txt p{font-size:16px}
  .incl{padding:24px 20px}
  .incl ul{gap:24px 16px}
  .m-box{padding:24px 20px}
  .m-big b{font-size:64px}
  .m-ns{flex-direction:column;gap:14px;padding:20px}
  .m-ns::before{width:36px;height:4px}

  /* FAQ */
  .faq summary{min-height:56px;padding:14px 16px;gap:14px;font-size:17px;line-height:1.3}
  .faq summary i{width:36px;height:36px}
  .faq .a{padding:0 16px 20px;font-size:16px}
  .faq details{border-radius:16px}

  /* финал и подвал */
  .final{padding:30px 22px;border-radius:24px;gap:0}
  .final h2{font-size:clamp(28px,8vw,36px)}
  .final p{font-size:17px}
  .final .btn{width:100%}
  .final .slot{display:none}
  .ftr{padding-block:48px 28px}
  .ftr-g{grid-template-columns:1fr 1fr;gap:32px 20px}
  .ftr-g > div:first-child{grid-column:1 / -1}
  .ftr li a{padding:10px 0;font-size:16px}
  .ftr-b{flex-direction:column;gap:6px;margin-top:32px}

  /* карточка центра */
  .cpage{padding-block:20px 40px !important}
  .cgrid{display:flex;flex-direction:column;align-items:stretch;gap:14px;margin-top:20px}
  .cmain{display:contents}
  .cmain > .chead{order:1}
  .cmain > .cscore{order:2}
  .cgrid > .cta{order:3}
  .cmain > .card:nth-child(n+3){order:4}
  .card{padding:22px 18px;border-radius:20px}
  .card h2{font-size:clamp(24px,6.6vw,30px);margin-bottom:20px}
  .chead{flex-wrap:wrap;gap:14px 16px}
  .chead .logo--lg{width:52px;height:52px;border-radius:14px}
  .chead-t{flex:1 1 calc(100% - 70px)}
  .chead h1{font-size:clamp(25px,7.2vw,32px)}
  .chead-pl{flex-direction:row;align-items:center;gap:10px;width:100%}
  .cscore{gap:20px}
  .cscore-n b{font-size:clamp(64px,22vw,92px)}
  .lg-blocks--3{grid-template-columns:repeat(3,auto);gap:10px 18px}
  .cta{position:static;padding:22px 18px;border:1px solid var(--line);box-shadow:none;border-radius:20px}
  .cta-price{font-size:34px}
  .cta .btn{height:52px}
  .kd{grid-template-columns:1fr 1fr;gap:22px 14px}
  .kd dd{font-size:24px}
  .brow{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px}
  .brow .btrack{grid-column:1 / -1;order:3}
  .brow .bv{min-width:0}
  .sw2{grid-template-columns:1fr;gap:26px}
  .sw2 > div + div{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:24px}
  .rv-aggs{grid-template-columns:1fr}
  .rv-agg{padding:22px 18px}
  .rv-agg .btn{width:100%}
  .nbs{grid-template-columns:1fr}
  .mt-wrap{margin:0;border-top:0}
  .mt--card{display:block}
  .mt--card thead{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0)}
  .mt--card tbody{display:block}
  .mt--card tr{display:grid;grid-template-columns:repeat(3,1fr);gap:4px 12px;padding:16px 0;border-top:1px solid var(--line)}
  .mt--card tr:first-child{border-top:0;padding-top:0}
  .mt--card th,.mt--card td{display:block;padding:0 !important;border:0;text-align:left;min-width:0 !important;white-space:normal !important}
  .mt--card tbody th{grid-column:1 / -1;font:700 16px/1.3 var(--f-head);color:var(--ink)}
  .mt--card td.mp-svc{grid-column:1 / -1;color:var(--muted);font-size:14.5px}
  .mt--card td[data-label]::before{content:attr(data-label);display:block;font:500 12px/1.2 var(--f-text);color:var(--muted);margin-bottom:2px}
  .mt--card td.mp-lk{grid-column:1 / -1;padding-top:10px !important}
  .mt--card td.mp-no{grid-column:1 / -1}
  .mp-l{min-height:44px;align-items:center}
  .final--ink{padding:28px 20px}
  .final-act{flex-direction:column;align-items:stretch;gap:16px;margin-top:24px}
  .final-act .link-arrow{align-self:center}
  .cta-bar{display:flex;position:sticky;bottom:0;z-index:40;align-items:center;justify-content:space-between;gap:12px;min-height:64px;padding:8px 16px calc(8px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line);box-shadow:0 -10px 24px -14px rgba(14,20,36,.3)}
  .cta-bar__p{display:flex;flex-direction:column;gap:2px;min-width:0}
  .cta-bar__k{font:500 12px/1.2 var(--f-text);color:var(--muted)}
  .cta-bar__v{font:800 19px/1.1 var(--f-head);color:var(--ink);letter-spacing:-.02em;white-space:nowrap}
  .cta-bar__v--na{font-size:14px;font-weight:700;white-space:normal}
  .cta-bar .btn{flex:none;height:48px;padding:0 16px;gap:8px;font-size:15px}
  #cta-end{display:none}

  /* методология */
  .guide--m{gap:20px}
  .mcol > section{padding-bottom:36px}
  .mcol > section + section{padding-top:36px}
  .mcol h2,.legal h2{font-size:clamp(24px,6.6vw,30px);margin-bottom:18px}
  .m-light p{font-size:16px}
  .incl-l{grid-template-columns:1fr 1fr;gap:22px 16px}
  .wlist{grid-template-columns:1fr;gap:10px}
  .mb-h{flex-wrap:wrap}
  .mb-h h3{font-size:20px}
  .ct-wrap{border:0;background:transparent;border-radius:0;overflow:visible}
  table.ct,.ct tbody{display:block}
  .ct thead{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0)}
  .ct tbody tr{display:block;margin-bottom:12px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:16px}
  .ct tbody th,.ct tbody td{display:block;padding:0;border:0;font-size:15px;line-height:1.5}
  .ct tbody th{display:inline-block;margin-bottom:8px;padding:2px 9px;border-radius:8px;background:var(--bg);font-size:14px}
  .ct tbody td{margin-top:10px}
  .ct tbody td.ct-n{margin-top:0;font-size:17px;line-height:1.3}
  .ct tbody td[data-label]:not(.ct-n)::before{content:attr(data-label);display:block;margin-bottom:2px;font:600 12.5px/1.2 var(--f-text);color:var(--muted)}
  .ct .ct-r{font-size:14.5px}
  .callout{padding:20px 18px}
  .callout p{font-size:16px}
  .m-after{font-size:16px}

  /* форма */
  .addgrid{gap:20px}
  .form h2,.ok h2{font-size:clamp(24px,6.6vw,28px)}
  .frow{grid-template-columns:1fr}
  .fld input[type=text],.fld textarea{height:52px;font-size:16px}
  .fld textarea{height:auto;min-height:120px}
  .fld label,.fld .chk{font-size:16px}
  .form-act{flex-direction:column;align-items:stretch;gap:14px}
  .form-act .btn{width:100%}
  .form-note{text-align:center}
  .aside-add h2{font-size:clamp(22px,6vw,26px)}
  .incl-l--1{grid-template-columns:1fr 1fr}

  /* страница «О рейтинге» */
  .phero{padding-block:20px 24px}
  .phero h1{font-size:clamp(30px,8.6vw,40px);margin-top:18px}
  .seo--lead p{font-size:16.5px}
  .m-links{flex-direction:column;gap:14px;margin-top:22px}
  #independence h2{font-size:clamp(24px,6.6vw,30px)}

  /* offline: адреса по городам */
  .city h3{font-size:24px}
  .city-card .mt{display:block}
  .city-card .mt thead{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0)}
  .city-card .mt tbody{display:block}
  .city-card .mt tr{display:block;padding:16px;border-bottom:1px solid var(--line)}
  .city-card .mt tr:last-child{border-bottom:0}
  .city-card .mt th,.city-card .mt td{display:block;padding:0;border:0;text-align:left}
  .city-card .mt td.ad{margin-top:10px}
  .city-card .mt td + td{margin-top:10px}
  .mp{padding:6px 0;min-height:44px}
}

/* ------------------------------------------------------- малый телефон */
@media (max-width:400px){
  :root{--container:calc(100% - 32px)}
  .brand__s{display:none}
  .nav{padding-inline:16px}
  .answer{padding:22px 16px}
  .ans-chips li{padding:0 14px}
  .rt tbody tr{padding:14px}
  .rt tbody .c-pl{left:14px;top:14px}
  .rt .score-n{right:14px;font-size:28px}
  .rt tbody .c-co{padding-right:84px}
  .card{padding:20px 16px}
  .cta-bar{padding-inline:12px}
  .cta-bar .btn{padding:0 14px;font-size:14.5px}
  .stats dt{font-size:24px}
  .final{padding:26px 18px}
  .faq summary{font-size:17px}
}

/* ----------------------------------------------- без hover-эффектов на тач */
@media (hover:none){
  .top,.route-go i,.btn svg{transition:none}
}
@media (max-width:768px){.legend--inline .nd{white-space:nowrap;flex:none}}
@media (max-width:768px){.city-card .mt{table-layout:auto}.city-card .mt th,.city-card .mt td{width:auto !important}.ct th,.ct td{width:auto !important}}
@media (max-width:768px){.rt .co-a{min-width:44px}.m-tbl .co-a{display:inline-block;min-width:44px;padding:13px 0;margin:-13px 0}}

/* планшет: на широкой таблице главной скрываем второстепенные колонки (они есть в карточке центра) */
@media (min-width:769px) and (max-width:1100px){
  .rt--full [data-col=links],.rt--full [data-col=group],.rt--full [data-col=subjects]{display:none}
}
@media (max-width:1100px) and (min-width:769px){.cta .btn{padding:0 14px;font-size:15px}}
@media (max-width:768px){.lg-flags .mk{flex:none;width:36px}.lg-flags .mk .nd{white-space:nowrap}}

/* история обновлений, диалог «Сообщить об ошибке» */
@media (max-width:1100px){.m-hist{grid-template-columns:1fr}}
@media (max-width:768px){
  .hist{margin-left:4px}
  .hist li{grid-template-columns:1fr;gap:4px;padding:0 0 28px 22px}
  .hist p{font-size:16px}
  .m-hist > div{padding:22px 18px}
  .m-after .js-report{margin-left:0;width:100%}
  .kd-act .btn{width:100%}
  .dlg{width:100%;max-width:none;margin:auto 0 0;border-radius:20px 20px 0 0;max-height:92vh;max-height:92dvh}
  .dlg__in{padding:24px 18px calc(24px + env(safe-area-inset-bottom))}
  .dlg .form-act .btn,.dlg__ok .btn{width:100%}
  .mp-e{display:none}
  .city-card .mt td.mp-e + td{margin-top:0}
}

@media (max-width:768px){
  .answer-plain{padding:24px 20px;border-radius:20px}
  .ap-lead{font-size:19px;line-height:1.5}
  .ap-why{grid-template-columns:1fr;gap:16px;margin-top:22px;padding-top:20px}
  .ap-why p{font-size:16px}
}

@media (max-width:768px){
  .ans-intro{padding:24px 20px;border-radius:20px;margin-bottom:14px}
  .ans-intro__t{font-size:22px;line-height:1.3;margin-top:14px}
}

@media (max-width:768px){
  .ap-lead{margin-top:18px}
  .answer-plain .transp{margin-top:20px}
}


/* ===== WordPress: пропуск навигации, якорь шапки, админ-панель ===== */
#top-sentinel{position:absolute;top:0;height:1px;width:1px}
.skip-link{position:absolute;left:-9999px;top:8px;z-index:100;padding:15px 16px;border-radius:12px;background:#fff;color:var(--ink);font:600 15px/1 var(--f-text);text-decoration:none}
.skip-link:focus{left:16px}
.admin-bar .hdr{top:32px}
@media (max-width:782px){.admin-bar .hdr{top:46px}}
.entry-plain{padding-block:56px 96px}
.entry-plain h2{font-size:28px;margin-bottom:12px}
.entry-plain article{margin-bottom:36px}
