/* 1. первый экран: заголовок + табло с перекидными буквами */
.h-hero{min-height:100svh;display:flex;flex-direction:column;padding-bottom:64px}
.h-hero .ryad{flex:1;display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center;margin-top:24px}
.h-hero h1{font-size:clamp(96px,15vw,240px)}
.h-hero h1 .h1-pod{display:block;margin-top:.12em;font:800 clamp(28px,3vw,46px)/1 var(--zag);text-transform:none;letter-spacing:0;color:var(--bone);max-width:22ch}
.h-hero .lead{margin-top:28px}
.h-hero .knopki{display:flex;gap:12px;flex-wrap:wrap;margin-top:36px}
.tablo{background:#0c0c0f;border:1px solid var(--line);border-radius:var(--r);padding:28px;display:grid;gap:18px;box-shadow:0 40px 120px -40px rgba(108,75,255,.55)}
.tablo .verh{display:flex;justify-content:space-between;font:600 12px var(--tekst);letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}
.tablo .verh i{width:8px;height:8px;border-radius:50%;background:var(--acid);display:inline-block;margin-right:8px;animation:mig 1.6s infinite}
@keyframes mig{50%{opacity:.2}}
.flap{display:flex;gap:4px;flex-wrap:wrap}
.flap b{width:clamp(22px,2.4vw,38px);height:clamp(36px,3.8vw,58px);display:grid;place-items:center;background:#17171c;border-radius:5px;font:800 clamp(24px,2.6vw,40px)/1 var(--zag);position:relative;overflow:hidden;text-transform:uppercase}
.flap b::after{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:rgba(0,0,0,.8)}
.flap b.kr{animation:flip .32s var(--ease)}
@keyframes flip{0%{transform:rotateX(0)}50%{transform:rotateX(90deg);filter:brightness(.5)}100%{transform:rotateX(0)}}
.flap.mal b{width:clamp(14px,1.3vw,20px);height:clamp(22px,2vw,30px);font:700 clamp(14px,1.3vw,19px)/1 var(--tekst);color:var(--acid)}
.tablo .stroki{display:grid;gap:10px;border-top:1px solid var(--line);padding-top:16px}
.tablo .stroki div{display:flex;justify-content:space-between;gap:16px;font-size:15px;color:#cfcdc8}
.tablo .stroki span:last-child{color:var(--bone);font-weight:600}
@media (max-width:900px){.h-hero .ryad{grid-template-columns:1fr;gap:36px}.h-hero h1{font-size:26vw}}

/* 2. все курсы: горизонтальная лента (сцена «Сильного») */
.kursy-l .shapka{padding-top:40px}
.lenta-okno{overflow:hidden}
.lenta{display:flex;gap:24px;padding:48px 40px 120px;width:max-content}
.pan{width:min(76vw,960px);height:min(70vh,600px);border-radius:32px;padding:44px;display:grid;grid-template-columns:1.1fr 1fr;gap:30px;position:relative;overflow:hidden;background:var(--ink2);border:1px solid var(--line);transition:border-color .3s}
.pan:hover{border-color:rgba(204,255,0,.5)}
.pan .art{position:absolute;right:-12%;top:-20%;width:70%;aspect-ratio:1;border-radius:50%;filter:blur(30px);opacity:.8;pointer-events:none}
.pan .glif{position:absolute;right:44px;top:44px;width:120px;opacity:.9}
.pan .l{position:relative;display:flex;flex-direction:column;justify-content:space-between}
.pan .nom{font:500 14px var(--tekst);color:var(--mute)}
.pan h3{font:800 clamp(44px,5.4vw,83px)/.92 var(--zag);margin-top:14px}
.pan .dlya{display:inline-block;margin-top:18px;background:rgba(255,255,255,.08);border:1px solid var(--line);padding:8px 14px;border-radius:99px;font-size:15px}
.pan .r{position:relative;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-end;text-align:right;gap:16px}
.pan .cena{font:800 clamp(58px,7vw,120px)/.85 var(--zag)}
.pan .cena small{display:block;margin-top:12px}
.pan .fakt{color:#cfcdc8;max-width:36ch}
.pan .dalee{font-weight:700;display:inline-flex;gap:8px;min-height:44px;align-items:center}
.mesta{display:flex;gap:8px}.mesta i{width:38px;height:38px;border-radius:50%;border:2px dashed rgba(0,0,0,.4)}
.pan.kisl{background:var(--acid);color:var(--ink)}.pan.kisl .nom{color:#333}.pan.kisl .dlya{background:rgba(0,0,0,.08);border-color:rgba(0,0,0,.12)}.pan.kisl .fakt{color:#222}
.pan.svet{background:var(--bone);color:var(--ink)}.pan.svet .nom{color:#555}.pan.svet .dlya{background:rgba(0,0,0,.06);border-color:rgba(0,0,0,.1)}.pan.svet .fakt{color:#333}
.pan.konec{width:min(40vw,440px);background:transparent;border-style:dashed;grid-template-columns:1fr;align-content:end}
@media (max-width:760px){
 .lenta-okno{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
 .lenta{padding:28px 16px 64px;gap:12px}
 .pan{width:84vw;height:auto;min-height:500px;grid-template-columns:1fr;padding:26px;border-radius:24px;scroll-snap-align:center}
 .pan .r{align-items:flex-start;text-align:left}.pan .cena{font-size:58px}.pan .glif{width:72px;right:24px;top:24px}
 .pan.konec{width:70vw;min-height:500px}
}

/* 3. подбор: ответы соединяются линией и приходят в курс */
.podbor{position:relative;display:grid;grid-template-columns:repeat(3,1fr) 1.25fr;gap:24px}
.podbor .vopr h3{font:700 15px var(--tekst);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin-bottom:16px}
.podbor .vopr{display:flex;flex-direction:column;gap:10px;position:relative;z-index:2}
.otv{text-align:left;min-height:56px;padding:14px 18px;border-radius:16px;border:1px solid var(--line);background:rgba(18,18,22,.7);font-size:17px;transition:background .3s,border-color .3s,color .3s}
.otv:hover{border-color:rgba(237,235,230,.4)}
.otv[aria-pressed="true"]{background:var(--bone);color:var(--ink);border-color:var(--bone);font-weight:600}
.itog{position:relative;z-index:2;background:var(--acid);color:var(--ink);border-radius:var(--r);padding:28px;display:flex;flex-direction:column;gap:14px;justify-content:space-between;min-height:340px}
.itog .nom{font:600 12px var(--tekst);letter-spacing:.16em;text-transform:uppercase}
.itog h3{font:800 clamp(40px,4vw,60px)/.92 var(--zag)}
.itog p{font-size:16px}
.itog a{align-self:flex-start;background:var(--ink);color:var(--bone)}
#trassa{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1;overflow:visible}
#trassa path{fill:none;stroke:var(--acid);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 6px rgba(204,255,0,.6))}
#trassa circle{fill:var(--acid)}
@media (max-width:960px){.podbor{grid-template-columns:1fr;gap:28px}.podbor .vopr{flex-direction:row;flex-wrap:wrap}.podbor .vopr h3{width:100%;margin-bottom:4px}.otv{flex:1 1 auto}#trassa{display:none}.itog{min-height:0}}

/* 4. сравнение: линейка часов, неизвестное заштриховано */
.lineyka{display:grid;gap:0;border-top:1px solid var(--line)}
.lineyka .shkala,.lineyka .str{display:grid;grid-template-columns:220px 1fr 140px 150px;gap:24px;align-items:center}
.lineyka .shkala{padding:14px 0;font-size:13px;color:var(--mute);letter-spacing:.08em;text-transform:uppercase}
.lineyka .shkala .chasy{display:flex;justify-content:space-between}
.lineyka .str{padding:26px 0;border-top:1px solid var(--line)}
.lineyka .imya{font:800 30px/1 var(--zag)}
.lineyka .imya small{display:block;font:400 14px var(--tekst);color:var(--mute);margin-top:6px}
.polosa{height:34px;border-radius:8px;background:rgba(237,235,230,.06);position:relative;overflow:hidden}
.polosa i{position:absolute;left:0;top:0;bottom:0;width:var(--d);background:var(--acid);border-radius:8px;transform-origin:left;transform:scaleX(0);transition:transform 1.4s var(--ease)}
.polosa i.vid{background:var(--viol)}
.vidno .polosa i{transform:scaleX(1)}
.polosa.net{background:repeating-linear-gradient(-45deg,rgba(237,235,230,.14) 0 2px,transparent 2px 10px)}
.polosa.net span{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-size:14px;color:#cfcdc8}
.polosa em{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-style:normal;font-size:13px;color:var(--mute)}
.lyudi{display:flex;gap:4px;flex-wrap:wrap}.lyudi b{width:12px;height:12px;border-radius:50%;background:var(--bone)}.lyudi b.p{background:none;border:1.5px dashed var(--mute)}
.lineyka .cn{font:800 34px/1 var(--zag)}.lineyka .cn small{display:block;margin-top:6px}
@media (max-width:860px){
 .lineyka .shkala{display:none}
 .lineyka .str{grid-template-columns:1fr auto;gap:14px 16px}
 .lineyka .str .polosa{grid-column:1/-1;grid-row:2}
 .lineyka .str .lyudi{grid-row:3}
 .lineyka .str .cn{grid-row:3;text-align:right}
}

/* 5. формат: снимок с выносками */
.foto{position:relative;border-radius:var(--r);overflow:hidden;border:1px solid var(--line)}
.foto img{width:100%;height:auto;aspect-ratio:8/5;object-fit:cover}
.vynoska{position:absolute;display:flex;align-items:flex-start;gap:12px;max-width:260px}
.vynoska .tchk{width:16px;height:16px;border-radius:50%;background:var(--acid);flex:none;box-shadow:0 0 0 6px rgba(204,255,0,.2);animation:puls 2.4s infinite}
@keyframes puls{50%{box-shadow:0 0 0 12px rgba(204,255,0,0)}}
.vynoska p{background:rgba(8,8,10,.86);border:1px solid var(--line);border-radius:14px;padding:12px 14px;font-size:15px;line-height:1.35}
.vynoska p b{display:block;font:800 22px/1 var(--zag);color:var(--acid);margin-bottom:4px}
.format-niz{display:grid;grid-template-columns:repeat(4,auto);justify-content:space-between;gap:20px;margin-top:28px;color:#cfcdc8;font-size:15px}
@media (max-width:860px){
 .foto img{aspect-ratio:4/5}
 .vynoska{position:static;max-width:none}
 .vynoska-spisok{display:grid;gap:12px;margin-top:16px}
 .format-niz{grid-template-columns:1fr 1fr}
}
@media (min-width:861px){.vynoska-spisok{display:contents}}

/* 6. кто ведёт: точечный силуэт */
.vedet{display:grid;grid-template-columns:minmax(280px,440px) 1fr;gap:64px;align-items:center}
.vedet canvas{width:100%;aspect-ratio:4/5;border-radius:var(--r);background:#0b0b0e;border:1px solid var(--line);display:block}
.vedet .imya{font:900 clamp(56px,7vw,110px)/.85 var(--zag);text-transform:uppercase}
.vedet dl{display:grid;grid-template-columns:150px 1fr;gap:14px 24px;margin-top:36px;border-top:1px solid var(--line);padding-top:24px}
.vedet dt{color:var(--mute);font-size:14px;letter-spacing:.1em;text-transform:uppercase;padding-top:3px}
@media (max-width:860px){.vedet{grid-template-columns:1fr;gap:28px}.vedet canvas{max-width:340px}.vedet dl{grid-template-columns:1fr;gap:4px 0}.vedet dd{margin-bottom:14px}}

/* 7. рамки: две ленты навстречу */
.ramki{background:var(--acid);color:var(--ink);padding:56px 0;overflow:hidden;transform:rotate(-2deg);margin:40px -2vw}
.ramki .beg{white-space:nowrap;font:800 clamp(34px,4.6vw,68px)/1.1 var(--zag);text-transform:uppercase}
.ramki .beg div{display:inline-block;animation:beg 40s linear infinite}
.ramki .beg.obr div{animation-direction:reverse;color:transparent;-webkit-text-stroke:1.5px var(--ink)}
.ramki .beg span{margin:0 26px}
@keyframes beg{to{transform:translateX(-50%)}}

/* 8. итог: вопрос → ответ */
.final{text-align:left;padding-bottom:180px}
.final .vopros{font:900 clamp(80px,13vw,220px)/.8 var(--zag);text-transform:uppercase}
.final .otvet{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:40px}
.final .otvet .d3{max-width:16ch}
.final .galka{width:120px}
@media (max-width:760px){.final .vopros{font-size:21vw}.final .galka{width:72px}}
