/* ============================================================
   ЕДС · визуальная система «ДИСПЕТЧЕРСКАЯ»
   Плотность v1 (как на текущем сайте). Полный лендинг.
   ============================================================ */

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0}
img,svg{display:block;max-width:100%}
button,input,select,textarea{font:inherit;color:inherit}
a{color:inherit}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

:root{
  /* ПОЛЕ */
  --field:#E2E5E1; --field-2:#D6DAD5; --field-3:#F1F3EF; --field-4:#ECEEEA;
  --ink:#10130F; --ink-2:#3C443D; --ink-mut:#525C53;
  --rule:rgba(16,19,15,.20); --rule-soft:rgba(16,19,15,.10);
  /* ШАССИ */
  --chassis:#171B19; --chassis-2:#1F2523; --chassis-3:#2A312D;
  --on-chassis:#EDF0EA; --on-mut:#8C978E;
  --seam:rgba(0,0,0,.62); --seam-hi:rgba(255,255,255,.09);
  --rule-c:rgba(237,240,234,.14); --rule-c2:rgba(237,240,234,.07);
  --riv:rgba(237,240,234,.30);
  /* СИГНАЛ */
  --signal:#FF5A1F; --signal-deep:#A83000; --signal-ink:#1A0A02; --lamp:#FFC02E;
  /* ШРИФТЫ */
  --disp:'Oswald','Arial Narrow',system-ui,sans-serif;
  --text:'Golos Text',system-ui,-apple-system,sans-serif;
  --mono:'PT Mono',ui-monospace,'Courier New',monospace;
  /* ПЛОТНОСТЬ */
  --sec-d:104px; --sec:var(--sec-d);
  --wrap:1240px; --gut:32px; --hdh:66px;
  --hero-top:78px;
  --h1:clamp(32px,5.6vw,68px);
  --h2:clamp(26px,3.7vw,45px);
  --h3:clamp(20px,2.2vw,27px);
  --h4:19px;
  --sub:17px; --sub-gap:20px; --idx-gap:14px;
  --head-gap-d:46px; --head-gap:var(--head-gap-d);
  --pad-d:26px; --pad:var(--pad-d);
  --cell-d:20px; --cell:var(--cell-d);
  --board-gap-d:24px; --board-gap:var(--board-gap-d);
  --blk-gap-d:96px; --blk-gap:var(--blk-gap-d);
  --ch:12px; --ch-lg:16px;
  --btn-pad:16px 26px;
}
@media (max-width:900px){
  :root{
    --sec:calc(var(--sec-d) * .62);
    --pad:calc(var(--pad-d) * .72);
    --cell:calc(var(--cell-d) * .82);
    --board-gap:calc(var(--board-gap-d) * .7);
    --head-gap:calc(var(--head-gap-d) * .68);
    --blk-gap:calc(var(--blk-gap-d) * .6);
    --gut:18px;
  }
}

/* ---------- база ---------- */
body{background:var(--field);color:var(--ink);font-family:var(--text);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
main,header,footer{position:relative;z-index:1}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut)}

/* ---------- срез углов ---------- */
.cut{clip-path:polygon(0 0,calc(100% - var(--ch)) 0,100% var(--ch),100% 100%,var(--ch) 100%,0 calc(100% - var(--ch)))}

/* ---------- крепёж ---------- */
.riv{position:relative}
.riv::before{
  content:"";position:absolute;inset:10px;pointer-events:none;z-index:3;opacity:.75;
  background-image:
    radial-gradient(circle,var(--riv) 1.3px,transparent 1.5px),
    radial-gradient(circle,var(--riv) 1.3px,transparent 1.5px),
    radial-gradient(circle,var(--riv) 1.3px,transparent 1.5px),
    radial-gradient(circle,var(--riv) 1.3px,transparent 1.5px);
  background-position:0 0,100% 0,0 100%,100% 100%;
  background-size:4px 4px;background-repeat:no-repeat;
}
.riv-l::before{--riv:rgba(16,19,15,.22)}

/* ---------- поверхности ---------- */
.slab{background:var(--chassis);color:var(--on-chassis);position:relative;box-shadow:0 1px 0 rgba(255,255,255,.05) inset}
.panel{background:var(--field-3);position:relative;box-shadow:inset 0 0 0 1px var(--rule-soft)}

/* ---------- гравированная табличка ---------- */
.plate{font-family:var(--mono);font-size:12px;line-height:1;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mut)}
.slab .plate,.plate.on-dark{color:var(--on-mut)}
.plate-lit{color:var(--signal-deep)}
.slab .plate-lit{color:var(--lamp)}
.k-note{font-family:var(--mono);font-size:12.5px;line-height:1.65;letter-spacing:.02em;color:var(--ink-mut)}

/* ---------- лампа ---------- */
.lamp{width:7px;height:7px;flex:none;border-radius:50%;background:var(--lamp);box-shadow:inset 0 -1px 0 rgba(120,70,0,.45),0 0 0 2px rgba(237,240,234,.06)}
.lamp.off{background:var(--on-mut);opacity:.45;box-shadow:none}

/* ---------- шов ламели ---------- */
.seam{position:relative}
.seam::after{content:"";position:absolute;left:0;right:0;top:50%;height:2px;pointer-events:none;
  background:linear-gradient(to bottom,var(--seam) 0 1px,var(--seam-hi) 1px 2px)}

/* ---------- типографика ---------- */
h1,h2,h3,h4,h5{margin:0;font-family:var(--disp);font-weight:700;text-transform:uppercase}
h1{font-size:var(--h1);line-height:.92;letter-spacing:-.005em}
h2{font-size:var(--h2);line-height:1.0}
h3{font-size:var(--h3);line-height:1.06}
h4{font-size:var(--h4);line-height:1.15}
p{margin:0}
.sub{font-size:var(--sub);line-height:1.5;color:var(--ink-2);max-width:64ch}
h1,h2,h3,h4,h5,.blk-h,.sub{text-wrap:balance}
p,li{text-wrap:pretty}
.blk-h{font-family:var(--disp);font-weight:700;text-transform:uppercase;font-size:clamp(22px,2.7vw,33px);line-height:1.06;margin:0}

/* ---------- направляющая ---------- */
.rail{position:fixed;left:0;top:0;bottom:0;width:26px;z-index:40;pointer-events:none;
  background:linear-gradient(to right,rgba(16,19,15,.07),transparent)}
.rail i{position:absolute;left:11px;top:0;width:2px;height:100%;background:var(--rule-soft)}
.rail b{position:absolute;left:11px;top:0;width:2px;height:100%;background:var(--signal);
  transform-origin:top;transform:scaleY(var(--rp,0));transition:transform .12s linear}
.rail u{position:absolute;left:6px;top:-5px;width:12px;height:10px;background:var(--signal);
  clip-path:polygon(0 0,100% 0,100% 6px,6px 100%,0 100%);
  transform:translateY(var(--rpx,0px));transition:transform .12s linear}
@media (max-width:1180px){.rail{display:none}}

/* ---------- шапка ---------- */
header{position:sticky;top:0;z-index:50;background:rgba(226,229,225,.9);backdrop-filter:blur(10px) saturate(1.1);border-bottom:1px solid var(--rule)}
.hd{display:flex;align-items:center;gap:26px;height:var(--hdh)}
.logo{font-family:var(--disp);font-weight:700;font-size:22px;letter-spacing:.02em;text-decoration:none;text-transform:uppercase;line-height:1}
.logo i{font-style:normal;color:var(--signal-deep)}
.hd nav{display:flex;gap:2px;margin-left:auto}
.hd nav a{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mut);text-decoration:none;padding:9px 13px;position:relative;transition:color .18s ease}
.hd nav a::after{content:"";position:absolute;left:13px;right:13px;bottom:4px;height:1px;background:var(--signal);transform:scaleX(0);transform-origin:left;transition:transform .26s cubic-bezier(.2,.8,.2,1)}
.hd nav a:hover{color:var(--ink)}
.hd nav a:hover::after{transform:scaleX(1)}

/* ---------- кнопки ---------- */
.btn{display:inline-flex;align-items:center;gap:10px;background:var(--signal);color:var(--signal-ink);
  font-family:var(--mono);font-size:13px;letter-spacing:.09em;text-transform:uppercase;
  padding:15px 24px;border:0;cursor:pointer;position:relative;overflow:hidden;text-decoration:none;
  clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,9px 100%,0 calc(100% - 9px));
  transition:transform .16s cubic-bezier(.2,.8,.2,1),filter .16s ease}
.btn span{position:relative;z-index:2}
.btn,.link-ask,.tabs button,.msg-links a,.ft-links a,.m-toggle button,.cl-msgs a,.sx-ad-btn{-webkit-text-stroke:.25px currentColor}
.btn::before{content:"";position:absolute;inset:0;z-index:1;opacity:0;transform:translateX(-100%);
  background:repeating-linear-gradient(45deg,transparent 0 5px,rgba(26,10,2,.18) 5px 10px);
  transition:transform .42s cubic-bezier(.2,.8,.2,1),opacity .2s ease}
.btn:hover{transform:translate(-1px,-2px);filter:saturate(1.08)}
.btn:hover::before{opacity:1;transform:translateX(0)}
.btn:active{transform:translate(0,1px)}
.btn.pressed{animation:flapPress .5s cubic-bezier(.3,.9,.3,1)}
@keyframes flapPress{0%{transform:translate(0,0)}30%{transform:translate(0,3px) scaleY(.94)}100%{transform:translate(0,0)}}
.btn.quiet{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--rule)}
.btn.quiet::before{background:repeating-linear-gradient(45deg,transparent 0 5px,rgba(16,19,15,.09) 5px 10px)}
.btn.quiet:hover{box-shadow:inset 0 0 0 1px var(--ink)}
.btn.dark{background:var(--chassis);color:var(--on-chassis)}
.btn.on-dark{background:transparent;color:var(--on-chassis);box-shadow:inset 0 0 0 1px var(--rule-c)}
.btn.on-dark::before{background:repeating-linear-gradient(45deg,transparent 0 5px,rgba(255,192,46,.18) 5px 10px)}
.btn.on-dark:hover{background:var(--signal);color:var(--signal-ink);box-shadow:none}
.btn.dark::before{background:repeating-linear-gradient(45deg,transparent 0 5px,rgba(255,192,46,.22) 5px 10px)}
.btn.big{padding:var(--btn-pad)}

.link-ask{background:none;border:0;cursor:pointer;padding:0;text-align:left;
  font-family:var(--mono);font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--signal-deep);
  position:relative;transition:color .18s ease}
.link-ask::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:1px;background:currentColor;transform:scaleX(.999);transform-origin:left;transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.link-ask:hover{color:var(--ink)}
.link-ask:hover::after{transform:scaleX(0)}

