/* =========================================================
   FIRE по-русски — дизайн-система
   Тёмная тема по умолчанию (бренд), светлая — по переключателю.
   ========================================================= */
:root{
  --bg:#06080F;--bg2:#0A0F1C;--surface:#0E1424;--surface2:#141C31;--surface3:#1A2440;
  --line:rgba(148,163,209,.12);--line2:rgba(148,163,209,.22);
  --tx:#EEF2FF;--tx2:#AEB8D3;--mut:#6F7A99;
  --acc:#B6FF5C;--acc-ink:#0B1500;--teal:#2EE6D6;--violet:#8B5CF6;--pink:#FF5C9A;--amber:#FFB547;--red:#FF6B7A;--ok:#5CE38A;
  --grad:linear-gradient(100deg,#B6FF5C 0%,#2EE6D6 52%,#8B5CF6 100%);
  --glow1:rgba(139,92,246,.35);--glow2:rgba(46,230,214,.22);--glow3:rgba(182,255,92,.16);
  --s1:#3987e5;--s2:#d95926;--s7:#9085e9;--grid:#1d2640;--axis:#2b3656;
  --shadow:0 1px 0 rgba(255,255,255,.04) inset,0 20px 50px -20px rgba(0,0,0,.6);
  --r:20px;--r-sm:12px;
  --f-d:"Unbounded",system-ui,sans-serif;--f-b:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;
  color-scheme:dark;
}
[data-theme="light"]{
  --bg:#F5F7FC;--bg2:#ECF0F8;--surface:#FFFFFF;--surface2:#F3F6FB;--surface3:#E9EEF7;
  --line:rgba(15,23,42,.08);--line2:rgba(15,23,42,.16);
  --tx:#0A0F1C;--tx2:#46506A;--mut:#7A839C;
  --acc:#2F8F00;--acc-ink:#0B1500;--teal:#0E9F94;--violet:#6D3FE0;--pink:#D9306F;--amber:#B26B00;--red:#D23B4B;--ok:#178A3E;
  --glow1:rgba(139,92,246,.16);--glow2:rgba(46,230,214,.14);--glow3:rgba(182,255,92,.22);
  --s1:#2a78d6;--s2:#eb6834;--s7:#4a3aa7;--grid:#e1e4ec;--axis:#c3c8d6;
  --shadow:0 1px 2px rgba(15,23,42,.04),0 18px 40px -22px rgba(15,23,42,.25);
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{margin:0;background:var(--bg);color:var(--tx);font:16px/1.6 var(--f-b);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--f-d);letter-spacing:-.02em;line-height:1.12;margin:0}
.wrap{max-width:1200px;margin:0 auto;padding:0 20px}
.mut{color:var(--mut)}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;z-index:99;background:var(--acc);color:var(--acc-ink);padding:8px 12px;border-radius:8px}
:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-radius:6px}
.grad-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}

/* ---------- кнопки, чипы ---------- */
.btn{display:inline-flex;align-items:center;gap:8px;justify-content:center;background:var(--acc);color:var(--acc-ink);font:700 15px/1 var(--f-b);padding:15px 22px;border-radius:14px;border:0;cursor:pointer;text-decoration:none;transition:transform .15s,box-shadow .2s,filter .2s;box-shadow:0 10px 30px -10px rgba(182,255,92,.55)}
[data-theme="light"] .btn{background:#B6FF5C}
.btn:hover{transform:translateY(-1px);filter:brightness(1.05)}
.btn.sm{padding:10px 14px;font-size:14px;border-radius:11px;box-shadow:none}
.btn.ghost{background:transparent;color:var(--tx);border:1px solid var(--line2);box-shadow:none}
.btn.ghost:hover{background:var(--surface2)}
.btn.dark{background:var(--tx);color:var(--bg);box-shadow:none}
.icon-btn{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--tx);cursor:pointer}
.chip{display:inline-flex;align-items:center;gap:8px;padding:7px 13px;border-radius:99px;border:1px solid var(--line2);background:color-mix(in srgb,var(--surface) 70%,transparent);font-size:13px;font-weight:600;color:var(--tx2)}
.chip i{width:7px;height:7px;border-radius:50%;background:var(--acc);box-shadow:0 0 10px var(--acc)}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font:700 12px/1 var(--f-b);letter-spacing:.16em;text-transform:uppercase;color:var(--teal)}
.eyebrow:before{content:"";width:22px;height:2px;background:var(--grad);border-radius:2px}
.tag{display:inline-block;padding:4px 10px;border-radius:99px;background:color-mix(in srgb,var(--violet) 18%,transparent);color:color-mix(in srgb,var(--violet) 70%,var(--tx));font-size:12px;font-weight:700}

