/* Надежда Разиновская — аналитика, маркетинг, сайты. Стиль портфолио: тёмный фон, неоновый фиолетовый акцент. */
@font-face{font-family:"Unbounded";src:url("fonts/unbounded.woff2") format("woff2");font-weight:200 900;font-display:swap}
@font-face{font-family:"Manrope";src:url("fonts/manrope.woff2") format("woff2");font-weight:200 800;font-display:swap}

:root{
  --bg:#0a0418; --bg-2:#120728; --surface:rgba(255,255,255,.05); --surface-2:rgba(255,255,255,.085);
  --line:rgba(184,77,255,.30); --line-2:rgba(255,255,255,.12);
  --text:#f1ecff; --mut:#bdb1dc; --accent:#c26bff; --accent-2:#ff5fe0; --accent-3:#4cecff;
  --on-btn:#ffffff; --btn-a:#7a2cf0; --btn-b:#c21ca8;
  --grad:linear-gradient(100deg,#b84dff 0%,#ff3fd8 100%);
  --grad-btn:linear-gradient(100deg,var(--btn-a),var(--btn-b));
  --ok:#6fe3a0; --err:#ff8aa3;
  --fs:1;
  --f-d:"Unbounded","Arial Black",system-ui,sans-serif;
  --f-b:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --r:20px; --r-s:12px; --wrap:1180px; --ease:cubic-bezier(.16,1,.3,1);
  --t-xs:clamp(.8125rem,.79rem + .1vw,.875rem);
  --t-sm:clamp(.9375rem,.92rem + .1vw,1rem);
  --t-base:clamp(1rem,.97rem + .2vw,1.125rem);
  --t-lg:clamp(1.125rem,1.05rem + .4vw,1.375rem);
  --t-xl:clamp(1.5rem,1.2rem + 1.4vw,2.375rem);
  --t-2xl:clamp(1.75rem,1.2rem + 2.6vw,3.25rem);
  --t-hero:clamp(2rem,1.1rem + 4.4vw,4.4rem);
  --sec:clamp(3.5rem,2rem + 6vw,7rem);
}
*,*::before,*::after{box-sizing:border-box}
html{font-size:calc(100% * var(--fs));-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:5.5rem}
body{margin:0;background:var(--bg);color:var(--text);font:400 var(--t-base)/1.65 var(--f-b);min-height:100vh;overflow-x:hidden;text-rendering:optimizeLegibility}
img,svg,canvas{max-width:100%;display:block}
img{height:auto}
a{color:var(--accent-3);text-decoration-thickness:.08em;text-underline-offset:.2em}
a:hover{text-decoration-thickness:.14em}
h1,h2,h3,h4{font-family:var(--f-d);font-weight:700;line-height:1.18;margin:0 0 .6em;letter-spacing:-.01em;text-wrap:balance}
h1{font-size:var(--t-hero)} h2{font-size:var(--t-xl)} h3{font-size:var(--t-lg);font-family:var(--f-b);font-weight:800;line-height:1.3} h4{font-size:var(--t-base);font-family:var(--f-b);font-weight:800}
p{margin:0 0 1em} ul,ol{margin:0 0 1em;padding-left:1.3em} li{margin:.25em 0}
strong{font-weight:800}
:focus-visible{outline:3px solid var(--accent-3);outline-offset:3px;border-radius:6px}
.skip{position:absolute;left:1rem;top:-4rem;background:var(--accent-3);color:#000;padding:.7rem 1rem;border-radius:10px;z-index:200;font-weight:800;transition:top .2s}
.skip:focus{top:1rem}
.wrap{width:min(100% - 2.5rem,var(--wrap));margin-inline:auto}
.sec{padding-block:var(--sec);position:relative}
.sec.alt{background:linear-gradient(180deg,transparent,rgba(122,44,240,.09) 30%,rgba(122,44,240,.09) 70%,transparent)}
.eyebrow{font:800 var(--t-xs)/1 var(--f-b);letter-spacing:.2em;text-transform:uppercase;color:var(--accent-2);margin:0 0 1rem;display:flex;align-items:center;gap:.7rem}
.eyebrow::before{content:"";width:2rem;height:2px;background:var(--grad);border-radius:2px}
.lead{font-size:var(--t-lg);color:var(--text);max-width:62ch}
.mut{color:var(--mut)}
.gt{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* фон */
.bgfx{position:fixed;inset:0;z-index:-1;pointer-events:none;background:
  radial-gradient(60rem 40rem at 85% -10%,rgba(160,60,255,.30),transparent 60%),
  radial-gradient(50rem 36rem at -10% 40%,rgba(255,63,216,.14),transparent 60%),
  radial-gradient(40rem 30rem at 100% 90%,rgba(61,232,255,.10),transparent 60%),var(--bg)}
.bgfx::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse at 50% 20%,#000,transparent 75%)}

/* шапка */
.hdr{position:sticky;top:0;z-index:50;background:rgba(10,4,24,.72);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line-2)}
.hdr .in{display:flex;align-items:center;gap:1.2rem;min-height:4.2rem}
.logo{display:flex;align-items:center;gap:.7rem;color:var(--text);text-decoration:none;font:700 var(--t-sm)/1.1 var(--f-d);margin-right:auto}
.logo svg{width:2.4rem;height:2.4rem;flex:none}
.logo small{display:block;font:600 var(--t-xs)/1.2 var(--f-b);color:var(--mut);margin-top:.25rem;letter-spacing:0}
.nav{display:flex;gap:.2rem;align-items:center}
.nav a{color:var(--text);text-decoration:none;font-weight:700;font-size:var(--t-sm);padding:.6rem .8rem;border-radius:10px;white-space:nowrap}
.nav a:hover,.nav a[aria-current=page]{background:var(--surface-2)}
.nav a[aria-current=page]{color:var(--accent-3)}
.hbtn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:2.75rem;min-width:2.75rem;padding:0 .9rem;border-radius:12px;border:1px solid var(--line-2);background:var(--surface);color:var(--text);font:700 var(--t-sm) var(--f-b);cursor:pointer}
.hbtn:hover{background:var(--surface-2)}
.hbtn svg{width:1.3rem;height:1.3rem}
.burger{display:none}
@media (max-width:1240px){
  .burger{display:inline-flex}
  .nav{position:fixed;inset:4.2rem 0 auto 0;background:#0a0418;flex-direction:column;align-items:stretch;padding:1rem 1.25rem 1.5rem;border-bottom:1px solid var(--line);transform:translateY(-120%);transition:transform .35s var(--ease);max-height:calc(100vh - 4.2rem);overflow:auto;visibility:hidden}
  .nav.open{transform:none;visibility:visible}
  .nav a{padding:.95rem .8rem;font-size:var(--t-base);border-bottom:1px solid var(--line-2);border-radius:0}
  .hdr .cta-h{display:none}
}
@media (max-width:520px){.logo small{display:none}}
@media (max-width:1479px){.hbtn .tx{display:none}}
.hdr .in.wrap{width:min(100% - 2.5rem,1360px)}
.nav .nav-x{display:none}
@media (max-width:1240px){.nav .nav-x{display:block;background:none;border:0;border-bottom:1px solid var(--line-2);color:var(--text);font:700 var(--t-base) var(--f-b);text-align:left;padding:.95rem .8rem;cursor:pointer}}

/* кнопки */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:3.1rem;padding:.8rem 1.6rem;border-radius:14px;border:1.5px solid transparent;font:800 var(--t-sm)/1.2 var(--f-b);text-decoration:none;cursor:pointer;transition:transform .25s var(--ease),box-shadow .25s,background .25s;color:var(--on-btn);background:var(--grad-btn);box-shadow:0 8px 30px -8px rgba(194,28,168,.65)}
.btn:hover{transform:translateY(-2px);box-shadow:0 14px 36px -8px rgba(194,28,168,.8)}
.btn:active{transform:translateY(0)}
.btn.ghost{background:transparent;border-color:var(--line);color:var(--text);box-shadow:none}
.btn.ghost:hover{background:var(--surface-2);border-color:var(--accent)}
.btn.sm{min-height:2.6rem;padding:.55rem 1.1rem}
.btn[disabled]{opacity:.6;cursor:progress}
.chip{display:inline-flex;align-items:center;padding:.35rem .85rem;border-radius:99px;border:1px solid var(--line);background:var(--surface);font-size:var(--t-xs);font-weight:700;color:var(--text)}

/* карточки */
.card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:clamp(1.2rem,1rem + 1vw,1.9rem);overflow:hidden;transition:border-color .3s,transform .4s var(--ease)}
.card::before{content:"";position:absolute;inset:0;background:radial-gradient(22rem circle at var(--mx,50%) var(--my,0%),rgba(194,107,255,.20),transparent 60%);opacity:0;transition:opacity .3s;pointer-events:none}
.card:hover::before{opacity:1}
a.card{display:block;color:var(--text);text-decoration:none}
a.card:hover{border-color:var(--accent);transform:translateY(-3px)}
.card h3{margin-bottom:.4rem}
.card p:last-child{margin-bottom:0}
.grid{display:grid;gap:clamp(.9rem,.6rem + 1vw,1.5rem)}
.g2{grid-template-columns:repeat(2,1fr)} .g3{grid-template-columns:repeat(3,1fr)} .g4{grid-template-columns:repeat(4,1fr)}
@media (max-width:960px){.g3,.g4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.g2,.g3,.g4{grid-template-columns:1fr}}
.num{font:700 var(--t-xl)/1 var(--f-d);color:var(--accent-3);font-variant-numeric:tabular-nums lining-nums}