.burger{display:none;width:40px;height:34px;background:none;border:1px solid var(--rule);cursor:pointer;padding:9px 8px;margin-left:auto}
.burger i{display:block;height:1.5px;background:var(--ink);margin:0 0 5px}
.burger i:last-child{margin-bottom:0}
.m-nav{display:none}
@media (max-width:1000px){
  .hd nav,.hd .btn.hd-desk{display:none}
  .burger{display:block}
  .hd{gap:12px}
  .m-nav{display:block;position:absolute;left:0;right:0;top:100%;background:var(--field-3);
    border-bottom:1px solid var(--rule);padding:8px var(--gut) 20px;max-height:82vh;overflow:auto;
    clip-path:inset(0 0 100% 0);transition:clip-path .4s cubic-bezier(.2,.8,.2,1)}
  body.nav-open .m-nav{clip-path:inset(0 0 0 0)}
  .m-nav a{display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);font-size:13px;
    letter-spacing:.08em;text-transform:uppercase;text-decoration:none;padding:14px 0;border-bottom:1px solid var(--rule-soft);color:var(--ink)}
  .m-nav a span{color:var(--ink-mut);font-size:11px}
  .m-nav .btn{margin-top:18px;width:100%;justify-content:center}
}

/* ---------- появление ---------- */
.js .rv{opacity:0;transform:translateY(16px);transition:opacity .6s cubic-bezier(.2,.8,.2,1),transform .6s cubic-bezier(.2,.8,.2,1);transition-delay:var(--d,0ms)}
.js .rv.in{opacity:1;transform:none}
.js .rv-slab{-webkit-mask-image:linear-gradient(to right,#000 0 100%);mask-image:linear-gradient(to right,#000 0 100%);
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:0% 100%;mask-size:0% 100%;
  transition:-webkit-mask-size .72s cubic-bezier(.16,.84,.28,1),mask-size .72s cubic-bezier(.16,.84,.28,1);transition-delay:var(--d,0ms)}
.js .rv-slab.in{-webkit-mask-size:100% 100%;mask-size:100% 100%}
.fl{display:inline-block;white-space:pre}
.js .fl i{display:inline-block;font-style:normal;transform:rotateX(-92deg);opacity:0;transform-origin:50% 0%;
  transition:transform .34s cubic-bezier(.2,.9,.25,1),opacity .18s ease;
  transition-delay:calc(var(--i,0) * 42ms + var(--d,0ms))}
.js .in .fl i,.js .fl.in i{transform:none;opacity:1}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important}
  .js .rv{opacity:1;transform:none}
  .js .rv-slab{-webkit-mask-image:none;mask-image:none}
  .js .fl i{transform:none;opacity:1}
}

/* ---------- секции ---------- */
section{padding:var(--sec) 0;position:relative}
.sec-head{margin-bottom:var(--head-gap)}
.sec-head .sub{margin-top:var(--sub-gap)}
.idx{display:flex;align-items:center;gap:12px;margin-bottom:var(--idx-gap)}
.idx b{font-family:var(--mono);font-size:11.5px;letter-spacing:.2em;color:var(--signal-deep);font-weight:400}
.idx s{flex:1;height:1px;background:var(--rule);text-decoration:none;max-width:120px}
.blk{margin-top:var(--blk-gap)}
.blk-head{margin-bottom:calc(var(--head-gap) * .8)}
.blk-head .sub{margin-top:14px}

/* ============================================================
   HERO
   ============================================================ */
.hero{padding-top:var(--hero-top);padding-bottom:0}
.hero h1{max-width:none}
.hero h1 .hl{display:inline-block;position:relative;background:var(--signal);color:var(--signal-ink);
  padding:.04em .18em .1em;margin:0 -.04em;
  clip-path:polygon(0 0,calc(100% - .18em) 0,100% .18em,100% 100%,.18em 100%,0 calc(100% - .18em))}
.hero h1 .hl::after{content:"";position:absolute;left:0;right:0;top:52%;height:2px;
  background:linear-gradient(to bottom,rgba(26,10,2,.42) 0 1px,rgba(255,255,255,.22) 1px 2px)}
.hero-mid{display:grid;grid-template-columns:1fr;gap:38px;align-items:start;margin-top:48px}
.hero-points{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule)}
.hero-points li{display:flex;gap:14px;align-items:baseline;padding:15px 0;border-bottom:1px solid var(--rule);
  font-size:16px;line-height:1.4;position:relative;transition:padding-left .3s cubic-bezier(.2,.8,.2,1)}
.hero-points li::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--signal);
  transform:scaleY(0);transform-origin:top;transition:transform .34s cubic-bezier(.2,.8,.2,1)}
.hero-points li:hover{padding-left:14px}
.hero-points li:hover::before{transform:scaleY(1)}
.hero-points .mk{font-family:var(--mono);font-size:12px;letter-spacing:.14em;color:var(--ink-mut);flex:none;min-width:34px}
.hero-cta{display:flex;flex-direction:row;align-items:center;gap:30px;flex-wrap:wrap}
.hero-cta small{font-family:var(--mono);font-size:12.5px;line-height:1.7;color:var(--ink-mut)}
.stats{margin-top:66px}
.stats-board{display:grid;grid-template-columns:repeat(3,1fr);--ch:var(--ch-lg)}
.stat{padding:var(--pad);position:relative;border-left:1px solid var(--rule-c)}
.stat:first-child{border-left:0}
.stat .k{display:flex;align-items:center;gap:9px;margin-bottom:20px}
.stat .k span{font-family:var(--mono);font-size:11.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--on-mut)}
.stat .k small{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--lamp)}
.stat b{display:block;font-family:var(--disp);font-weight:600;font-size:clamp(26px,3.3vw,41px);line-height:.9;letter-spacing:-.015em;font-variant-numeric:tabular-nums}
.stat b .nl{display:block;position:relative}
.stat b i,.stat b em{font-style:normal;color:var(--signal)}
.stat b .u{font-family:var(--disp);font-weight:600;color:var(--on-chassis);text-transform:lowercase;margin-left:.26em}
@media (max-width:900px){
  .hero-mid{grid-template-columns:1fr;gap:34px}
  .stats-board{grid-template-columns:1fr}
  .stat{border-left:0;border-top:1px solid var(--rule-c)}
  .stat:first-child{border-top:0}
}
@media (max-width:700px){.hero h1 br{display:none}}
@media (max-width:600px){.hero-cta{flex-direction:column;align-items:flex-start;gap:18px}}

/* ============================================================
   01 · ПОЗИЦИИ / КОМУ ПОДХОДИТ
   ============================================================ */
.vac-board{--ch:var(--ch-lg);display:grid;grid-template-columns:repeat(5,1fr)}
.vac-col{padding:var(--pad) calc(var(--pad) * .72);border-left:1px solid var(--rule-c)}
.vac-col:first-child{border-left:0}
.vac-col .vh{display:flex;align-items:center;gap:8px;margin-bottom:6px;padding-bottom:14px;border-bottom:1px solid var(--rule-c)}
.vac-col .vh span{font-family:var(--mono);font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--lamp);line-height:1.35}
.vac-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.vac-col li{font-size:14.5px;line-height:1.4;padding:12px 0;color:var(--on-chassis);
  border-bottom:1px solid var(--rule-c2);transition:color .2s ease}
.vac-col li:last-child{border-bottom:0}
.vac-col li:hover{color:#fff}
.vac-tick{display:none;padding:var(--cell) 0;overflow:hidden}
.ticker{overflow:hidden;padding:7px 0;-webkit-mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent)}
.ticker-track{display:flex;gap:10px;width:max-content;animation:tick 46s linear infinite}
.ticker-track.rev{animation-direction:reverse}
.ticker-track span{font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--on-mut);
  padding:8px 13px;box-shadow:inset 0 0 0 1px var(--rule-c);white-space:nowrap;
  clip-path:polygon(0 0,calc(100% - 6px) 0,100% 6px,100% 100%,6px 100%,0 calc(100% - 6px))}
@keyframes tick{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.ticker-track{animation:none}}
.vac-foot{display:flex;justify-content:flex-start;align-items:center;gap:20px;flex-wrap:wrap;margin-top:22px}

.fit2{display:grid;grid-template-columns:1fr 1fr;gap:var(--board-gap)}
.fit-col>.plate{display:block;margin-bottom:16px}
.fit-list{display:flex;flex-direction:column;gap:1px;background:var(--rule)}
.fitcard{--ch:11px;background:var(--field-3);display:flex;gap:16px;align-items:center;padding:var(--cell) calc(var(--cell) + 2px);
  position:relative;transition:background .24s ease}
.fitcard::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--signal);transition:width .38s cubic-bezier(.2,.8,.2,1)}
.fitcard:hover{background:#fff}
.fitcard:hover::after{width:100%}
.fitcard .ic{--ch:6px;flex:none;width:38px;height:38px;display:grid;place-items:center;background:var(--field-2);color:var(--signal-deep);
  clip-path:polygon(0 0,calc(100% - 6px) 0,100% 6px,100% 100%,6px 100%,0 calc(100% - 6px));transition:background .24s ease}
.fitcard:hover .ic{background:var(--signal);color:var(--signal-ink)}
.fitcard .ic svg{width:20px;height:20px}
.fitcard p{font-size:15.5px;line-height:1.42;font-weight:600}
@media (max-width:1000px){.vac-board{display:none}.vac-tick{display:block}.fit2{grid-template-columns:1fr}}
@media (max-width:1000px){.fitcard p{font-weight:500}}
@media (max-width:700px){.fitcard br{display:none}}

/* ============================================================
   02 · ЧЕТЫРЕ ЗАДАЧИ (карточки-перевёртыши)
   ============================================================ */
.tasks-wrap{position:relative}
.tasks-vp{overflow:hidden}
.tasks{display:flex;gap:var(--board-gap);align-items:stretch;
  transition:transform .55s cubic-bezier(.2,.8,.2,1)}
.tk{flex:0 0 calc((100% - var(--board-gap) * 2) / 3);perspective:1600px;cursor:pointer}
.tk-arw{position:absolute;top:50%;z-index:5;width:38px;height:38px;transform:translateY(-50%);
  display:grid;place-items:center;border:0;cursor:pointer;
  background:var(--field-3);box-shadow:inset 0 0 0 1px var(--rule);color:var(--ink);
  clip-path:polygon(0 0,calc(100% - 7px) 0,100% 7px,100% 100%,7px 100%,0 calc(100% - 7px));
  transition:background .2s ease,color .2s ease,opacity .2s ease}
.tk-arw:hover:not(:disabled){background:var(--signal);color:var(--signal-ink);box-shadow:none}
.tk-arw:disabled{opacity:.28;cursor:default}
.tk-arw svg{width:16px;height:16px}
.tk-arw.prev{left:-19px}
.tk-arw.next{right:-19px}

.tk-in{position:relative;display:grid;transform-style:preserve-3d;transition:transform .62s cubic-bezier(.3,.85,.3,1);height:100%}
.tk.flipped .tk-in{transform:rotateY(180deg)}
.tk-face{grid-area:1/1;--ch:var(--ch-lg);backface-visibility:hidden;-webkit-backface-visibility:hidden;
  display:flex;flex-direction:column;padding:var(--pad);min-height:100%;position:relative}
.tk-b{transform:rotateY(180deg)}
.tk-a{background:var(--chassis);color:var(--on-chassis)}
.tk-b{background:var(--chassis-2);color:var(--on-chassis);overflow:hidden;padding-left:18px;padding-right:18px}
.tk-b::after{content:"";position:absolute;left:0;right:0;top:0;height:6px;opacity:.55;pointer-events:none;
  background:repeating-linear-gradient(45deg,var(--signal) 0 7px,transparent 7px 14px)}

.tk-hd{display:flex;align-items:center;gap:10px;margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid var(--rule-c)}
.tk-hd b{font-family:var(--mono);font-size:12.5px;letter-spacing:.18em;color:var(--signal);font-weight:400}
.tk-b .tk-hd b{color:var(--lamp)}
.tk-hd span{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--on-mut);margin-left:auto}
.tk h4{margin-bottom:16px;font-size:20px;line-height:1.18;color:var(--on-chassis)}
.tk-face{--tk-body:#B1B4AF;--tk-body:color-mix(in srgb, var(--on-chassis) 72%, var(--chassis))}
.tk-lead{font-size:15px;line-height:1.5;color:var(--tk-body);margin-bottom:16px}
.tk-dash{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-direction:column;gap:9px}
.tk-dash li{display:flex;gap:11px;font-size:14.5px;line-height:1.45;color:var(--tk-body)}
.tk-dash li i{font-style:normal;color:var(--on-mut);flex:none}
.tk-out{margin-top:auto;padding-top:20px;border-top:1px solid var(--rule-c)}
.tk-out span{display:block;padding-left:15px;
  border-left:2px solid #CC4818;
  border-left-color:color-mix(in srgb, var(--signal) 80%, var(--chassis));
  font-size:14px;font-weight:500;line-height:1.45;
  color:#BEC0BB;
  color:color-mix(in srgb, var(--on-chassis) 80%, var(--chassis))}
.tk-b .tk-out span{border-left-color:#CC9A25;border-left-color:color-mix(in srgb, var(--lamp) 80%, var(--chassis-2))}
.tk-bul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:18px}
.tk-bul li{font-size:14.5px;line-height:1.5;color:var(--tk-body);letter-spacing:-.006em}
.tk-bul strong{color:var(--on-chassis);font-weight:700}

.tk-btn{margin-top:24px;width:100%;background:none;border:0;border-top:1px solid var(--rule-c2);
  padding:16px 0 0;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;
  font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--on-mut);
  transition:color .2s ease}
