/* Лендинг Karma (KB-138 + макет L01/L02, «Затмение»). Без JS, без внешних шрифтов и скриптов. */
@font-face{font-family:Manrope;font-weight:400 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-weight:400 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+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Unbounded;font-weight:400 600;font-display:swap;src:url(/fonts/unbounded-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Unbounded;font-weight:400 600;font-display:swap;src:url(/fonts/unbounded-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --bg:#0b0c0f;--card:#15171c;--chip:#20232a;--text:#f2f3f5;--muted:#8f94a0;--line:#ffffff12;
  --accent:#7ee3f2;--primary-bg:#f2f3f5;--primary-text:#0b0c0f;--ring:#d6d9df;--gold:#f2c86b;--gold-text:#f2c86b;
  --glow:#f2c86b55;--glow-sm:0 0 10px #f2c86b55;
  --plan-hover:#1a1d23;--plan-glow:0 10px 28px #f2c86b22;
  --hv:#f2c86b;--hv-press:#e0b45a;--hv-soft:#f2c86b55;--hv-glow:#f2c86b33;--card-hover:#1a1d23;--chip-hover:#262a32;--focus:#7ee3f2;--on-hv:#0b0c0f;
}
@media (prefers-color-scheme:light){:root{
  --bg:#f2f3f5;--card:#ffffff;--chip:#e6e8ec;--text:#0f1115;--muted:#5d6370;--line:#0f111514;
  --accent:#0a6676;--primary-bg:#0f1115;--primary-text:#f2f3f5;--ring:#0f1115;--gold:#e0ad3a;--gold-text:#7d5504;
  --glow:#e0ad3a66;--glow-sm:0 0 8px #e0ad3a66;
  --plan-hover:#fbf6e8;--plan-glow:0 10px 28px #e0ad3a33;
  --hv:#9a6a06;--hv-press:#7d5605;--hv-soft:#9a6a0666;--hv-glow:#9a6a0633;--card-hover:#fffbf2;--chip-hover:#dfe2e7;--focus:#0a6676;--on-hv:#ffffff;
}}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--bg);color:var(--text);font:400 15px/22px Manrope,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}
h1,h2,p,ul,ol{margin:0;padding:0}
ul,ol{list-style:none}
.muted{color:var(--muted)}.small{font-size:13px;line-height:18px}