/* hero */
.hero{padding-block:clamp(2.5rem,1rem + 5vw,5.5rem) var(--sec);position:relative;overflow:hidden}
.hero .cols{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(1.5rem,3vw,3.5rem);align-items:center}
.hero h1{margin-bottom:.5em}
.hero .lead{margin-bottom:1.6rem}
.cta-row{display:flex;flex-wrap:wrap;gap:.8rem}
.facts{display:flex;flex-wrap:wrap;gap:1.8rem 2.4rem;margin-top:2.2rem;padding:0;list-style:none}
.facts li{margin:0}
.facts b{display:block;font:700 var(--t-xl)/1 var(--f-d);color:var(--accent-3);font-variant-numeric:tabular-nums}
.facts li>span{font-size:var(--t-xs);color:var(--mut)}
.flowbox{position:relative;aspect-ratio:5/4;border:1px solid var(--line);border-radius:28px;background:linear-gradient(160deg,rgba(122,44,240,.18),rgba(10,4,24,.5));overflow:hidden}
.flowbox canvas{width:100%;height:100%}
.flowbox figcaption{position:absolute;left:1rem;right:1rem;bottom:.8rem;font-size:var(--t-xs);color:var(--mut);display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;pointer-events:none}
@media (max-width:900px){.hero .cols{grid-template-columns:1fr}.flowbox{aspect-ratio:4/3}}