.tk:hover .tk-a .tk-btn,.tk-a .tk-btn:hover{color:var(--signal)}
.tk-b .tk-btn{margin-top:auto;justify-content:flex-start;gap:11px}
.tk-b .tk-btn i{font-style:normal;font-size:14px}
.tk:hover .tk-b .tk-btn,.tk-b .tk-btn:hover{color:var(--lamp)}
.tk-btn svg{width:17px;height:17px;flex:none;transition:transform .2s cubic-bezier(.2,.8,.2,1)}
.tk:hover .tk-btn svg,.tk-btn:hover svg{transform:translateY(-2px)}
.tk-hint{display:block;margin-top:22px;font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:var(--ink-mut)}
@media (max-width:1100px){.tk{flex:0 0 calc((100% - var(--board-gap)) / 2)}}
@media (max-width:900px){
  .tk{flex:0 0 100%}
  .tk-in{transform-style:flat}.tk.flipped .tk-in{transform:none}
  .tk-face{backface-visibility:visible;-webkit-backface-visibility:visible}
  .tk-b{transform:none;display:none}.tk.flipped .tk-a{display:none}.tk.flipped .tk-b{display:flex}
  .tk-arw.prev{left:-8px}.tk-arw.next{right:-8px}
}

/* ============================================================
   ЗАПРОС (Расскажите о задаче)
   ============================================================ */
.req{--ch:var(--ch-lg);background:var(--field-3);box-shadow:inset 0 0 0 1px var(--rule);padding:calc(var(--pad) * 1.4)}
.req h3{max-width:none;white-space:nowrap;font-size:clamp(26px,3.4vw,52px)}
.req-notes{display:grid;grid-template-columns:1fr 1fr;gap:var(--board-gap);margin-top:30px;width:82%}
.req-notes>div{--ch:9px;background:var(--field);box-shadow:inset 0 0 0 1px var(--rule-soft);padding:var(--cell);
  clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,9px 100%,0 calc(100% - 9px))}
.req-notes b{display:block;font-size:16px;font-weight:700;margin-bottom:8px}
.req-notes p{font-size:15px;line-height:1.5;color:var(--ink-2)}
.req-act{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:34px;padding-top:26px;border-top:1px solid var(--rule-soft)}
.msg-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.msg-row .plate{letter-spacing:.1em}
.msg-links{display:flex;gap:2px;flex-wrap:wrap}
.msg-links a{font-family:var(--mono);font-size:12px;letter-spacing:.09em;text-transform:uppercase;text-decoration:none;
  padding:9px 14px;box-shadow:inset 0 0 0 1px var(--rule);color:var(--ink);
  clip-path:polygon(0 0,calc(100% - 7px) 0,100% 7px,100% 100%,7px 100%,0 calc(100% - 7px));
  transition:background .2s ease,color .2s ease,transform .16s cubic-bezier(.2,.8,.2,1)}
.msg-links a:hover{background:var(--chassis);color:var(--on-chassis);transform:translateY(-2px)}
@media (max-width:900px){
  .req h3{font-size:23px;white-space:normal}
  .req-notes{width:100%}
  .req-notes b{font-size:17.5px}
  .req-notes p{font-size:16.5px}
}
@media (max-width:800px){.req-notes{grid-template-columns:1fr;gap:22px}}

/* ============================================================
   03 · СХЕМА ИСТОЧНИКОВ
   ============================================================ */
.sx{--ch:var(--ch-lg);position:relative}
.sx-grid{display:grid;grid-template-columns:minmax(0,250px) 56px minmax(0,1fr) 56px minmax(0,290px);gap:0;align-items:stretch;position:relative}
.sx-gut{position:relative;z-index:2}
.sx-gut svg{position:absolute;top:0;bottom:0;height:100%;max-width:none;
  left:calc((var(--cell) + 1px) * -1);width:calc(100% + (var(--cell) + 1px) * 2)}
.sx-zone{display:flex;flex-direction:column}
.sx-zk{display:flex;align-items:center;gap:9px;min-height:58px;padding:12px var(--cell);border-bottom:1px solid var(--rule-c);background:var(--chassis-2)}
.sx-gut::before{content:"";position:absolute;left:0;right:0;top:0;height:58px;background:var(--chassis-2);border-bottom:1px solid var(--rule-c)}
.sx-zk b{font-family:var(--mono);font-size:11px;letter-spacing:.18em;color:var(--lamp);font-weight:400}
.sx-zk span{font-family:var(--mono);font-size:11.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--on-mut);line-height:1.4}
.sx-body{padding:var(--cell);display:flex;flex-direction:column;gap:10px;flex:1}
.sx-src{padding:13px 14px;box-shadow:inset 0 0 0 1px var(--rule-c);position:relative;transition:box-shadow .22s ease,background .22s ease}
.sx-src b{display:block;font-size:14.5px;font-weight:600;line-height:1.25}
.sx-src span{display:block;margin-top:5px;font-size:12.5px;line-height:1.4;color:var(--on-mut)}
.sx-src:hover{background:var(--chassis-2);box-shadow:inset 0 0 0 1px rgba(255,90,31,.55)}
.sx-gut::after{content:"";position:absolute;left:0;top:0;width:1px;height:58px;background:var(--rule-c)}
.sx-node{--ch:10px;padding:var(--pad);flex:1;display:flex;flex-direction:column;justify-content:center;position:relative;
  background:var(--chassis-2);box-shadow:inset 0 0 0 1px rgba(255,90,31,.55)}
.sx-node h3{font-size:18px;line-height:1.2;margin-bottom:14px}
.sx-node p{font-size:15px;line-height:1.55;color:var(--on-mut)}
.sx-cap{margin-top:22px;font-family:var(--mono);font-size:11.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--on-mut)}
.sx-pars{display:flex;gap:2px;margin-top:11px;flex-wrap:wrap}
.sx-p{font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;padding:8px 13px;box-shadow:inset 0 0 0 1px var(--rule-c);color:var(--on-chassis);
  clip-path:polygon(0 0,calc(100% - 6px) 0,100% 6px,100% 100%,6px 100%,0 calc(100% - 6px))}
.sx-card{--ch:10px;background:var(--chassis-2);box-shadow:inset 0 0 0 1px var(--rule-c);
  padding:16px;display:flex;flex-direction:column;gap:13px}
.sx-card>b{font-size:14.5px;font-weight:600}
.sx-out{font-size:12.5px;line-height:1.45;color:var(--on-mut)}
.sx-ad{box-shadow:inset 0 0 0 1px var(--rule-c);background:var(--chassis)}
.sx-ad-h{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-bottom:1px solid var(--rule-c)}
.sx-ad-b{padding:12px 10px;display:flex;flex-direction:column;gap:10px}
.sx-ad-btn{height:30px;display:grid;place-items:center;background:var(--signal);color:var(--signal-ink);
  font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;
  clip-path:polygon(0 0,calc(100% - 6px) 0,100% 6px,100% 100%,6px 100%,0 calc(100% - 6px))}
.sx-cnt{display:flex;align-items:center;gap:9px;padding-top:12px;border-top:1px solid var(--rule-c);
  font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;color:var(--on-mut)}
.sx-cnt b{margin-left:auto;color:var(--lamp);font-weight:400;font-variant-numeric:tabular-nums}
.sx-cvg,.sx-vl{display:none}
.w{stroke:rgba(237,240,234,.22);stroke-width:1.2;fill:none;vector-effect:non-scaling-stroke}
.f{stroke:var(--signal);stroke-width:1.8;fill:none;stroke-linecap:round;vector-effect:non-scaling-stroke;
  stroke-dasharray:5 16;animation:flow 1.6s linear infinite}
@keyframes flow{to{stroke-dashoffset:-21}}
@media (prefers-reduced-motion:reduce){.f{animation:none;stroke-dasharray:none;opacity:.55}}
.sx-note{margin-top:22px;font-size:15.5px;line-height:1.5;color:var(--ink-mut);max-width:52ch}
@media (max-width:1000px){
  .sx-grid{grid-template-columns:1fr}
  .sx-gut{display:none}
  .sx-mid{border:0}
  /* шапка зоны становится обычной подписью — рамки и подложки только мешают в столбик */
  .sx-zk{background:transparent;border-bottom:0;min-height:0;padding:20px var(--cell) 12px}
  .sx-zone:first-child .sx-zk{padding-top:var(--cell)}
  .sx-body{padding-top:0}
  /* поток читается связками, а не границами */
  .sx-cvg{display:block;width:100%;max-width:320px;height:78px;margin:4px auto -6px}
  .sx-vl{display:block;width:2px;height:56px;margin:6px auto}
}

/* ---------- управление на каждом этапе ---------- */
.eff{display:grid;grid-template-columns:minmax(0,374px) minmax(0,max(612px,calc((100% - 374px - var(--board-gap)) * .75)));gap:var(--board-gap);margin-top:34px;align-items:stretch}
.eff-rail{display:flex;flex-direction:column;gap:1px;background:var(--rule)}
.er{--ch:11px;flex:1;background:var(--field-3);display:flex;gap:14px;align-items:center;padding:var(--cell);cursor:pointer;
  border:0;text-align:left;width:100%;position:relative;transition:background .22s ease}