/* ---------- шапка ---------- */
.hdr{position:sticky;top:0;z-index:40;background:color-mix(in srgb,var(--bg) 72%,transparent);backdrop-filter:saturate(1.4) blur(16px);-webkit-backdrop-filter:saturate(1.4) blur(16px);border-bottom:1px solid var(--line)}
.hdr-in{display:flex;align-items:center;gap:18px;height:68px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font:600 16px/1 var(--f-d);letter-spacing:-.01em;white-space:nowrap}
.brand b{font-weight:800}
.nav{display:flex;gap:4px;margin-left:auto;align-items:center}
.nav a{padding:9px 13px;border-radius:10px;text-decoration:none;color:var(--tx2);font-weight:600;font-size:15px}
.nav a:hover,.nav a.on{color:var(--tx);background:var(--surface)}
.nav a.pill{border:1px solid color-mix(in srgb,var(--acc) 45%,transparent);color:var(--acc)}
.hdr-act{display:flex;gap:8px;align-items:center}
.burger{display:none;gap:4px;flex-direction:column}.burger span{display:block;width:16px;height:2px;background:currentColor;border-radius:2px}
@media (max-width:900px){
  .burger{display:flex;align-items:center;justify-content:center}
  .hide-m{display:none}
  .hdr-act{margin-left:auto}
  .nav{position:fixed;inset:68px 0 auto 0;flex-direction:column;align-items:stretch;background:var(--bg);border-bottom:1px solid var(--line);padding:12px 20px 20px;transform:translateY(-120%);transition:transform .25s;margin:0}
  .nav.open{transform:none}
  .nav a{padding:14px;font-size:17px}
}

/* ---------- секции ---------- */
section{position:relative}
.sec{padding:96px 0 0}
.sec-h{max-width:760px;margin-bottom:36px}
.sec-h h2{font-size:clamp(28px,4vw,46px);margin:14px 0 14px}
.sec-h p{color:var(--tx2);font-size:18px;margin:0}
@media (max-width:640px){.sec{padding-top:64px}}

/* ---------- hero ---------- */
.hero{padding:72px 0 40px;overflow:hidden;isolation:isolate}
.hero:before,.hero:after{content:"";position:absolute;z-index:-1;border-radius:50%;filter:blur(90px)}
.hero:before{width:620px;height:620px;left:-180px;top:-260px;background:var(--glow1)}
.hero:after{width:560px;height:560px;right:-160px;top:-60px;background:var(--glow2)}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}
.hero h1{font-size:clamp(30px,6.2vw,76px);overflow-wrap:break-word;font-weight:800;margin:22px 0 22px}
.hero .lead{font-size:clamp(17px,1.6vw,20px);color:var(--tx2);max-width:560px;margin:0 0 30px}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap}
.hero-stats{display:flex;gap:28px;margin-top:38px;flex-wrap:wrap}
.hero-stats div b{display:block;font:700 26px/1 var(--f-d)}
.hero-stats div span{font-size:13px;color:var(--mut)}
.hero-card{position:relative;background:linear-gradient(180deg,var(--surface2),var(--surface));border:1px solid var(--line2);border-radius:28px;padding:26px;box-shadow:var(--shadow)}
.hero-card:before{content:"";position:absolute;inset:-1px;border-radius:28px;padding:1px;background:var(--grad);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.6;pointer-events:none}
.hc-top{display:flex;justify-content:space-between;align-items:center;color:var(--mut);font-size:13px}
.hc-date{font:800 clamp(30px,3.4vw,44px)/1.05 var(--f-d);margin:16px 0 4px}
.hc-sub{color:var(--tx2);font-size:14px}
.hc-bars{display:flex;align-items:flex-end;gap:7px;height:120px;margin:24px 0 18px}
.hc-bars i{flex:1;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,var(--teal),color-mix(in srgb,var(--violet) 70%,transparent));opacity:.9;animation:grow 1s cubic-bezier(.2,.8,.2,1) both}
@keyframes grow{from{transform:scaleY(.1);transform-origin:bottom}}
.hc-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}
.hc-row div{background:var(--bg2);border:1px solid var(--line);border-radius:14px;padding:12px}
.hc-row b{display:block;font:700 15px/1.1 var(--f-d);white-space:nowrap}.hc-row span{font-size:12px;color:var(--mut)}
@media (max-width:960px){.hero-grid{grid-template-columns:1fr}.hero{padding-top:44px}}