/* ответ-блок для людей и нейровыдачи */
.answer{border-left:4px solid var(--accent-2);background:var(--surface);padding:1.1rem 1.4rem;border-radius:0 var(--r-s) var(--r-s) 0;font-size:var(--t-base);max-width:70ch}
.answer b{color:var(--accent-3)}

/* сетка услуг */
.svc{display:flex;flex-direction:column;gap:.6rem;min-height:100%}
.svc .ic{width:3rem;height:3rem;border-radius:14px;background:var(--grad);display:grid;place-items:center;color:#fff}
.svc .ic svg{width:1.6rem;height:1.6rem}
.svc .pr{margin-top:auto;padding-top:.6rem;font-weight:800;color:var(--accent-3)}

/* лестница */
.ladder{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(1.2rem,3vw,3rem);align-items:stretch}
.steps{display:flex;align-items:flex-end;gap:.7rem;min-height:20rem;padding:1rem 0 0}
.stp{flex:1;border:1px solid var(--line);border-radius:16px 16px 0 0;background:linear-gradient(180deg,rgba(184,77,255,.55),rgba(122,44,240,.18));color:var(--text);cursor:pointer;text-align:center;padding:1rem .4rem;font:inherit;display:flex;flex-direction:column;gap:.35rem;align-items:center;justify-content:flex-start;transition:filter .3s,transform .4s var(--ease),border-color .3s}
.stp .n{font:700 var(--t-xl)/1 var(--f-d)}
.stp .t{font-weight:800;font-size:var(--t-sm)}
.stp .p{font-size:var(--t-xs);color:var(--accent-3);font-weight:800}
.stp:nth-child(1){height:38%}.stp:nth-child(2){height:58%}.stp:nth-child(3){height:78%}.stp:nth-child(4){height:100%}
.stp[aria-selected=true]{border-color:var(--accent-3);filter:brightness(1.25);transform:translateY(-6px)}
.stp:not([aria-selected=true]){filter:saturate(.7)}
.ladder-info{min-height:18rem}
@media (max-width:900px){.ladder{grid-template-columns:1fr}.steps{min-height:15rem}}

/* процесс */
.tl{counter-reset:s;list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.tl li{counter-increment:s;margin:0}
.tl .card::after{content:counter(s,decimal-leading-zero);position:absolute;right:1rem;top:.6rem;font:700 2.4rem/1 var(--f-d);color:rgba(194,107,255,.22)}
@media (max-width:900px){.tl{grid-template-columns:1fr 1fr}}@media (max-width:620px){.tl{grid-template-columns:1fr}}

/* цены */
.ptab{width:100%;border-collapse:separate;border-spacing:0 .5rem}
.ptab th{font:800 var(--t-xs) var(--f-b);letter-spacing:.14em;text-transform:uppercase;color:var(--accent-2);text-align:left;padding:.3rem 1rem}
.ptab td{background:var(--surface);padding:.9rem 1rem;vertical-align:top;border-block:1px solid var(--line-2)}
.ptab td:first-child{border-left:1px solid var(--line-2);border-radius:14px 0 0 14px;font-weight:800}
.ptab td:last-child{border-right:1px solid var(--line-2);border-radius:0 14px 14px 0;text-align:right;font:700 var(--t-sm) var(--f-d);color:var(--accent-3);white-space:nowrap}
.ptab td.trm{color:var(--mut);white-space:nowrap}
.ptab td.wh{color:var(--text);font-size:var(--t-sm)}
@media (max-width:900px){
  .ptab,.ptab tbody,.ptab tr,.ptab td{display:block;width:100%}
  .ptab thead{display:none}
  .ptab tr{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:.9rem 1rem;margin-bottom:.8rem}
  .ptab td{background:none;border:0 !important;border-radius:0 !important;padding:.2rem 0;text-align:left !important;white-space:normal !important}
  .ptab td.pr{font-size:var(--t-base);margin-top:.4rem}
  .ptab td.trm::before{content:"Срок: "}
}
.pkg{display:flex;flex-direction:column;gap:.5rem}
.pkg .old{color:var(--mut);text-decoration:line-through;font-size:var(--t-sm)}
.pkg .new{font:700 var(--t-xl)/1.1 var(--f-d)}
.pkg .off{color:var(--accent-3);font-weight:800}
.pkg ul{list-style:none;padding:0;margin:.3rem 0 .6rem}
.pkg li{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px dashed var(--line);padding:.35rem 0;font-size:var(--t-sm)}
.pkg li span:last-child{color:var(--mut);white-space:nowrap}
.note{font-size:var(--t-sm);color:var(--mut);max-width:80ch}

/* калькулятор */
.calc{display:grid;grid-template-columns:1.5fr 1fr;gap:clamp(1rem,2.5vw,2.2rem);align-items:start}
.calc fieldset{border:1px solid var(--line);border-radius:var(--r);background:var(--surface);margin:0 0 1rem;padding:0;min-inline-size:0;overflow:hidden}
.calc legend{padding:0;width:100%}
.calc .gh{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;padding:1rem 1.2rem;background:var(--surface-2);border:0;color:var(--text);font:800 var(--t-base) var(--f-b);cursor:pointer;text-align:left}
.calc .gh span:last-child{font-weight:600;color:var(--mut);font-size:var(--t-xs)}
.calc .gb{padding:.4rem 1.2rem 1rem}
.calc fieldset[data-open=false] .gb{display:none}
.it{display:grid;grid-template-columns:auto 1fr auto;gap:.8rem;align-items:center;padding:.7rem 0;border-bottom:1px solid var(--line-2)}
.it:last-child{border-bottom:0}
.it input[type=checkbox]{width:1.4rem;height:1.4rem;accent-color:#c21ca8}
.it label{cursor:pointer;display:block}
.it label b{display:block;font-weight:800}
.it label small{color:var(--mut);font-size:var(--t-xs);display:block;line-height:1.4}
.it .pp{font:700 var(--t-sm) var(--f-d);color:var(--accent-3);text-align:right;white-space:nowrap}
.qty{display:inline-flex;align-items:center;gap:.3rem;margin-top:.3rem}
.qty button{width:2.2rem;height:2.2rem;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--text);font:800 1.1rem var(--f-b);cursor:pointer}
.qty output{min-width:2.6rem;text-align:center;font-weight:800}
.sum{position:sticky;top:5.5rem}
.sum .tot{font:700 clamp(1.8rem,1.2rem + 2vw,2.8rem)/1.1 var(--f-d);font-variant-numeric:tabular-nums}
.sum .rng{color:var(--mut);font-size:var(--t-sm)}
.bar{display:flex;height:.7rem;border-radius:99px;overflow:hidden;background:var(--line-2);margin:1rem 0}
.bar i{display:block;height:100%;transition:width .5s var(--ease)}
.sum ul{list-style:none;padding:0;margin:0 0 1rem;max-height:14rem;overflow:auto}
.sum li{display:flex;justify-content:space-between;gap:1rem;font-size:var(--t-sm);padding:.25rem 0;border-bottom:1px dashed var(--line)}
.sum .opt{display:flex;align-items:center;gap:.6rem;margin:.5rem 0;font-size:var(--t-sm)}
.sum .opt input{width:1.25rem;height:1.25rem;accent-color:#c21ca8}
.disc{color:var(--ok);font-weight:800;font-size:var(--t-sm);min-height:1.4em}
@media (max-width:960px){.calc{grid-template-columns:1fr}.sum{position:static}}

/* честная цена */
.fair{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1rem,2.5vw,2rem)}
.fld{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem}
.fld label,.fld legend{font-weight:800;font-size:var(--t-sm)}
.fld .hint{font-size:var(--t-xs);color:var(--mut);margin-top:-.1rem}
input[type=text],input[type=tel],input[type=number],select,textarea{width:100%;min-height:3rem;padding:.7rem 1rem;border-radius:12px;border:1.5px solid var(--line);background:rgba(255,255,255,.06);color:var(--text);font:600 var(--t-base) var(--f-b)}
select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text) 50%),linear-gradient(135deg,var(--text) 50%,transparent 50%);background-position:calc(100% - 20px) 55%,calc(100% - 14px) 55%;background-size:6px 6px;background-repeat:no-repeat;padding-right:2.4rem}
select option{color:#000;background:#fff}
textarea{min-height:6.5rem;resize:vertical}
input:focus,select:focus,textarea:focus{outline:3px solid var(--accent-3);outline-offset:1px;border-color:transparent}
input[type=range]{width:100%;accent-color:#c21ca8;min-height:2rem}
.res{border:1px dashed var(--accent);border-radius:var(--r);padding:1.2rem 1.4rem;background:rgba(122,44,240,.12)}
.res .big{font:700 clamp(1.5rem,1rem + 2vw,2.4rem)/1.1 var(--f-d);color:var(--accent-3);font-variant-numeric:tabular-nums}
@media (max-width:860px){.fair{grid-template-columns:1fr}}

/* формы */
.form{display:grid;gap:.2rem}
.form .row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media (max-width:640px){.form .row{grid-template-columns:1fr}}
.chk{display:flex;gap:.8rem;align-items:flex-start;font-size:var(--t-sm);margin:.4rem 0 .6rem}
.chk input{width:1.4rem;height:1.4rem;flex:none;margin-top:.15rem;accent-color:#c21ca8}
.err{color:var(--err);font-size:var(--t-xs);font-weight:700;min-height:1.1em}
.fmsg{border-radius:14px;padding:1rem 1.2rem;margin-top:1rem;border:1px solid var(--line);background:var(--surface-2)}
.fmsg[hidden]{display:none}
.fmsg.ok{border-color:var(--ok)}
.hp{position:absolute !important;left:-9999px;width:1px;height:1px;overflow:hidden}
dialog{border:1px solid var(--line);border-radius:24px;background:#140a2b;color:var(--text);padding:clamp(1.2rem,3vw,2rem);width:min(94vw,34rem);max-height:92vh;overflow:auto}
dialog::backdrop{background:rgba(5,1,14,.72);backdrop-filter:blur(6px)}
dialog .x{position:absolute;right:.8rem;top:.8rem}

/* FAQ */
.faq details{border:1px solid var(--line);border-radius:16px;background:var(--surface);margin-bottom:.7rem;overflow:hidden}
.faq summary{cursor:pointer;list-style:none;padding:1.05rem 3.2rem 1.05rem 1.3rem;font-weight:800;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:1.2rem;top:50%;translate:0 -50%;font:700 1.6rem var(--f-d);color:var(--accent-2);transition:rotate .3s}
.faq details[open] summary::after{rotate:45deg}
.faq .a{padding:0 1.3rem 1.2rem;color:var(--text)}

/* статьи */
.crumbs{font-size:var(--t-xs);color:var(--mut);padding-top:1.4rem}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.3rem .6rem;padding:0;margin:0}
.crumbs li{margin:0}.crumbs li+li::before{content:"/";margin-right:.6rem;color:var(--line)}
.crumbs a{color:var(--mut)}
.phead{padding-block:clamp(1.5rem,1rem + 2.5vw,3.5rem) clamp(1.5rem,1rem + 2vw,2.5rem)}
.phead h1{font-size:var(--t-2xl);max-width:20ch}
.meta{display:flex;flex-wrap:wrap;gap:.5rem 1.2rem;color:var(--mut);font-size:var(--t-xs);margin:.5rem 0 1.5rem}
.art{display:grid;grid-template-columns:minmax(0,1fr) 17rem;gap:clamp(1.5rem,4vw,4rem);align-items:start}
.prose{max-width:72ch;font-size:clamp(1.0625rem,1rem + .25vw,1.1875rem)}
.prose h2{font-size:var(--t-xl);margin-top:2.2em;scroll-margin-top:6rem}
.prose h3{margin-top:1.8em;font-size:var(--t-lg)}
.prose p,.prose li{line-height:1.75}
.prose table{width:100%;border-collapse:collapse;margin:1.2em 0;font-size:var(--t-sm);display:block;overflow-x:auto}
.prose th,.prose td{border:1px solid var(--line);padding:.6rem .8rem;text-align:left;vertical-align:top}
.prose th{background:var(--surface-2);font-weight:800}
.prose blockquote{margin:1.6em 0;padding:1rem 1.4rem;border-left:4px solid var(--accent-2);background:var(--surface);border-radius:0 14px 14px 0;font-size:1.05em}
.prose blockquote p:last-child{margin:0}
.prose figure{margin:2em 0}
.prose figure svg{width:100%;height:auto;border:1px solid var(--line);border-radius:var(--r);background:rgba(255,255,255,.03)}
.prose figcaption{font-size:var(--t-xs);color:var(--mut);margin-top:.6rem}
.prose .box{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:1.2rem 1.4rem;margin:1.6em 0}
.prose .box h3{margin-top:0}
.toc{position:sticky;top:5.5rem;font-size:var(--t-sm)}
.toc summary{font:800 var(--t-xs) var(--f-b);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-2);margin-bottom:.8rem;cursor:pointer;list-style:none}.toc summary::-webkit-details-marker{display:none}.toc summary::after{content:" ▾"}.toc[open] summary::after{content:" ▴"}
.toc ol{list-style:none;padding:0;margin:0;border-left:2px solid var(--line-2)}
.toc li{margin:0}
.toc a{display:block;padding:.4rem .9rem;color:var(--mut);text-decoration:none;border-left:2px solid transparent;margin-left:-2px;line-height:1.35}
.toc a.on{color:var(--text);border-left-color:var(--accent-2);font-weight:800}
.prog{position:fixed;left:0;top:0;height:3px;width:100%;transform-origin:0 50%;transform:scaleX(0);background:var(--grad);z-index:120}
.author{display:flex;gap:1.2rem;align-items:center}
.author img{width:5rem;height:5rem;border-radius:50%;object-fit:cover;border:3px solid var(--accent-2);flex:none}
.srcs{font-size:var(--t-sm);color:var(--mut)}
.srcs li{margin:.4rem 0}
@media (max-width:980px){.art{grid-template-columns:1fr}.toc{position:static;order:-1}.toc ol{border-left:0}.toc a{border-left:0;padding-left:0}}

/* подвал */
.ftr{border-top:1px solid var(--line-2);padding-block:3rem 2rem;margin-top:var(--sec);background:rgba(0,0,0,.25)}
.ftr .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2rem}
.ftr h2{font:800 var(--t-xs) var(--f-b);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-2);margin-bottom:.9rem}
.ftr ul{list-style:none;padding:0;margin:0}.ftr li{margin:.4rem 0}
.ftr a{color:var(--text);text-decoration:none}.ftr a:hover{text-decoration:underline}
.ftr .small{font-size:var(--t-xs);color:var(--mut);margin-top:2rem;border-top:1px solid var(--line-2);padding-top:1.2rem}
.linkbtn{background:none;border:0;padding:0;color:var(--text);font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:.2em}
@media (max-width:860px){.ftr .cols{grid-template-columns:1fr 1fr}}@media (max-width:520px){.ftr .cols{grid-template-columns:1fr}}

