/* ───────── Деловая Лига · сайт-история · v3 ───────── */

:root{
  --bg:#0A0A0C;
  --bg-2:#101017;
  --ink:#F4F5F9;
  --ink-2:#AEB3C2;
  --ink-3:#787E90;
  --acc:#9A9BF2;
  --acc-2:#6A5BDB;
  --line:rgba(244,245,249,.08);
  --f-head:'Unbounded', system-ui, sans-serif;
  --f-body:'Onest', system-ui, sans-serif;
  --ease:cubic-bezier(.22,1,.36,1);
}

*{box-sizing:border-box}
body{
  margin:0; background:var(--bg); color:var(--ink);
  font-family:var(--f-body); font-size:17px; line-height:1.55;
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
em{font-style:normal; color:var(--acc)}
.cv{position:absolute; inset:0; width:100%; height:100%; display:block}

/* ── цветные небулы: мягкий свет в сценах ── */
.neb{position:relative}
.neb::before{
  content:''; position:absolute; inset:-10%; pointer-events:none; z-index:0;
  background:
    radial-gradient(ellipse 52% 38% at 50% 72%, rgba(106,91,219,.17), transparent 68%),
    radial-gradient(ellipse 30% 24% at 18% 18%, rgba(154,155,242,.07), transparent 70%),
    radial-gradient(ellipse 26% 22% at 84% 30%, rgba(106,91,219,.08), transparent 70%);
}
.neb--intro::before{
  background:
    radial-gradient(ellipse 46% 36% at 50% 56%, rgba(124,104,255,.2), transparent 66%),
    radial-gradient(ellipse 70% 40% at 50% 110%, rgba(106,91,219,.14), transparent 72%);
}
.neb--dive::before{
  background:
    radial-gradient(ellipse 50% 42% at 50% 50%, rgba(124,104,255,.14), transparent 68%);
}
.neb--graph::before{
  background:
    radial-gradient(ellipse 54% 44% at 50% 62%, rgba(106,91,219,.15), transparent 70%),
    radial-gradient(ellipse 24% 18% at 80% 16%, rgba(154,155,242,.07), transparent 70%);
}
.neb--req::before{
  background:radial-gradient(ellipse 42% 34% at 50% 54%, rgba(124,104,255,.18), transparent 66%);
}
.neb--cta{position:relative}
.neb--cta::before{
  content:''; position:absolute; inset:0; pointer-events:none; z-index:0;
  background:radial-gradient(ellipse 46% 40% at 50% 62%, rgba(124,104,255,.15), transparent 70%);
}

/* ── мягкие перетекания между сценами ── */
.pin__stage::after{
  content:''; position:absolute; left:0; right:0; bottom:0; height:16vh; pointer-events:none; z-index:5;
  background:linear-gradient(180deg, rgba(10,10,12,0), rgba(10,10,12,.92));
}
.pin__stage::before{
  content:''; position:absolute; left:0; right:0; top:0; height:12vh; pointer-events:none; z-index:5;
  background:linear-gradient(0deg, rgba(10,10,12,0), rgba(10,10,12,.9));
}

/* ── бренд-метка ── */
.brand{
  position:fixed; top:26px; left:34px; z-index:40;
  font-family:var(--f-head); font-weight:700; font-size:12px; letter-spacing:.4em; color:var(--ink-3);
  mix-blend-mode:screen; pointer-events:none; opacity:0; transition:opacity 1s;
}
.brand.on{opacity:1}

/* ── каркас ── */
.pin{height:calc(var(--len) * 1vh); position:relative}
.pin__stage{position:sticky; top:0; height:100vh; overflow:hidden; display:flex; align-items:center; justify-content:center}
.overlay{position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:0 20px; pointer-events:none; z-index:2}
.sec{position:relative; padding:22vh 20px; display:flex; flex-direction:column; align-items:center}

[data-reveal]{opacity:0; transform:translateY(30px); transition:opacity 1.1s var(--ease), transform 1.1s var(--ease)}
[data-reveal].on{opacity:1; transform:none}

/* ── открытие ── */
.stage-intro{flex-direction:column; text-align:center; padding:0 20px}
.intro__logo{
  position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); z-index:2;
  width:min(380px,62vw); will-change:transform,opacity,filter;
}
.intro__logo img{width:100%; height:auto; display:block}
.intro__brand{
  position:absolute; left:0; right:0; top:66%; margin:0; z-index:2;
  font-family:var(--f-head); font-weight:700; font-size:clamp(13px,1.4vw,17px);
  letter-spacing:.52em; color:var(--ink-2); text-indent:.52em;
  opacity:0; will-change:opacity,transform;
}
.intro__head{
  position:relative; z-index:2; margin:0;
  font-family:var(--f-head); font-weight:900;
  font-size:clamp(34px,5.6vw,78px); line-height:1.1; letter-spacing:-.02em;
  opacity:0; will-change:opacity,transform,filter;
}
.floatwords{position:absolute; inset:0; z-index:1; pointer-events:none}
.floatwords span{
  position:absolute; font-family:var(--f-head); font-weight:700;
  font-size:clamp(15px,1.7vw,22px); color:var(--acc); opacity:0;
  filter:blur(.4px); white-space:nowrap; will-change:transform,opacity;
}
.floatwords span:nth-child(1){left:12%; top:24%}
.floatwords span:nth-child(2){right:11%; top:30%}
.floatwords span:nth-child(3){left:16%; bottom:26%}
.floatwords span:nth-child(4){right:15%; bottom:22%}
.floatwords span:nth-child(5){left:46%; top:15%}
.floatwords span:nth-child(6){right:38%; bottom:13%}

.hint{
  position:absolute; bottom:34px; left:50%; transform:translateX(-50%); z-index:6;
  display:flex; align-items:center; gap:12px; color:var(--ink-3);
  font-size:13px; letter-spacing:.26em; text-transform:uppercase;
  transition:opacity .8s;
}
.hint.off{opacity:0}
.hint__wheel{width:20px; height:32px; border:1px solid var(--ink-3); border-radius:12px; display:flex; justify-content:center; padding-top:6px}
.hint__wheel i{width:2px; height:7px; background:var(--acc); border-radius:2px; animation:wheel 1.6s ease-in-out infinite}
@keyframes wheel{0%{transform:translateY(0); opacity:1}70%{transform:translateY(10px); opacity:0}100%{opacity:0}}

/* ── цитаты ── */
.stage-quote{flex-direction:column; gap:26px; text-align:center; padding:0 clamp(20px,8vw,120px)}
.litline{
  margin:0; max-width:1060px; position:relative; z-index:2;
  font-family:var(--f-head); font-weight:700;
  font-size:clamp(24px,4vw,52px); line-height:1.24; letter-spacing:-.01em;
}
.litline span{color:rgba(244,245,249,.14); transition:color .6s ease}
.litline span.lit{color:var(--ink)}
.litline span.acc.lit{color:var(--acc)}

.time__big{margin:0; position:relative; z-index:2; font-family:var(--f-head); font-weight:900; font-size:clamp(30px,5.2vw,70px); line-height:1.14; letter-spacing:-.015em}
.time__sub{margin:0; position:relative; z-index:2; max-width:640px; color:var(--ink-2); font-size:clamp(15px,1.5vw,19px)}
.stage-quote .time__big, .stage-quote .time__sub{opacity:0; transform:translateY(26px); transition:all 1.1s var(--ease)}
.stage-quote.on .time__big, .stage-quote.on .time__sub{opacity:1; transform:none}
.stage-quote.on .time__sub{transition-delay:.22s}

/* ── переход: ноутбук ── */
.conv__t{
  margin:0; position:absolute; left:0; right:0; z-index:4; text-align:center; padding:0 20px;
  font-family:var(--f-head); font-weight:700; line-height:1.2;
  opacity:0; transform:translateY(26px); filter:blur(6px);
  transition:opacity 1s var(--ease), transform 1s var(--ease), filter 1s var(--ease);
}
.conv__t1{top:12vh; font-size:clamp(26px,4.4vw,58px)}
.conv__t2{bottom:11vh; font-size:clamp(18px,2.6vw,34px); color:var(--ink-2)}
.conv__t.on{opacity:1; transform:none; filter:none}