/* ---------- лента тикеров ---------- */
.tape{overflow:hidden;border-block:1px solid var(--line);background:var(--bg2);padding:12px 0;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.tape+.tape{border-top:0;padding-top:0}
.track{display:flex;gap:10px;width:max-content;animation:scroll 70s linear infinite}
.tape.rev .track{animation-direction:reverse;animation-duration:85s}
.tape:hover .track{animation-play-state:paused}
@keyframes scroll{to{transform:translateX(-50%)}}
.tk{display:flex;align-items:center;gap:9px;padding:5px 14px 5px 5px;border-radius:99px;border:1px solid var(--line);background:var(--surface);text-decoration:none;font:700 13px/1 var(--f-b);white-space:nowrap;transition:border-color .2s}
.tk:hover{border-color:var(--line2)}
.tk small{color:var(--mut);font-weight:600}
.lg{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;font:800 9.5px/1 var(--f-b);color:#fff;flex:none;letter-spacing:-.02em;box-shadow:inset 0 0 0 1px rgba(255,255,255,.15)}

/* ---------- калькулятор ---------- */
.calc{display:grid;grid-template-columns:400px 1fr;gap:24px;align-items:start}
@media (max-width:1020px){.calc{grid-template-columns:1fr}}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:22px;box-shadow:var(--shadow)}
.calc-in{position:sticky;top:88px}
@media (max-width:1020px){.calc-in{position:static}}
.calc-in h3{font:700 13px/1 var(--f-b);letter-spacing:.12em;text-transform:uppercase;color:var(--mut);margin:22px 0 4px}
.calc-in h3:first-child{margin-top:0}
.fld{margin-top:12px}
.fld label{display:flex;justify-content:space-between;font-size:13px;color:var(--tx2);font-weight:600;margin-bottom:6px}
.fld label output{color:var(--tx);font-variant-numeric:tabular-nums}
.inp{width:100%;background:var(--bg2);border:1px solid var(--line);border-radius:12px;color:var(--tx);padding:12px 14px;font:600 16px var(--f-b);transition:border-color .15s}
.inp:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 20%,transparent)}
.inp-suf{position:relative}.inp-suf span{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--mut);font-size:14px;pointer-events:none}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
input[type=range]{width:100%;accent-color:var(--acc);margin:6px 0 0}
.seg{display:flex;background:var(--bg2);border:1px solid var(--line);border-radius:12px;padding:4px;gap:4px}
.seg button{flex:1;border:0;background:none;color:var(--tx2);font:600 13px var(--f-b);padding:9px 6px;border-radius:9px;cursor:pointer}
.seg button.on{background:var(--surface3);color:var(--tx)}
details.more{margin-top:16px;border-top:1px solid var(--line);padding-top:12px}
details.more summary{cursor:pointer;font-weight:700;font-size:14px;color:var(--tx2);list-style:none;display:flex;justify-content:space-between}
details.more summary:after{content:"+";font-size:18px;line-height:1}
details.more[open] summary:after{content:"–"}
.note{font-size:12.5px;color:var(--mut);margin-top:10px;line-height:1.5}

.res{display:grid;gap:16px}
.res-hero{position:relative;overflow:hidden;border-radius:24px;padding:28px;background:radial-gradient(120% 140% at 0% 0%,color-mix(in srgb,var(--violet) 30%,transparent),transparent 55%),radial-gradient(100% 120% at 100% 100%,color-mix(in srgb,var(--teal) 22%,transparent),transparent 55%),var(--surface);border:1px solid var(--line2)}
.res-hero .k{font-size:13px;color:var(--tx2);font-weight:600;text-transform:uppercase;letter-spacing:.1em}
.res-hero .big{font:800 clamp(32px,4.4vw,54px)/1.05 var(--f-d);margin:12px 0 10px}
.res-hero{padding-right:170px}
@media (max-width:640px){.res-hero{padding-right:28px}}
.res-hero .sub{color:var(--tx2);max-width:560px}
.res-hero .ring{position:absolute;right:26px;top:26px;width:120px;height:120px}
@media (max-width:640px){.res-hero .ring{position:static;margin-top:16px}}
.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
@media (max-width:760px){.kpis{grid-template-columns:1fr 1fr}}
@media (max-width:420px){.kpis{grid-template-columns:1fr}}
.kpi{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:16px}
.kpi .k{font-size:12px;color:var(--mut);font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.kpi .v{font:700 24px/1.1 var(--f-d);margin:10px 0 6px}
.kpi .s{font-size:13px;color:var(--tx2)}
.ok{color:var(--ok)}.bad{color:var(--red)}.warn{color:var(--amber)}
.alert{display:flex;gap:12px;align-items:flex-start;border:1px solid color-mix(in srgb,var(--amber) 35%,transparent);background:color-mix(in srgb,var(--amber) 9%,transparent);border-radius:14px;padding:14px 16px;font-size:14px;color:var(--tx2)}
.chart-wrap{position:relative}
.chart-wrap canvas{width:100%;height:300px;display:block}
.legend{display:flex;gap:18px;flex-wrap:wrap;font-size:13px;color:var(--tx2);margin:6px 0 10px}
.legend i{display:inline-block;width:14px;height:3px;border-radius:2px;vertical-align:middle;margin-right:7px}
.tip{position:absolute;pointer-events:none;background:var(--surface2);border:1px solid var(--line2);border-radius:12px;padding:10px 12px;font-size:13px;box-shadow:var(--shadow);display:none;white-space:nowrap;z-index:5}
table.t{width:100%;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}
table.t th,table.t td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:right}
table.t th{color:var(--mut);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.06em}
table.t th:first-child,table.t td:first-child{text-align:left}
.heat td{border-radius:6px;border:2px solid var(--surface)!important;text-align:center!important;font-weight:700}
.boost{display:grid;gap:8px}
.boost div{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:12px 14px;border-radius:12px;background:var(--bg2);border:1px solid var(--line);font-size:14px}
.boost b{font-family:var(--f-d);font-size:14px;color:var(--ok)}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:860px){.g2{grid-template-columns:1fr}}
.panel h4{margin:0 0 14px;font:700 13px/1 var(--f-b);letter-spacing:.1em;text-transform:uppercase;color:var(--mut)}