.er::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--signal);transform:scaleY(0);transform-origin:top;transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.er:hover{background:#fff}
.er[aria-selected="true"]{background:var(--chassis);color:var(--on-chassis)}
.er[aria-selected="true"]::before{transform:scaleY(1)}
.er-ic{--ch:6px;flex:none;width:38px;height:38px;display:grid;place-items:center;background:var(--field-2);color:var(--signal-deep);
  clip-path:polygon(0 0,calc(100% - 6px) 0,100% 6px,100% 100%,6px 100%,0 calc(100% - 6px))}
.er[aria-selected="true"] .er-ic{background:var(--signal);color:var(--signal-ink)}
.er-ic svg{width:19px;height:19px}
.er b{display:block;font-size:15.5px;font-weight:700;line-height:1.25}
.er s{display:block;text-decoration:none;margin-top:5px;font-size:14.5px;line-height:1.45;color:var(--ink-mut);max-width:248px}
.er[aria-selected="true"] s{color:var(--on-mut)}
.eff-body{--ch:var(--ch-lg);padding:var(--pad)}
.ep[hidden]{display:none}
.ep-lead{font-size:15.5px;line-height:1.55;color:var(--on-chassis);text-wrap:pretty}
.ep-div{border:0;border-top:1px solid var(--rule-c);margin:22px 0}
.ef-s{display:flex;flex-direction:column;gap:16px}
.ef-s p{font-size:14.5px;line-height:1.55;color:rgba(237,240,234,.70)}
.ef-n{font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--lamp);margin-right:10px}
.ef-b{color:var(--on-chassis);font-weight:700}
@media (max-width:1010px){.eff{grid-template-columns:1fr}}

/* ============================================================
   04 · КЕЙС
   ============================================================ */
.case-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:var(--board-gap)}
.cmp-board{--ch:var(--ch-lg);padding:var(--pad)}
.cmp-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;margin-bottom:22px}
.cmp-head .plate{white-space:nowrap}
.cmp-head .arrow{font-family:var(--mono);color:var(--signal);font-size:16px;line-height:1}
.cmp-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;padding:18px 0;border-top:1px solid var(--rule-c)}
.cmp-row:first-child{border-top:0;padding-top:0}
.was{font-family:var(--disp);font-weight:400;font-size:18px;line-height:1;color:var(--on-mut);font-variant-numeric:tabular-nums}
.now{font-family:var(--disp);font-weight:600;font-size:clamp(20px,2.3vw,29px);line-height:1;color:var(--on-chassis);font-variant-numeric:tabular-nums;text-align:right}
.now i,.was i{font-style:normal;font-size:12px;color:var(--on-mut);font-weight:400}
.cap{display:block;margin-top:7px;font-family:var(--mono);font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--on-mut)}
.track{grid-column:1/-1;height:5px;background:rgba(237,240,234,.08);position:relative;margin-top:13px;overflow:hidden}
.track i{position:absolute;inset:0;background:var(--signal);transform-origin:left;transition:transform 1.05s cubic-bezier(.16,.84,.28,1) var(--d,0ms)}
.js .track i{transform:scaleX(0)}
.js .in .track i{transform:scaleX(1)}
.track u{position:absolute;top:0;bottom:0;left:0;width:var(--was,4%);background:var(--lamp);z-index:2}
.facts{display:grid;grid-template-columns:1fr;gap:1px;background:var(--rule)}
.fact{background:var(--field-3);padding:var(--cell);position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:var(--fact-min,132px);transition:background .25s ease}
.fact::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--signal);transition:width .38s cubic-bezier(.2,.8,.2,1)}
.fact:hover{background:#fff}
.fact:hover::after{width:100%}
.fact b{display:block;font-family:var(--disp);font-weight:600;font-size:clamp(24px,2.7vw,33px);line-height:.95;font-variant-numeric:tabular-nums}
.fact b.sm{font-size:clamp(17px,1.8vw,21px)}
.fact span{display:block;margin-top:12px;font-family:var(--mono);font-size:13px;line-height:1.5;letter-spacing:.04em;
  color:var(--ink-2);-webkit-text-stroke:.22px currentColor}

/* таймлайн */
.tl{display:flex;flex-direction:column;gap:1px;background:var(--rule)}
.tli{background:var(--field-3);padding:calc(var(--pad) * 1.1) var(--pad);display:grid;grid-template-columns:76px 1fr;gap:var(--board-gap);position:relative;transition:background .25s ease}
.tli:hover{background:#fff}
.tli-l{display:flex;flex-direction:column;gap:12px}
.tli-n{--ch:7px;width:44px;height:44px;display:grid;place-items:center;background:var(--chassis);color:var(--lamp);
  font-family:var(--mono);font-size:13px;letter-spacing:.06em;
  clip-path:polygon(0 0,calc(100% - 7px) 0,100% 7px,100% 100%,7px 100%,0 calc(100% - 7px))}
.tli-m{font-family:var(--mono);font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--signal-deep);line-height:1.4}
.tli h4{margin-bottom:14px;max-width:34ch}
.tli p{font-size:15.5px;line-height:1.6;color:var(--ink-2);max-width:72ch}
.tli p+p{margin-top:12px}
.tli-note{display:flex;gap:10px;margin-top:18px;padding:14px 16px;background:var(--field-2);font-size:15.5px;max-width:72ch;
  clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,9px 100%,0 calc(100% - 9px))}
.tli-note i{font-style:normal;color:var(--signal-deep);flex:none}
.tli-note span{font-size:14px;line-height:1.5;color:var(--ink-mut)}
.tli-fx{margin-top:18px;padding-top:14px;border-top:1px solid var(--rule-soft);
  font-family:var(--mono);font-size:14px;letter-spacing:.04em;color:var(--ink-2);line-height:1.7;
  -webkit-text-stroke:.22px currentColor}
.tli-fx b{color:var(--ink);font-weight:400}
.tli-fx em{font-style:normal;color:var(--signal-deep)}
.tli-fx .sep{opacity:.4;margin:0 6px}
.tl-close{margin-top:28px;font-size:17px;line-height:1.55;max-width:70ch}
.tl-close em{font-style:normal;color:var(--signal-deep);font-weight:600}
.sol-out{margin-top:20px;font-size:15px;line-height:1.6;color:var(--ink-mut);max-width:78ch}
.sol-out em{font-style:normal;color:var(--ink);font-weight:600}
@media (max-width:760px){.tli{grid-template-columns:1fr;gap:18px}.tli-l{flex-direction:row;align-items:center;gap:14px}}

/* график цены */
.cs-lead{display:grid;grid-template-columns:1.08fr .92fr;gap:var(--board-gap);align-items:center;margin-top:var(--blk-gap)}
.cs-pull{font-family:var(--disp);font-weight:600;text-transform:uppercase;font-size:clamp(20px,2.3vw,29px);line-height:1.14;text-wrap:balance}
.req-notes p,.mode p,.fitcard p,.step p{text-wrap:balance}
.cs-pull em{font-style:normal;color:var(--signal-deep)}
.cs-chart{--ch:var(--ch-lg);padding:var(--pad)}
.cs-chart svg{width:100%;height:auto}
.ev-l{stroke:var(--rule-c);stroke-width:1}
.ev-p{stroke:var(--signal);stroke-width:2;fill:none;transition:stroke-dashoffset 1.4s cubic-bezier(.16,.84,.28,1) .1s}
.js .ev-p{stroke-dasharray:1000;stroke-dashoffset:1000}
.js .in .ev-p{stroke-dashoffset:0}
.ev-d{fill:var(--signal)}
.ev-t{fill:var(--on-mut);font-family:var(--mono);font-size:11px;letter-spacing:.1em}
.ev-t.hi{fill:var(--lamp)}
@media (max-width:860px){.cs-lead{grid-template-columns:1fr;gap:26px}}

/* начало проекта */
.origin{--ch:var(--ch-lg);display:grid;grid-template-columns:.9fr 1.1fr;gap:calc(var(--board-gap) * 1.6);
  margin-top:var(--blk-gap);background:var(--chassis);color:var(--on-chassis);
  padding:calc(var(--pad) * 1.35);position:relative}
.origin::after{content:"";position:absolute;left:0;right:0;top:0;height:8px;opacity:.5;pointer-events:none;
  background:repeating-linear-gradient(45deg,var(--signal) 0 8px,transparent 8px 16px)}
.origin h3{max-width:16ch;font-size:calc(var(--h3) + 4px)}
.origin .btn{margin-top:32px}
.st-lead{font-size:16.5px;line-height:1.55;color:var(--on-chassis)}
.st-lead em{font-style:normal;color:var(--lamp);font-weight:600}
.st-sub{margin-top:18px;font-size:15.5px;line-height:1.6;color:var(--on-mut)}
.st-sub b{color:var(--on-chassis)}
@media (max-width:860px){.origin{grid-template-columns:1fr;gap:26px}}
@media (max-width:600px){.origin{padding:var(--pad)}}
@media (max-width:900px){.case-grid{grid-template-columns:1fr}.facts{--fact-min:auto}}
@media (max-width:520px){.facts{grid-template-columns:1fr}.was,.now{font-size:clamp(16px,5.4vw,22px)}}

/* ============================================================
   05 · СРАВНЕНИЕ
   ============================================================ */
.tabs{display:flex;gap:2px;flex-wrap:wrap}
.tabs button{font-family:var(--mono);font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;
  background:var(--field-2);color:var(--ink-mut);border:0;cursor:pointer;padding:14px 20px;position:relative;overflow:hidden;
  clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,8px 100%,0 calc(100% - 8px));
  transition:background .2s ease,color .2s ease}
.tabs button::after{content:"";position:absolute;left:0;right:0;top:50%;height:2px;
  background:linear-gradient(to bottom,rgba(16,19,15,.12) 0 1px,rgba(255,255,255,.5) 1px 2px)}