/* шапка и подвал */
.top{border-bottom:1px solid var(--line)}
.bar{width:100%;max-width:1120px;margin:0 auto;padding:0 16px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.top .bar{height:64px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.mark{position:relative;width:26px;height:26px;flex:none}
.mark i{position:absolute;inset:0;border-radius:99px;border:1.5px solid var(--ring);background:var(--bg);box-shadow:var(--glow-sm)}
.mark b{position:absolute;right:-1px;top:-1px;width:7px;height:7px;border-radius:99px;background:var(--gold)}
.word{font:500 16px/24px Unbounded,system-ui,sans-serif;letter-spacing:.28em}
.small-brand .mark{width:22px;height:22px}.small-brand .word{font-size:14px}

/* кнопки */
.btn{display:inline-flex;align-items:center;justify-content:center;height:44px;padding:0 18px;border-radius:14px;background:var(--primary-bg);color:var(--primary-text);font-weight:600;text-decoration:none;white-space:nowrap}
.btn.big{height:52px;padding:0 24px}
.btn.alt{background:var(--chip);color:var(--text)}
/* наведение, фокус, нажатие (L04): золото = под курсором, голубое кольцо 3px = фокус с клавиатуры */
.btn{transition:background-color .15s ease,color .15s ease,box-shadow .15s ease,transform .1s ease}
.more,.foot nav a{transition:color .15s ease}
summary{transition:color .15s ease}summary svg{transition:color .15s ease}
.cards .card{transition:border-color .2s ease,background-color .2s ease}.cards .card .num{transition:border-color .2s ease,color .2s ease}
@media (hover:hover){
  .btn:not(.alt):hover{background:var(--hv);color:var(--on-hv);box-shadow:0 8px 24px var(--hv-glow)}
  .btn.alt:hover{background:var(--chip-hover);color:var(--hv);box-shadow:inset 0 0 0 1px var(--hv)}
  .more:hover,.foot nav a:hover{color:var(--hv);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
  summary:hover,summary:hover svg{color:var(--hv)}
  .cards .card:hover{border-color:var(--hv-soft);background:var(--card-hover)}
  .cards .card:hover .num{border-color:var(--hv);color:var(--hv)}
}
.btn:not(.alt):focus-visible{background:var(--hv);color:var(--on-hv)}
.btn.alt:focus-visible{color:var(--hv);box-shadow:inset 0 0 0 1px var(--hv)}
.btn:focus-visible,.more:focus-visible,.foot nav a:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.more:focus-visible,.foot nav a:focus-visible,summary:focus-visible{outline-offset:4px;border-radius:6px}
.btn:not(.alt):active{background:var(--hv-press);color:var(--on-hv);transform:scale(.98)}
.btn.alt:active{transform:scale(.98)}
.more:active,.foot nav a:active{color:var(--hv-press)}
@media (prefers-reduced-motion:reduce){.btn,.more,.foot nav a,summary,summary svg,.cards .card,.cards .card .num{transition:none}.btn:active{transform:none}}

/* секции */
.sec{width:100%;max-width:1120px;margin:0 auto;padding:40px 16px;display:flex;flex-direction:column;gap:20px}
h1{font:500 32px/40px Unbounded,system-ui,sans-serif;letter-spacing:-.01em}
h2{font:500 22px/28px Unbounded,system-ui,sans-serif;letter-spacing:-.01em}
.d{color:var(--muted)}
.head{display:flex;flex-direction:column;gap:8px}
.t{font-size:17px;line-height:24px;font-weight:700}
.card{border-radius:18px;background:var(--card);border:1px solid var(--line);padding:20px;display:flex;flex-direction:column;gap:10px}
.card.tight{gap:6px}
.card .d{font-size:15px;line-height:22px}
.cards{display:flex;flex-direction:column;gap:12px}
.num{width:30px;height:30px;border-radius:99px;border:1.5px solid var(--ring);display:flex;align-items:center;justify-content:center;font:500 13px Unbounded,system-ui,sans-serif;flex:none}
.num.gold{border-color:var(--gold);color:var(--gold-text)}

/* главный экран */
.hero{padding-top:32px;flex-direction:column-reverse;gap:20px}
.hero-text{display:flex;flex-direction:column;gap:20px;align-items:flex-start}
.lead{font-size:15px;line-height:22px;color:var(--muted);max-width:520px}
.cta{display:flex;flex-direction:column;gap:10px;align-items:stretch;width:100%}
.cta .btn{width:100%}
.more{font-weight:600;color:var(--accent);text-decoration:none;line-height:20px}
.hero-orb{display:flex;justify-content:center;padding:28px 0 12px}
.orb{position:relative;flex:none}
.orb i{position:absolute;inset:0;border-radius:50%;border:2px solid var(--ring);background:var(--bg)}
.orb b{position:absolute;border-radius:50%;background:var(--gold)}
.orb:before{content:"";position:absolute;border-radius:50%;background:radial-gradient(circle,var(--glow) 0%,transparent 62%)}
.orb.xl{width:150px;height:150px}.orb.xl:before{inset:-25px}.orb.xl b{right:18px;top:18px;width:10px;height:10px}
.orb.sm{width:72px;height:72px}.orb.sm:before{inset:-12px}.orb.sm b{right:9px;top:9px;width:5px;height:5px}

/* тарифы */
.plan{position:relative;border:1px solid var(--line);border-radius:18px;background:var(--card);padding:20px;display:flex;flex-direction:column;gap:8px;height:100%;color:inherit;text-decoration:none;cursor:pointer}
@media (prefers-reduced-motion:no-preference){.plan{transition:border-color .15s,box-shadow .15s,background-color .15s,transform .1s}}
.plan:hover,.plan:focus-visible,.plan:active{border-color:var(--gold);background:var(--plan-hover);box-shadow:var(--plan-glow),inset 0 0 0 1px var(--gold)}
.plan:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:18px}
.plan:active{transform:scale(.98)}
.plan .buy{margin-top:auto;display:flex;align-items:center;justify-content:space-between;height:24px;box-sizing:content-box;padding-top:12px;border-top:1px solid var(--line);font-weight:600;line-height:20px}
.plan .buy svg{flex:none}
.plan:hover .buy,.plan:focus-visible .buy,.plan:active .buy{color:var(--gold-text)}
.plan.pop{border:2px solid var(--primary-bg);padding:19px}
.plan .slot,.plan .tag{height:24px;align-self:flex-start}
.plan .slot{display:none}
.tag{padding:4px 10px;border-radius:99px;background:var(--primary-bg);color:var(--primary-text);font-size:12px;line-height:16px;font-weight:600;height:auto!important}
.price{font:600 28px/34px Unbounded,system-ui,sans-serif}
.per{display:flex;gap:8px;align-items:center;min-height:20px}
.off{font-size:12px;line-height:16px;font-weight:600;padding:2px 8px;border-radius:99px;background:var(--chip)}
.notes{display:flex;flex-direction:column;gap:6px;line-height:19px}
.notes .gift{display:flex;align-items:center;gap:8px;color:var(--text)}
.notes a{color:inherit;text-underline-offset:3px}
.notes a:hover{color:var(--hv)}
.notes .gift svg{flex:none;color:var(--gold-text)}

/* документы: оферта, политика, контакты */
.doc{max-width:760px;gap:12px}
/* «конфиденциальности» одним словом: 28px на телефоне шире экрана, страница уезжала вбок */
.doc h1{font-size:22px;line-height:30px;margin-bottom:4px;overflow-wrap:anywhere}
.doc h2{font-size:18px;line-height:26px;margin-top:20px}
.doc p,.doc li{line-height:25px}
.doc .bul{list-style:disc;padding-left:22px;display:flex;flex-direction:column;gap:6px}
.doc a{color:var(--accent);text-underline-offset:3px}
.doc a:hover{color:var(--hv)}

/* копилка и связь */
.panel{border-radius:18px;background:var(--card);border:1px solid var(--line);padding:20px;display:flex;flex-direction:column;gap:20px}
.panel .col{display:flex;flex-direction:column;gap:16px;flex:1 1 0;min-width:0}
.panel p.d{line-height:23px}
.eyebrow{font-size:13px;line-height:18px;font-weight:600;letter-spacing:.04em;color:var(--gold-text)}
.gsteps{display:flex;flex-direction:column;gap:10px}
.gsteps li{display:flex;gap:14px;align-items:center;padding:14px 16px;border-radius:14px;background:var(--chip)}
.gt{display:flex;flex-direction:column;gap:2px}
.t2{font-weight:700;line-height:20px}
.btnrow{display:flex;flex-direction:column;gap:10px}
.contact .col{gap:12px;max-width:560px}
.contact .d{line-height:22px}

/* вопросы */
.faq{border-top:1px solid var(--line)}
details{padding:16px 0;border-bottom:1px solid var(--line)}
summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:28px;cursor:pointer;font-size:16px;line-height:22px;font-weight:700}
summary::-webkit-details-marker{display:none}
summary svg{flex:none;color:var(--muted)}
details[open] summary svg{transform:rotate(180deg)}
details p{margin-top:10px;color:var(--muted);line-height:23px;max-width:760px}

/* финал и подвал */
.final{align-items:center;text-align:center;padding-top:40px;padding-bottom:48px}
.final .orb{margin-bottom:12px}
h2.xl{font-size:24px;line-height:32px}
.lead2{color:var(--muted);line-height:24px}
.final .btn{width:100%}
.foot{border-top:1px solid var(--line)}
.foot .bar{padding-top:28px;padding-bottom:36px;flex-direction:column;align-items:flex-start;gap:20px}
.fbrand{display:flex;flex-direction:column;gap:6px}
.foot nav{display:flex;gap:20px;flex-wrap:wrap}
.foot nav a{font-weight:600;color:var(--accent);text-decoration:none}
.copy{font-size:12px;line-height:16px;color:var(--muted)}

/* компьютер */
@media (min-width:860px){
  .bar{padding:0 32px}
  .sec{padding:72px 32px;gap:32px}
  h1{font-size:52px;line-height:60px}
  h2{font-size:28px;line-height:36px}
  h2.xl{font-size:36px;line-height:44px}
  .doc h1{font-size:28px;line-height:36px}
  .hero{flex-direction:row;align-items:center;justify-content:space-between;gap:64px;padding-top:96px;padding-bottom:96px}
  .lead{font-size:18px;line-height:28px}
  .cta{align-items:flex-start;width:auto}.cta .btn{width:auto}
  .hero-orb{padding:0}
  .orb.xl{width:300px;height:300px}.orb.xl:before{inset:-50px}.orb.xl b{right:36px;top:36px;width:21px;height:21px}
  .cards{flex-direction:row;gap:16px}
  .cards>li{flex:1 1 0}
  .plan .slot{display:block}
  .panel{padding:36px;gap:48px;flex-direction:row;align-items:center}
  .contact{gap:40px;justify-content:space-between}
  .btnrow{flex-direction:row;flex-wrap:wrap}
  .contact .btnrow{flex-wrap:nowrap}
  .final{padding-top:80px;padding-bottom:96px}
  .final .btn{width:auto}
  .final .orb.sm{width:88px;height:88px}.final .orb.sm:before{inset:-14px}.final .orb.sm b{right:11px;top:11px;width:6px;height:6px}
  .foot .bar{flex-direction:row;align-items:center;justify-content:space-between;padding-top:28px}
}

/* переключатель языка и плашка (KB-158) */
.lang{display:flex;align-items:center;gap:6px;margin-left:auto;font-size:14px;font-weight:600;color:var(--muted)}
.lang a{display:inline-flex;align-items:center;min-height:44px;padding:0 4px;color:var(--muted);text-decoration:none}
.lang a[aria-current="page"]{color:var(--text)}
.lang a:focus-visible,.langbar a:focus-visible,.langbar button:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
@media (hover:hover){.lang a:hover,.langbar a:hover{color:var(--hv)}}
.langbar{display:flex;align-items:center;justify-content:center;gap:8px;padding:6px 16px;background:var(--chip);font-size:14px}
.langbar[hidden]{display:none}
.langbar a{color:var(--text);text-decoration:none;font-weight:600}
.langbar button{width:44px;height:44px;border:0;background:none;color:var(--muted);font:inherit;font-size:20px;cursor:pointer}
@media (max-width:420px){
  .top .bar{gap:8px}
  .top .word{letter-spacing:.14em}
  .top .btn.nav{padding:0 12px;font-size:14px}
  .lang{gap:2px}
}