.mac{
  position:relative; z-index:2; width:min(820px,72vw);
  will-change:transform,opacity; opacity:0;
}
.mac__screen{
  border-radius:18px; overflow:hidden; background:#0D0D13;
  border:2px solid #26262f;
  box-shadow:0 60px 140px rgba(0,0,0,.65), 0 0 90px rgba(124,104,255,.14), inset 0 0 0 1px rgba(0,0,0,.6);
}
.mac__screen img{display:block; width:100%; height:auto}
.mac__base{
  margin:0 auto; width:116%; margin-left:-8%; height:14px;
  background:linear-gradient(180deg,#2a2a35,#17171e);
  border-radius:0 0 18px 18px;
  box-shadow:0 24px 60px rgba(0,0,0,.5);
}
.mac--inline{opacity:1; width:100%}
.mac--inline .mac__screen{box-shadow:0 40px 110px rgba(0,0,0,.55), 0 0 70px rgba(124,104,255,.1)}

.tunnel{position:absolute; inset:0; z-index:3; pointer-events:none}
.tunnel img{
  position:absolute; left:50%; top:50%; width:30vw; border-radius:12px;
  border:1px solid rgba(154,155,242,.25); background:#0D0D13;
  box-shadow:0 40px 120px rgba(0,0,0,.6), 0 0 60px rgba(124,104,255,.12);
  opacity:0; will-change:transform,opacity,filter;
}
.tunnel img.tunnel--ph{width:11vw; border-radius:20px}

/* ── граф ── */
.overlay--graph{justify-content:flex-start; padding-top:11vh}
.graph__t{
  margin:0 0 10px; max-width:980px;
  font-family:var(--f-head); font-weight:700; font-size:clamp(22px,3.4vw,44px); line-height:1.26;
  opacity:0; transform:translateY(26px); filter:blur(6px);
  transition:opacity 1s var(--ease), transform 1s var(--ease), filter 1s var(--ease);
  text-shadow:0 2px 40px rgba(10,10,12,.85);
}
.graph__t2{font-size:clamp(15px,1.8vw,22px); font-family:var(--f-body); font-weight:500; color:var(--ink-2)}
.graph__t.on{opacity:1; transform:none; filter:none}

.dossier{
  position:absolute; right:clamp(16px,7vw,120px); bottom:14vh; width:300px; z-index:3;
  background:rgba(16,16,23,.82); border:1px solid rgba(154,155,242,.2); border-radius:16px;
  padding:16px 18px; backdrop-filter:blur(10px);
  box-shadow:0 30px 80px rgba(0,0,0,.5), 0 0 50px rgba(124,104,255,.08);
  opacity:0; transform:translateY(34px); filter:blur(4px);
  transition:opacity 1.1s var(--ease), transform 1.1s var(--ease), filter 1.1s var(--ease);
}
.dossier.on{opacity:1; transform:none; filter:none}
.dossier__head{display:flex; gap:12px; align-items:center; margin-bottom:12px}
.dossier__head b{display:block; font-size:16px}
.dossier__head span{color:var(--ink-3); font-size:13px}
.dossier__rows div{display:flex; justify-content:space-between; gap:14px; padding:7px 0; border-top:1px solid var(--line); font-size:13.5px}
.dossier__rows span{color:var(--ink-3)}
.dossier__rows b{font-weight:600; text-align:right}
.ava{
  width:38px; height:38px; border-radius:50%; flex:none;
  background:
    radial-gradient(circle at 32% 30%, hsl(var(--h,252) 70% 72% / .95), transparent 58%),
    radial-gradient(circle at 70% 72%, hsl(calc(var(--h,252) + 40) 60% 48% / .9), hsl(var(--h,252) 45% 22%));
  border:1px solid rgba(244,245,249,.18);
}

/* ── вставки с экранами ── */
.sec--shot{padding:20vh 20px}
.wrap2{display:grid; grid-template-columns:1fr 1.15fr; gap:clamp(30px,6vw,90px); align-items:center; width:min(1220px,100%); position:relative; z-index:1}
.eyebrow{margin:0 0 18px; color:var(--acc); font-size:12.5px; letter-spacing:.34em; text-transform:uppercase; font-weight:600}
.eyebrow--c{text-align:center}
.sec h2{margin:0 0 18px; font-family:var(--f-head); font-weight:700; font-size:clamp(24px,3vw,40px); line-height:1.22; letter-spacing:-.01em}
.sub{margin:0; color:var(--ink-2); max-width:480px}

/* ── запрос словами ── */
.stage-req{flex-direction:column; gap:48px; text-align:center; padding:0 20px}
.req__t{
  margin:0; position:relative; z-index:2;
  font-family:var(--f-head); font-weight:700; font-size:clamp(24px,3.8vw,50px);
  opacity:0; transform:translateY(26px); filter:blur(6px);
  transition:opacity 1s var(--ease), transform 1s var(--ease), filter 1s var(--ease);
}
.req__t.on{opacity:1; transform:none; filter:none}
.bigsearch{position:relative; z-index:2; opacity:0; transform:scale(.94); transition:opacity 1.1s var(--ease), transform 1.1s var(--ease)}
.bigsearch.on{opacity:1; transform:none}
.bigsearch__bar{
  position:relative; display:flex; align-items:center; gap:14px;
  width:min(680px,90vw); padding:24px 26px; border-radius:18px;
  background:rgba(18,18,26,.92); border:1px solid rgba(154,155,242,.38); color:var(--acc);
  box-shadow:0 0 0 1px rgba(154,155,242,.08), 0 30px 110px rgba(124,104,255,.16);
}
.bigsearch__text{color:var(--ink); font-size:clamp(17px,2vw,23px); font-weight:500; white-space:nowrap; overflow:hidden; text-align:left; min-height:1.4em}
.caret{width:2px; height:1.25em; background:var(--acc); animation:blink 1s steps(1) infinite; flex:none}
@keyframes blink{50%{opacity:0}}
.bigsearch__rings{position:absolute; left:50%; top:50%; z-index:-1}
.bigsearch__rings i{
  position:absolute; left:0; top:0; width:1px; height:1px; border-radius:50%;
  border:1px solid rgba(154,155,242,.25);
  animation:ring 4.2s var(--ease) infinite;
}
.bigsearch__rings i:nth-child(2){animation-delay:1.4s}
.bigsearch__rings i:nth-child(3){animation-delay:2.8s}
@keyframes ring{
  0%{transform:translate(-50%,-50%) scale(1); width:200px; height:200px; opacity:.5}
  100%{transform:translate(-50%,-50%) scale(1); width:720px; height:720px; opacity:0}
}
.req__s{
  margin:0; position:relative; z-index:2; color:var(--ink-2); font-size:clamp(15px,1.6vw,19px);
  opacity:0; transform:translateY(20px); transition:all 1s var(--ease) .15s;
}
.req__s.on{opacity:1; transform:none}

/* ── агент ── */
.sec--agent{padding:22vh 20px}
.term{
  background:#0D0D13; border:1px solid var(--line); border-radius:14px; overflow:hidden;
  font-family:'SF Mono', ui-monospace, Menlo, monospace; font-size:13.5px;
  box-shadow:0 40px 100px rgba(0,0,0,.5), 0 0 60px rgba(124,104,255,.07);
}
.term__bar{display:flex; align-items:center; gap:7px; padding:11px 14px; border-bottom:1px solid var(--line); background:rgba(244,245,249,.03)}
.term__bar i{width:10px; height:10px; border-radius:50%; background:rgba(244,245,249,.14)}
.term__bar span{margin-left:8px; color:var(--ink-3); font-size:12px; letter-spacing:.08em}
.term__body{padding:16px 18px; min-height:218px; color:var(--ink-2); line-height:1.9}
.term__body .ok{color:var(--acc)}
.term__body .dim{color:var(--ink-3)}

/* ── ячейки ── */
.stage-cells{flex-direction:column; gap:40px; padding:0 20px}
.cells__t{margin:0; position:relative; z-index:1; font-family:var(--f-head); font-weight:700; font-size:clamp(22px,3.4vw,42px); text-align:center}
.cells{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; width:min(1120px,94vw); position:relative; z-index:1}
.cell{
  border:1px solid var(--line); border-radius:16px; min-height:240px; padding:16px;
  background:linear-gradient(180deg, rgba(154,155,242,.04), rgba(244,245,249,0));
  display:flex; flex-direction:column; gap:12px;
}
.cell>span{color:var(--ink-3); font-size:12.5px; letter-spacing:.26em; text-transform:uppercase}
.chips{display:flex; flex-wrap:wrap; gap:8px; align-content:flex-start}
.chip{
  padding:7px 12px; border-radius:999px; font-size:13px; white-space:nowrap;
  border:1px solid var(--line); background:rgba(16,16,23,.9); color:var(--ink-2);
  opacity:0; transform:translateY(14px) scale(.92); filter:blur(2px);
  transition:opacity .9s var(--ease), transform .9s var(--ease), filter .9s var(--ease);
}
.chip.on{opacity:1; transform:none; filter:none}
.chip--acc{border-color:rgba(154,155,242,.4); color:var(--acc)}

/* ── экраны платформы ── */
.sec--screens{padding:24vh 20px; overflow:hidden}
.screens__t{margin:0 0 10px; font-family:var(--f-head); font-weight:700; font-size:clamp(24px,3.4vw,44px); text-align:center}
.screens{position:relative; width:min(1240px,100%); height:clamp(380px,52vw,640px); margin-top:48px; perspective:1400px}
.scr{
  position:absolute; margin:0; border-radius:14px; overflow:hidden;
  border:1px solid rgba(154,155,242,.22); background:#0D0D13;
  box-shadow:0 50px 120px rgba(0,0,0,.6), 0 0 80px rgba(124,104,255,.09);
  will-change:transform;
}
.scr img{display:block; width:100%; height:auto}
.scr--c{left:50%; top:0; width:54%; transform:translateX(-50%); z-index:3}
.scr--l{left:-2%; top:14%; width:40%; transform:rotateY(18deg) rotateX(4deg); z-index:2}
.scr--r{right:-2%; top:18%; width:40%; transform:rotateY(-18deg) rotateX(4deg); z-index:2}
.scr--m{left:58%; top:34%; width:15%; border-radius:26px; z-index:4; border-color:rgba(244,245,249,.25)}
.screens__s{margin:30px 0 0; color:var(--ink-3); font-size:15px; text-align:center; max-width:560px}

/* ── фишки + телефон ── */
.sec--feat{padding:24vh 20px}
.featwrap{display:grid; grid-template-columns:1.2fr .8fr; gap:clamp(30px,6vw,80px); width:min(1180px,100%); align-items:start}
.feat{width:100%}
.feat__row{padding:clamp(36px,6vh,64px) 0; border-top:1px solid var(--line)}
.feat__row h3{margin:0 0 12px; font-family:var(--f-head); font-weight:700; font-size:clamp(20px,2.4vw,30px); letter-spacing:-.01em}
.feat__row p{margin:0; color:var(--ink-2); max-width:560px}
.featphone{position:sticky; top:12vh; display:flex; justify-content:center}
.iphone{
  margin:0; width:min(290px,70%); border-radius:34px; overflow:hidden;
  border:2px solid #2a2a35; background:#0D0D13;
  box-shadow:0 50px 130px rgba(0,0,0,.6), 0 0 80px rgba(124,104,255,.12);
  will-change:transform;
}
.iphone img{display:block; width:100%; height:auto}

/* ── призывы ── */
.sec--midcta{padding:30vh 20px; text-align:center}
.midcta__t{margin:0 0 30px; position:relative; z-index:1; font-family:var(--f-head); font-weight:900; font-size:clamp(30px,5vw,64px)}
.midcta__s{margin:22px 0 0; position:relative; z-index:1; color:var(--ink-3); font-size:15px}
.bigin{
  position:relative; z-index:1; display:flex; align-items:center; width:min(640px,92vw);
  background:rgba(18,18,26,.92); border:1px solid rgba(154,155,242,.38); border-radius:16px; padding:8px 8px 8px 22px;
  box-shadow:0 0 0 1px rgba(154,155,242,.08), 0 28px 100px rgba(124,104,255,.15);
}
.bigin input{flex:1; min-width:0; background:none; border:0; outline:none; color:var(--ink); font:inherit; font-size:17px; height:52px}
.bigin input::placeholder{color:var(--ink-3)}
.bigin button{
  flex:none; height:52px; padding:0 26px; border:0; border-radius:11px; cursor:pointer;
  background:linear-gradient(135deg, #ABACF6, #8886EC); color:#15151F; font:inherit; font-weight:700; font-size:16px;
}
.bigin--xl{width:min(760px,94vw); padding:10px 10px 10px 26px}
.bigin--xl input{height:62px; font-size:19px}
.bigin--xl button{height:62px; padding:0 34px; font-size:17px}

/* ── контраст ── */
.stage-contrast{flex-direction:column; gap:8px; text-align:center; padding:0 20px}
.num{position:absolute; left:0; right:0; top:50%; transform:translateY(-50%); transition:opacity .6s, filter .6s; z-index:1}
.num b{display:block; font-family:var(--f-head); font-weight:900; font-size:clamp(44px,8.6vw,124px); line-height:1.02; letter-spacing:-.02em}
.num span{display:block; margin-top:14px; color:var(--ink-2); font-size:clamp(15px,1.8vw,21px)}
.num--old b{color:var(--ink-3)}
.num--new b{color:var(--acc); text-shadow:0 0 90px rgba(154,155,242,.45)}
.num--new{opacity:0}
.contrast__why{
  position:absolute; bottom:10vh; left:0; right:0; margin:0; z-index:1;
  color:var(--ink-2); font-size:clamp(15px,1.7vw,20px);
  opacity:0; transform:translateY(16px); transition:all 1s var(--ease);
}
.contrast__why.on{opacity:1; transform:none}

/* ── лавина ── */
.sec--people{padding:22vh 0; gap:34px; overflow:hidden}
.people__t{
  margin:0 20px 26px; max-width:900px; text-align:center;
  font-family:var(--f-head); font-weight:700; font-size:clamp(23px,3.6vw,46px); line-height:1.22;
}
.rail{display:flex; gap:14px; width:max-content; will-change:transform}
.rail--mid{opacity:.55; filter:blur(.6px)}
.pcard{
  display:flex; align-items:center; gap:12px; flex:none;
  padding:12px 18px 12px 12px; border-radius:999px;
  border:1px solid var(--line); background:rgba(16,16,23,.92);
  box-shadow:0 14px 44px rgba(0,0,0,.42);
}
.pcard b{font-size:14.5px; white-space:nowrap}
.pcard span{display:block; color:var(--ink-3); font-size:12.5px; white-space:nowrap}
.pcard i.turn{margin-left:8px; color:var(--acc); font-style:normal; font-size:13px; font-weight:600; white-space:nowrap}

/* ── слова ── */
.sec--words{padding:20vh 20px}
.words{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; width:min(1120px,100%); margin-top:34px}
.words blockquote{
  margin:0; padding:26px; border:1px solid var(--line); border-radius:18px;
  background:linear-gradient(180deg, rgba(154,155,242,.05), rgba(244,245,249,0));
  display:flex; flex-direction:column; gap:20px;
}
.words p{margin:0; font-size:17px; line-height:1.6}
.words footer{display:flex; align-items:center; gap:10px; color:var(--ink-3); font-size:13.5px}
.words .ava{width:30px; height:30px}
.partners{margin:64px 0 0; color:var(--ink-3); font-size:13px; letter-spacing:.14em; text-transform:uppercase; text-align:center}

/* ── финал ── */
.sec--final{min-height:100vh; justify-content:center; padding:18vh 20px; overflow:hidden}
.cv--final{z-index:0}
.final__in{position:relative; z-index:1; display:flex; flex-direction:column; align-items:center; gap:30px; text-align:center}
.final__logo{width:min(200px,40vw); height:auto; opacity:.9; filter:drop-shadow(0 0 30px rgba(154,155,242,.35))}
.final__t{margin:0; font-family:var(--f-head); font-weight:900; font-size:clamp(28px,4.6vw,62px); line-height:1.14; letter-spacing:-.015em}
.final__s{margin:0; max-width:620px; color:var(--ink-2); font-size:15.5px}
.final__s b{color:var(--ink)}

/* ── футер ── */
.foot{
  display:flex; align-items:center; justify-content:space-between; gap:18px; flex-wrap:wrap;
  padding:34px clamp(20px,5vw,60px); border-top:1px solid var(--line); color:var(--ink-3); font-size:13px;
}
.foot__mark{font-family:var(--f-head); font-weight:700; letter-spacing:.34em; font-size:12px}

/* ── мобильный ── */
@media (max-width:820px){
  .brand{left:20px; top:20px}
  .wrap2, .featwrap{grid-template-columns:1fr; gap:34px}
  .featphone{position:static}
  .cells{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cell{min-height:190px}
  .words{grid-template-columns:1fr}
  .dossier{right:16px; left:16px; width:auto; bottom:10vh}
  .bigin{flex-direction:column; align-items:stretch; padding:10px; gap:8px}
  .bigin input{padding:0 12px}
  .mac{width:min(560px,92vw)}
  .tunnel img{width:64vw}
  .tunnel img.tunnel--ph{width:26vw}
  .screens{height:auto; display:flex; flex-direction:column; gap:16px; perspective:none}
  .scr{position:static; width:100% !important; transform:none !important}
  .scr--m{width:52% !important; align-self:center}
  .floatwords span:nth-child(5),.floatwords span:nth-child(6){display:none}
  .foot{flex-direction:column; align-items:flex-start}
}

/* ── движение выключено ── */
@media (prefers-reduced-motion: reduce){
  [data-reveal], .graph__t, .conv__t, .chip, .dossier, .req__t, .bigsearch, .req__s,
  .intro__head, .intro__brand, .mac{opacity:1 !important; transform:none !important; filter:none !important; transition:none !important}
  .hint__wheel i, .caret, .bigsearch__rings i{animation:none}
}

/* ═════════ v4: первые три экрана ═════════ */

.grad-t{
  background:linear-gradient(180deg, #FAFBFF 18%, #A7ADBE 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.grad-t em{
  background:linear-gradient(180deg, #C9CAFB 10%, #8D8EEC 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}

/* ── загрузка: кольцо и процент ── */
.loader{
  position:fixed; inset:0; z-index:9999; background:var(--bg);
  display:flex; align-items:center; justify-content:center;
  transition:opacity .8s ease, visibility .8s;
}
.loader.done{opacity:0; visibility:hidden}
.loader{flex-direction:column; gap:30px}
.loader__fp{width:min(150px,30vw); height:auto; overflow:visible}
.loader__fp-ghost{stroke:rgba(154,155,242,.12); stroke-width:2; fill:none}
.loader__fp-draw{
  stroke:#A9AAF4; stroke-width:2.2; fill:none; stroke-linecap:round;
  stroke-dasharray:100; stroke-dashoffset:100;
  filter:drop-shadow(0 0 7px rgba(154,155,242,.9)) drop-shadow(0 0 22px rgba(124,104,255,.5));
}
.loader.lit .loader__fp-draw{
  stroke:#E2E3FF;
  filter:drop-shadow(0 0 10px rgba(190,192,250,1)) drop-shadow(0 0 36px rgba(136,134,236,.8));
  transition:stroke .4s, filter .4s;
}
.loader__num{
  font-family:'Inter Tight', system-ui, sans-serif; font-weight:600;
  font-size:44px; letter-spacing:-.02em; color:var(--ink);
  display:flex; align-items:baseline; gap:3px;
}
.loader__num i{font-style:normal; font-size:19px; color:var(--ink-3)}

/* ── экран 1: герой ── */
.hero{overflow:hidden}
.hero__center{
  position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);
  z-index:4; display:flex; flex-direction:column; align-items:center; gap:30px;
  pointer-events:none;
}
.hero__orb{
  position:relative; width:clamp(120px,15vw,172px); height:clamp(120px,15vw,172px);
  border-radius:50%; display:flex; align-items:center; justify-content:center;
  background:
    radial-gradient(circle at 34% 28%, rgba(205,206,255,.34), transparent 52%),
    radial-gradient(circle at 60% 66%, rgba(124,104,255,.4), rgba(16,16,26,.92) 72%);
  border:1px solid rgba(190,192,250,.35);
  box-shadow:0 0 70px rgba(136,134,236,.45), 0 0 160px rgba(106,91,219,.3), inset 0 0 40px rgba(154,155,242,.2);
  will-change:transform,opacity,filter;
}
.hero__orb img{width:56%; height:auto; filter:drop-shadow(0 0 14px rgba(190,192,250,.8))}
.hero__shine{
  position:absolute; inset:-2px; border-radius:50%; pointer-events:none;
  background:conic-gradient(from 0deg, transparent 0 40%, rgba(230,231,255,.55) 50%, transparent 60% 100%);
  -webkit-mask:radial-gradient(farthest-side, transparent calc(100% - 3px), #000 calc(100% - 1px));
  mask:radial-gradient(farthest-side, transparent calc(100% - 3px), #000 calc(100% - 1px));
  animation:orbshine 3.4s cubic-bezier(.6,.1,.3,.9) infinite;
}
@keyframes orbshine{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}
.hero__title{
  margin:0; font-family:'Inter Tight', system-ui, sans-serif; font-weight:600;
  font-size:clamp(44px,7vw,96px); line-height:1.04; letter-spacing:-.03em;
  will-change:transform,opacity,filter;
}

.gcloud{position:absolute; inset:0; z-index:2; perspective:1200px; transform-style:preserve-3d}
.gcard{
  position:absolute; left:50%; top:50%; will-change:transform,opacity;
  display:flex; align-items:center; gap:11px;
  padding:11px 15px 11px 11px; border-radius:15px;
  background:rgba(18,18,28,.6); border:1px solid rgba(190,192,250,.2);
  backdrop-filter:blur(7px); -webkit-backdrop-filter:blur(7px);
  box-shadow:0 20px 60px rgba(0,0,0,.45), 0 0 34px rgba(124,104,255,.1);
  cursor:default; pointer-events:auto;
  transition:border-color .35s, box-shadow .35s;
}
.gcard:hover{
  border-color:rgba(190,192,250,.6);
  box-shadow:0 26px 80px rgba(0,0,0,.6), 0 0 60px rgba(136,134,236,.35);
  z-index:30;
}
.gcard b{font-size:13.5px; white-space:nowrap; display:block}
.gcard small{display:block; color:var(--ink-3); font-size:11.5px; white-space:nowrap}
.gcard .turn{color:var(--acc); font-size:12px; font-weight:600; white-space:nowrap; margin-left:6px}
.gcard .ava{width:34px; height:34px}
.gcard__more{
  position:absolute; left:10px; right:10px; top:calc(100% + 8px);
  padding:9px 11px; border-radius:11px; font-size:11.5px; line-height:1.5;
  background:rgba(14,14,22,.92); border:1px solid rgba(190,192,250,.28); color:var(--ink-2);
  opacity:0; transform:translateY(-6px); transition:opacity .35s, transform .35s;
  pointer-events:none; white-space:nowrap;
}
.gcard:hover .gcard__more{opacity:1; transform:none}
.gcard__more em{display:block; color:var(--acc); font-size:10.5px; letter-spacing:.12em; text-transform:uppercase; margin-bottom:3px}

.gchip{
  position:absolute; left:50%; top:50%; will-change:transform,opacity;
  padding:10px 18px; border-radius:999px;
  font-family:'Inter Tight', system-ui, sans-serif; font-weight:600; font-size:15px;
  color:#CFD0FA; background:rgba(106,91,219,.16);
  border:1px solid rgba(154,155,242,.45);
  box-shadow:0 0 34px rgba(124,104,255,.22);
  cursor:grab; user-select:none; touch-action:none; pointer-events:auto;
}
.gchip:active{cursor:grabbing}

/* ── экран 2: ресурсная карта ── */
.map__t{
  margin:0; position:absolute; left:50%; top:50%; width:min(980px,90vw);
  transform:translate(-50%,-50%);
  font-family:'Inter Tight', system-ui, sans-serif; font-weight:600;
  font-size:clamp(26px,4vw,54px); line-height:1.18; letter-spacing:-.025em; text-align:center;
  opacity:0; filter:blur(10px); will-change:opacity,filter,transform;
}

/* ── экран 3: поиск ── */
.stage-searchl{flex-direction:column; gap:44px; text-align:center; padding:0 20px}
.searchl__t{
  margin:0; position:relative; z-index:2;
  font-family:'Inter Tight', system-ui, sans-serif; font-weight:600;
  font-size:clamp(28px,4.4vw,58px); letter-spacing:-.025em; line-height:1.15;
}
.searchl__t span{
  display:inline-block; opacity:0; transform:translateY(22px); filter:blur(8px);
  transition:opacity .8s var(--ease), transform .8s var(--ease), filter .8s var(--ease);
  background:linear-gradient(180deg, #FAFBFF 18%, #A7ADBE 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}
.searchl__t span.em{background:linear-gradient(180deg, #C9CAFB 10%, #8D8EEC 100%); -webkit-background-clip:text; background-clip:text}
.searchl__t.on span{opacity:1; transform:none; filter:none}
.searchl__t span:nth-child(2){transition-delay:.07s}
.searchl__t span:nth-child(3){transition-delay:.14s}
.searchl__t span:nth-child(4){transition-delay:.21s}
.searchl__t span:nth-child(5){transition-delay:.28s}

.searchl__win{
  position:relative; z-index:2; width:min(760px,92vw);
  border-radius:20px; padding:22px;
  background:linear-gradient(180deg, rgba(22,22,34,.94), rgba(14,14,22,.96));
  border:1px solid rgba(154,155,242,.28);
  box-shadow:0 0 0 1px rgba(10,10,14,.9), 0 50px 140px rgba(0,0,0,.62), 0 0 110px rgba(124,104,255,.14);
  opacity:0; transform:translateY(90px) scale(.96); filter:blur(8px);
  transition:opacity 1.1s var(--ease), transform 1.1s var(--ease), filter 1.1s var(--ease);
}
.searchl__win.on{opacity:1; transform:none; filter:none}
.searchl__bar{
  display:flex; align-items:center; gap:14px;
  padding:18px 20px; border-radius:14px;
  background:rgba(10,10,16,.85); border:1px solid rgba(154,155,242,.4); color:var(--acc);
}
.searchl__text{flex:1; min-width:0; color:var(--ink); font-size:clamp(16px,1.9vw,21px); font-weight:500; text-align:left; white-space:nowrap; overflow:hidden}
.searchl__bar button{
  flex:none; height:46px; padding:0 24px; border:0; border-radius:10px; cursor:pointer;
  background:linear-gradient(135deg, #ABACF6, #8886EC); color:#15151F; font:inherit; font-weight:700; font-size:15px;
}
.searchl__chips{display:flex; flex-wrap:wrap; gap:9px; margin-top:14px; justify-content:center}
.searchl__chips span{
  padding:8px 14px; border-radius:999px; font-size:13px; color:var(--ink-2);
  border:1px dashed rgba(154,155,242,.35); background:rgba(154,155,242,.05);
}
.searchl__s{
  margin:0; position:relative; z-index:2; color:var(--ink-2); font-size:clamp(15px,1.6vw,19px);
  opacity:0; transform:translateY(20px); transition:all 1s var(--ease) .15s;
}
.searchl__s.on{opacity:1; transform:none}

@media (max-width:820px){
  .gcard small{max-width:120px; overflow:hidden; text-overflow:ellipsis}
  .hero__title{font-size:clamp(38px,11vw,54px)}
  .searchl__bar button{padding:0 16px}
}
@media (prefers-reduced-motion: reduce){
  .loader__ring, .hero__shine{animation:none}
  .map__t, .searchl__t span, .searchl__win, .searchl__s{opacity:1 !important; transform:none !important; filter:none !important; transition:none !important}
}

/* появление ядра после загрузки */
.hero__orb{opacity:0; transform:scale(.55); transition:opacity 1.1s var(--ease), transform 1.1s var(--ease)}
.hero__title{opacity:0; transform:translateY(28px); filter:blur(12px); transition:opacity 1.2s var(--ease) .55s, transform 1.2s var(--ease) .55s, filter 1.2s var(--ease) .55s}
.hero__center.go .hero__orb{opacity:1; transform:none}
.hero__center.go .hero__title{opacity:1; transform:none; filter:none}
@media (prefers-reduced-motion: reduce){
  .hero__orb, .hero__title{opacity:1 !important; transform:none !important; filter:none !important; transition:none !important}
}
.final__logo--finger{width:min(86px,18vw)}

/* высокие карточки-досье с лицами */
.gcard--tall{
  flex-direction:column; align-items:stretch; gap:7px;
  width:172px; padding:10px 12px 12px; border-radius:16px;
}
.gcard--tall .face{
  width:100%; height:118px; object-fit:cover; object-position:top;
  border-radius:10px; display:block;
  filter:saturate(.88) contrast(1.02);
}
.gcard--tall b{font-size:14px}
.gcard--tall small{margin-top:-4px}
.gcard--tall .turn{margin:0; font-size:12.5px}
.gdata{
  font-size:11px; line-height:1.45; color:var(--ink-2);
  border-top:1px solid rgba(244,245,249,.07); padding-top:6px;
}
.gdata em{color:var(--acc); font-style:normal; font-size:10px; letter-spacing:.14em; text-transform:uppercase; display:block}
.gdata--seek em{color:#8BD4B0}
@media (max-width:820px){ .gcard--tall{width:138px} .gcard--tall .face{height:96px} }

/* ═════ v7: экран 1 — орбиты и кометы ═════ */
.orbits{position:absolute; inset:0; z-index:2; pointer-events:none}
.orb-ava{
  position:absolute; left:50%; top:50%; width:46px; height:46px;
  border-radius:50%; overflow:hidden; will-change:transform,opacity;
  border:1px solid rgba(190,192,250,.45);
  box-shadow:0 0 22px rgba(136,134,236,.35), 0 10px 30px rgba(0,0,0,.5);
}
.orb-ava img{width:100%; height:100%; object-fit:cover; display:block; filter:saturate(.85)}
.orb-ava--far{width:34px; height:34px; opacity:.7}

/* ═════ v7: экран 2 — CRM-карточка и граф ═════ */
.crmcard{
  position:relative; z-index:4; display:flex; align-items:center; gap:16px;
  padding:20px 26px 20px 20px; border-radius:18px;
  background:linear-gradient(180deg, rgba(24,24,38,.96), rgba(14,14,22,.97));
  border:1px solid rgba(154,155,242,.45);
  box-shadow:0 0 0 1px rgba(10,10,14,.9), 0 40px 120px rgba(0,0,0,.6), 0 0 90px rgba(124,104,255,.22);
  will-change:transform,opacity,filter; opacity:0;
}
.crmcard__ico{
  width:54px; height:54px; border-radius:13px; flex:none; color:#CFD0FA;
  display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg, rgba(154,155,242,.28), rgba(106,91,219,.14));
  border:1px solid rgba(154,155,242,.4);
}
.crmcard__body b{
  display:block; font-family:'Inter Tight', system-ui, sans-serif; font-weight:600;
  font-size:clamp(20px,2.2vw,27px); letter-spacing:-.015em;
}
.crmcard__body span{color:var(--ink-2); font-size:clamp(13.5px,1.4vw,16px)}
.crmcard__live{
  position:absolute; top:14px; right:14px; width:8px; height:8px; border-radius:50%;
  background:#8BD4B0; box-shadow:0 0 10px rgba(139,212,176,.8);
  animation:livepulse 2s ease-in-out infinite;
}
@keyframes livepulse{0%,100%{opacity:1}50%{opacity:.35}}
.map__sub{
  position:absolute; bottom:10vh; left:0; right:0; z-index:4; margin:0; text-align:center;
  color:var(--ink-2); font-size:clamp(15px,1.6vw,19px);
  opacity:0; transform:translateY(18px); transition:opacity 1s var(--ease), transform 1s var(--ease);
}
.map__sub.on{opacity:1; transform:none}
@media (prefers-reduced-motion: reduce){
  .crmcard{opacity:1 !important; transform:none !important; filter:none !important}
  .crmcard__live{animation:none}
}

/* масштабы людей на орбитах */
.orb-ava--s0{width:48px; height:48px}
.orb-ava--s1{width:36px; height:36px; opacity:.85}
.orb-ava--s2{width:26px; height:26px; opacity:.7}

/* мини-досье: лицо в центре, данные слева и справа */
.gcard--mini{
  width:252px; padding:10px 10px 11px; border-radius:13px; gap:8px;
  align-items:stretch; justify-content:space-between;
}
.gcard--mini .mcen{display:flex; flex-direction:column; align-items:center; gap:2px; flex:none; width:96px; text-align:center}
.gcard--mini .face{width:44px; height:44px; object-fit:cover; object-position:top; border-radius:50%; border:1px solid rgba(190,192,250,.4)}
.gcard--mini b{font-size:10.5px; line-height:1.25; margin-top:3px}
.gcard--mini small{color:var(--ink-3); font-size:8.5px; line-height:1.3}
.gcard--mini .turn{font-size:9.5px; margin:1px 0 0}
.gcard--mini .mcol{display:flex; flex-direction:column; justify-content:center; gap:7px; flex:1; min-width:0}
.gcard--mini .mcol i{font-style:normal; font-size:8.5px; line-height:1.3; color:var(--ink-2); text-align:left}
.gcard--mini .mcol--r i{text-align:right}
.gcard--mini .mcol em{display:block; font-style:normal; color:var(--acc); font-size:7px; letter-spacing:.12em}
.gcard--mini .mcol--r em{color:#8BD4B0}
@media (max-width:820px){ .gcard--mini{width:200px} }

/* ресурсная карта — главный план */
.crmcard{
  box-shadow:0 0 0 1px rgba(10,10,14,.9), 0 60px 160px rgba(0,0,0,.75), 0 0 130px rgba(136,134,236,.34);
  border-color:rgba(170,171,248,.6);
}
.crmcard__body b{font-size:clamp(23px,2.5vw,31px)}

/* подзаголовок героя */
.hero__sub{
  margin:2px 0 0; font-family:'Inter Tight', system-ui, sans-serif; font-weight:500;
  font-size:clamp(14px,1.5vw,19px); letter-spacing:.14em; color:var(--ink-2);
  opacity:0; transform:translateY(18px); filter:blur(6px);
  transition:opacity 1.2s var(--ease) .95s, transform 1.2s var(--ease) .95s, filter 1.2s var(--ease) .95s;
}
.hero__center.go .hero__sub{opacity:1; transform:none; filter:none}
@media (prefers-reduced-motion: reduce){ .hero__sub{opacity:1 !important; transform:none !important; filter:none !important} }

/* мягкий ховер мини-досье: без вспышки контраста */
.gcard--mini{transition:border-color .7s, box-shadow .7s, opacity .7s}
.gcard--mini:hover{
  border-color:rgba(190,192,250,.34);
  box-shadow:0 22px 64px rgba(0,0,0,.5), 0 0 36px rgba(136,134,236,.16);
}

/* сменные надписи ресурсной карты */
.crmcard__body--swap{position:relative; min-width:min(460px,70vw); height:54px}
.crm-t, .ev-t, .vt-t{
  position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);
  white-space:nowrap; opacity:0; will-change:opacity,filter,transform;
  font-family:'Inter Tight', system-ui, sans-serif; font-weight:600;
  font-size:clamp(23px,2.5vw,31px); letter-spacing:-.015em;
}
@media (max-width:820px){ .crmcard__body--swap{min-width:76vw; height:44px} .crm-t, .ev-t, .vt-t{white-space:normal; width:100%; text-align:center; font-size:19px} }

/* чёрная пауза */
.void{height:100vh; background:var(--bg)}

/* подсказка активнее */
.hint{color:var(--ink-2); font-size:14px; gap:14px}
.hint__wheel{border-color:var(--ink-2)}
.hint{animation:hintbob 2.2s ease-in-out infinite}
@keyframes hintbob{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(7px)}}
@media (prefers-reduced-motion: reduce){ .hint{animation:none} }

/* кружок-инициалы, как на платформе */
.iava{
  width:44px; height:44px; border-radius:50%; flex:none; font-style:normal;
  display:flex; align-items:center; justify-content:center;
  font-family:'Inter Tight', system-ui, sans-serif; font-weight:600; font-size:15px; color:#DADBF8;
  background:radial-gradient(circle at 32% 28%, rgba(154,155,242,.4), rgba(106,91,219,.16) 70%);
  border:1px solid rgba(190,192,250,.42);
}

/* карточка резидента — как в референсе, с цветом */
.gcard--pc{
  flex-direction:column; align-items:stretch; gap:0;
  width:242px; padding:16px 16px 14px; border-radius:16px;
  background:rgba(14,14,21,.96); border:1px solid rgba(154,155,242,.22);
}
.pc2-top{display:flex; align-items:center; gap:12px; min-width:0}
.av2{
  flex:none; width:52px; height:52px; border-radius:50%; overflow:hidden; position:relative;
  display:inline-flex; align-items:center; justify-content:center;
  font:600 14px 'Inter Tight', system-ui, sans-serif; color:#DADBF8;
  background:radial-gradient(circle at 32% 28%, rgba(154,155,242,.38), rgba(106,91,219,.14) 72%);
  border:1px solid rgba(190,192,250,.4);
}
.av2 img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover}
.pc2-id{min-width:0}
.pc2-nm{margin:0; display:flex; align-items:center; gap:5px; font:600 14.5px/1.3 'Onest', system-ui, sans-serif; color:var(--ink); white-space:nowrap; overflow:hidden}
.pc2-nm .vmark{flex:none}
.pc2-role{margin:3px 0 0; font-size:12px; color:var(--acc); font-weight:600}
.pc2-co{margin:2px 0 0; font-size:12.5px; color:var(--ink-2); display:-webkit-box; -webkit-line-clamp:1; -webkit-box-orient:vertical; overflow:hidden}
.pc2-rev{
  margin:10px 0 0; font:600 12.5px 'Inter Tight', system-ui, sans-serif;
  color:#8BD4B0; letter-spacing:.02em;
}
.pc2-about{
  margin:7px 0 0; font-size:11.5px; line-height:1.45; color:var(--ink-3);
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;
}
@media (max-width:820px){ .gcard--pc{width:220px} }

/* ── страницы платформы ── */
.stage-product{flex-direction:column; padding:0 20px}
.prod__text{
  margin:0; position:relative; z-index:2; max-width:960px; min-height:4.4em; text-align:center;
  display:flex; flex-direction:column; gap:2px; align-items:center; justify-content:flex-end;
  font-family:'Inter Tight', system-ui, sans-serif; font-weight:500;
  font-size:clamp(15px,1.7vw,22px); line-height:1.4; color:var(--ink);
}
.pline{
  display:block; opacity:0; transform:translateY(14px); filter:blur(6px);
  transition:opacity .65s var(--ease), transform .65s var(--ease), filter .65s var(--ease);
}
.pline.on{opacity:1; transform:none; filter:none}
.pline--two{position:absolute; left:0; right:0; bottom:0; font-size:clamp(17px,2vw,26px)}
.prodwin{
  position:relative; z-index:1; margin:0;
  width:min(1255px, 90vw, calc(87vh * 1.6)); aspect-ratio:1440/900;
  border-radius:18px; overflow:hidden; background:#0D0D13;
  border:1px solid rgba(154,155,242,.3);
  box-shadow:0 0 0 1px rgba(10,10,14,.9), 0 60px 160px rgba(0,0,0,.65), 0 0 110px rgba(124,104,255,.14);
  opacity:0; will-change:transform,opacity,filter;
}
.prodwin img{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:top;
  opacity:0; transform:scale(1.02); filter:blur(7px);
  transition:opacity .9s var(--ease), transform .9s var(--ease), filter .9s var(--ease);
}
.prodwin img.on{opacity:1; transform:none; filter:none}
@media (max-width:820px){ .prodwin{width:94vw} .prod__text{min-height:4.2em} }
@media (prefers-reduced-motion: reduce){ .prodwin{opacity:1 !important; transform:none !important; filter:none !important} .prodwin img{transition:none} }

/* плашка-терминал поверх экрана */
.prodlog{
  position:absolute; left:4%; bottom:9%; z-index:5; width:min(470px,46%);
  border-radius:13px; overflow:hidden;
  background:rgba(13,13,20,.96); border:1px solid rgba(154,155,242,.4);
  box-shadow:0 30px 90px rgba(0,0,0,.65), 0 0 60px rgba(124,104,255,.18);
  opacity:0; transform:translateY(16px); filter:blur(5px);
  transition:opacity .7s var(--ease), transform .7s var(--ease), filter .7s var(--ease);
}
.prodlog.on{opacity:1; transform:none; filter:none}
.prodlog__bar{display:flex; align-items:center; gap:6px; padding:9px 12px; border-bottom:1px solid var(--line); background:rgba(244,245,249,.04)}
.prodlog__bar i{width:9px; height:9px; border-radius:50%; background:rgba(244,245,249,.16)}
.prodlog__bar span{margin-left:7px; color:var(--ink-3); font-size:11px; letter-spacing:.08em}
.prodlog__text{
  margin:0; padding:16px 18px; min-height:10.5em;
  font:400 14px/1.65 'SF Mono', ui-monospace, Menlo, monospace;
  color:var(--ink); text-align:left; letter-spacing:.01em;
}
.prodlog__text .caret{display:inline-block; vertical-align:-0.12em; margin-left:2px}
@media (max-width:820px){ .prodlog{width:86%; left:4%; bottom:5%} }

/* карточка события */
.ecard{
  flex-direction:column; align-items:stretch; gap:8px;
  width:268px; padding:10px 10px 12px; border-radius:16px;
  background:rgba(14,14,21,.96); border:1px solid rgba(154,155,242,.22);
}
.ecard__img{position:relative; display:block; border-radius:10px; overflow:hidden; height:124px}
.ecard__img img{width:100%; height:100%; object-fit:cover; display:block; filter:saturate(.9)}
.ecard__date{
  position:absolute; left:8px; top:8px; min-width:34px; padding:4px 6px; border-radius:8px;
  background:rgba(10,10,14,.85); border:1px solid rgba(154,155,242,.35);
  text-align:center; line-height:1.1;
}
.ecard__date em{display:block; font-style:normal; font:700 14px 'Inter Tight',sans-serif; color:var(--ink)}
.ecard__date{font:600 8.5px 'Inter Tight',sans-serif; letter-spacing:.08em; color:var(--acc)}
.ecard__t{font-size:14.5px; line-height:1.35; font-weight:600}
.ecard small{color:var(--ink-3); font-size:11.5px}
.ecard__tag{
  align-self:flex-start; padding:3px 9px; border-radius:999px; font-size:9.5px;
  color:#8BD4B0; border:1px solid rgba(139,212,176,.35); background:rgba(139,212,176,.07);
}

/* горячие карточки: зовут нажать */
.gcard--hot{cursor:pointer; border-color:rgba(170,171,248,.5)}
.gcard--hot::after{
  content:''; position:absolute; inset:-1px; border-radius:inherit; pointer-events:none;
  border:1px solid rgba(170,171,248,.0);
  animation:hotpulse 2.1s ease-in-out infinite;
}
@keyframes hotpulse{
  0%,100%{box-shadow:0 0 0 0 rgba(136,134,236,0), 0 0 22px rgba(136,134,236,.18); border-color:rgba(170,171,248,.25)}
  50%{box-shadow:0 0 0 5px rgba(136,134,236,.09), 0 0 46px rgba(136,134,236,.5); border-color:rgba(190,192,250,.85)}
}
.gcard--hot:hover::after{
  animation:none;
  box-shadow:0 0 0 6px rgba(136,134,236,.16), 0 0 70px rgba(136,134,236,.85);
  border-color:rgba(214,215,255,1);
}
.gcard--hot:hover{
  border-color:rgba(214,215,255,.9);
  background:rgba(24,24,40,.98);
  opacity:1 !important;
}

/* попап резидента */
.rpop[hidden]{display:none}
.rpop{
  position:fixed; inset:0; z-index:90; display:flex; align-items:center; justify-content:center;
  background:rgba(5,5,8,.7); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
  opacity:0; transition:opacity .35s ease; padding:20px;
}
.rpop.on{opacity:1}
.rpop__card{
  position:relative; width:min(600px,94vw); border-radius:20px; padding:28px 30px;
  background:linear-gradient(180deg, rgba(22,22,34,.98), rgba(13,13,20,.99));
  border:1px solid rgba(154,155,242,.45);
  box-shadow:0 60px 160px rgba(0,0,0,.7), 0 0 130px rgba(124,104,255,.28);
  transform:translateY(24px) scale(.97); transition:transform .35s var(--ease);
}
.rpop.on .rpop__card{transform:none}
.rpop__x{
  position:absolute; top:14px; right:14px; width:34px; height:34px; border-radius:50%;
  border:1px solid var(--line); background:rgba(244,245,249,.05); color:var(--ink-2);
  font-size:14px; cursor:pointer;
}
.rpop__top{display:flex; gap:16px; align-items:center}
.rpop__av{width:76px; height:76px; font-size:22px}
.rpop__nm{font-size:21px}
.rpop__rev{margin:18px 0 0; font:600 15px 'Inter Tight',sans-serif; color:#8BD4B0}
.rpop__about{margin:10px 0 0; font-size:14.5px; line-height:1.6; color:var(--ink-2)}
.rpop__btns{display:flex; gap:10px; margin-top:22px; flex-wrap:wrap}
.rpop__b{
  height:42px; padding:0 20px; border-radius:11px; cursor:pointer; font:600 14px 'Onest',sans-serif;
  border:1px solid rgba(154,155,242,.35); background:rgba(154,155,242,.07); color:var(--ink);
}
.rpop__b--pri{background:linear-gradient(135deg,#ABACF6,#8886EC); color:#15151F; border:0}
@media (prefers-reduced-motion: reduce){ .gcard--hot::after{animation:none} }

/* попап-страница участника */
.rpop__card--page{width:min(720px,95vw); max-height:88vh; overflow:auto; padding:22px 26px 24px}
.rp2__crumb{margin:0 0 14px; color:var(--ink-3); font-size:12px; letter-spacing:.2em; text-transform:uppercase}
.rp2__head{display:flex; gap:18px; align-items:flex-start}
.rp2__photo{
  position:relative; flex:none; width:116px; height:142px; border-radius:12px; overflow:hidden;
  background:radial-gradient(circle at 35% 30%, rgba(154,155,242,.3), rgba(16,16,26,.9));
  border:1px solid rgba(190,192,250,.3); display:flex; align-items:center; justify-content:center;
}
.rp2__photo span{font:600 26px 'Inter Tight',sans-serif; color:#C9CAF8}
.rp2__photo img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover}
.rp2__id{flex:1; min-width:0}
.rp2__nm{margin:0; display:flex; align-items:center; gap:7px; font:600 21px 'Onest',sans-serif}
.rp2__role{margin:4px 0 0; font-size:13.5px; color:var(--ink-2)}
.rp2__city{display:inline-block; margin-top:7px; padding:3px 10px; border-radius:999px; font-size:11px; color:var(--ink-2); border:1px solid var(--line); background:rgba(244,245,249,.04)}
.rp2__row{display:flex; gap:12px; margin-top:11px; align-items:baseline}
.rp2__row em{flex:none; width:86px; font:600 9.5px 'SF Mono',ui-monospace,monospace; letter-spacing:.14em; text-transform:uppercase; color:var(--ink-3); font-style:normal}
.rp2__row p{margin:0; font-size:12.5px; line-height:1.55; color:var(--ink-2)}
.rp2__chips{display:flex; flex-wrap:wrap; gap:6px}
.rp2__chips span{padding:4px 10px; border-radius:999px; font-size:11px; color:var(--ink-2); border:1px solid var(--line); background:rgba(244,245,249,.04)}
.rp2__chips--b span{border-color:rgba(154,155,242,.35); color:#C9CAF8}
.rp2__acts{flex:none; display:flex; flex-direction:column; gap:8px}
.rp2__acts .rpop__b{height:36px; padding:0 14px; font-size:12.5px}
.rp2__biz{margin-top:18px; border-top:1px solid var(--line); padding-top:14px}
.rp2__biz>em{font:600 9.5px 'SF Mono',ui-monospace,monospace; letter-spacing:.14em; text-transform:uppercase; color:var(--ink-3); font-style:normal}
.rp2__bizrow{display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:10px; margin-top:10px}
.rp2__bc{border:1px solid rgba(154,155,242,.28); border-radius:12px; padding:12px 14px; background:rgba(154,155,242,.05)}
.rp2__bc b{font-size:13.5px}
.rp2__bc i{display:block; margin-top:3px; font:500 11px 'SF Mono',ui-monospace,monospace; color:#8BD4B0; font-style:normal}
.rp2__bc p{margin:6px 0 0; font-size:11.5px; line-height:1.5; color:var(--ink-3)}
@media (max-width:820px){ .rp2__head{flex-wrap:wrap} .rp2__acts{flex-direction:row} }

/* попап со скрином страницы участника */
.rpop__card--page{width:min(960px,94vw); padding:12px}
.rp2__shot{display:block; width:100%; height:auto; border-radius:12px}

/* длинные надписи событий помещаются в карточку */
#evcard .crmcard__body--swap{min-width:min(560px,74vw)}
#evcard .ev-t{font-size:clamp(17px,1.9vw,23px)}
.rp2__fallback{padding:16px 14px}

/* горячие карточки полностью непрозрачные */
.gcard--hot{background:#10101B}

/* события: текст переносится, акцентные непрозрачные */
.ecard__t{white-space:normal; overflow-wrap:break-word}
.ecard small{white-space:normal}
.ecard--front{background:#10101B; border-color:rgba(154,155,242,.4)}
.gcard.ecard b{white-space:normal; overflow-wrap:break-word}

/* лента загрузки подбора */
.prodload{
  position:absolute; left:57%; top:40%; transform:translate(-50%,-50%) translateY(14px); z-index:6;
  width:min(60%,760px); padding:24px 30px 26px; border-radius:18px; text-align:left;
  background:rgba(12,12,19,.94); border:1px solid rgba(154,155,242,.4);
  box-shadow:0 40px 110px rgba(0,0,0,.6), 0 0 80px rgba(124,104,255,.2);
  backdrop-filter:blur(8px);
  opacity:0; transition:opacity .45s var(--ease), transform .45s var(--ease);
  pointer-events:none;
}
.prodload.on{opacity:1; transform:translate(-50%,-50%)}
.prodload__head{display:flex; align-items:baseline; justify-content:space-between; margin-bottom:14px}
.prodload__head b{font:600 19px 'Inter Tight',sans-serif; color:var(--ink)}
.prodload__head span{font:500 12px 'SF Mono',ui-monospace,monospace; color:var(--ink-3)}
.prodload__steps{display:grid; grid-template-columns:1fr 1fr; gap:9px 36px; margin-top:16px}
.prodload__steps span{
  position:relative; padding-left:26px; font-size:13.5px; color:var(--ink-3); transition:color .3s;
}
.prodload__steps span::before{
  content:''; position:absolute; left:0; top:2px; width:15px; height:15px; border-radius:50%;
  border:1.5px solid rgba(154,155,242,.3); transition:all .3s;
}
.prodload__steps span.act{color:var(--ink)}
.prodload__steps span.act::before{border-color:var(--acc); border-top-color:transparent; animation:stepspin .8s linear infinite}
.prodload__steps span.done{color:var(--ink-2)}
.prodload__steps span.done::before{
  border-color:var(--acc); background:var(--acc);
  content:''; box-shadow:inset 0 0 0 3px #15151F;
}
@keyframes stepspin{to{transform:rotate(360deg)}}
.prodload__bar{height:4px; border-radius:99px; background:rgba(154,155,242,.14); overflow:hidden}
.prodload__bar i{display:block; height:100%; width:0; border-radius:99px;
  background:linear-gradient(90deg, #8886EC, #B9BAF6); box-shadow:0 0 14px rgba(154,155,242,.8)}

/* ═════════ v8 (122): вторая половина истории, тема, телефон ═════════ */

/* окно со скрином, у которого другие пропорции, — целиком */
.prodwin img.prodwin__fit{object-fit:contain; object-position:center}
.prodwin picture{display:contents}

/* вертикали */
#vertcard .crmcard__body--swap{min-width:min(560px,80vw)}
.vcard{
  flex-direction:column; align-items:stretch; gap:10px;
  width:264px; padding:0 0 13px; border-radius:16px; overflow:hidden;
  background:rgba(14,14,21,.96); border:1px solid rgba(154,155,242,.26);
}
.vcard--front{background:#10101B; border-color:rgba(154,155,242,.45)}
.vcard__img{
  position:relative; display:flex; flex-direction:column; justify-content:flex-start; gap:4px;
  height:120px; padding:11px 13px; overflow:hidden;
}
.vcard__img img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:brightness(.8) saturate(.9)}
.vcard__img::after{content:''; position:absolute; inset:0; background:linear-gradient(180deg, rgba(8,8,12,.6), rgba(8,8,12,.25) 70%, rgba(8,8,12,.45))}
.gcard .vcard__t{position:relative; z-index:1; font:600 15px/1.25 'Inter Tight', system-ui, sans-serif; color:#fff; white-space:normal}
.gcard .vcard__img small{position:relative; z-index:1; font-size:11px; line-height:1.4; color:rgba(255,255,255,.78); white-space:normal}
.vcard__foot{display:flex; align-items:center; gap:8px; padding:0 13px}
.vcard__faces{display:flex}
.vcard__faces img{width:24px; height:24px; border-radius:50%; object-fit:cover; border:2px solid #10101B; margin-left:-7px}
.vcard__faces img:first-child{margin-left:0}
.vcard__foot b{font:600 14px 'Inter Tight', system-ui, sans-serif}
.vcard__foot i{font-style:normal; font-size:11.5px; color:var(--ink-3)}
.vcard__nums{display:flex; gap:20px}
.vcard__nums span{font:600 12.5px 'SF Mono', ui-monospace, Menlo, monospace; color:var(--ink)}
.vcard__nums em{display:block; font:500 10px 'Onest', system-ui, sans-serif; color:var(--ink-3)}

/* «у многих нет времени» */
.stage-busy{padding:0 20px}
.busy{position:relative; z-index:2; width:min(1120px,92vw); height:70vh}
.busy__t{
  position:absolute; left:50%; top:50%; margin:0; width:100%; text-align:center; opacity:0;
  font-family:'Inter Tight', system-ui, sans-serif; font-weight:600;
  font-size:clamp(30px,4.6vw,64px); line-height:1.12; letter-spacing:-.025em; color:var(--ink);
  will-change:opacity,filter,transform; text-wrap:balance;
}
.busy__t--wide{font-size:clamp(26px,3.8vw,52px)}

/* финал */
.final__in{gap:24px; max-width:860px}
.sec .final__t{font-family:"Inter Tight", system-ui, sans-serif; font-weight:600; letter-spacing:-.03em; font-size:clamp(32px,4.8vw,64px)}
.final__chips{display:flex; flex-wrap:wrap; gap:8px; justify-content:center; max-width:640px}
.final__chips span{padding:7px 14px; border-radius:999px; font-size:13px; color:var(--ink-2); border:1px dashed rgba(154,155,242,.38); background:rgba(154,155,242,.05)}
.final__k{margin:0; font:600 clamp(17px,1.8vw,22px)/1.3 'Inter Tight', system-ui, sans-serif; color:var(--ink)}
.fin-bg{position:absolute; inset:0; z-index:0; pointer-events:none; overflow:hidden}
.gcard.fin-card{
  transform:none; opacity:.2; filter:blur(1.2px); pointer-events:none; will-change:transform;
  animation:finfloat 16s ease-in-out infinite;
}
.fin-card.ecard{width:220px}
.fin-card.ecard .ecard__img{height:96px}
.fin-card.vcard{width:220px; padding-bottom:0}
.fin-card.vcard .vcard__img{height:96px}
.fin-chipcard{padding:10px 16px; border-radius:999px}
.fin-chip{font:600 14px 'Inter Tight', system-ui, sans-serif; color:var(--acc)}
@keyframes finfloat{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-18px) rotate(1deg)}}
@media (prefers-reduced-motion: reduce){ .gcard.fin-card{animation:none} }

/* ── телефон: скрины на всю высоту экрана ── */
@media (max-width:820px){
  .stage-product{padding:0 12px}
  .stage-product::before{height:3vh}
  .stage-product::after{height:4vh}
  .prodwin{
    width:min(94vw, calc((100svh - 28px) * 390 / 844)); aspect-ratio:390/844;
    border-radius:24px;
  }
  .prodwin img.prodwin__fit{object-fit:cover; object-position:top}
  .prodlog{left:4%; right:4%; width:auto; bottom:2.5%}
  .prodlog__bar{padding:7px 10px}
  .prodlog__text{min-height:6.9em; padding:11px 13px; font-size:12.5px; line-height:1.55}
  .prodload{left:50%; top:46%; width:90%; padding:16px 16px 18px}
  .prodload__head{flex-direction:column; gap:4px; margin-bottom:12px}
  .prodload__head b{font-size:16px; line-height:1.25}
  .prodload__steps{grid-template-columns:1fr; gap:7px}
  .prodload__steps span{font-size:12.5px; padding-left:24px}
  .vcard{width:206px; gap:8px; padding-bottom:10px}
  .vcard__img{height:92px; padding:9px 10px}
  .gcard .vcard__t{font-size:13px}
  .gcard .vcard__img small{display:none}
  .vcard__nums{gap:12px}
  .busy{height:76vh}
  .rpop{padding:10px}
  .rpop__card--page{width:auto; max-width:94vw; max-height:94svh; padding:8px; overflow:hidden}
  .rpop__card--page .rp2__shot{width:auto; max-width:100%; max-height:calc(94svh - 16px); margin:0 auto}
  .rpop__x{top:14px; right:14px; background:rgba(10,10,14,.75); z-index:2}
  .gcard.fin-card{opacity:.13}
  .fin-card:nth-child(n+7){display:none}
  .fin-card.ecard, .fin-card.vcard{width:170px}
  .final__in{gap:20px}
  .sec .final__t{font-size:clamp(28px,8.6vw,40px)}
  .sec--final{padding:14vh 16px}
  .litline{font-size:clamp(23px,6.6vw,34px)}
}

/* ═════════ правки 26.10 (десктоп) ═════════ */

/* «Нажмите на профиль» — с пульсирующей точкой-касанием */
.crm-t--tap{display:inline-flex; align-items:center; gap:14px}
.tapdot{position:relative; flex:none; width:14px; height:14px; border-radius:50%; background:var(--acc); box-shadow:0 0 14px rgba(154,155,242,.8)}
.tapdot::after{content:''; position:absolute; inset:-6px; border-radius:50%; border:1.5px solid var(--acc); animation:tapring 1.6s ease-out infinite}
@keyframes tapring{0%{transform:scale(.6); opacity:1}100%{transform:scale(1.9); opacity:0}}
@media (prefers-reduced-motion: reduce){ .tapdot::after{animation:none} }

/* «Любой запрос» — на 20% компактнее */
.stage-searchl{gap:35px}
.searchl__t{font-size:clamp(22px,3.5vw,46px)}
.searchl__win{width:min(608px,92vw); padding:18px; border-radius:17px}
.searchl__bar{padding:14px 16px; gap:11px; border-radius:12px}
.searchl__bar svg{width:18px; height:18px}
.searchl__text{font-size:clamp(14px,1.5vw,17px)}
.searchl__bar button{height:37px; padding:0 19px; font-size:13px; border-radius:9px}
.searchl__chips{gap:7px; margin-top:11px}
.searchl__chips span{padding:6px 11px; font-size:11.5px}
.searchl__s{font-size:clamp(13.5px,1.3vw,16px)}

/* подбор: плавнее, а уход — эффектный */
.prodload__bar i{transition:width .45s cubic-bezier(.4,0,.2,1)}
.prodload__steps span, .prodload__steps span::before{transition:color .5s ease, border-color .5s ease, background .5s ease}
.prodload{transition:opacity .6s var(--ease), transform .6s var(--ease), filter .6s var(--ease)}
.prodload.gone{opacity:0; transform:translate(-50%,-50%) scale(1.12); filter:blur(14px); transition:opacity .9s var(--ease), transform .9s var(--ease), filter .9s var(--ease)}
.prodwin > picture img, .prodwin img{transition:opacity 1.1s var(--ease), transform 1.1s var(--ease), filter 1.1s var(--ease)}

/* вертикали: второй слайд — четыре признака симметрично */
#vertcard .crmcard__body--swap{transition:none}
.vt-grid{display:grid; grid-template-columns:1fr 1fr; gap:10px 0; width:100%; text-align:center; white-space:normal}
.vt-grid span{position:relative; padding:4px 18px; font:600 clamp(19px,2vw,25px)/1.25 'Inter Tight', system-ui, sans-serif; letter-spacing:-.015em}
.vt-grid span:nth-child(odd){border-right:1px solid rgba(154,155,242,.28)}
.vt-grid span:nth-child(-n+2){border-bottom:1px solid rgba(154,155,242,.18); padding-bottom:12px}
.vt-grid span:nth-child(n+3){padding-top:6px}
.vt-grid span:last-child{color:var(--acc)}

/* стол: Балясников подсвечивается, над столом — его профиль */
.tring{
  position:absolute; z-index:4; left:80.6%; top:71.3%; width:5.4%; aspect-ratio:1; border-radius:50%;
  transform:translate(-50%,-50%); pointer-events:none; opacity:0;
  border:3px solid #3BE38A; box-shadow:0 0 0 4px rgba(59,227,138,.25), 0 0 34px rgba(59,227,138,.85);
  transition:opacity .5s var(--ease);
}
.tring.on{opacity:1; animation:tblink 1.1s ease-in-out infinite}
@keyframes tblink{0%,100%{box-shadow:0 0 0 4px rgba(59,227,138,.25), 0 0 34px rgba(59,227,138,.85)}50%{box-shadow:0 0 0 10px rgba(59,227,138,.08), 0 0 60px rgba(59,227,138,1)}}
.tprof{
  position:absolute; z-index:5; left:41%; top:34%; width:min(370px,30%);
  padding:16px 18px; border-radius:16px; text-align:left;
  background:rgba(14,15,20,.97); border:1px solid rgba(59,227,138,.55);
  box-shadow:0 30px 90px rgba(0,0,0,.65), 0 0 50px rgba(59,227,138,.18);
  opacity:0; transform:translateY(16px) scale(.97); filter:blur(5px); pointer-events:none;
  transition:opacity .6s var(--ease), transform .6s var(--ease), filter .6s var(--ease);
}
.tprof.on{opacity:1; transform:none; filter:none}
.tprof__head{display:flex; gap:12px; align-items:center}
.tprof__ph{position:relative; flex:none; width:52px; height:52px; border-radius:50%; overflow:hidden; display:inline-flex; align-items:center; justify-content:center; font:600 15px 'Inter Tight',sans-serif; color:#DADBF8; background:#22243a; border:2px solid #3BE38A}
.tprof__ph img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover}
.tprof__head b{display:block; font:600 16px 'Onest',sans-serif; color:#F4F5F9}
.tprof__head span{display:block; font-size:12.5px; color:#AEB3C2}
.tprof__head em{display:block; margin-top:2px; font:600 12px 'Inter Tight',sans-serif; color:#3BE38A}
.tprof__rows{display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:12px; padding-top:11px; border-top:1px solid rgba(244,245,249,.08)}
.tprof__rows small{display:block; font:600 9.5px 'SF Mono',ui-monospace,monospace; letter-spacing:.14em; text-transform:uppercase; color:#787E90}
.tprof__rows p{margin:3px 0 0; font-size:12px; line-height:1.45; color:#D5D8E2}
.tprof__acts{display:flex; gap:8px; margin-top:14px}
.tprof__b{flex:1; text-align:center; padding:9px 10px; border-radius:10px; font:600 13px 'Onest',sans-serif; color:#F4F5F9; border:1px solid rgba(244,245,249,.14); background:rgba(244,245,249,.04)}
.tprof__b--pri{background:linear-gradient(135deg,#ABACF6,#8886EC); color:#15151F; border:0; transition:transform .25s var(--ease), box-shadow .25s}
.tprof.press .tprof__b--pri{transform:scale(.94); box-shadow:0 0 0 5px rgba(154,155,242,.25), 0 0 30px rgba(154,155,242,.6)}
.tprof__load{display:flex; align-items:center; gap:10px; height:0; overflow:hidden; opacity:0; transition:height .35s var(--ease), opacity .35s, margin .35s}
.tprof.loading .tprof__load{height:18px; opacity:1; margin-top:12px}
.tprof__load i{position:relative; flex:1; height:3px; border-radius:9px; background:rgba(154,155,242,.18); overflow:hidden}
.tprof__load i::after{content:''; position:absolute; inset:0; width:40%; border-radius:9px; background:linear-gradient(90deg,#8886EC,#B9BAF6); animation:tload .9s ease-in-out infinite}
@keyframes tload{0%{transform:translateX(-100%)}100%{transform:translateX(260%)}}
.tprof__load span{flex:none; font-size:11.5px; color:#AEB3C2}
@media (max-width:820px){
  .tring{display:none}
  .tprof{left:6%; right:6%; width:auto; top:30%}
}

/* финал: компактно в центре экрана */
.final__in{gap:0; max-width:760px}
.final__logo--finger{width:min(58px,14vw); margin-bottom:22px}
.sec .final__t{font-size:clamp(28px,3.2vw,44px); line-height:1.1; margin:0 0 26px; white-space:nowrap}
.sec .final__t em{display:inline}
.bigin--xl{width:min(680px,94vw)}
.final__s{margin-top:14px; max-width:600px; font-size:14.5px; line-height:1.55}
@media (max-width:820px){
  .sec .final__t{white-space:normal; font-size:clamp(26px,7.6vw,34px); margin-bottom:20px}
  .final__logo--finger{margin-bottom:16px}
}

#vertcard .crmcard__body--swap{min-width:min(700px,86vw)}
.prodwin .tprof__ph img{opacity:1; transform:none; filter:none; transition:none}

/* ═════════ правки 26.10 (телефон + общее) ═════════ */

/* герой: перенос «поиска решений» только на телефоне */
.br-m{display:none}

/* крестик открытого профиля — заметный, мягко пульсирует */
.rpop__x{
  background:rgba(154,155,242,.9); color:#15151F; border:0; font-weight:700;
  box-shadow:0 0 0 0 rgba(154,155,242,.6); animation:xpulse 1.8s ease-in-out infinite;
}
@keyframes xpulse{0%,100%{box-shadow:0 0 0 0 rgba(154,155,242,.55)}50%{box-shadow:0 0 0 8px rgba(154,155,242,0)}}
@media (prefers-reduced-motion: reduce){ .rpop__x{animation:none} }

/* «Любой запрос»: на компьютере пять подсказок в одну строку */
.searchl__chips{flex-wrap:nowrap; justify-content:center}
.searchl__chips span{white-space:nowrap; flex:none; padding:6px 10px; font-size:11px}

/* финал: кнопка появляется после ввода, ниже — согласие */
.fin-form button{display:none}
.fin-form.typed button{display:block; animation:finin .45s var(--ease)}
.fin-form button:disabled{opacity:.45; cursor:not-allowed; filter:saturate(.6)}
@keyframes finin{from{opacity:0; transform:translateX(8px)}to{opacity:1; transform:none}}
.fin-consent{
  position:relative; z-index:1; display:none; align-items:center; gap:10px; margin-top:14px;
  font-size:13.5px; color:var(--ink-2); cursor:pointer; user-select:none;
}
.fin-consent.on{display:inline-flex; animation:finin .45s var(--ease)}
.fin-consent input{position:absolute; opacity:0; width:1px; height:1px}
.fin-consent i{flex:none; width:20px; height:20px; border-radius:6px; border:1.5px solid rgba(154,155,242,.6); background:rgba(154,155,242,.06); display:flex; align-items:center; justify-content:center}
.fin-consent input:checked + i{background:var(--acc); border-color:var(--acc)}
.fin-consent input:checked + i::after{content:''; width:9px; height:5px; border:2px solid #15151F; border-top:0; border-right:0; transform:rotate(-45deg) translate(1px,-1px)}
.fin-consent input:focus-visible + i{outline:2px solid var(--acc); outline-offset:2px}
.fin-consent a{color:var(--acc); text-decoration:underline; text-underline-offset:3px}
.fin-done{position:relative; z-index:1; margin:8px 0 0; min-height:0; font-size:13.5px; color:#8BD4B0}
.fin-done:empty{display:none}
.sec .final__t{margin-bottom:18px}
.final__logo--finger{margin-bottom:16px}
.final__s{margin-top:12px}

/* политика конфиденциальности */
.foot__policy{color:var(--ink-3); text-decoration:underline; text-underline-offset:3px}
.foot__policy:hover{color:var(--ink-2)}
.pmodal[hidden]{display:none}
.pmodal{position:fixed; inset:0; z-index:95; display:flex; align-items:center; justify-content:center; padding:20px; background:rgba(5,5,8,.72); opacity:0; transition:opacity .3s ease}
.pmodal.on{opacity:1}
.pmodal__card{position:relative; width:min(560px,94vw); max-height:86svh; overflow:auto; padding:28px 28px 24px; border-radius:18px; background:#12121B; border:1px solid rgba(154,155,242,.35); box-shadow:0 50px 140px rgba(0,0,0,.7)}
.pmodal__card h3{margin:0 40px 14px 0; font:600 22px/1.25 'Inter Tight', system-ui, sans-serif}
.pmodal__card p{margin:0 0 12px; font-size:14.5px; line-height:1.6; color:var(--ink-2)}

/* ── телефон ── */
@media (max-width:820px){
  .br-m{display:inline}
  .hero__sub{text-align:center; line-height:1.5; letter-spacing:.1em}
  /* люди на орбитах — на 28% меньше */
  .orb-ava--s0{width:34px; height:34px}
  .orb-ava--s1{width:26px; height:26px}
  .orb-ava--s2{width:19px; height:19px}
  .orb-ava{box-shadow:0 0 12px rgba(136,134,236,.3)}

  /* плавность: без размытия подложки и статичных блюров на движущихся карточках */
  .gcard{backdrop-filter:none !important; -webkit-backdrop-filter:none !important; filter:none !important; transition:none}
  .gcard--pc, .ecard, .vcard{background:#10101B}
  .rpop{backdrop-filter:none; -webkit-backdrop-filter:none; background:rgba(5,5,8,.86)}
  .prodload{backdrop-filter:none; background:rgba(12,12,19,.98)}
  .crm-t, .ev-t, .vt-t{will-change:opacity, transform}
  .crmcard{will-change:transform, opacity}

  /* карточки событий и вертикалей — компактнее */
  .ecard{width:184px; padding:8px 8px 10px; gap:6px}
  .ecard__img{height:84px}
  .gcard .ecard__t{font-size:12.5px}
  .ecard small{font-size:10.5px}
  .vcard{width:184px}
  .vcard__img{height:80px}
  #vertcard .crmcard__body--swap, #evcard .crmcard__body--swap{min-width:74vw}

  /* «Любой запрос» — в одну строку, без кнопки, три подсказки в ряд */
  .searchl__t{white-space:nowrap; font-size:min(5.4vw,22px)}
  .searchl__t span{filter:none}
  .searchl__go{display:none}
  .searchl__bar{padding:13px 14px; min-height:50px}
  .chip-d{display:none}
  .searchl__chips{gap:6px}
  .searchl__chips span{padding:6px 9px; font-size:11.5px}

  /* плашка агента в поиске: крупнее, фиксированной высоты, выше */
  #prodwin .prodlog{bottom:3%}
  #prodwin .prodlog__text{height:9.6em; min-height:0; overflow:hidden; font-size:13px}
  /* у стола — компактная, в нижней свободной зоне окна обращения */
  #tablewin .prodlog{bottom:2%}
  #tablewin .prodlog__text{height:5em; min-height:0; overflow:hidden; font-size:12px; line-height:1.5; padding:9px 12px}

  /* стол на телефоне — дольше, ~3 экрана больше */
  .pin[data-scene="tables"]{--len:1160 !important}
  .tring{display:block; left:81%; top:64.9%; width:12.5%; border-width:2.5px}
  .tprof{top:24%; left:5%; right:5%; width:auto; padding:13px 14px}
  .tprof__rows p{font-size:11.5px}

  /* финал */
  .fin-form.typed button{width:100%}
  .fin-consent{font-size:13px; margin-top:12px}
  .sec .final__t{margin-bottom:14px}
  .foot__policy{margin-top:4px}
}

/* ═════════ правки 26.10 (телефон, раунд 2) ═════════ */

/* «Нажмите на профиль»: профили ровно светятся фиолетовым неоном */
.gcard--hot::after{animation:none}
/* по очереди: «lit» — уже загорелся, «cur» — горит сейчас ярче всех */
.gcard--hot{transition:box-shadow .7s var(--ease), border-color .7s var(--ease)}
.gcard--hot.lit{border-color:rgba(190,192,250,.8); box-shadow:0 0 0 1px rgba(170,171,248,.45), 0 0 22px rgba(136,134,236,.5), 0 0 50px rgba(124,104,255,.28)}
.gcard--hot.cur{border-color:rgba(214,215,255,1); box-shadow:0 0 0 2px rgba(190,192,250,.7), 0 0 34px rgba(150,140,255,.95), 0 0 90px rgba(124,104,255,.6)}

/* вертикали: рубли не отрываются; на «Подходящем масштабе» загорается медиана */
.vcard__nums span{white-space:nowrap}
.vcard__nums span:last-child{transition:color .6s var(--ease), text-shadow .6s var(--ease)}

/* «настало время её протестировать» — ярко-фиолетовым */
.litline span.acc.hot.lit{color:#B9A6FF; text-shadow:0 0 22px rgba(150,118,255,.85), 0 0 60px rgba(124,104,255,.55)}

/* поиск: подсветки поверх скринов */
.prodwin .pring, .prodwin .oring{position:absolute; z-index:4; pointer-events:none; opacity:0; border-radius:14px; border:2px solid #9A9BF2; box-shadow:0 0 0 4px rgba(154,155,242,.18), 0 0 30px rgba(154,155,242,.7); transition:opacity .5s var(--ease)}
.pring{display:none}
.oring{left:17.4%; top:32.6%; width:39.9%; height:36.8%}
.s-oleg .oring{opacity:1}
.prodwin .obtn{
  position:absolute; z-index:5; left:37.6%; top:61.4%; width:18.2%; height:3.2%;
  display:flex; align-items:center; justify-content:center; border-radius:8px;
  font:600 clamp(9px,.95vw,13px) 'Onest',sans-serif; color:#15151F;
  background:linear-gradient(135deg,#ABACF6,#8886EC); box-shadow:0 0 0 3px rgba(154,155,242,.25), 0 0 26px rgba(154,155,242,.8);
  opacity:0; transform:scale(1); transition:opacity .4s var(--ease), transform .2s var(--ease), filter .2s; pointer-events:none;
}
.s-btn .obtn{opacity:1}
.s-press .obtn{transform:scale(.9); filter:brightness(.8); box-shadow:0 0 0 7px rgba(154,155,242,.18), 0 0 40px rgba(154,155,242,1)}
.pappeal{
  position:absolute; z-index:6; left:50%; top:47%; width:min(440px,46%); transform:translate(-50%,-46%) scale(.96);
  padding:18px 20px 20px; border-radius:16px; text-align:left;
  background:#121218; border:1px solid rgba(154,155,242,.4); box-shadow:0 40px 110px rgba(0,0,0,.7), 0 0 60px rgba(124,104,255,.18);
  opacity:0; pointer-events:none; transition:opacity .5s var(--ease), transform .5s var(--ease);
}
.s-appeal .pappeal{opacity:1; transform:translate(-50%,-50%)}
.pappeal__head{display:flex; gap:12px; align-items:center; margin-bottom:12px}
.prodwin .pappeal img{position:static; inset:auto; width:48px; height:48px; border-radius:50%; object-fit:cover; opacity:1; transform:none; filter:none; transition:none; flex:none}
.pappeal__head small, .pappeal__l{display:block; font:600 10px 'Inter Tight',sans-serif; letter-spacing:.12em; text-transform:uppercase; color:#787E90}
.pappeal__l{margin:12px 0 7px; letter-spacing:.02em; text-transform:none; font-size:12px; color:#D5D8E2}
.pappeal__head b{display:block; font:600 17px 'Onest',sans-serif; color:#F4F5F9}
.pappeal__head span{font-size:12.5px; color:#AEB3C2}
.pappeal__chips{display:flex; flex-wrap:wrap; gap:6px}
.pappeal__chips span{padding:6px 11px; border-radius:9px; font-size:12px; color:#D5D8E2; background:rgba(244,245,249,.05); border:1px solid rgba(244,245,249,.08)}
.pappeal__chips span.on{border-color:#8886EC; color:#fff; background:rgba(136,134,236,.2)}
.pappeal__ta{padding:11px 13px; border-radius:11px; border:1.5px solid #8886EC; background:#0C0C12; font-size:13px; line-height:1.5; color:#F4F5F9}
.pappeal__go{display:block; margin-top:12px; padding:11px; border-radius:11px; text-align:center; font:600 14px 'Onest',sans-serif; color:#15151F; background:linear-gradient(135deg,#ABACF6,#8886EC)}

/* стол: аватар целиком в круге, нажатие «Обратиться» заметно */
.prodwin .tprof__ph img{object-position:center 20%}
.tprof.press .tprof__b--pri{transform:scale(.88); filter:brightness(.78); box-shadow:0 0 0 7px rgba(154,155,242,.2), 0 0 40px rgba(154,155,242,.9)}
.tsend{display:none}

/* финал: логотип → «Деловая Лига» → поле в центре → согласие → кнопка → текст */
.sec--final{min-height:100svh; padding:10vh 20px}
.final__in{gap:0; max-width:680px; width:100%}
.final__logo--finger{width:min(54px,14vw); margin-bottom:14px}
.sec .final__t{font-size:clamp(26px,2.8vw,38px); margin:0 0 6vh}
.fin-form{position:relative; z-index:1; display:flex; flex-direction:column; align-items:center; width:100%}
.fin-label{margin:0 0 10px; font-size:14px; color:var(--ink-2)}
.fin-form .bigin{width:min(560px,100%); padding:6px 6px 6px 20px}
.fin-form .bigin input{height:54px}
.fin-consent{margin-top:12px; max-width:560px; text-align:left; line-height:1.4}
.fin-go{
  display:none; margin-top:14px; width:min(560px,100%); height:52px; border:0; border-radius:12px; cursor:pointer;
  background:linear-gradient(135deg,#ABACF6,#8886EC); color:#15151F; font:700 16px 'Onest',sans-serif;
}
.fin-form.typed .fin-go{display:block; animation:finin .45s var(--ease)}
.fin-go:disabled{opacity:.45; cursor:not-allowed}
.final__s{margin-top:16px}
@media (max-width:820px){
  .sec--final{padding:8vh 16px}
  .sec .final__t{font-size:30px; margin-bottom:5vh}
  .fin-form .bigin{flex-direction:row; padding:6px 6px 6px 16px}
  .fin-consent{font-size:12.5px}

  /* поиск на телефоне: подсветка «Уточнить цель», карточки Олега и «Обратиться» */
  .pring{display:block; left:28.7%; top:39.2%; width:42.6%; height:4.2%; border-radius:999px}
  .s-goal .pring{opacity:1; animation:tblinkv 1.2s ease-in-out infinite}
  .oring{left:1.5%; top:38.2%; width:97%; height:40%}
  .prodwin .obtn{left:51.3%; top:67.9%; width:45.1%; height:4.3%; font-size:12.5px; border-radius:12px}
  .pappeal{width:90%; top:44%; padding:14px 14px 16px}
  .pappeal__chips span{font-size:11px; padding:5px 9px}
  .ph2 .prodlog{left:4%; right:4%}
  #prodwin .prodlog{z-index:7}
  #prodwin .prodload{z-index:6}
  /* окно обращения у стола: «Отправить сообщение» прямо под полем */
  .tsend{
    display:flex; position:absolute; z-index:5; left:4.1%; right:4.1%; top:64.2%; height:5.4%;
    align-items:center; justify-content:center; border-radius:12px; font:600 14px 'Onest',sans-serif; color:#15151F;
    background:linear-gradient(135deg,#ABACF6,#8886EC); opacity:0; transition:opacity .5s var(--ease); pointer-events:none;
  }
  #tablewin.s-send .tsend{opacity:1}
  .pin[data-scene="tables"]{--len:1330 !important}
  /* плавность вертикалей: самый дальний слой на телефоне не рисуем */
  .gcard.deep{display:none}
  .vcard__nums span{font-size:11px}
}
@keyframes tblinkv{0%,100%{box-shadow:0 0 0 3px rgba(154,155,242,.2), 0 0 18px rgba(154,155,242,.6)}50%{box-shadow:0 0 0 7px rgba(154,155,242,.08), 0 0 36px rgba(154,155,242,1)}}


/* ═════════ правки 26.10 (десктоп, раунд 2) ═════════ */
.prodwin{container-type:inline-size}

/* поиск: запрос печатается в поле, «Найти» нажимается */
.prodwin .ptype{
  position:absolute; z-index:4; left:34.6%; top:50.1%; width:38.4%; height:3.7%;
  display:flex; align-items:center; gap:2px; padding-left:.2%;
  background:rgb(15,16,17); color:#F4F5F9; font:500 1.22cqw/1 'Onest', system-ui, sans-serif;
  opacity:0; transition:opacity .3s; pointer-events:none; white-space:nowrap; overflow:hidden;
}
.prodwin .ptype .caret{height:1.3em; width:1.5px}
.s-type .ptype{opacity:1}
.prodwin .pfind{
  position:absolute; z-index:4; left:77.4%; top:48.9%; width:6.75%; height:6.1%; border-radius:999px;
  display:flex; align-items:center; justify-content:center; background:rgb(94,106,210); color:#fff;
  font:600 1.2cqw 'Onest', system-ui, sans-serif; opacity:0; transition:opacity .3s, transform .18s var(--ease), box-shadow .18s, filter .18s; pointer-events:none;
}
.s-find .pfind{opacity:1; box-shadow:0 0 0 3px rgba(154,155,242,.3), 0 0 26px rgba(154,155,242,.75)}
.s-press0 .pfind{transform:scale(.88); filter:brightness(.82); box-shadow:0 0 0 8px rgba(154,155,242,.2), 0 0 42px rgba(154,155,242,1)}

/* Томилин теперь справа */
.oring{left:58.3%; top:32.5%; width:39.9%; height:37.2%}
.prodwin .obtn{left:78.5%; top:61.3%; width:18.2%; height:3.5%}
.pappeal{left:62%}

/* вертикали: медианы загораются по очереди, каждая ярче */
.vcard__nums span:last-child{transition:color .6s var(--ease), text-shadow .6s var(--ease)}
.vcard .vcard__nums{margin:0 13px; padding:7px 11px; border-radius:10px; border:1px solid transparent; transition:border-color .5s, background .5s, box-shadow .5s}
.vcard.med-on .vcard__nums{
  border-color:rgba(59,227,138,.6);
  background:rgba(59,227,138,.09);
  box-shadow:0 0 calc(14px + var(--mk, 0) * 4px) hsla(150, 85%, 60%, calc(.3 + var(--mk, 0) * .08));
}
.vcard.med-on .vcard__nums span{color:hsl(150 80% calc(62% + var(--mk, 0) * 4%))}
.vcard.med-on .vcard__nums em{color:#8BF0C0}

/* «Настало время её протестировать» — отдельная кнопка с бликом по скроллу */
.cta-pill{
  position:relative; z-index:2; display:inline-flex; align-items:center; gap:14px; overflow:hidden;
  margin-top:6px; padding:18px 30px; border-radius:999px; text-decoration:none;
  font:600 clamp(20px,2.3vw,30px)/1.2 'Inter Tight', system-ui, sans-serif; letter-spacing:-.015em; color:#fff;
  background:linear-gradient(135deg, #7C6BFF, #5B4FE0 55%, #8A7BFF);
  box-shadow:0 0 0 1px rgba(200,190,255,.5), 0 18px 60px rgba(108,92,255,.55), 0 0 90px rgba(124,104,255,.5);
  opacity:0; transform:translateY(18px) scale(.97); transition:opacity .8s var(--ease), transform .8s var(--ease), box-shadow .3s;
}
.cta-pill.on{opacity:1; transform:none}
.cta-pill::after{
  content:''; position:absolute; top:-20%; bottom:-20%; width:38%; left:0;
  background:linear-gradient(100deg, transparent, rgba(255,255,255,.55), transparent);
  transform:translateX(var(--sh, -80%)) skewX(-18deg); pointer-events:none;
}
.cta-pill:hover{box-shadow:0 0 0 1px rgba(220,214,255,.8), 0 22px 70px rgba(108,92,255,.7), 0 0 120px rgba(124,104,255,.65)}
.cta-pill:focus-visible{outline:2px solid #fff; outline-offset:4px}
.cta-pill__arr{font-style:normal; transition:transform .3s var(--ease)}
.cta-pill:hover .cta-pill__arr{transform:translateX(4px)}

/* финал: подпись, «У меня нет сайта», летающие плашки вместо текста */
.fin-label{font-size:14.5px; color:var(--ink-2); text-align:center}
.fin-nosite{position:relative; z-index:1; margin-top:12px; padding:4px 6px; border:0; background:none; cursor:pointer; font:500 13px 'Onest',sans-serif; color:var(--ink-3); text-decoration:underline; text-underline-offset:3px}
.fin-nosite:hover{color:var(--ink-2)}
.fin-chips{position:relative; z-index:1; display:flex; gap:12px; justify-content:center; flex-wrap:wrap; margin-top:22px}
.fin-chips span{
  padding:9px 18px; border-radius:999px; font:600 14px 'Inter Tight',sans-serif; color:#CFD0FA;
  background:rgba(106,91,219,.14); border:1px solid rgba(154,155,242,.45); box-shadow:0 0 26px rgba(124,104,255,.22);
  animation:chipfloat 5.6s ease-in-out infinite; animation-delay:var(--d, 0s);
}
@keyframes chipfloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@media (prefers-reduced-motion: reduce){ .fin-chips span{animation:none} }

/* окно «У меня нет сайта» */
.drop{position:relative; display:flex; flex-direction:column; align-items:center; gap:6px; margin:14px 0 4px; padding:26px 16px; border-radius:14px; border:1.5px dashed rgba(154,155,242,.5); background:rgba(154,155,242,.05); text-align:center; cursor:pointer; transition:background .2s, border-color .2s}
.drop.over, .drop:hover{background:rgba(154,155,242,.12); border-color:#9A9BF2}
.drop input{position:absolute; inset:0; opacity:0; cursor:pointer}
.drop b{font:600 15px 'Onest',sans-serif; color:var(--ink)}
.drop span{font-size:13px; color:var(--ink-3)}
.drop span u{color:var(--acc)}
.drop__file{font-style:normal; font-size:13.5px; color:#8BD4B0}
.drop__file:empty{display:none}
.drop__go{display:block; width:100%; margin-top:12px}
.drop__note{margin:10px 0 0 !important; font-size:12.5px !important; color:var(--ink-3) !important}

@media (max-width:820px){
  .prodwin .ptype{left:13.7%; top:33.4%; width:70.8%; height:3%; font-size:3.4cqw; background:rgb(15,16,18)}
  .prodwin .pfind{display:none}
  .oring{left:1.5%; top:38.2%; width:97%; height:40%}
  .prodwin .obtn{left:51.3%; top:67.9%; width:45.1%; height:4.3%}
  .pappeal{left:50%}
  .cta-pill{font-size:19px; padding:15px 22px; gap:10px}
  .fin-chips{gap:8px; margin-top:18px}
  .fin-chips span{font-size:13px; padding:8px 14px}
  .fin-label{font-size:13.5px}
}

/* ── телефон: без мёртвых участков, «Любой запрос» дольше, «Найти» на поле ── */
@media (max-width:820px){
  .pin[data-scene="hero"]{--len:150 !important}
  .void{display:none}
  .pin[data-scene="searchl"]{--len:560 !important}
  .pring{display:none !important}
  .prodwin .pfind{display:flex; left:78.5%; top:33.1%; width:17%; height:3.6%; font-size:3.3cqw}
}
@media (max-width:820px){ .cta-pill{font-size:16.5px; padding:14px 18px; white-space:nowrap} }
@media (max-width:820px){
  .gcard--hot{transition:none}
  .gcard--hot.lit{box-shadow:0 0 0 1px rgba(170,171,248,.55), 0 0 16px rgba(136,134,236,.5)}
  .gcard--hot.cur{box-shadow:0 0 0 2px rgba(190,192,250,.8), 0 0 24px rgba(150,140,255,.85)}
}

/* кольцо Балясникова: мигание — только прозрачностью слоя (без перерисовки тени каждый кадр) */
.tring.on{animation:none}
.tring::after{content:''; position:absolute; inset:-8px; border-radius:50%; box-shadow:0 0 0 6px rgba(59,227,138,.12), 0 0 56px rgba(59,227,138,1); opacity:0; will-change:opacity}
.tring.on::after{animation:tglow 1.1s ease-in-out infinite}
@keyframes tglow{0%,100%{opacity:.2}50%{opacity:1}}
@media (prefers-reduced-motion: reduce){ .tring.on::after{animation:none; opacity:.6} }

/* ── правки 26.10 (вечер): воздух финала, блик кнопки, зелёная бронь ── */
.final__in .fin-form{margin-top:10px}
.fin-label{margin:0 0 20px}
.fin-consent{margin-top:20px}
.fin-go{margin-top:24px}
.sec .final__t{margin-bottom:14px}
.fin-go:not(:disabled){
  background:linear-gradient(110deg, #6A5BDB 0%, #8886EC 38%, #D6D7FF 50%, #8886EC 62%, #6A5BDB 100%);
  background-size:240% 100%;
  background-position:100% 0;
  transition:background-position .25s;
}
.fin-go:not(:disabled):hover{animation:finshine 1.15s linear infinite}
@keyframes finshine{0%{background-position:100% 0}100%{background-position:-40% 0}}
.tprof__b--pri.ok{
  background:linear-gradient(135deg, #4ADE97, #2EBE77);
  border-color:transparent; color:#07130C; font-weight:700;
  box-shadow:0 0 26px rgba(59,227,138,.45);
}
@media (prefers-reduced-motion: reduce){ .fin-go:not(:disabled):hover{animation:none} }

/* ═════════ знак «Деловая Лига» (Λ на палке) вместо отпечатка ═════════ */
.ld{display:block; overflow:visible}
.ld path{fill:none; stroke-linecap:round; stroke-linejoin:round}
.ld__leg{stroke:#fff; stroke-width:11.5; stroke-dasharray:100 100}
.ld__bar{stroke:#fff; stroke-width:11; stroke-dasharray:100 100}
.ld__ghost path{stroke:rgba(154,155,242,.12)}
.ld__ghost path:first-child{stroke-width:11.5}
.ld__ghost path:last-child{stroke-width:11}
.ld__shine{stroke:rgba(255,255,255,.95); stroke-width:11; stroke-dasharray:16 220; stroke-dashoffset:16; opacity:0}

/* лоадер: ноги рисуются от стоп к вершине, палка — прогресс из центра, сиреневая с неоном */
.ld--loader{width:min(272px,62vw); height:auto; will-change:transform}
.ld--loader .ld__leg{stroke-dashoffset:100; filter:drop-shadow(0 0 6px rgba(190,192,250,.55))}
.ld--loader .ld__bar{stroke:#9A9BF2; stroke-dashoffset:100; filter:drop-shadow(0 0 7px rgba(154,155,242,.95)) drop-shadow(0 0 18px rgba(124,104,255,.6)); transition:stroke .5s ease, filter .5s ease}
.loader.lit .ld--loader .ld__shine{animation:ldsweep .48s cubic-bezier(.4,0,.2,1) forwards}
.loader.settle .ld--loader .ld__bar{stroke:#fff; filter:drop-shadow(0 0 6px rgba(190,192,250,.5))}
.loader.settle .ld__ghost{opacity:0; transition:opacity .3s}
@keyframes ldsweep{0%{stroke-dashoffset:16; opacity:1}100%{stroke-dashoffset:-100; opacity:1}}
.loader__num{margin-top:-8px}

/* ядро первого экрана: знак дышит, по палке раз в 7 с пробегает блик, от вершины Λ уходит волна в орбиты */
.ld-core{position:relative; display:block; width:66.7%; will-change:transform}
.ld--hero{width:100%; height:auto}
.ld--hero .ld__ghost{display:none}
.ld--hero .ld__leg, .ld--hero .ld__bar{stroke-dashoffset:0}
.ld--hero{filter:drop-shadow(0 0 10px rgba(190,192,250,.55))}
.ld-core::before{
  content:''; position:absolute; inset:-30%; border-radius:50%; pointer-events:none;
  background:radial-gradient(circle, rgba(170,171,248,.38), rgba(124,104,255,0) 62%);
  animation:ldbreath 5.5s ease-in-out infinite; will-change:opacity, transform;
}
@keyframes ldbreath{0%,100%{opacity:.45; transform:scale(.94)}50%{opacity:1; transform:scale(1.06)}}
.ld--hero .ld__shine{animation:ldsweepIdle 7s ease-in-out 2.4s infinite}
@keyframes ldsweepIdle{0%,84%{stroke-dashoffset:16; opacity:0}85%{opacity:1}100%{stroke-dashoffset:-100; opacity:1}}
.ld-ping{
  position:absolute; left:50%; top:25%; width:420%; aspect-ratio:1; border-radius:50%; pointer-events:none;
  border:1.5px solid rgba(170,171,248,.7); transform:translate(-50%,-50%) scale(.02); opacity:0;
  animation:ldping 7s cubic-bezier(.2,.6,.3,1) 1.6s infinite; will-change:transform, opacity;
}
.ld-ping--2{animation-delay:5.1s; border-color:rgba(120,200,240,.55)}
@keyframes ldping{0%{transform:translate(-50%,-50%) scale(.02); opacity:0}4%{opacity:.8}40%{transform:translate(-50%,-50%) scale(1); opacity:0}100%{transform:translate(-50%,-50%) scale(1); opacity:0}}
.hero__orb{overflow:visible}

/* финал: знак рисуется один раз при входе экрана (ноги, затем палка), блик — и дальше ровное свечение */
.ld-final{display:block; width:min(58px,15vw); margin:0 auto 14px}
.ld--final{width:100%; height:auto; filter:drop-shadow(0 0 14px rgba(154,155,242,.45))}
.ld--final .ld__ghost{display:none}
.ld--final .ld__leg, .ld--final .ld__bar{stroke-dashoffset:100}
.ld-final.on .ld__leg--l{animation:lddraw .55s cubic-bezier(.4,0,.2,1) .15s forwards}
.ld-final.on .ld__leg--r{animation:lddraw .55s cubic-bezier(.4,0,.2,1) .3s forwards}
.ld-final.on .ld__bar{animation:lddraw .5s cubic-bezier(.4,0,.2,1) .8s forwards}
.ld-final.on .ld__shine{animation:ldsweep .5s cubic-bezier(.4,0,.2,1) 1.35s forwards}
.ld-final.on .ld__shine{animation-fill-mode:both}
@keyframes lddraw{to{stroke-dashoffset:0}}
.final__logo.ld-final{opacity:1; transform:none; filter:none}

/* подвал */
.foot__mark{display:inline-flex; align-items:center; gap:10px}
.foot__ld{width:18px; height:18px; opacity:.75}

/* телефон: те же движения, легче */
@media (max-width:820px){
  .ld--loader .ld__leg{filter:none}
  .ld--loader .ld__bar{filter:drop-shadow(0 0 6px rgba(154,155,242,.9))}
  .ld--hero{filter:drop-shadow(0 0 6px rgba(190,192,250,.5))}
  .ld--final{filter:drop-shadow(0 0 8px rgba(154,155,242,.4))}
  .ld-ping{border-width:1px}
}

/* без движения: только появление */
@media (prefers-reduced-motion: reduce){
  .ld--loader .ld__leg, .ld--loader .ld__bar, .ld--final .ld__leg, .ld--final .ld__bar{stroke-dashoffset:0 !important; animation:none !important}
  .ld__shine, .ld-ping, .ld-core::before{animation:none !important; opacity:0 !important}
  .ld-final{opacity:0; transition:opacity .8s}
  .ld-final.on{opacity:1}
}

/* крестик профиля: почти белый, пульс сиреневый ↔ белый, заметное кольцо */
#rpopX{
  width:40px; height:40px; top:12px; right:12px; z-index:3; border-radius:50%;
  font-size:16px; font-weight:700; color:#15151F; border:2px solid rgba(255,255,255,.9);
  background:#F4F5FF; box-shadow:0 0 0 4px rgba(154,155,242,.35), 0 0 22px rgba(255,255,255,.55);
  animation:xglow 1.6s ease-in-out infinite;
}
@keyframes xglow{
  0%,100%{background:#9A9BF2; border-color:rgba(154,155,242,.95); box-shadow:0 0 0 4px rgba(154,155,242,.35), 0 0 18px rgba(154,155,242,.8)}
  50%{background:#FFFFFF; border-color:#fff; box-shadow:0 0 0 7px rgba(255,255,255,.22), 0 0 30px rgba(255,255,255,.85)}
}
@media (max-width:820px){ #rpopX{width:44px; height:44px; top:10px; right:10px; font-size:17px} }
@media (prefers-reduced-motion: reduce){ #rpopX{animation:none; background:#fff; border-color:#fff} }

/* финал: палка знака — фиолетовая с мягким свечением (Λ остаётся белой) */
.ld--final .ld__bar{stroke:#9A9BF2; filter:drop-shadow(0 0 5px rgba(154,155,242,.9)) drop-shadow(0 0 14px rgba(124,104,255,.5))}
.ld--final .ld__shine{stroke:rgba(225,226,255,.95)}
@media (max-width:820px){ .ld--final .ld__bar{filter:drop-shadow(0 0 5px rgba(154,155,242,.85))} }
/* блик финала уходит в фиолетовую палку, а не застывает белой точкой на конце */
.ld-final.on .ld__shine{animation:ldsweepFin .6s cubic-bezier(.4,0,.2,1) 1.35s both}
@keyframes ldsweepFin{0%{stroke-dashoffset:16; opacity:1}80%{opacity:1}100%{stroke-dashoffset:-100; opacity:0}}