.tabs button:hover{background:#CDD2CC;color:var(--ink)}
.tabs button.on{background:var(--chassis);color:var(--on-chassis)}
.tabs button.on::after{background:linear-gradient(to bottom,rgba(0,0,0,.6) 0 1px,rgba(255,255,255,.09) 1px 2px)}
.tabs button.flip{animation:flapSwap .42s cubic-bezier(.3,.9,.3,1)}
@keyframes flapSwap{0%{transform:rotateX(0)}45%{transform:rotateX(-78deg)}100%{transform:rotateX(0)}}
.nv{--ch:var(--ch-lg)}
.nv-meta{display:flex;align-items:center;gap:11px;flex-wrap:wrap;padding:15px var(--pad);border-bottom:1px solid var(--rule-c);
  font-family:var(--mono);font-size:12.5px;letter-spacing:.06em;color:var(--on-mut)}
.nv-meta b{color:var(--lamp);font-weight:400}
.nv-body{display:grid;grid-template-columns:1.15fr .85fr}
.nv-left{padding:var(--pad);border-right:1px solid var(--rule-c)}
.nv-hero{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap}
.nv-hero .big{font-family:var(--disp);font-weight:600;font-size:clamp(44px,6.6vw,86px);line-height:.84;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.nv-hero .k{font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--on-mut);padding-bottom:.3em}
.row2{display:grid;grid-template-columns:repeat(3,1fr);margin-top:26px;border-top:1px solid var(--rule-c)}
.row2 .m{padding:var(--cell) var(--cell) 0;border-left:1px solid var(--rule-c)}
.row2 .m:first-child{border-left:0;padding-left:0}
.row2 .m b{display:block;font-family:var(--disp);font-weight:600;font-size:clamp(22px,2.5vw,31px);line-height:.9;font-variant-numeric:tabular-nums}
.row2 .m b.lit{color:var(--signal)}
.row2 .m b.amber{color:var(--lamp)}
.row2 .m span{display:block;margin-top:9px;font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;color:var(--on-mut)}
.nv-info{padding:var(--pad);display:flex;flex-direction:column;gap:22px}
.nv-src-line{font-size:16.5px;line-height:1.45}
.nv-src-line.mut{color:var(--on-mut)}
.nv-text{font-size:15px;line-height:1.62;color:var(--on-mut)}
.gauges{display:flex;flex-direction:column;gap:9px;margin-top:14px}
.gauge{display:flex;align-items:center;gap:10px}
.gauge .bar{flex:1;height:7px;background:rgba(237,240,234,.09);position:relative;overflow:hidden}
.gauge .bar i{position:absolute;inset:0;transform-origin:left;transform:scaleX(var(--s,0));transition:transform .95s cubic-bezier(.16,.84,.28,1) var(--d,0ms)}
.js .gauge .bar i{transform:scaleX(0)}
.gauge em{font-family:var(--mono);font-style:normal;font-size:11.5px;letter-spacing:.08em;min-width:6.4em;text-align:right;flex:none}
.gauge.ours .bar i{background:var(--signal)}
.gauge.ours em{color:var(--signal)}
.gauge.theirs .bar i{background:repeating-linear-gradient(45deg,rgba(237,240,234,.36) 0 4px,transparent 4px 8px)}
.gauge.theirs em{color:var(--on-mut)}
.js .in .gauge .bar i{transform:scaleX(var(--s,0))}
@media (max-width:900px){
  .nv-body{grid-template-columns:1fr}
  .nv-left{border-right:0;border-bottom:1px solid var(--rule-c)}
  .row2{grid-template-columns:1fr}
  .row2 .m{border-left:0;border-top:1px solid var(--rule-c);padding:var(--cell) 0 0}
  .row2 .m:first-child{border-top:0}
}
@media (max-width:700px){.gauge em{min-width:5.6em;font-size:11px}}

/* ============================================================
   06 · ПРОЦЕСС
   ============================================================ */
.steps-nav{display:none;align-items:center;gap:16px;margin-bottom:20px}
.steps-arw{--ch:7px;width:40px;height:40px;display:grid;place-items:center;background:var(--field-3);border:0;cursor:pointer;
  box-shadow:inset 0 0 0 1px var(--rule);color:var(--ink);
  clip-path:polygon(0 0,calc(100% - 7px) 0,100% 7px,100% 100%,7px 100%,0 calc(100% - 7px))}
.steps-arw svg{width:16px;height:16px}
.steps-arw:disabled{opacity:.35;cursor:default}
.steps-mid{flex:1;display:flex;align-items:center;justify-content:center;gap:12px}
.steps-lad{display:flex;align-items:center;gap:6px}
.steps-dot{background:none;border:0;cursor:pointer;padding:5px 4px;font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;color:var(--ink-mut);transition:color .2s ease}
.steps-dot.on{color:var(--signal-deep)}
.steps-sep{color:var(--rule);font-family:var(--mono)}
.steps-tm{font-family:var(--mono);font-size:13px;letter-spacing:.1em;color:var(--ink-mut);-webkit-text-stroke:.22px currentColor}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--rule)}
.step{background:var(--field-3);padding:var(--pad);position:relative;display:flex;flex-direction:column;transition:background .25s ease}
.step:hover{background:#fff}
.step::after{content:"";position:absolute;left:0;top:0;height:3px;width:0;background:var(--signal);transition:width .4s cubic-bezier(.2,.8,.2,1)}
.step:hover::after{width:100%}
.step .n{font-family:var(--disp);font-weight:600;font-size:38px;line-height:1;color:var(--rule);margin-bottom:20px;transition:color .25s ease}
.step:hover .n{color:var(--signal-deep)}
.step h3{font-size:19px;line-height:1.15;margin-bottom:12px}
.step p{font-size:14.5px;line-height:1.5;color:var(--ink-mut);flex:1}
.step .tm{display:block;margin-top:22px;padding-top:14px;border-top:1px solid var(--rule-soft);
  font-family:var(--mono);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--signal-deep);
  -webkit-text-stroke:.22px currentColor}
.modes{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--rule-c);margin-top:var(--board-gap);--ch:var(--ch-lg)}
.mode{background:var(--chassis);padding:var(--pad)}
.mode b{display:block;font-family:var(--disp);font-weight:600;text-transform:uppercase;font-size:19px;line-height:1.15;color:var(--on-chassis);margin-bottom:10px}
.mode p{font-size:15px;line-height:1.5;color:var(--on-mut)}
@media (max-width:900px){
  .steps-nav{display:flex}
  .steps{display:flex;grid-template-columns:none;background:none;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;
    scrollbar-width:none;margin:0 calc(var(--gut) * -1);padding:0 var(--gut) 4px}
  .steps::-webkit-scrollbar{display:none}
  .step{flex:0 0 82%;scroll-snap-align:center;box-shadow:inset 0 0 0 1px var(--rule)}
  .modes{grid-template-columns:1fr}
}

/* ============================================================
   07 · ЦЕНА
   ============================================================ */
.pr-lead em{font-style:normal;color:var(--signal-deep);font-weight:600}
.pv{--ch:var(--ch-lg);background:var(--field-3);box-shadow:inset 0 0 0 1px var(--rule)}
.pv-band{display:grid;grid-template-columns:1.05fr .95fr .95fr;gap:1px;background:var(--rule)}
.pv-cell{background:var(--field-3);padding:calc(var(--pad) * 1.15)}
.pv-cell:first-child{background:var(--chassis);color:var(--on-chassis)}
.pv-num{display:block;font-family:var(--disp);font-weight:600;font-size:clamp(30px,3.7vw,46px);line-height:.95;font-variant-numeric:tabular-nums;color:var(--signal)}
.pv-num .pre{font-family:var(--text);font-weight:500;font-size:16px;color:var(--on-mut);margin-right:.36em;text-transform:lowercase}
.pv-per{display:block;margin-top:12px;font-family:var(--mono);font-size:12px;letter-spacing:.08em;color:var(--on-mut)}
.pv-sec{margin-top:26px;padding-top:20px;border-top:1px solid var(--rule-c)}
.pv-k{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.17em;text-transform:uppercase;color:var(--ink-mut);margin-bottom:12px}
.pv-cell:first-child .pv-k{color:var(--lamp)}
.pv-key{font-size:15.5px;line-height:1.5;font-weight:600}
.pv-p{font-size:15px;line-height:1.55;color:var(--ink-mut)}
.pv-inc{display:flex;align-items:center;gap:16px;padding:20px calc(var(--pad) * 1.15);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:var(--field-4)}
.pv-inc span{font-family:var(--mono);font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--signal-deep)}
.pv-inc::after{content:"";flex:1;height:1px;background:var(--rule)}
.pv-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule)}
.pv-col{background:var(--field-3);padding:calc(var(--pad) * 1.15)}
.pv-col>b{display:block;font-family:var(--mono);font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-mut);margin-bottom:20px}
.pv-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:18px}
.pv-col li{display:grid;grid-template-columns:30px 1fr;gap:6px 12px;align-items:baseline}
.pv-col li i{font-style:normal;font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;color:var(--signal-deep)}
.pv-col li span{font-size:15px;line-height:1.4;font-weight:600}
.pv-col li em{grid-column:2;font-style:normal;font-size:13.5px;line-height:1.45;color:var(--ink-mut)}
.pv-act{display:flex;align-items:center;gap:26px;flex-wrap:wrap;padding:calc(var(--pad) * 1.15);border-top:1px solid var(--rule)}
.pr-line{--ch:var(--ch-lg);display:grid;grid-template-columns:.8fr 1.4fr .8fr;gap:var(--board-gap);align-items:start;
  background:var(--chassis);color:var(--on-chassis);padding:calc(var(--pad) * 1.3);margin-top:var(--board-gap)}
.pr-line h3{font-size:clamp(19px,2vw,25px)}
.pr-line p{font-size:15px;line-height:1.6;color:var(--on-mut)}
.pr-l2-act{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.pr-k{font-family:var(--mono);font-size:12px;letter-spacing:.08em;color:var(--on-mut);line-height:1.5}
.pr-k-mob{display:none}
.cs-notes{display:flex;gap:26px;flex-wrap:wrap;margin-top:26px}
.cs-note{font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:var(--ink-mut)}
@media (max-width:1000px){.pv-band,.pv-cols{grid-template-columns:1fr}.pr-line{grid-template-columns:1fr;gap:22px}
  .pr-k-desk{display:none}.pr-k-mob{display:block}}

/* ============================================================
   08 · ОБРАБОТКА ОТКЛИКОВ
   ============================================================ */
.ai-list{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule)}
.ai-list>div{background:var(--field-3);padding:var(--cell) calc(var(--cell) + 4px);transition:background .25s ease}
.ai-list>div:hover{background:#fff}
.ai-list b{display:block;font-family:var(--mono);font-size:11.5px;letter-spacing:.17em;text-transform:uppercase;color:var(--signal-deep);margin-bottom:10px}
.ai-list p{font-size:14.5px;line-height:1.45;color:var(--ink-2)}
.ai-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--board-gap);margin-top:var(--board-gap)}
.ai-card{--ch:var(--ch-lg);padding:calc(var(--pad) * 1.2);display:flex;flex-direction:column}
.ai-card .k{font-family:var(--mono);font-size:11.5px;letter-spacing:.16em;color:var(--lamp);margin-bottom:18px}
.ai-card h3{margin-bottom:14px}
.ai-card p{font-size:15.5px;line-height:1.58;color:var(--on-mut);flex:1}
.ai-card .tagline{display:block;margin-top:24px;padding-top:16px;border-top:1px solid var(--rule-c);
  font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--on-mut)}
.ai-benefit{--ch:var(--ch-lg);background:var(--signal);color:var(--signal-ink);padding:calc(var(--pad) * 1.2);margin-top:var(--board-gap);
  display:grid;grid-template-columns:1fr auto;gap:26px;align-items:center;position:relative;overflow:hidden}
.ai-benefit::after{content:"";position:absolute;left:0;right:0;top:0;height:8px;opacity:.5;
  background:repeating-linear-gradient(45deg,var(--signal-ink) 0 8px,transparent 8px 16px)}
.ai-benefit b{font-family:var(--disp);font-weight:700;text-transform:uppercase;font-size:clamp(21px,2.8vw,35px);line-height:1.32;max-width:33ch;text-wrap:balance}
.ai-benefit b em{font-style:normal;background:var(--signal-ink);color:var(--signal);padding:0 .16em;
  clip-path:polygon(0 0,calc(100% - .14em) 0,100% .14em,100% 100%,.14em 100%,0 calc(100% - .14em))}
.ai-benefit-act{display:flex;flex-direction:row-reverse;align-items:center;gap:24px;text-align:right}
.ai-benefit-note{font-family:var(--mono);font-size:13px;line-height:1.6;color:rgba(26,10,2,.78);max-width:32ch;text-align:left;
  -webkit-text-stroke:.22px currentColor}