/* cookie */
.ck{position:fixed;z-index:150;left:1rem;right:1rem;bottom:1rem;max-width:44rem;background:#170b30;border:1px solid var(--accent);border-radius:20px;padding:1.2rem 1.4rem;box-shadow:0 20px 60px rgba(0,0,0,.6);font-size:var(--t-sm)}
.ck[hidden]{display:none}
.ck h2{font:800 var(--t-base) var(--f-b);margin-bottom:.4rem}
.ck .cats{display:grid;gap:.5rem;margin:.8rem 0}
.ck .cats[hidden]{display:none}
.ck .cats label{display:flex;gap:.7rem;align-items:flex-start}
.ck .cats input{width:1.3rem;height:1.3rem;margin-top:.1rem;accent-color:#c21ca8;flex:none}
.ck .acts{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.8rem}
.ck .acts .btn{flex:1 1 9rem}

/* панель для слабовидящих */
.a11y{position:fixed;z-index:160;top:0;right:0;bottom:0;width:min(100%,24rem);background:#0e0720;border-left:2px solid var(--accent-3);padding:1.2rem 1.3rem 2rem;overflow:auto;transform:translateX(105%);visibility:hidden;transition:transform .35s var(--ease),visibility 0s .35s;font-size:1rem}
.a11y.open{transform:none;visibility:visible;transition:transform .35s var(--ease)}
.a11y h2{font:800 1.25rem var(--f-b);margin-bottom:1rem}
.a11y fieldset{border:0;padding:0;margin:0 0 1.3rem}
.a11y legend{font-weight:800;margin-bottom:.5rem;padding:0}
.a11y .opts{display:flex;flex-wrap:wrap;gap:.5rem}
.a11y .opts button{flex:1 1 auto;min-height:2.9rem;padding:.4rem .8rem;border-radius:12px;border:2px solid var(--line);background:var(--surface);color:var(--text);font:800 1rem var(--f-b);cursor:pointer}
.a11y .opts button[aria-pressed=true]{border-color:var(--accent-3);background:var(--surface-2);outline:2px solid var(--accent-3);outline-offset:1px}
.a11y .sw{min-width:4.2rem}
.a11y .x{display:block;margin:0 0 .8rem auto}

/* цветовые схемы по ГОСТ Р 52872 */
html[data-scheme]{--surface:transparent;--surface-2:transparent;--grad:linear-gradient(var(--accent),var(--accent))}
html[data-scheme="bw"]{--bg:#fff;--bg-2:#fff;--text:#000;--mut:#222;--accent:#000;--accent-2:#000;--accent-3:#003d99;--line:#000;--line-2:#555;--btn-a:#000;--btn-b:#000;--on-btn:#fff;--ok:#006400;--err:#a00000}
html[data-scheme="wb"]{--bg:#000;--bg-2:#000;--text:#fff;--mut:#e6e6e6;--accent:#fff;--accent-2:#fff;--accent-3:#ffe600;--line:#fff;--line-2:#aaa;--btn-a:#fff;--btn-b:#fff;--on-btn:#000;--ok:#7dff9b;--err:#ff9bab}
html[data-scheme="blue"]{--bg:#9dd1ff;--bg-2:#9dd1ff;--text:#063462;--mut:#063462;--accent:#063462;--accent-2:#063462;--accent-3:#02224a;--line:#063462;--line-2:#3a6aa0;--btn-a:#063462;--btn-b:#063462;--on-btn:#fff;--ok:#005a1f;--err:#8a0016}
html[data-scheme="beige"]{--bg:#f7f3d7;--bg-2:#f7f3d7;--text:#4d4b43;--mut:#3b3932;--accent:#4d4b43;--accent-2:#4d4b43;--accent-3:#2b2923;--line:#4d4b43;--line-2:#8b8777;--btn-a:#4d4b43;--btn-b:#4d4b43;--on-btn:#fff;--ok:#2d5a1a;--err:#8a1f00}
html[data-scheme="green"]{--bg:#3b2716;--bg-2:#3b2716;--text:#a9e44d;--mut:#a9e44d;--accent:#a9e44d;--accent-2:#a9e44d;--accent-3:#d9ff8a;--line:#a9e44d;--line-2:#7ba338;--btn-a:#a9e44d;--btn-b:#a9e44d;--on-btn:#3b2716;--ok:#d9ff8a;--err:#ffb3a0}
html[data-scheme] .bgfx{background:var(--bg)}html[data-scheme] .bgfx::after{display:none}
html[data-scheme] .hdr,html[data-scheme] .ftr{background:var(--bg);backdrop-filter:none}
html[data-scheme] .card::before,html[data-scheme] .flowbox canvas{display:none}
html[data-scheme] .flowbox{background:none}
html[data-scheme] .nav{background:var(--bg)}
html[data-scheme] .ck,html[data-scheme] .a11y,html[data-scheme] dialog{background:var(--bg);color:var(--text)}
html[data-scheme] .btn{box-shadow:none}
html[data-scheme] .btn.ghost{border-color:var(--text)}
html[data-scheme] .stp{background:none}
html[data-scheme] .res,html[data-scheme] .answer{background:none}
html[data-scheme] .skip{background:var(--accent-3)}
html[data-scheme] select option{background:var(--bg);color:var(--text)}
html[data-scheme] input,html[data-scheme] select,html[data-scheme] textarea{background:var(--bg);color:var(--text);border-color:var(--text)}
html[data-img="off"] img,html[data-img="off"] figure svg{display:none}
html[data-img="gray"] img,html[data-img="gray"] figure svg{filter:grayscale(1)}
html[data-font="serif"]{--f-d:Georgia,"Times New Roman",serif;--f-b:Georgia,"Times New Roman",serif}
html[data-font="sans"]{--f-d:Arial,Helvetica,sans-serif;--f-b:Arial,Helvetica,sans-serif}
html[data-ls="1"] body{letter-spacing:.05em;word-spacing:.12em}
html[data-ls="2"] body{letter-spacing:.1em;word-spacing:.2em}
html[data-lh="1"] body{line-height:1.9}
html[data-lh="2"] body{line-height:2.2}
html[data-motion="off"] *{animation:none !important;transition:none !important;scroll-behavior:auto !important}
html[data-motion="off"] .reveal{opacity:1 !important;transform:none !important}

/* анимации появления */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}*{animation-duration:.01ms !important;transition-duration:.01ms !important}}
.noscript-note{padding:1rem;background:#400;color:#fff;text-align:center}
@media print{.hdr,.ftr,.ck,.a11y,.bgfx,.prog{display:none !important}body{background:#fff;color:#000}}

/* дополнения */
.prose figure{overflow-x:auto}.prose figure svg{min-width:560px}
.tag{display:inline-block;font:800 var(--t-xs) var(--f-b);letter-spacing:.12em;text-transform:uppercase;color:var(--accent-2);margin-bottom:.5rem}
.lst{list-style:none;padding:0;margin:.6rem 0 0}.lst li{position:relative;padding-left:1.5rem;margin:.5rem 0}.lst li::before{content:"";position:absolute;left:0;top:.62em;width:.7rem;height:.7rem;border-radius:3px;background:var(--grad)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.2rem,3vw,3rem);align-items:center}
@media (max-width:860px){.split{grid-template-columns:1fr}}
.shot{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:var(--surface)}
.shot img{width:100%;height:auto}
.pgh{max-width:60ch}.pgh h1{font-size:var(--t-2xl);max-width:none}
.legal{max-width:78ch}.legal h2{font-size:var(--t-lg);font-family:var(--f-b);font-weight:800;margin-top:1.8em}
.legal ul,.legal ol{padding-left:1.3em}
.todo{background:rgba(255,229,0,.16);border:1px dashed #ffe600;border-radius:6px;padding:0 .3em;font-weight:800}
.photo{width:min(100%,18rem);aspect-ratio:1;border-radius:50%;object-fit:cover;border:4px solid var(--accent-2);box-shadow:0 0 60px rgba(255,63,216,.35)}
.rel{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}@media (max-width:860px){.rel{grid-template-columns:1fr}}
.cta-box{border:1px solid var(--accent);border-radius:var(--r);padding:clamp(1.4rem,1rem + 2vw,2.6rem);background:linear-gradient(135deg,rgba(122,44,240,.28),rgba(194,28,168,.18))}
.cta-box h2{margin-bottom:.4rem}
.contacts{display:grid;gap:.7rem;margin:1rem 0;padding:0;list-style:none}
.contacts li{margin:0}.contacts a{font-weight:800}
.price-from{font:700 var(--t-sm) var(--f-d);color:var(--accent-3)}
.pk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
@media (max-width:960px){.pk-grid{grid-template-columns:1fr}}
.ptab-wrap{margin-bottom:2.2rem}
.ptab-wrap h3{margin-bottom:.4rem}
[aria-disabled=true]{opacity:.55;pointer-events:none}
.ck .acts{align-items:stretch}
.ladder>*{min-width:0}
.stp{min-width:0;overflow-wrap:anywhere}
@media (max-width:520px){.steps{gap:.35rem}.stp{padding:.7rem .15rem}.stp .n{font-size:1.3rem}.stp .t{font-size:.78rem}.stp .p{font-size:.7rem}}

[hidden]{display:none !important}
.hero h1{font-size:clamp(2rem,1rem + 3.1vw,3.7rem)}
.hdr .btn.sm{white-space:nowrap}
.art>*{min-width:0}
@media (max-width:980px){.art{grid-template-columns:minmax(0,1fr)}}
.phead h1{font-size:clamp(1.55rem,1rem + 2.3vw,3.25rem)}
.prose h2{font-size:clamp(1.3rem,1rem + 1.5vw,2.1rem)}
@media (max-width:520px){.ck{left:.6rem;right:.6rem;bottom:.6rem;padding:1rem}.ck .acts .btn{flex:1 1 100%}}