/* ---------- эмитенты ---------- */
.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.filters button{border:1px solid var(--line);background:var(--surface);color:var(--tx2);font:600 14px var(--f-b);padding:9px 15px;border-radius:99px;cursor:pointer}
.filters button.on{background:var(--tx);color:var(--bg);border-color:var(--tx)}
.iss{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.iss a{display:flex;gap:12px;align-items:center;padding:12px;border-radius:16px;border:1px solid var(--line);background:var(--surface);text-decoration:none;transition:transform .15s,border-color .15s,background .15s}
.iss a:hover{transform:translateY(-2px);border-color:var(--line2);background:var(--surface2)}
.iss .lg{width:44px;height:44px;font-size:11px}
.iss b{display:block;font-size:15px}.iss span{font-size:12.5px;color:var(--mut)}

/* ---------- bento / промо ---------- */
.bento{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.bx{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:24px;position:relative;overflow:hidden}
.bx h3{font-size:20px;margin:12px 0 8px}.bx p{color:var(--tx2);margin:0}
.bx .ico{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:color-mix(in srgb,var(--acc) 14%,var(--surface2));color:var(--acc);border:1px solid color-mix(in srgb,var(--acc) 25%,transparent)}
.c2{grid-column:span 2}.c3{grid-column:span 3}.c4{grid-column:span 4}.c6{grid-column:span 6}
@media (max-width:900px){.bento{grid-template-columns:1fr 1fr}.c2,.c3,.c4,.c6{grid-column:span 2}}
.cta-band{border-radius:28px;padding:44px;background:radial-gradient(80% 140% at 100% 0%,color-mix(in srgb,var(--violet) 45%,transparent),transparent 60%),radial-gradient(80% 140% at 0% 100%,color-mix(in srgb,var(--acc) 22%,transparent),transparent 60%),var(--surface2);border:1px solid var(--line2);display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.cta-band h2{font-size:clamp(24px,3vw,36px);max-width:640px}
.cta-band p{color:var(--tx2);margin:10px 0 0;max-width:620px}
.author{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:start}
@media (max-width:900px){.author{grid-template-columns:1fr}}
.author .panel p{color:var(--tx2)}
.author img{border-radius:20px;border:1px solid var(--line)}
.soc{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.soc a{padding:9px 14px;border-radius:99px;border:1px solid var(--line2);text-decoration:none;font-weight:700;font-size:14px}
.soc a:hover{background:var(--surface2)}
blockquote.q{margin:18px 0 0;padding:16px 18px;border-left:3px solid var(--violet);background:var(--bg2);border-radius:0 12px 12px 0;color:var(--tx2);font-style:italic}

/* ---------- реклама ---------- */
.ad{margin:40px auto 0;max-width:970px;min-height:280px}
.ad:before{content:"Реклама";display:block;font-size:11px;color:var(--mut);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}
.ad.off{display:none}
.ad.ad-house{min-height:0}
.ad.ad-house:before,.ad.ad-direct:before{display:none}
.ad.ad-direct{min-height:0;text-align:center}
.ad .direct img{display:inline-block;max-width:100%;border-radius:14px}
.ad .ad-mark{font-size:11px;color:var(--mut);margin-top:6px}
.ad .ph{display:grid;place-items:center;min-height:250px;border:2px dashed var(--line2);border-radius:16px;color:var(--mut);font-size:14px;text-align:center;padding:12px}
.ad .promo{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;border-radius:20px;padding:26px;text-decoration:none;background:radial-gradient(100% 160% at 100% 0%,rgba(34,158,217,.45),transparent 60%),var(--surface2);border:1px solid var(--line2)}
.ad .promo b{font:700 20px/1.2 var(--f-d)}

/* ---------- блог: лента ---------- */
.blog-hero{padding:64px 0 28px;overflow:hidden;isolation:isolate}
.blog-hero:before{content:"";position:absolute;z-index:-1;width:600px;height:600px;right:-200px;top:-300px;border-radius:50%;filter:blur(90px);background:var(--glow1)}
.blog-hero h1{font-size:clamp(36px,5.5vw,64px);margin:16px 0 14px}
.blog-hero p{color:var(--tx2);font-size:18px;max-width:640px;margin:0}
.blog-tools{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between;margin:28px 0 26px}
.search{display:flex;gap:8px;min-width:260px;flex:0 1 360px}
.search .inp{padding:11px 14px}
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media (max-width:980px){.posts{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.posts{grid-template-columns:1fr}}
.pcard{background:var(--surface);border:1px solid var(--line);border-radius:22px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,border-color .2s}
.pcard:hover{transform:translateY(-3px);border-color:var(--line2)}
.pcard-img{display:block;aspect-ratio:1200/630;overflow:hidden;background:var(--surface2)}
.pcard-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.pcard:hover .pcard-img img{transform:scale(1.04)}
.pcard-body{padding:18px 20px 22px}
.pcard-meta{display:flex;gap:10px;align-items:center;font-size:13px;color:var(--mut);flex-wrap:wrap}
.pcard h3{font-size:19px;line-height:1.25;margin:12px 0 8px}
.pcard h3 a{text-decoration:none}
.pcard p{color:var(--tx2);font-size:15px;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.pcard.big{grid-column:span 3;display:grid;grid-template-columns:1.2fr 1fr}
.pcard.big .pcard-img{aspect-ratio:auto;min-height:100%}
.pcard.big .pcard-body{padding:34px;display:flex;flex-direction:column;justify-content:center}
.pcard.big h3{font-size:clamp(24px,2.6vw,34px)}
@media (max-width:980px){.pcard.big{grid-column:span 2;grid-template-columns:1fr}}
@media (max-width:620px){.pcard.big{grid-column:span 1}}
.pager{display:flex;gap:8px;justify-content:center;margin:40px 0 0;flex-wrap:wrap}
.pager a,.pager span{min-width:44px;height:44px;display:grid;place-items:center;border-radius:12px;border:1px solid var(--line);text-decoration:none;font-weight:700;padding:0 12px}
.pager span.on{background:var(--tx);color:var(--bg)}
.empty{padding:60px 20px;text-align:center;color:var(--tx2);border:1px dashed var(--line2);border-radius:20px}

/* ---------- блог: статья ---------- */
.progress{position:fixed;top:0;left:0;height:3px;background:var(--grad);z-index:60;width:0}
.crumbs{display:flex;gap:8px;flex-wrap:wrap;font-size:14px;color:var(--mut);margin:34px 0 0}
.crumbs a{text-decoration:none;color:var(--tx2)}.crumbs a:hover{color:var(--tx)}
.art-head{max-width:860px;margin:18px auto 0;text-align:center}
.art-head h1{font-size:clamp(30px,4.6vw,54px);margin:18px 0 18px}
.art-head .lead{font-size:19px;color:var(--tx2);margin:0 auto;max-width:720px}
.art-meta{display:flex;gap:16px;justify-content:center;align-items:center;flex-wrap:wrap;color:var(--mut);font-size:14px;margin-top:22px}
.art-meta .av{width:36px;height:36px;border-radius:50%;background:var(--grad);display:grid;place-items:center;color:#06080F;font:800 14px var(--f-d)}
.art-cover{max-width:1100px;margin:36px auto 0;border-radius:28px;overflow:hidden;border:1px solid var(--line)}
.art-cover img{width:100%}
.art-layout{display:grid;grid-template-columns:240px minmax(0,720px) 240px;gap:40px;justify-content:center;margin-top:48px}
@media (max-width:1200px){.art-layout{grid-template-columns:minmax(0,720px) 240px}.art-side-l{display:none}}
@media (max-width:900px){.art-layout{grid-template-columns:minmax(0,1fr)}.art-side-r{display:none}}
.toc{position:sticky;top:96px;font-size:14px}
.toc b{display:block;font:700 12px/1 var(--f-b);letter-spacing:.12em;text-transform:uppercase;color:var(--mut);margin-bottom:12px}
.toc a{display:block;padding:7px 0 7px 14px;border-left:2px solid var(--line);color:var(--tx2);text-decoration:none;line-height:1.35}
.toc a.on,.toc a:hover{border-color:var(--acc);color:var(--tx)}
.side-stick{position:sticky;top:96px;display:grid;gap:14px}
.side-cta{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:18px}
.side-cta p{font-size:14px;color:var(--tx2);margin:8px 0 14px}
.share{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.share a,.share button{flex:1;text-align:center;padding:10px;border-radius:10px;border:1px solid var(--line);background:var(--bg2);color:var(--tx);text-decoration:none;font:600 13px var(--f-b);cursor:pointer}

.prose{font-size:18px;line-height:1.78;color:var(--tx)}
.prose>*:first-child{margin-top:0}
.prose p{margin:0 0 1.15em;color:color-mix(in srgb,var(--tx) 88%,var(--tx2))}
.prose h2{font-size:clamp(24px,2.6vw,31px);margin:2.1em 0 .7em;scroll-margin-top:90px}
.prose h3{font-size:21px;margin:1.7em 0 .6em;font-family:var(--f-b);font-weight:800;letter-spacing:-.01em}
.prose a{color:var(--teal);text-decoration-thickness:1px;text-underline-offset:3px}
.prose strong{color:var(--tx);font-weight:800}
.prose ul,.prose ol{padding-left:0;margin:0 0 1.3em;list-style:none;counter-reset:li}
.prose li{position:relative;padding-left:32px;margin:.5em 0}
.prose ul>li:before{content:"";position:absolute;left:8px;top:.72em;width:8px;height:8px;border-radius:3px;background:var(--grad)}
.prose ol>li{counter-increment:li}
.prose ol>li:before{content:counter(li);position:absolute;left:0;top:.18em;width:23px;height:23px;border-radius:7px;background:var(--surface3);font:800 12px/23px var(--f-d);text-align:center;color:var(--acc)}
.prose blockquote{margin:1.6em 0;padding:20px 24px;border-radius:18px;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--violet);font-size:19px;font-style:italic;color:var(--tx2)}
.prose blockquote p:last-child{margin:0}
.prose figure{margin:2em 0}.prose figure img{border-radius:18px;border:1px solid var(--line)}
.prose figcaption{font-size:14px;color:var(--mut);text-align:center;margin-top:10px}
.prose img{border-radius:18px;margin:1.6em 0}
.prose table{width:100%;border-collapse:separate;border-spacing:0;margin:1.6em 0;font-size:15.5px;border:1px solid var(--line);border-radius:16px;overflow:hidden}
@media (max-width:640px){.prose table{display:block;overflow-x:auto;font-size:14px}}
.prose th{background:var(--surface2);text-align:left;font-weight:800;font-size:13.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--tx2)}
.prose th,.prose td{padding:12px 16px;border-bottom:1px solid var(--line);vertical-align:top}
.prose tr:last-child td{border-bottom:0}
.prose td{color:var(--tx2)}
.prose hr{border:0;height:1px;background:var(--line2);margin:2.4em 0}
.prose code{background:var(--surface2);padding:2px 7px;border-radius:6px;font-size:.88em}
.prose .callout{margin:1.6em 0;padding:18px 20px 18px 56px;border-radius:16px;position:relative;background:color-mix(in srgb,var(--teal) 9%,var(--surface));border:1px solid color-mix(in srgb,var(--teal) 28%,transparent);font-size:16.5px}
.prose .callout:before{content:"i";position:absolute;left:18px;top:18px;width:24px;height:24px;border-radius:8px;background:var(--teal);color:#06080F;font:800 13px/24px var(--f-d);text-align:center}
.prose .callout.tip{background:color-mix(in srgb,var(--acc) 9%,var(--surface));border-color:color-mix(in srgb,var(--acc) 30%,transparent)}
.prose .callout.tip:before{content:"✓";background:var(--acc)}
.prose .callout.warn{background:color-mix(in srgb,var(--amber) 10%,var(--surface));border-color:color-mix(in srgb,var(--amber) 32%,transparent)}
.prose .callout.warn:before{content:"!";background:var(--amber)}
.prose .callout.example{background:color-mix(in srgb,var(--violet) 10%,var(--surface));border-color:color-mix(in srgb,var(--violet) 32%,transparent)}
.prose .callout.example:before{content:"₽";background:var(--violet);color:#fff}
.prose .callout p:last-child{margin:0}
.prose .formula{margin:1.6em 0;padding:20px;border-radius:16px;background:var(--bg2);border:1px dashed var(--line2);font:600 17px/1.5 var(--f-d);text-align:center;color:var(--tx)}
.prose .key{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin:1.6em 0}
.prose .key>div{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:16px}
.prose .key b{display:block;font:800 24px/1.1 var(--f-d)}
.prose .key span{font-size:14px;color:var(--mut)}
.sponsored-note{margin:0 0 24px;padding:10px 14px;border-radius:12px;background:var(--surface2);font-size:14px;color:var(--mut)}
.author-box{display:flex;gap:18px;align-items:flex-start;margin:48px 0 0;padding:24px;border-radius:22px;background:var(--surface);border:1px solid var(--line)}
.author-box .av{width:56px;height:56px;border-radius:16px;flex:none;background:var(--grad);display:grid;place-items:center;color:#06080F;font:800 22px var(--f-d)}
.author-box p{margin:6px 0 12px;color:var(--tx2);font-size:15px}
.calc-cta{margin:40px 0 0;padding:28px;border-radius:24px;background:radial-gradient(100% 160% at 100% 0%,color-mix(in srgb,var(--violet) 35%,transparent),transparent 60%),var(--surface2);border:1px solid var(--line2)}
.calc-cta h3{font-size:22px;margin:0 0 8px}.calc-cta p{color:var(--tx2);margin:0 0 18px}
.nextprev{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:40px}
.nextprev a{padding:18px;border-radius:16px;border:1px solid var(--line);text-decoration:none;background:var(--surface)}
.nextprev small{color:var(--mut);display:block;margin-bottom:6px}
.nextprev a:last-child{text-align:right}
@media (max-width:620px){.nextprev{grid-template-columns:1fr}}

/* ---------- формы ---------- */
.form{display:grid;gap:14px}
.form .row2{gap:14px}
@media (max-width:620px){.form .row2,.row2.m1{grid-template-columns:1fr}}
.form label{display:block;font-size:14px;font-weight:700;color:var(--tx2);margin-bottom:6px}
.form textarea.inp{min-height:150px;resize:vertical;line-height:1.5}
.check{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--tx2)}
.check input{margin-top:4px;accent-color:var(--acc);width:18px;height:18px;flex:none}
.hp{position:absolute!important;left:-5000px!important;width:1px;height:1px;overflow:hidden}
.msg{padding:14px 16px;border-radius:14px;font-size:15px}
.msg.ok{background:color-mix(in srgb,var(--ok) 12%,transparent);border:1px solid color-mix(in srgb,var(--ok) 35%,transparent);color:var(--tx)}
.msg.err{background:color-mix(in srgb,var(--red) 12%,transparent);border:1px solid color-mix(in srgb,var(--red) 35%,transparent);color:var(--tx)}
.price{font:800 clamp(44px,6vw,72px)/1 var(--f-d)}
.steps{counter-reset:s;display:grid;gap:12px}
.steps>div{counter-increment:s;display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:start;padding:16px;border-radius:16px;background:var(--surface);border:1px solid var(--line)}
.steps>div:before{content:counter(s);width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--surface3);font:800 16px var(--f-d);color:var(--acc)}
.steps b{display:block;margin-bottom:2px}.steps span{color:var(--tx2);font-size:15px}
.list-ok{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.list-ok li{padding-left:30px;position:relative;color:var(--tx2)}
.list-ok li:before{content:"✓";position:absolute;left:0;top:0;width:20px;height:20px;border-radius:6px;background:color-mix(in srgb,var(--acc) 20%,transparent);color:var(--acc);font-weight:800;font-size:12px;display:grid;place-items:center}
.list-no li:before{content:"✕";background:color-mix(in srgb,var(--red) 18%,transparent);color:var(--red)}

/* ---------- подвал ---------- */
.ftr{margin-top:110px;border-top:1px solid var(--line);background:var(--bg2);padding:56px 0 32px}
.ftr-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}
.ftr-grid p{max-width:420px;font-size:15px}
.ftr h4{font:700 12px/1 var(--f-b);letter-spacing:.14em;text-transform:uppercase;color:var(--mut);margin:6px 0 16px}
.ftr-grid>div>a:not(.brand){display:block;color:var(--tx2);text-decoration:none;padding:5px 0;font-size:15px}
.ftr-grid a:hover{color:var(--tx)}
.ftr-legal{margin-top:40px;padding-top:22px;border-top:1px solid var(--line);font-size:13px}
@media (max-width:760px){.ftr-grid{grid-template-columns:1fr}}
.cookie{position:fixed;left:16px;right:16px;bottom:16px;z-index:70;max-width:560px;margin:0 auto;background:var(--surface2);border:1px solid var(--line2);border-radius:18px;padding:16px 18px;box-shadow:var(--shadow);display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.cookie[hidden]{display:none}
.cookie p{margin:0;flex:1 1 260px;font-size:14px;color:var(--tx2)}
.cookie div{display:flex;gap:8px}
.reveal{opacity:0;transform:translateY(16px);transition:opacity .7s,transform .7s}
.reveal.in{opacity:1;transform:none}

/* сетки не должны распирать страницу на узких экранах */
.hero-grid>*,.calc>*,.g2>*,.author>*,.res>*,.kpis>*,.posts>*,.bento>*,.art-layout>*{min-width:0}
.panel{min-width:0}
#sens{overflow-x:auto}
@media (max-width:640px){
  .hero h1{font-size:clamp(30px,9vw,44px)}
  .hero-stats{gap:18px}
  .hc-row{grid-template-columns:1fr 1fr 1fr;gap:6px}
  .hc-row div{padding:10px}
  .hc-row b{font-size:13px}
  .res-hero .big{font-size:32px}
  .cta-band{padding:26px}
  .kpi .v{font-size:20px}
  .sec-h h2{font-size:26px}
  .art-head h1{font-size:28px}
  .prose{font-size:17px}
}

/* ---------- предложение «Разместить статью» ---------- */
.offer-card{position:relative;display:flex;flex-direction:column;gap:12px;justify-content:center;padding:26px;border-radius:22px;text-decoration:none;
  background:radial-gradient(120% 120% at 100% 0%,color-mix(in srgb,var(--violet) 32%,transparent),transparent 60%),radial-gradient(120% 120% at 0% 100%,color-mix(in srgb,var(--acc) 16%,transparent),transparent 60%),var(--surface2);
  border:1px solid var(--line2);transition:transform .2s}
.offer-card:hover{transform:translateY(-3px)}
.offer-card b{font:700 22px/1.2 var(--f-d)}
.offer-card>span:not(.tag):not(.btn):not(.offer-price){color:var(--tx2);font-size:15px}
.offer-card .tag{align-self:flex-start}
.offer-card .offer-price{font:800 34px/1 var(--f-d);background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.offer-card .btn{align-self:flex-start}
.offer-inline{display:flex;gap:18px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin:24px 0 0;padding:20px 22px;border-radius:18px;background:var(--surface);border:1px dashed var(--line2)}
.offer-inline b{display:block;font-size:16px;margin-bottom:4px}
.offer-inline span{color:var(--tx2);font-size:14.5px}
.offer-inline>div{flex:1 1 320px}
.side-offer{background:color-mix(in srgb,var(--violet) 10%,var(--surface))}
.faq-list{display:grid;gap:10px}
.faq-item{padding:0}
.faq-item summary{cursor:pointer;list-style:none;padding:18px 52px 18px 20px;font-weight:700;font-size:17px;position:relative}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:22px;color:var(--acc)}
.faq-item[open] summary:after{content:"–"}
.faq-item p{margin:0;padding:0 20px 18px;color:var(--tx2)}

/* ---------- брокеры (партнёрские ссылки, маркировка «Реклама») ---------- */
.ad-mark{font-size:11.5px;color:var(--mut);margin:8px 0 0;line-height:1.5}
.brokers{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}
.broker-card{display:flex;gap:18px;align-items:flex-start;padding:24px;border-radius:22px;background:var(--surface);border:1px solid var(--line)}
.broker-card .lg{width:56px;height:56px;font-size:24px;border-radius:16px}
.broker-card h3{font-size:22px;margin:10px 0 6px}
.broker-card p{color:var(--tx2);margin:0 0 14px}
.broker-card .ad-mark{margin-top:12px}
.broker-btns{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.broker-btn{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;background:var(--bg2);border:1px solid var(--line);text-decoration:none;transition:border-color .2s,transform .15s}
.broker-btn:hover{border-color:var(--line2);transform:translateY(-1px)}
.broker-btn .lg{width:38px;height:38px;font-size:16px;border-radius:11px}
.broker-btn b{display:block;font-size:15px}.broker-btn small{color:var(--mut);font-size:12.5px}
.broker-btn .arr{margin-left:auto;color:var(--acc);font-weight:800}
.start-panel{border-color:color-mix(in srgb,var(--acc) 30%,var(--line))}
.next-steps{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.next-steps h3{font-size:20px}
@media (max-width:760px){.next-steps{grid-template-columns:1fr}}

/* ---------- автор: фото с сыном и напутствие ---------- */
.author3{grid-template-columns:.85fr 1.15fr .85fr}
@media (max-width:1100px){.author3{grid-template-columns:1fr 1fr}.author3>img{grid-column:1/-1;max-width:560px;justify-self:center}}
@media (max-width:700px){.author3{grid-template-columns:1fr}}
.family-card{position:relative;margin:0;border-radius:22px;overflow:hidden;border:1px solid var(--line);align-self:start}
.family-card img{width:100%;aspect-ratio:719/1000;object-fit:cover;object-position:50% 20%;border-radius:0;border:0}
.family-card figcaption{position:absolute;inset:auto 0 0 0;padding:70px 22px 20px;background:linear-gradient(180deg,transparent,rgba(6,8,15,.88) 45%);color:#fff}
.family-card blockquote{margin:0;font:600 17px/1.5 var(--f-b);font-style:italic}
.family-card figcaption span{display:block;margin-top:8px;font-size:13px;color:rgba(255,255,255,.7)}
img.av-img{width:36px;height:36px;border-radius:50%;object-fit:cover;display:inline-block}
.author-box img.av-img{width:56px;height:56px;border-radius:16px;flex:none}