@media (max-width:900px){.ai-list,.ai-grid{grid-template-columns:1fr}
  .ai-benefit{grid-template-columns:1fr}
  .ai-benefit-act{flex-direction:column;align-items:flex-start;text-align:left;gap:16px}
  .ai-benefit-note{max-width:none}}

/* ============================================================
   09 · ВОПРОСЫ
   ============================================================ */
.faq{display:flex;flex-direction:column;gap:1px;background:var(--rule)}
.faq details{background:var(--field-3);transition:background .25s ease}
.faq details[open]{background:#fff}
.faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:18px;padding:20px calc(var(--cell) + 4px);
  font-family:var(--disp);font-weight:600;font-size:clamp(16px,1.7vw,20px);line-height:1.35;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--signal);transform:scaleY(0);transform-origin:center;transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.faq details[open] summary::before{transform:scaleY(1)}
.faq summary:hover{color:var(--signal-deep)}
.faq .pm{margin-left:auto;flex:none;width:16px;height:16px;position:relative}
.faq .pm::before,.faq .pm::after{content:"";position:absolute;left:50%;top:50%;background:var(--ink-mut);transition:transform .3s cubic-bezier(.2,.8,.2,1),background .2s ease}
.faq .pm::before{width:14px;height:1.5px;transform:translate(-50%,-50%)}
.faq .pm::after{width:1.5px;height:14px;transform:translate(-50%,-50%)}
.faq details[open] .pm::after{transform:translate(-50%,-50%) scaleY(0)}
.faq details[open] .pm::before{background:var(--signal)}
.faq details>p{padding:0 calc(var(--cell) + 4px) 24px 60px;font-size:15.5px;line-height:1.62;color:var(--ink-2);max-width:88ch}
@media (max-width:600px){.faq details>p{padding-left:calc(var(--cell) + 4px)}}


/* ============================================================
   МОБИЛЬНЫЕ УТОЧНЕНИЯ (правки по разбору макета на узких экранах)
   ============================================================ */
@media (max-width:900px){
  /* факты кейса встают в ряд; подписи могут занимать две строки */
  .facts{grid-template-columns:repeat(3,1fr);--fact-min:auto}
  .fact{padding:16px 13px}
  .fact b{font-size:21px}
  .fact b.sm{font-size:14px}
  .fact span{margin-top:8px;font-size:11.5px;letter-spacing:.01em;line-height:1.45}

  /* цена: сумма и подпись в одну строку, ячейка ниже */
  .pv-cell:first-child{padding:22px}
  .pv-num{display:inline-block;font-size:27px;vertical-align:baseline}
  .pv-num .pre{font-size:14px;margin-right:.3em}
  .pv-per{display:inline-block;margin:0 0 0 12px;vertical-align:baseline}
  .pv-sec{margin-top:18px;padding-top:16px}

  /* пояснения под заголовками крупнее и плотнее */
  .pv-p{font-size:16.5px;font-weight:500}
  .pv-col li em{grid-column:1 / -1;padding-left:15px;font-size:15px;font-weight:500}

  /* мелкие пояснительные строки по всей странице */
  .er s{font-size:14.5px}
  .sx-src span{font-size:14px}
  .sx-out,.sx-res > span{font-size:14px}
  .ai-list p{font-size:15.5px}
  .step p{font-size:15.5px}
  .tli-note span{font-size:15px}
}
@media (max-width:520px){
  .pv-num{font-size:24px}
  .pv-per{margin-left:10px;font-size:11.5px}
}
@media (max-width:430px){
  /* ниже этой ширины сумма и подпись физически не встают в строку —
     возвращаем подпись под сумму, но ячейка остаётся низкой */
  .pv-per{display:block;margin:10px 0 0}
  /* и подписи фактов ужимаются, иначе ряд из трёх не читается */
  .fact{padding:14px 10px}
  .fact b{font-size:19px}
  .fact b.sm{font-size:13px}
  .fact span{font-size:10.5px;margin-top:7px}
}

/* ============================================================
   ФИНАЛЬНЫЙ CTA
   ============================================================ */
.cta{background:var(--signal);color:var(--signal-ink);position:relative;overflow:hidden}
.cta::after{content:"";position:absolute;left:0;right:0;top:0;height:10px;opacity:.55;
  background:repeating-linear-gradient(45deg,var(--signal-ink) 0 9px,transparent 9px 18px)}
.cta .wrap{position:relative;z-index:1}
.cta-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.cta h3{font-size:clamp(30px,4.3vw,55px);line-height:.94;max-width:14ch}
.cl-lead{margin-top:var(--sub-gap);font-size:var(--sub);line-height:1.45;color:rgba(26,10,2,.78);max-width:34ch}
.cl-f{display:flex;flex-direction:column;gap:14px}
.cl-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.cl-f input{background:rgba(26,10,2,.07);border:0;color:var(--signal-ink);font-family:var(--mono);font-size:13px;letter-spacing:.09em;
  padding:17px 16px;min-height:54px;box-shadow:inset 0 0 0 1px rgba(26,10,2,.28);
  clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,9px 100%,0 calc(100% - 9px));
  transition:box-shadow .2s ease,background .2s ease}
.cl-f input::placeholder{color:rgba(26,10,2,.5)}
.cl-f input:focus{outline:0;background:rgba(255,255,255,.5);box-shadow:inset 0 0 0 2px var(--signal-ink)}
.cl-f .btn{align-self:flex-start;padding:var(--btn-pad)}
.f-err{display:none;font-family:var(--mono);font-size:12px;line-height:1.6;color:#4A1000}
.consent{font-family:var(--mono);font-size:11.5px;line-height:1.6;color:rgba(26,10,2,.62)}
.consent a,.f-err a{color:var(--signal-ink);text-underline-offset:3px}
.cl-side{margin-top:36px;display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.cl-side-k{font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:rgba(26,10,2,.66)}
.cta .msg-links a{box-shadow:inset 0 0 0 1px rgba(26,10,2,.34);color:var(--signal-ink)}
.cta .msg-links a:hover{background:var(--signal-ink);color:var(--signal)}
@media (max-width:900px){.cta-grid{grid-template-columns:1fr;gap:34px}.cl-row{grid-template-columns:1fr}}

/* ============================================================
   ПОДВАЛ
   ============================================================ */
footer{background:var(--chassis);color:var(--on-chassis);padding:calc(var(--sec) * .55) 0}
.ft{display:flex;align-items:center;gap:26px;flex-wrap:wrap;padding-bottom:26px;border-bottom:1px solid var(--rule-c)}
footer .logo{color:var(--on-chassis)}
footer .logo i{color:var(--signal)}
.ft-links{display:flex;gap:2px;margin-left:auto;flex-wrap:wrap}
.ft-links a{font-family:var(--mono);font-size:12px;letter-spacing:.09em;text-transform:uppercase;text-decoration:none;
  padding:10px 15px;box-shadow:inset 0 0 0 1px var(--rule-c);color:var(--on-chassis);
  clip-path:polygon(0 0,calc(100% - 7px) 0,100% 7px,100% 100%,7px 100%,0 calc(100% - 7px));
  transition:background .2s ease,color .2s ease,transform .16s cubic-bezier(.2,.8,.2,1)}
.ft-links a:hover{background:var(--signal);color:var(--signal-ink);transform:translateY(-2px)}
.ft-req{margin-top:22px;font-family:var(--mono);font-size:12px;line-height:1.7;letter-spacing:.03em;color:var(--on-mut)}

/* ============================================================
   МОДАЛКА
   ============================================================ */
.modal{position:fixed;inset:0;z-index:80;display:none;align-items:center;justify-content:center;padding:20px;
  background:rgba(16,19,15,.62);backdrop-filter:blur(4px)}
.modal.open{display:flex}
.modal-box{--ch:var(--ch-lg);background:var(--field-3);width:100%;max-width:480px;padding:calc(var(--pad) * 1.3);position:relative;
  box-shadow:inset 0 0 0 1px var(--rule),10px 10px 0 rgba(26,10,2,.22);max-height:92vh;overflow:auto;
  animation:modalIn .3s cubic-bezier(.2,.85,.3,1)}
@keyframes modalIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.modal-close{position:absolute;right:14px;top:12px;width:34px;height:34px;background:none;border:0;cursor:pointer;
  font-size:22px;line-height:1;color:var(--ink-mut);transition:color .2s ease}
.modal-close:hover{color:var(--signal-deep)}
.modal-k{display:block;font-family:var(--mono);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--signal-deep);margin-bottom:14px}
.modal h3{margin-bottom:12px}
.m-sub{font-size:15px;line-height:1.5;color:var(--ink-mut);margin-bottom:22px}
.m-toggle{display:flex;gap:2px;margin-bottom:14px;flex-wrap:wrap}
.m-toggle button{font-family:var(--mono);font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;background:var(--field-2);
  color:var(--ink-mut);border:0;cursor:pointer;padding:11px 15px;
  clip-path:polygon(0 0,calc(100% - 7px) 0,100% 7px,100% 100%,7px 100%,0 calc(100% - 7px));transition:background .2s ease,color .2s ease}
.m-toggle button.on{background:var(--chassis);color:var(--on-chassis)}
#m-form{display:flex;flex-direction:column;gap:12px}
#m-form input{background:var(--field);border:0;color:var(--ink);font-family:var(--mono);font-size:13px;letter-spacing:.08em;
  padding:16px;min-height:52px;box-shadow:inset 0 0 0 1px var(--rule);
  clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,9px 100%,0 calc(100% - 9px));transition:box-shadow .2s ease}
#m-form input::placeholder{color:var(--ink-mut)}
#m-form input:focus{outline:0;box-shadow:inset 0 0 0 2px var(--signal)}
#m-form .consent{color:var(--ink-mut)}
#m-form .consent a{color:var(--signal-deep)}
#m-form .f-err{color:#8C2A00}
.m-foot{margin-top:24px;padding-top:20px;border-top:1px solid var(--rule-soft);display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.m-foot>span{font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mut)}

/* ---------- фокус ---------- */
:focus-visible{outline:2px solid var(--signal-deep);outline-offset:3px}
.slab :focus-visible,.cta :focus-visible,footer :focus-visible,.pr-line :focus-visible,.tk-b :focus-visible{outline-color:var(--lamp)}

/* ---------- подпись макета ---------- */
.stamp{padding:26px 0 60px;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mut);
  display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.stamp s{flex:1;height:1px;background:var(--rule);text-decoration:none;min-width:20px}

/* ---------- как это устроено · 4 карточки со срезом ---------- */
.wk-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.wk{--ch:12px;background:var(--field-3);padding:var(--pad);position:relative;overflow:hidden;
  box-shadow:inset 0 0 0 1px var(--rule-soft);transition:background .25s ease}
.wk::after{content:"";position:absolute;left:0;top:0;height:3px;width:0;background:var(--signal);
  transition:width .4s cubic-bezier(.2,.8,.2,1)}
