/* Manrope (SIL OFL 1.1, assets/fonts/OFL.txt), served from this site. */
@font-face{font-family:"Manrope";font-style:normal;font-weight:500 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:500 800;font-display:swap;src:url(fonts/manrope-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Manrope";font-style:normal;font-weight:500 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}
/* Layout: каждый раздел — сетка плиток разного размера (4 колонки на компьютере, 2 на планшете, 1 на телефоне). Цветные плитки несут главные факты, белые — подробности. Цвета из палитры приложения. */
:root{
  --bg:#EEF2F6; --tile:#FFFFFF; --ink:#10263B; --muted:#5F7384; --line:#DCE4EB;
  --navy:#10263B; --navy2:#1E4466; --on-navy:#FFFFFF;
  --green:#0E9F83; --green2:#0B6E5D; --on-green:#FFFFFF; --green-soft:#DDF3EE; --green-ink:#0B6E5D;
  --amber:#FFD28A; --on-amber:#4A2C00;
  --violet:#ECE5FA; --on-violet:#4B2E91;
  --sky:#DCEAF8; --on-sky:#123A63;
  --chip:#E7EEF3; --warn:#9A5B00; --warn-bg:#FFF0D4; --tbd:#B3261E; --frame:#0B1822;
  --f:"Manrope", "Segoe UI", Roboto, system-ui, sans-serif;
  --r:28px;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#0B141B; --tile:#16232E; --ink:#E6EEF4; --muted:#9FB1BF; --line:#263744;
  --navy:#1B3A57; --navy2:#10263B; --on-navy:#FFFFFF;
  --green:#14A98C; --green2:#0B6E5D; --green-soft:#173A35; --green-ink:#7FE3CF;
  --amber:#5E4212; --on-amber:#FFE2B0; --violet:#2C2342; --on-violet:#CDBBFF;
  --sky:#1A2D42; --on-sky:#BFD9F5; --chip:#22333F; --warn:#F5B85A; --warn-bg:#3A2A10; --tbd:#FF8A80; --frame:#04090D;
  color-scheme:dark;
}}
:root[data-theme="dark"]{
  --bg:#0B141B; --tile:#16232E; --ink:#E6EEF4; --muted:#9FB1BF; --line:#263744;
  --navy:#1B3A57; --navy2:#10263B; --on-navy:#FFFFFF;
  --green:#14A98C; --green2:#0B6E5D; --green-soft:#173A35; --green-ink:#7FE3CF;
  --amber:#5E4212; --on-amber:#FFE2B0; --violet:#2C2342; --on-violet:#CDBBFF;
  --sky:#1A2D42; --on-sky:#BFD9F5; --chip:#22333F; --warn:#F5B85A; --warn-bg:#3A2A10; --tbd:#FF8A80; --frame:#04090D;
  color-scheme:dark;
}
*{box-sizing:border-box}
body{background:var(--bg);color:var(--ink);font-family:var(--f);font-size:16.5px;line-height:1.5;font-weight:500;-webkit-font-smoothing:antialiased}
a{color:inherit}
:focus-visible{outline:3px solid var(--green);outline-offset:3px;border-radius:10px}
h1,h2,h3{margin:0;line-height:1.12;text-wrap:balance;font-weight:800;letter-spacing:-.02em}
h1{font-size:clamp(32px,4.4vw,54px)}
h2{font-size:clamp(26px,3vw,38px)}
h3{font-size:20px;letter-spacing:-.01em}
p{margin:0}
.wrap{max-width:1200px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.tbd{color:var(--tbd);border-bottom:1.5px dashed currentColor}

/* шапка */
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:10;background:color-mix(in srgb,var(--bg) 85%,transparent);backdrop-filter:blur(12px)}
.top .wrap{display:flex;align-items:center;gap:20px;padding-block:12px}
.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:18px;text-decoration:none}
.logo img{width:48px;height:48px;border-radius:13px;background:#fff;box-shadow:0 0 0 1px var(--line),0 4px 12px -6px rgba(16,38,59,.35);flex:none}
.nav{display:flex;gap:6px;margin-left:auto}
.nav a{text-decoration:none;padding:8px 14px;border-radius:999px;font-size:15px;color:var(--muted);font-weight:600}
.nav a:hover{background:var(--tile);color:var(--ink)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 22px;border-radius:16px;font-weight:700;font-size:16px;text-decoration:none;white-space:nowrap;border:0}
.btn-green{background:var(--green);color:var(--on-green)}
.btn-white{background:#FFFFFF;color:#10263B}
.btn-soft{background:var(--chip);color:var(--ink)}
.btn:hover{filter:brightness(1.07)}
.top .btn{padding:10px 18px;font-size:15px;border-radius:14px}
@media (max-width:960px){.nav{display:none}.top .btn{margin-left:auto}}

/* плитки */
.sec{padding-block:28px}
.sec-title{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:28px 4px 18px;flex-wrap:wrap}
.sec-title p{color:var(--muted);max-width:52ch}
.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:dense;gap:16px}
.t{background:var(--tile);border-radius:var(--r);padding:26px;display:flex;flex-direction:column;gap:12px;min-width:0;position:relative;overflow:hidden}
.t p{color:var(--muted)}
.w2{grid-column:span 2}.w3{grid-column:span 3}.w4{grid-column:span 4}.h2{grid-row:span 2}
.navy{background:linear-gradient(150deg,var(--navy2),var(--navy));color:var(--on-navy)}
.navy p{color:color-mix(in srgb,var(--on-navy) 78%,transparent)}
.green{background:linear-gradient(150deg,var(--green),var(--green2));color:var(--on-green)}
.green p{color:color-mix(in srgb,var(--on-green) 85%,transparent)}
.amber{background:var(--amber);color:var(--on-amber)}.amber p{color:var(--on-amber);opacity:.85}
.violet{background:var(--violet);color:var(--on-violet)}.violet p{color:var(--on-violet);opacity:.85}
.sky{background:var(--sky);color:var(--on-sky)}.sky p{color:var(--on-sky);opacity:.85}
.ic{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:var(--green-soft);color:var(--green-ink);flex:none}
.navy .ic,.green .ic{background:rgba(255,255,255,.16);color:#fff}
.amber .ic,.violet .ic,.sky .ic{background:rgba(255,255,255,.45);color:inherit}
.big{font-size:clamp(40px,4.6vw,60px);font-weight:800;line-height:.95;letter-spacing:-.04em}
.big small{font-size:20px;letter-spacing:-.01em;font-weight:700}
.push{margin-top:auto}
.label{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;opacity:.8}
@media (prefers-reduced-motion:no-preference){a.t,.t.hov{transition:transform .2s ease}a.t:hover,.t.hov:hover{transform:translateY(-3px)}}
@media (max-width:960px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.w3,.w4{grid-column:span 2}}
@media (max-width:600px){.grid{grid-template-columns:1fr}.w2,.w3,.w4{grid-column:span 1}.h2{grid-row:auto}.t{padding:22px}}

/* hero */
.hero-main{gap:20px;padding:36px}
.hero-main .cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.hero-main .lead{font-size:19px;max-width:44ch}
.phone-tile{align-items:center;justify-content:center;padding:28px 18px 0;background:linear-gradient(170deg,var(--green-soft),var(--tile))}

/* телефон (экран как в приложении) */
.phone{width:260px;max-width:100%;aspect-ratio:9/18.5;border-radius:38px 38px 0 0;background:var(--frame);padding:10px 10px 0}
/* экран телефона — это «снимок», поэтому цвета свои, не зависят от темы сайта */
.scr{--s-bg:#F2F5F8;--s-card:#FFFFFF;--s-ink:#10263B;--s-muted:#5F7384;--s-line:#D7E0E7;--s-mint:#DDF3EE;--s-mint-ink:#0B6E5D;--s-fit:#ECE5FA;--s-fit-ink:#6141A8;--s-warn:#FFF0D4;--s-warn-ink:#9A5B00;--s-btn:#10263B;--s-on-btn:#FFFFFF;--s-chip:#E7EEF3;
  height:100%;border-radius:29px 29px 0 0;background:var(--s-bg);color:var(--s-ink);overflow:hidden;display:flex;flex-direction:column;font-size:11.5px;line-height:1.35}
.scr.dark{--s-bg:#0F1A22;--s-card:#182631;--s-ink:#E6EEF4;--s-muted:#9FB1BF;--s-line:#2B3C49;--s-mint:#173A35;--s-mint-ink:#7FE3CF;--s-fit:#2C2342;--s-fit-ink:#C3AEFF;--s-warn:#3A2A10;--s-warn-ink:#F5B85A;--s-btn:#55D6BD;--s-on-btn:#062720;--s-chip:#22333F}
.scr.large{--s-bg:#EDF1F5;--s-ink:#0B1822;--s-muted:#4C5E6C;--s-line:#C9D3DC;--s-btn:#0E8F76;font-size:14px}
.sbar{display:flex;justify-content:space-between;padding:10px 18px 4px;font-size:10.5px;font-weight:700}
.shead{padding:4px 12px 8px;display:grid}
.shead b{font-size:17px;font-weight:800}
.shead span{color:var(--s-muted);font-size:11px}
.chips{display:flex;gap:5px;padding:0 10px 6px;flex-wrap:wrap}
.chip{border-radius:999px;padding:4px 8px;font-size:10.5px;font-weight:700;background:var(--s-chip)}
.c-mint{background:var(--s-mint);color:var(--s-mint-ink)}.c-fit{background:var(--s-fit);color:var(--s-fit-ink)}.c-warn{background:var(--s-warn);color:var(--s-warn-ink)}
.sbody{padding:0 9px;display:grid;gap:6px}
.card{background:var(--s-card);border-radius:13px;padding:8px 10px;display:grid;gap:2px;border:1px solid var(--s-line)}
.card .r{display:flex;justify-content:space-between;gap:6px;align-items:center}
.card .n{color:var(--s-muted);font-size:10px}
.card .tt{font-weight:700;font-size:12px}
.card .m{color:var(--s-muted);font-size:10.5px}
.card .amt{font-weight:800;font-variant-numeric:tabular-nums}
.scr.large .card{padding:12px 13px;gap:4px;border-width:1.5px}
.scr.large .card .tt{font-size:15.5px}.scr.large .card .m,.scr.large .card .n{font-size:13px}
.scr.large .shead b{font-size:22px}.scr.large .chip{font-size:13px;padding:6px 11px}
.sbtn{background:var(--s-btn);color:var(--s-on-btn);border-radius:13px;padding:9px 12px;font-weight:800;text-align:center;font-size:12px}
.sbtn.alt{background:var(--s-chip);color:var(--s-ink)}
.stf{background:var(--s-card);border:1px solid var(--s-line);border-radius:13px;padding:9px 7px;display:grid;gap:4px}
.stf div{display:grid;grid-template-columns:repeat(8,1fr) 3px repeat(8,1fr);gap:2px}
.stf s{text-decoration:none;font-size:8px;font-weight:700;text-align:center;padding:5px 0;border-radius:5px;background:var(--s-chip);color:var(--s-muted)}
.stf s.on{background:var(--s-mint);color:var(--s-mint-ink);box-shadow:inset 0 0 0 1.2px var(--s-mint-ink)}
.stf s.br{background:#FFD28A;color:#4A2C00;box-shadow:inset 0 -2px 0 #C26A00}
.stf i{display:block}
.scal{background:var(--s-card);border:1px solid var(--s-line);border-radius:13px;padding:8px;display:grid;grid-template-columns:repeat(7,1fr);gap:2px;text-align:center;font-size:10px;font-weight:700}
.scal span{padding:5px 0 7px;border-radius:7px;position:relative}
.scal .h{color:var(--s-muted);font-size:9px;padding:0 0 3px}
.scal .d::after{content:"";position:absolute;left:50%;bottom:2px;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:var(--s-mint-ink)}
.scal .f::after{background:var(--s-fit-ink)}
.scal .today{background:var(--s-btn);color:var(--s-on-btn)}.scal .today::after{background:var(--s-on-btn)}
.sfin{display:grid;grid-template-columns:1fr 1fr;gap:5px}
.sfin div{background:var(--s-card);border:1px solid var(--s-line);border-radius:11px;padding:7px 9px;display:grid}
.sfin span{color:var(--s-muted);font-size:10px}.sfin b{font-size:13px;font-variant-numeric:tabular-nums}
.sfin .wide{grid-column:1/-1;background:var(--s-mint);border-color:transparent}.sfin .wide b{color:var(--s-mint-ink);font-size:16px}
.sfin .w b{color:var(--s-warn-ink)}
.ssw{display:flex;justify-content:space-between;align-items:center;gap:8px}
.stog{width:30px;height:18px;border-radius:999px;background:var(--s-btn);position:relative;flex:none}
.stog::after{content:"";position:absolute;right:2px;top:2px;width:14px;height:14px;border-radius:50%;background:var(--s-on-btn)}
.sok{background:var(--s-mint);color:var(--s-mint-ink);border-radius:12px;padding:8px 10px;font-weight:800;font-size:11px}
.snav{margin-top:auto;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--s-line);background:var(--s-card);padding:7px 4px 10px;font-size:9px;color:var(--s-muted);text-align:center}
.snav i{display:block;width:28px;height:15px;margin:0 auto 2px;border-radius:999px}
.snav i::after{content:"";display:block;width:11px;height:11px;margin:2px auto 0;border-radius:3px;border:1.6px solid currentColor}
.snav .a{color:var(--s-ink);font-weight:800}.snav .a i{background:var(--s-mint)}

/* галерея экранов */
.shots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.shot{border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;gap:14px;padding:22px 18px 0;align-items:center;min-width:0}
.shot .cap{align-self:stretch;display:grid;gap:2px;padding:0 6px}
.shot .cap b{font-weight:800;font-size:17px}
.shot .cap span{font-size:14.5px;opacity:.8}
.shot .phone{width:230px;aspect-ratio:9/15.5;margin-top:auto}
.shot.wide{grid-column:span 2;flex-direction:row;align-items:end;gap:20px;padding:24px 24px 0}
.shot.wide .cap{align-self:start;padding:0}
@media (max-width:960px){.shots{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* на телефоне экраны идут сеткой в две колонки, без горизонтальной ленты: лента внутри страницы в части браузеров (Яндекс) перехватывала прокрутку вниз */
@media (max-width:600px){.shots{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.shot{padding:16px 8px 0;gap:10px;border-radius:22px}.shot .cap{padding:0 4px}.shot .cap b{font-size:15px}.shot .cap span{font-size:13px}.shot .phone{zoom:.64}.shot.wide{grid-column:span 2;flex-direction:column;align-items:center;padding:18px 12px 0}.shot.wide .cap{align-self:stretch}}

.duo{display:flex;gap:14px;align-items:end;margin-left:auto}
.duo .phone{width:230px}
@media (max-width:960px){.duo{zoom:.75}}
@media (max-width:600px){.duo{zoom:.64;margin-left:0}.duo .phone{zoom:1}}
.pin{display:grid;justify-items:center;gap:12px;padding:28px 14px 0}
.pin b{font-size:16px}
.pin .dots{display:flex;gap:10px}
.pin .dots i{width:12px;height:12px;border-radius:50%;border:1.6px solid var(--s-ink)}
.pin .dots i.on{background:var(--s-ink)}
.pin .keys{display:grid;grid-template-columns:repeat(3,46px);gap:9px;margin-top:8px;font-size:17px;font-weight:800;text-align:center}
.pin .keys span{background:var(--s-card);border:1px solid var(--s-line);border-radius:14px;padding:10px 0}
/* оплата */
.payform{gap:16px}
.fld{display:grid;gap:6px;font-weight:700;font-size:14px}
.fld input{font:inherit;font-size:17px;font-weight:600;padding:14px 16px;border-radius:14px;border:1.5px solid var(--line);background:var(--bg);color:var(--ink);width:100%}
.fld input:focus{outline:none;border-color:var(--green)}
.seg{border:0;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.seg legend{font-weight:700;font-size:14px;margin-bottom:6px;padding:0}
.seg label{position:relative}
.seg input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.seg span small{display:block;font-size:12.5px;font-weight:600;opacity:.75;margin-top:2px}
.plan{text-decoration:none}
.plan .save{color:var(--green-ink)}
.seg span{display:block;text-align:center;padding:12px 6px;border-radius:14px;background:var(--bg);border:1.5px solid var(--line);font-weight:700;font-size:15px}
.seg input:checked+span{background:var(--green-soft);border-color:var(--green);color:var(--green-ink)}
.seg input:focus-visible+span{outline:3px solid var(--green);outline-offset:2px}
@media (max-width:600px){.seg{grid-template-columns:repeat(2,minmax(0,1fr))}}
.sum{display:flex;justify-content:space-between;align-items:baseline;padding:14px 16px;border-radius:16px;background:var(--chip)}
.sum b{font-size:26px;font-weight:800;font-variant-numeric:tabular-nums}
.agree{display:grid;grid-template-columns:22px 1fr;gap:10px;font-size:14.5px;color:var(--muted);align-items:start}
.agree input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--green)}
.payform .btn{align-self:start}
.formmsg{font-size:15px;padding:12px 14px;border-radius:14px;background:var(--green-soft);color:var(--green-ink)}
.formmsg.err{background:var(--warn-bg);color:var(--warn)}
.paysteps{margin:0;padding-left:20px;display:grid;gap:10px;color:color-mix(in srgb,var(--on-navy) 85%,transparent)}
/* путь наряда */
.flow{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:6px;counter-reset:f}
.flow div{background:rgba(255,255,255,.12);border-radius:18px;padding:16px;display:grid;gap:6px;align-content:start}
.flow b{font-size:16px}
.flow small{font-size:13.5px;opacity:.8;line-height:1.4}
.flow .tag{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;opacity:.7}
@media (max-width:960px){.flow{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.flow{grid-template-columns:1fr}}

/* сравнение */
.cmp-wrap{overflow-x:auto}
.cmp{width:100%;border-collapse:separate;border-spacing:0;min-width:560px;font-size:15.5px}
.cmp th,.cmp td{padding:13px 14px;text-align:center;border-bottom:1px solid var(--line)}
.cmp th:first-child,.cmp td:first-child{text-align:left}
.cmp thead th{font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:800}
.cmp thead th.me{color:var(--green-ink)}
.cmp td.me{background:var(--green-soft);color:var(--green-ink);font-weight:800}
.cmp tr:last-child td{border-bottom:0}
.cmp .no{color:var(--muted)}

/* пример расчёта */
.calc{display:grid;gap:0;margin-top:4px;font-variant-numeric:tabular-nums}
.calc div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:9px 0;border-bottom:1px dashed currentColor;border-color:color-mix(in srgb,currentColor 25%,transparent)}
.calc div:last-child{border-bottom:0;font-weight:800;font-size:18px}
.calc small{opacity:.75}

/* мини-виджеты в плитках */
.mini-tf{display:grid;gap:4px;margin-top:6px}
.mini-tf div{display:grid;grid-template-columns:repeat(8,minmax(0,1fr)) 6px repeat(8,minmax(0,1fr));gap:3px}
.mini-tf s{text-decoration:none;font-size:10.5px;font-weight:700;text-align:center;padding:7px 0;border-radius:8px;background:var(--chip);color:var(--muted)}
.mini-tf s.on{background:var(--green);color:#fff}
.mini-tf s.br{background:#FFD28A;color:#4A2C00;box-shadow:inset 0 -3px 0 #C26A00}
.mini-tf i{display:block}
.mini-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center;font-size:12px;font-weight:700;margin-top:4px}
.mini-cal span{padding:6px 0 9px;border-radius:9px;position:relative;font-variant-numeric:tabular-nums}
.mini-cal .h{font-size:10.5px;opacity:.7;padding:0}
.mini-cal .d::after{content:"";position:absolute;left:50%;bottom:3px;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:currentColor;opacity:.7}
.mini-cal .today{background:var(--on-violet);color:var(--violet)}
.rows{display:grid;gap:8px;margin-top:4px}
.rows div{display:flex;justify-content:space-between;gap:10px;padding:10px 14px;border-radius:14px;background:rgba(255,255,255,.14);font-variant-numeric:tabular-nums}
.rows b{font-weight:800}

/* шаги, тарифы */
.step-n{width:44px;height:44px;border-radius:14px;background:var(--green-soft);color:var(--green-ink);display:grid;place-items:center;font-weight:800;font-size:20px}
.price{font-size:48px;font-weight:800;letter-spacing:-.03em;line-height:1}
.price small{font-size:17px;font-weight:600;opacity:.8;letter-spacing:0}
.list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.list li{display:grid;grid-template-columns:22px 1fr;gap:8px}
.list li::before{content:"";width:18px;height:18px;border-radius:6px;margin-top:2px;background:currentColor;opacity:.22}

/* вопросы */
details.t{gap:0;cursor:pointer}
details.t summary{list-style:none;font-weight:800;font-size:18px;display:flex;justify-content:space-between;gap:12px;align-items:start}
details.t summary::-webkit-details-marker{display:none}
details.t summary::after{content:"+";flex:none;width:30px;height:30px;border-radius:10px;background:var(--chip);display:grid;place-items:center;font-size:20px;line-height:1}
details.t[open] summary::after{content:"−"}
details.t p{margin-top:12px}

.foot{padding-block:36px 40px}
.foot .grid{align-items:stretch}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:6px;color:var(--muted)}
.foot a{text-decoration:none}.foot a:hover{color:var(--ink)}
.foot .legal{margin:18px 4px 0;font-size:14px;color:var(--muted)}

/* классы вместо встроенных стилей (CSP без 'unsafe-inline') */
html{scroll-padding-top:76px}
body{margin:0}
.start{align-self:start}
.accent{color:var(--green-ink)}
.save-light{color:#7FE3CF}
.shot{margin:0}
.shot.plain{background:var(--tile)}
.card.late{border-color:var(--s-warn-ink)}
.green .step-n{background:rgba(255,255,255,.18);color:#fff}
.sky .step-n{background:rgba(255,255,255,.45);color:inherit}
.skip{position:absolute;left:-9999px}
.skip:focus{left:16px;top:16px;z-index:20;background:var(--tile);padding:10px 14px;border-radius:12px}
.fld .hint{font-weight:500;font-size:13.5px;color:var(--muted)}
.apk-meta{font-size:13.5px;margin-top:-4px}
.btn[disabled]{opacity:.6;cursor:progress}
.foot a[href^="mailto"]{text-decoration:underline}

/* простые страницы: документы и возврат из банка */
.page{padding-block:24px 40px}
.page .t{max-width:820px;margin:0 auto;padding:clamp(22px,4vw,44px)}
.doc{line-height:1.6}
.doc h1{font-size:clamp(26px,3.4vw,36px);margin-bottom:6px}
.doc h2{font-size:21px;margin-top:22px}
.doc h3{font-size:17px;margin-top:14px}
.doc p,.doc li{color:var(--ink)}
.doc .t p{color:var(--ink)}
.doc ul,.doc ol{margin:0;padding-left:22px;display:grid;gap:4px}
.doc a{color:var(--green-ink)}
.doc .table{overflow-x:auto}
.doc table{width:100%;border-collapse:collapse;font-size:15px;min-width:520px}
.doc th,.doc td{text-align:left;vertical-align:top;padding:9px 10px;border-bottom:1px solid var(--line)}
.doc th{font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.doc .meta{color:var(--muted);font-size:14.5px}
.return{text-align:center;justify-items:center;display:grid;gap:14px}
.return .ic{width:64px;height:64px;border-radius:20px}
.return p{max-width:52ch}
.return .cta{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:6px}

/* переключатель темы */
.theme-btn{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;border:0;background:var(--tile);color:var(--ink);cursor:pointer;flex:none;box-shadow:0 0 0 1px var(--line)}
.theme-btn:hover{color:var(--green-ink)}
.theme-btn[aria-pressed="true"] .i-moon,.theme-btn:not([aria-pressed="true"]) .i-sun{display:none}
@media (max-width:960px){.theme-btn{margin-left:auto}.top .theme-btn+.btn{margin-left:0}}

/* мобильное меню: на узком экране разделы открываются кнопкой справа */
.menu-btn{display:none;place-items:center;width:44px;height:44px;border-radius:14px;border:0;background:var(--tile);color:var(--ink);cursor:pointer;flex:none;box-shadow:0 0 0 1px var(--line);padding:0}
.menu-btn svg path{transition:transform .25s ease,opacity .2s ease;transform-origin:12px 12px}
.top.open .menu-btn .m1{transform:translateY(5px) rotate(45deg)}
.top.open .menu-btn .m2{opacity:0}
.top.open .menu-btn .m3{transform:translateY(-5px) rotate(-45deg)}
.nav .nav-dl{display:none}
.nav a[aria-current="true"]{background:var(--tile);color:var(--ink)}
@media (max-width:960px){
  .top .wrap{position:relative;gap:10px}
  .menu-btn{display:grid}
  .top .nav{display:flex;flex-direction:column;gap:2px;position:absolute;top:calc(100% + 4px);left:max(16px,env(safe-area-inset-left,0px));right:max(16px,env(safe-area-inset-right,0px));margin:0;padding:8px;
    background:var(--tile);border-radius:20px;box-shadow:0 0 0 1px var(--line),0 18px 40px -18px rgba(11,24,34,.45);
    opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .2s ease,transform .2s ease,visibility 0s linear .2s}
  .top.open .nav{opacity:1;visibility:visible;transform:none;transition:opacity .2s ease,transform .2s ease}
  .top .nav a{padding:13px 16px;font-size:17px;color:var(--ink);border-radius:14px}
  .top .nav a:hover,.top .nav a[aria-current="true"]{background:var(--bg)}
  .nav .nav-dl{display:block;margin-top:4px;background:var(--green);color:var(--on-green);text-align:center}
  .top .nav .nav-dl,.top .nav .nav-dl:hover{background:var(--green);color:var(--on-green)}
  .top .nav .nav-dl:hover{filter:brightness(1.07)}
}
@media (max-width:420px){.top .wrap>.btn{display:none}.logo{font-size:16px}}

/* анимации: плавная прокрутка к разделу, появление плиток, переход между страницами */
@media (prefers-reduced-motion:no-preference){
  html{scroll-behavior:smooth}
  .rv{opacity:0;transform:translateY(18px)}
  .rv.in{opacity:1;transform:none;transition:opacity .5s ease,transform .5s ease}
  @view-transition{navigation:auto}
}

/* страница оплаты */
.pay-page .sec-title{margin-top:12px}
.pay-page h1{font-size:clamp(28px,3.4vw,42px)}
.pay-info .btn{align-self:start}
/* логотипы платёжных сервисов: на белой плашке, чтобы читались и в тёмной теме */
.pay-logos{display:flex;flex-wrap:wrap;gap:10px}
.logo-badge{display:inline-flex;align-items:center;justify-content:center;height:76px;background:#FFFFFF;border-radius:16px;padding:6px 16px;box-shadow:0 0 0 1px rgba(16,38,59,.08)}
.logo-badge img{display:block;height:44px;width:auto}
.logo-badge .logo-tall{height:64px}