.wk:hover{background:#fff}
.wk:hover::after{width:100%}
.wk-hd{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.wk-hd b{font-family:var(--mono);font-weight:400;font-size:12px;letter-spacing:.2em;color:var(--signal-deep);
  font-variant-numeric:tabular-nums}
.wk-hd s{flex:1;height:1px;background:var(--rule-soft);text-decoration:none}
.wk h4{font-size:20px;line-height:1.12;color:var(--ink);margin:0 0 14px}
.wk p{font-size:15px;line-height:1.55;color:var(--ink-2)}
@media (max-width:1100px){.wk-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.wk-grid{grid-template-columns:1fr}}

@media (max-width:900px){
  .wk{padding:calc(var(--pad) * 1.05)}
  .wk h4{font-size:19px}
  .wk p{font-size:14.5px}
}
@media (max-width:560px){
  .wk-grid{gap:14px}
  .wk-hd{margin-bottom:14px}
  .wk h4{font-size:18px;margin-bottom:10px}
}

/* ============================================================
   03 · СХЕМА · ВАРИАНТ 2 (технический дашборд)
   ============================================================ */
.s2-sec{margin-top:var(--blk-gap);background:#E9E9E7;padding:46px 40px 50px}
.s2-h{font-family:var(--disp);font-weight:700;text-transform:uppercase;font-size:clamp(26px,3.1vw,40px);
  line-height:1.02;color:#1A1A1A;margin:0 0 30px}
.s2{--ch:16px;background:#1A1A1A;color:#EDEDEA;position:relative;
  clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px))}

.s2-top{display:grid;grid-template-columns:28fr 5fr 40fr 5fr 32fr;border-bottom:1px solid rgba(237,237,234,.14)}
.s2-tc{display:flex;align-items:center;gap:12px;padding:15px 20px;min-height:52px}
.s2-top .s2-tc+.s2-tc,.s2-top .s2-tc{border-left:1px solid rgba(237,237,234,.14)}
.s2-top .s2-tc:first-child{border-left:0}
.s2-tc b{font-family:var(--mono);font-weight:400;font-size:12px;letter-spacing:.18em;color:#F0562A;
  font-variant-numeric:tabular-nums}
.s2-tc span{font-family:var(--disp);font-weight:600;text-transform:uppercase;font-size:14.5px;letter-spacing:.05em;
  line-height:1.1;color:#EDEDEA}
.s2-top .s2-gut{padding:0}

.s2-body{display:grid;grid-template-columns:28fr 5fr 40fr 5fr 32fr;align-items:stretch}
.s2-col{padding:26px 20px 28px;display:flex;flex-direction:column}
.s2-col+.s2-col{border-left:0}
.s2-gut{position:relative}
.s2-c2{position:relative;padding-left:0;padding-right:0}
.s2-lnk{position:absolute;top:0;bottom:0;width:12.5%;pointer-events:none}
.s2-lnk.l{left:-12.5%}
.s2-lnk.r{right:-12.5%}
.s2-lnk svg{position:absolute;inset:0;width:100%;height:100%}
.s2-lnk .lw{fill:none;stroke:rgba(237,237,234,.16);stroke-width:1}
.s2-lnk .lf{fill:none;stroke:#F0562A;stroke-width:1.4;stroke-dasharray:4 5;animation:s2flow 1.1s linear infinite}
.s2-lnk .ld{fill:none;stroke:rgba(237,237,234,.2);stroke-width:1;stroke-dasharray:3 5}
.s2-lnk .dot{fill:#F0562A}
@keyframes s2flow{to{stroke-dashoffset:-18}}
@media (prefers-reduced-motion:reduce){.s2-lnk .lf{animation:none}}

/* колонка 01 */
.s2-q{display:flex;flex-direction:column;gap:20px}
.s2-q>div>b{display:block;font-family:var(--text);font-weight:700;font-size:15px;line-height:1.3;color:#EDEDEA;margin-bottom:6px}
.s2-q>div>span{display:block;font-size:13.5px;line-height:1.5;color:#8E938C}
.s2-cap{margin-top:auto;padding-top:24px;font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;
  text-transform:uppercase;color:#8E938C}
.s2-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.s2-tags i{font-style:normal;font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;
  color:#C9CCC6;padding:8px 11px;box-shadow:inset 0 0 0 1px rgba(237,237,234,.2);
  clip-path:polygon(0 0,calc(100% - 6px) 0,100% 6px,100% 100%,6px 100%,0 calc(100% - 6px))}

/* колонка 02 · источники */
.s2-src{position:relative;display:grid;grid-template-rows:repeat(4,1fr);gap:14px;height:100%}
.s2-s{--ch:9px;position:relative;padding:14px 16px 15px 18px;display:flex;flex-direction:column;justify-content:center;
  clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,9px 100%,0 calc(100% - 9px))}
.s2-s b{display:block;font-family:var(--text);font-weight:700;font-size:15px;line-height:1.25;margin-bottom:5px}
.s2-s span{display:block;font-size:13.5px;line-height:1.45}
.s2-s.on{background:#EDEDEA}
.s2-s.on b{color:#1A1A1A}
.s2-s.on span{color:#4A4F49}
.s2-s.on::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#F0562A}
.s2-s.off{background:transparent;box-shadow:inset 0 0 0 1px rgba(237,237,234,.2);opacity:.45}
.s2-s.off b{color:#C9CCC6}
.s2-s.off span{color:#8E938C}

/* колонка 03 · результат */
.s2-res{display:flex;flex-direction:column;justify-content:center;height:100%}
.s2-card{--ch:10px;background:#232322;padding:16px;
  clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px))}
.s2-card>b{display:block;font-family:var(--text);font-weight:700;font-size:15px;color:#EDEDEA;margin-bottom:14px}
.s2-ad{background:#2C2C2B;padding:12px;display:flex;flex-direction:column;gap:10px}
.s2-ph{background:rgba(237,237,234,.16)}
.s2-ad-row{display:flex;gap:10px;align-items:flex-start}
.s2-btn{margin-top:4px;background:#F0562A;color:#1A0A02;font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;
  text-transform:uppercase;text-align:center;padding:11px 8px}
.s2-cnt{display:flex;align-items:center;gap:9px;margin-top:14px;padding-top:13px;
  border-top:1px solid rgba(237,237,234,.14);font-family:var(--mono);font-size:12px;letter-spacing:.06em}
.s2-cnt em{color:#8E938C;flex:1}
.s2-cnt strong{color:#F0562A;font-weight:400;font-variant-numeric:tabular-nums}
.s2-dotl{width:7px;height:7px;background:#FFC02E;flex:none}
.s2-out{margin-top:16px;font-size:13.5px;line-height:1.5;color:#8E938C}

@media (max-width:1000px){
  .s2-sec{padding:30px 20px 34px}
  .s2-top,.s2-body{grid-template-columns:1fr}
  .s2-top .s2-tc{border-left:0;border-top:1px solid rgba(237,237,234,.14)}
  .s2-top .s2-tc:first-child{border-top:0}
  .s2-gut,.s2-lnk{display:none}
  .s2-col+.s2-col{border-top:1px solid rgba(237,237,234,.14)}
}

.s2-note{margin-top:20px;font-size:15.5px;line-height:1.55;color:var(--ink-2);max-width:74ch}

/* запрос · вариант с двумя неравными колонками */
.req.req-flow h3{white-space:normal;max-width:none;text-wrap:nowrap;font-size:clamp(24px,2.5vw,36px)}
@media (max-width:900px){.req.req-flow h3{text-wrap:balance}.req.req-flow h3 br{display:none}.req .req-sub{white-space:normal}}
.req .req-sub{margin-top:16px;font-size:16.5px;line-height:1.55;color:var(--ink-2);max-width:none;white-space:nowrap}
.req-notes.split{grid-template-columns:.72fr 1.28fr;width:100%;align-items:stretch}
.req-notes .req-k{display:block;font-family:var(--mono);font-size:11.5px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--ink-mut);margin-bottom:12px}
.req-notes ul{display:flex;flex-direction:column;gap:9px;list-style:none;margin:0;padding:0}
.req-notes li{position:relative;padding-left:20px;font-size:15px;line-height:1.5;color:var(--ink-2)}
.req-notes li::before{content:"";position:absolute;left:0;top:8px;width:8px;height:2px;background:var(--signal-deep)}
@media (max-width:800px){.req-notes.split{grid-template-columns:1fr}}

/* запрос · метки вне рамок, рамки по контенту */
.req-notes.split{grid-template-columns:auto auto;justify-content:start;align-items:start;gap:var(--board-gap)}
.req-g{display:flex;flex-direction:column;align-items:flex-start}
.req-notes .req-g>.req-k{margin-bottom:10px}
.req-box{--ch:9px;background:var(--field);box-shadow:inset 0 0 0 1px var(--rule-soft);padding:24px;
  clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,9px 100%,0 calc(100% - 9px))}
.req-notes.split>.req-g{background:none;box-shadow:none;padding:0;clip-path:none}
@media (max-width:900px){.req-notes.split{grid-template-columns:1fr}.req-box{width:100%}}

.req-box{background:none;box-shadow:none;padding:0;clip-path:none}
.req-notes.split{gap:calc(var(--board-gap) * 1.6)}

/* запрос · две ступени сверху вниз */
.req-steps{margin-top:30px;display:flex;flex-direction:column;gap:24px}
.req-steps .req-g+.req-g{padding-top:24px;border-top:1px solid var(--rule-soft)}
.req-steps .req-k{margin-bottom:12px}
.req-steps ul{display:flex;flex-direction:column;gap:9px;list-style:none;margin:0;padding:0}
.req-steps li{position:relative;padding-left:20px;font-size:15px;line-height:1.5;color:var(--ink-2)}
.req-steps li::before{content:"";position:absolute;left:0;top:8px;width:8px;height:2px;background:var(--signal-deep)}
.req-steps .req-2col{display:grid;grid-template-columns:1fr 1fr;gap:9px 40px}
@media (max-width:800px){.req-steps .req-2col{grid-template-columns:1fr}}

/* цена + процесс · объединённая секция */
.pr-steps{margin-top:var(--blk-gap)}
.pr-steps .blk-head{margin-bottom:calc(var(--head-gap) * .62)}
.pr-steps .blk-head h3{font-size:clamp(19px,2vw,25px)}
.pr-steps .blk-head .sub{margin-top:12px}

.step-cta{background:var(--signal);color:var(--signal-ink);gap:18px}
.step-cta:hover{background:var(--signal)}
.step-cta::after{display:none}
.step-cta h3{color:var(--signal-ink);font-size:clamp(20px,1.9vw,24px);margin-bottom:2px}
.step-cta .btn.dark{align-self:flex-start}
.step-cta-msg{display:flex;flex-direction:column;gap:10px;margin-top:auto}
.step-cta-k,.step-cta-note{font-family:var(--mono);font-size:12px;letter-spacing:.08em;color:var(--signal-ink);opacity:.72}
.step-cta .msg-links a{color:var(--signal-ink);box-shadow:inset 0 0 0 1px rgba(26,10,2,.35)}
.step-cta .msg-links a:hover{background:var(--chassis);color:var(--on-chassis);box-shadow:none}
@media (max-width:1000px){.steps.steps-5{grid-template-columns:repeat(4,1fr)}.step-cta{grid-column:1/-1}}

/* правка 1 · служебный заголовок крупнее и плотнее */
.pv-inc span{font-size:14px;letter-spacing:.16em;font-weight:700;-webkit-text-stroke:.3px currentColor}

/* цена · шаги и полоса CTA */
.pr-steps .pv-inc{margin-bottom:0}
.pr-steps-sub{margin:14px 0 calc(var(--head-gap) * .62);font-size:16px;line-height:1.55;color:var(--ink-2)}
.pr-steps .steps{grid-template-columns:repeat(4,1fr)}
.pr-steps .step{padding:calc(var(--pad) * 1.05)}
.pr-cta{--ch:var(--ch-lg);background:var(--signal);color:var(--signal-ink);padding:calc(var(--pad) * 1.05) calc(var(--pad) * 1.2);
  margin-top:0;display:grid;grid-template-columns:auto 1fr auto;gap:32px;align-items:center;position:relative;overflow:hidden}
.pr-cta::after{content:"";position:absolute;left:0;right:0;top:0;height:8px;opacity:.5;
  background:repeating-linear-gradient(45deg,var(--signal-ink) 0 8px,transparent 8px 16px)}
.pr-cta b{font-family:var(--disp);font-weight:700;text-transform:uppercase;font-size:clamp(21px,2.4vw,30px);line-height:1.1}
.pr-cta-btn{justify-self:start}
.pr-cta-msg{display:flex;flex-direction:column;align-items:flex-end;gap:9px;text-align:right}
.pr-cta-k{font-family:var(--mono);font-size:12.5px;letter-spacing:.06em;color:rgba(26,10,2,.78)}
.pr-cta-links a{color:var(--signal-ink);box-shadow:inset 0 0 0 1px rgba(26,10,2,.35)}
.pr-cta-links a:hover{background:var(--chassis);color:var(--on-chassis);box-shadow:none}
@media (max-width:900px){.pr-cta{grid-template-columns:1fr;gap:20px}
  .pr-cta-msg{align-items:flex-start;text-align:left}}

/* ---------- мобильный дашборд источников ---------- */
.s2-mob{padding:0}
.s2m-step{padding:22px 18px 24px}
.s2m-step+.s2m-step{border-top:1px solid rgba(237,237,234,.14)}
.s2-mob .s2-tc{padding:0;margin-bottom:16px;min-height:0;border:0}
.s2m-body{display:flex;flex-direction:column;gap:16px}
.s2-mob .s2-q>div>b{font-size:14.5px}
.s2-mob .s2-q>div>span{font-size:13px}
.s2m-swipe{display:grid;grid-auto-flow:column;grid-auto-columns:78%;gap:12px;overflow-x:auto;
  scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:4px}
.s2m-swipe::-webkit-scrollbar{display:none}
.s2m-swipe .s2-s{scroll-snap-align:start;opacity:1}
.s2m-swipe .s2-s.off{opacity:.5}
.s2m-hint{display:block;margin-top:12px;font-family:var(--mono);font-size:11px;letter-spacing:.1em;
  text-transform:uppercase;color:#8E938C}
.s2-mob .s2-cap,.s2-mob .s2-tags{margin-top:0}
.s2-note{margin-top:18px;font-size:14.5px;line-height:1.55;color:var(--ink-2)}

/* ---------- «Поток откликов» · sticky-слайдер ---------- */
.effs{position:relative;height:calc(3 * 100svh)}
.effs-stick{position:sticky;top:0;height:100svh;display:flex;flex-direction:column;gap:12px;
  padding:14px 0 18px;background:var(--field)}
.effs-rail{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;flex:none}
.efb{--ch:8px;background:var(--field-3);box-shadow:inset 0 0 0 1px var(--rule-soft);
  padding:10px 10px 11px;display:flex;flex-direction:column;gap:6px;text-align:left;cursor:pointer;
  transition:background .2s ease}
.efb b{font-family:var(--mono);font-weight:400;font-size:11px;letter-spacing:.16em;color:var(--ink-mut)}
.efb span{font-family:var(--disp);font-weight:600;text-transform:uppercase;font-size:11.5px;line-height:1.14;color:var(--ink)}
.efb.on{background:var(--chassis);box-shadow:none}
.efb.on b{color:var(--lamp)}
.efb.on span{color:var(--on-chassis)}
.effs-panel{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:var(--pad)}
.efp{display:none}
.efp.on{display:block}
.efp-h{display:flex;align-items:baseline;gap:12px}
.efp-h b{font-family:var(--mono);font-weight:400;font-size:12px;letter-spacing:.18em;color:var(--lamp)}
.efp-h h4{font-family:var(--disp);font-weight:700;text-transform:uppercase;font-size:21px;line-height:1.08;color:var(--on-chassis)}
.efp-s{display:block;margin-top:10px;font-size:13.5px;line-height:1.5;color:var(--on-mut)}
.efp .ep-lead{margin-top:16px}

/* sticky-слайдер · триггеры и плотность */
.effs-t{position:absolute;left:0;width:1px;height:33.34%;pointer-events:none}
.effs-t[data-i="0"]{top:0}
.effs-t[data-i="1"]{top:33.33%}
.effs-t[data-i="2"]{top:66.66%}
.effs-stick{height:auto;min-height:100svh}
.effs-panel{flex:1 1 auto;min-height:0;overflow:visible;padding:calc(var(--pad) * .92)}
.efp-h h4{font-size:19px}
.efp-s{font-size:13px;margin-top:9px}
.efp .ep-lead{margin-top:13px;font-size:13.5px;line-height:1.5}
.efp .ep-div{margin:14px 0}
.efp .ef-s{gap:11px}
.efp .ef-s p{font-size:13px;line-height:1.5}

.effs-stick{top:67px;min-height:calc(100svh - 67px);z-index:20}

@media (max-width:900px){
  .req .req-sub{white-space:normal;max-width:none}
  .req.req-flow h3{text-wrap:balance;white-space:normal}
  .req.req-flow h3 br{display:none}
}

/* тестовое размещение · переработанный CTA */
.pr-line{grid-template-columns:1fr 1.25fr auto;align-items:center}
.pr-l2-h h3{margin-bottom:12px}
.pr-l2-h p{font-size:15px;line-height:1.55;color:var(--on-mut);max-width:30ch}
.pr-l2-pts{display:grid;gap:14px}
.pr-pt{--ch:9px;background:var(--chassis-3);padding:16px 18px 17px;display:flex;flex-direction:column;gap:8px}
.pr-pt-k{font-family:var(--mono);font-size:11.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--lamp);-webkit-text-stroke:.3px currentColor}
.pr-pt p{font-size:14.5px;line-height:1.5;color:var(--on-chassis)}
.pr-l2-act{gap:12px}
.pr-l2-act .pr-k{max-width:28ch}
@media (max-width:1000px){.pr-line{grid-template-columns:1fr}.pr-l2-h p{max-width:none}.pr-l2-act .pr-k{max-width:none}}

/* ---------- планшет: мобильные раскладки ---------- */
@media (max-width:1000px){
  .s2-top{display:none}
  .s2-body{grid-template-columns:1fr}
  .s2-col{padding:22px 20px 24px}
  .s2-col+.s2-col{border-top:1px solid rgba(237,237,234,.14)}
  .s2-src{display:grid;grid-auto-flow:column;grid-auto-columns:64%;gap:12px;overflow-x:auto;
    scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;height:auto}
  .s2-src::-webkit-scrollbar{display:none}
  .s2-src .s2-s{scroll-snap-align:start}
  .s2-lnk{display:none}

  .eff{grid-template-columns:1fr;gap:0}
  .eff-rail{position:sticky;top:67px;z-index:20;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;
    background:var(--field);padding:12px 0}
  .er{flex-direction:column;align-items:flex-start;gap:8px;padding:12px}
  .er .er-t s{display:none}
  .er .er-t b{font-family:var(--disp);font-weight:600;text-transform:uppercase;font-size:12.5px;line-height:1.14}
  .eff-body{margin-top:12px}

  .req-notes.split{grid-template-columns:1fr}
  .pr-cta{grid-template-columns:1fr;gap:20px}
  .pr-cta-msg{align-items:flex-start;text-align:left}
  .pr-line{grid-template-columns:1fr}
}

/* источники · страницы по два + стрелки */
.s2m-nav{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.s2m-arw{width:38px;height:38px;flex:none;display:grid;place-items:center;background:transparent;
  color:#EDEDEA;box-shadow:inset 0 0 0 1px rgba(237,237,234,.22);cursor:pointer;
  clip-path:polygon(0 0,calc(100% - 7px) 0,100% 7px,100% 100%,7px 100%,0 calc(100% - 7px))}
.s2m-arw svg{width:17px;height:17px}
.s2m-arw:disabled{opacity:.3;cursor:default}
.s2m-pg{flex:1;font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;color:#8E938C;
  font-variant-numeric:tabular-nums;text-align:right}
.s2m-swipe{display:grid;grid-auto-flow:column;grid-auto-columns:100%;gap:0;overflow-x:auto;
  scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.s2m-swipe::-webkit-scrollbar{display:none}
.s2m-page{scroll-snap-align:start;display:grid;grid-template-rows:1fr 1fr;gap:12px}
.s2m-swipe .s2-s{padding:11px 14px 12px 16px}
.s2m-swipe .s2-s b{font-size:14.5px;margin-bottom:3px}
.s2m-swipe .s2-s span{font-size:13px;line-height:1.4}
.s2m-swipe .s2-s.off{opacity:.5}

/* кому и когда · плотность карточек на узком кадре */
@media (max-width:820px){
  .eds-board main .kk-card{padding:calc(var(--cell) * 2) calc(var(--cell) * .5);gap:calc(var(--cell) * 1.4)}
  .eds-board main .kk-card p{font-weight:500}
}

/* планшет · плотность карточек «кому и когда» (портрет 768–820) */
@media (max-width:820px){
  main .kk-card{padding:calc(var(--cell) * 1.2) calc(var(--cell) * 1.3);gap:calc(var(--cell) * .8)}
  main .kk-card p{font-weight:500}
}

/* ---------- состояния форм: отправка / успех / ошибка ---------- */
.f-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none}
form.sending .btn{pointer-events:none;opacity:.62}
form.sending .btn span::after{content:' ·';animation:fdots 1s steps(4,end) infinite}
@keyframes fdots{0%{content:' ·'}25%{content:' ··'}50%{content:' ···'}75%{content:' ····'}}
form.err .f-err{display:block}
form.sent,#m-form.sent{display:none}
.f-ok{display:none;background:rgba(26,10,2,.07);box-shadow:inset 0 0 0 1px rgba(26,10,2,.28);padding:24px;max-width:46ch}
.f-ok.on{display:block}
.f-ok-k{display:block;font-family:var(--mono);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:rgba(26,10,2,.66);margin-bottom:12px}
.f-ok b{display:block;font-family:var(--display);font-weight:700;font-size:26px;line-height:1.06;text-transform:uppercase;color:var(--signal-ink)}
.f-ok p{margin-top:10px;font-size:15px;line-height:1.5;color:rgba(26,10,2,.78);text-wrap:pretty}
.f-ok a{color:var(--signal-ink);text-underline-offset:3px}
#m-ok{background:var(--field-3);box-shadow:inset 0 0 0 1px var(--rule-soft);max-width:none}
#m-ok .f-ok-k{color:var(--ink-mut)}
#m-ok b{color:var(--ink)}
#m-ok p{color:var(--ink-2)}
#m-ok a{color:var(--signal-deep)}
@media (max-width:600px){.f-ok{padding:20px}.f-ok b{font-size:22px}}
