/* ПРОКТО·ФОКУС 10 — стили */
:root{
  --pink:#B026FF;
  --pink-deep:#7A0EC7;
  --red:#FF2E2E;
  --yellow:#FFD400;
  --green:#00D26A;
  --grey:#D9D9D9;
  --grey-2:#EDEDED;
  --off:#F2EEF7;
  --ink:#0A0A0A;
  --acid:#C6FF00;
  --t50-dur-desk: 60s;
  --t50-dur-mob:  90s;
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{background:var(--off);color:var(--ink);font-family:"JetBrains Mono",monospace;overflow-x:clip}
html{scroll-behavior:smooth}
body{min-height:100vh;cursor:none}
body.no-scroll{overflow:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{border:none;background:none;font:inherit;color:inherit;cursor:inherit}

/* — типографика */
.h-unbounded{font-family:"Unbounded",sans-serif;font-weight:900;letter-spacing:-.03em;line-height:.88}
.h-archivo{font-family:"Archivo Black",sans-serif;letter-spacing:-.02em;text-transform:uppercase}
.h-mono{font-family:"JetBrains Mono",monospace;text-transform:uppercase;letter-spacing:.02em}

/* — курсор */
.cursor{
  position:fixed;top:0;left:0;width:42px;height:42px;border-radius:50%;
  border:2px solid var(--ink);background:var(--pink);
  transform:translate(-50%,-50%);pointer-events:none;z-index:99990;
  mix-blend-mode:normal;transition:width .18s,height .18s,background .18s;
  display:flex;align-items:center;justify-content:center;
  font-family:"JetBrains Mono",monospace;font-size:9px;text-transform:uppercase;
  font-weight:700;
}
.cursor.grow{width:130px;height:130px;background:var(--pink);z-index:99989}
.cursor .txt{opacity:0;transition:opacity .15s;text-align:center;line-height:1.1;padding:0 8px}
.cursor.grow .txt{opacity:1}
.cursor-trail{
  position:fixed;width:14px;height:14px;border-radius:50%;background:var(--pink);
  pointer-events:none;z-index:99988;transform:translate(-50%,-50%);
  opacity:.55;mix-blend-mode:multiply;
}

/* — скролл-прогресс */
.progress{position:fixed;top:0;left:0;height:6px;background:var(--pink);z-index:99991;width:0;box-shadow:0 0 0 1px var(--ink)}

/* — бегущая строка */
.marquee{
  position:relative;background:var(--ink);color:var(--off);
  overflow:hidden;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);
  height:56px;display:flex;align-items:center;
}
.marquee.pink{background:var(--pink);color:var(--ink)}
.marquee-track{
  display:flex;gap:60px;white-space:nowrap;
  animation:m-scroll 45s linear infinite;
  font-family:"Archivo Black",sans-serif;font-size:22px;
  text-transform:uppercase;letter-spacing:.02em;
  will-change:transform;
}
.marquee-track.rev{animation:m-scroll-rev 40s linear infinite}
.marquee-track span{display:inline-flex;align-items:center;gap:60px}
.marquee-track span::after{content:"✱";color:var(--pink);font-size:22px}
.marquee.pink .marquee-track span::after{color:var(--ink)}
@keyframes m-scroll{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@keyframes m-scroll-rev{from{transform:translate3d(-50%,0,0)}to{transform:translate3d(0,0,0)}}

/* — вращающиеся звёзды-астериски */
.aster{display:inline-block;animation:spin 8s linear infinite;transform-origin:center}
.aster.slow{animation-duration:20s}
.aster.fast{animation-duration:3s}
.aster.rev{animation-direction:reverse}
@keyframes spin{to{transform:rotate(360deg)}}

/* — halftone/dither фильтр для фото */
.halftone-wrap{
  position:relative; display:inline-block;overflow:hidden;background:var(--ink);
}
.halftone-wrap::after{
  content:"";position:absolute;inset:0;
  background-image: radial-gradient(circle at center, var(--ink) 1px, transparent 1.3px);
  background-size: 4px 4px;
  mix-blend-mode:screen;
  opacity:.55;pointer-events:none;z-index:1;
}
.halftone-wrap::before{
  content:"";position:absolute;inset:0;
  background: repeating-linear-gradient(0deg, rgba(0,0,0,.12) 0 1px, transparent 1px 3px);
  mix-blend-mode:multiply;pointer-events:none;z-index:2;
}
.halftone-wrap img{
  width:100%;height:100%;object-fit:contain;
  filter: grayscale(1) contrast(1.5) brightness(0.25);
  mix-blend-mode: difference;
}

/* — плейсхолдер отсутствующего фото */
.no-photo{
  width:100%;height:100%;display:flex;align-items:center;justify-content:center;
  background: repeating-linear-gradient(45deg, var(--ink) 0 8px, var(--pink) 8px 16px);
  color:var(--off);
  font-family:"Archivo Black",sans-serif;font-size:14px;letter-spacing:.1em;
  text-align:center;line-height:1.2;padding:12px;
}
.no-photo .n{font-family:"Unbounded",sans-serif;font-size:64px;line-height:1;display:block}

/* — общие секции */
section{position:relative;padding:80px 40px}
.container{max-width:1600px;margin:0 auto}

/* — HERO */
.hero{
  min-height:100vh;padding:0;position:relative;overflow:hidden;
  background:var(--off);
  display:flex;flex-direction:column;justify-content:space-between;
}
.hero-topbar{
  display:flex;justify-content:space-between;align-items:center;
  padding:20px 40px;border-bottom:2px solid var(--ink);font-family:"JetBrains Mono",monospace;
  text-transform:uppercase;font-size:12px;letter-spacing:.08em;
  gap:20px;flex-wrap:wrap;
}
.hero-topbar .logo{font-family:"Unbounded",sans-serif;font-weight:900;font-size:20px;letter-spacing:-.03em}
.hero-mid{
  flex:1;display:grid;grid-template-columns:1fr;place-items:center;
  padding:20px 40px;position:relative;min-height:60vh;
}
.hero-title{
  font-family:"Unbounded",sans-serif;font-weight:900;
  font-size:clamp(52px, 13vw, 240px);
  line-height:.82;letter-spacing:-.04em;
  text-align:center;position:relative;z-index:2;
  filter:url(#hero-turb);
  color:var(--ink);
  max-width:100%;
  padding:0 3vw;
}
.hero-title .word{display:block;max-width:100%}
.hero-title .word.pink{color:var(--pink)}
.hero-title .word.outline{color:transparent;-webkit-text-stroke:2px var(--ink)}
/* «ЖЕНЩИНЫ» — длинное слово, чуть меньше остальных чтобы влезало */
.hero-title .num{font-size:.72em;display:inline-block;letter-spacing:-.05em}

.hero-3d{
  position:absolute;top:50%;right:6%;width:min(38vw, 520px);height:min(38vw, 520px);
  transform:translateY(-50%);z-index:1;pointer-events:none;
  animation:float3d 8s ease-in-out infinite;
}
@keyframes float3d{0%,100%{transform:translateY(-50%) rotate(0)}50%{transform:translateY(calc(-50% - 20px)) rotate(6deg)}}

.hero-bot{
  border-top:2px solid var(--ink);padding:16px 40px;
  display:flex;justify-content:space-between;align-items:center;
  font-family:"JetBrains Mono",monospace;text-transform:uppercase;font-size:11px;letter-spacing:.08em;
  gap:24px;flex-wrap:wrap;
}
.hero-bot .badge{
  border:2px solid var(--ink);padding:6px 10px;background:var(--pink);
  font-family:"Archivo Black",sans-serif;font-size:12px;
}

/* — floating badges */
.float-badge{
  position:absolute;background:var(--pink);border:2px solid var(--ink);
  padding:12px 18px;font-family:"Archivo Black",sans-serif;font-size:14px;
  text-transform:uppercase;letter-spacing:.05em;
  box-shadow:6px 6px 0 var(--ink);z-index:3;
}
.float-badge.b1{top:15%;left:5%;transform:rotate(-6deg)}
.float-badge.b2{top:22%;right:10%;transform:rotate(4deg);background:var(--off)}
.float-badge.b3{bottom:26%;left:8%;transform:rotate(3deg);background:var(--ink);color:var(--off)}
.float-badge.b4{bottom:32%;right:6%;transform:rotate(-4deg)}

/* — статистика */
.stats{background:var(--ink);color:var(--off);padding:70px 40px;border-top:4px solid var(--ink);border-bottom:4px solid var(--ink)}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;max-width:1600px;margin:0 auto}
.stat{padding:24px;border-left:1px dashed rgba(255,255,255,.25)}
.stat:first-child{border-left:none}
.stat .k{font-family:"Unbounded",sans-serif;font-weight:900;font-size:clamp(48px,7vw,120px);line-height:.9;color:var(--pink);font-variant-numeric:tabular-nums}
.stat .l{font-family:"JetBrains Mono",monospace;text-transform:uppercase;font-size:12px;letter-spacing:.1em;margin-top:12px;opacity:.85}

/* — методология: стикер */
.method-sec{background:var(--off);padding:120px 40px;position:relative;overflow:hidden}
.method-title{font-family:"Unbounded",sans-serif;font-weight:900;font-size:clamp(40px,8vw,160px);line-height:.85;letter-spacing:-.04em;margin-bottom:60px}
.method-title .strike{text-decoration:line-through;text-decoration-color:var(--pink);text-decoration-thickness:8px}
.method-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:start}
.method-body{font-family:"JetBrains Mono",monospace;font-size:16px;line-height:1.55;max-width:640px}
.method-body p{margin-bottom:20px}
.method-body b{font-family:"Archivo Black",sans-serif;background:var(--pink);padding:0 4px}
.sticker{
  position:relative;background:#FFF9C4;padding:36px 32px;
  transform:rotate(-3deg);box-shadow:12px 12px 0 rgba(0,0,0,.15), 30px 30px 60px rgba(0,0,0,.2);
  font-family:"Caveat",cursive;font-size:22px;line-height:1.35;color:var(--ink);
  border:1px dashed rgba(0,0,0,.15);
}
.sticker::before{
  content:"";position:absolute;left:50%;top:-14px;transform:translateX(-50%) rotate(-4deg);
  width:120px;height:32px;background:rgba(176,38,255,.85);
  box-shadow:0 2px 4px rgba(0,0,0,.15);
}
.sticker h4{font-family:"Unbounded",sans-serif;font-weight:900;font-size:26px;letter-spacing:-.02em;margin-bottom:14px;text-transform:uppercase}
.sticker .sig{margin-top:16px;font-size:20px;opacity:.75;text-align:right;transform:rotate(-2deg)}
.sticker .under{text-decoration:underline;text-decoration-color:var(--pink-deep);text-decoration-thickness:3px}
.sticker ul{list-style:none;padding-left:0}
.sticker li{padding-left:22px;position:relative;margin-bottom:6px}
.sticker li::before{content:"→";position:absolute;left:0;color:var(--pink-deep);font-weight:700}

/* — критерии список */
.criteria-list{margin-top:80px;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}
.crit{
  display:grid;grid-template-columns:120px 1fr 200px 100px;
  border-bottom:1px solid var(--ink);padding:22px 8px;align-items:center;gap:20px;
  transition:background .2s;position:relative;
}
.crit:last-child{border-bottom:none}
.crit:hover{background:var(--pink)}
.crit .c{font-family:"Unbounded",sans-serif;font-weight:900;font-size:36px;letter-spacing:-.03em}
.crit .n{font-family:"Archivo Black",sans-serif;font-size:18px;text-transform:uppercase;letter-spacing:-.01em}
.crit .d{font-family:"JetBrains Mono",monospace;font-size:12px;letter-spacing:.02em;opacity:.7}
.crit .w{font-family:"Unbounded",sans-serif;font-weight:900;font-size:32px;text-align:right;font-variant-numeric:tabular-nums}

/* ══════════════════════════════════════════════════════════════════
   ТОП-10 СЦЕНЫ
   ══════════════════════════════════════════════════════════════════ */
.top10{background:var(--off);padding:0}
.top10-intro{padding:120px 40px 60px;border-top:2px solid var(--ink)}
.top10-intro h2{font-family:"Unbounded",sans-serif;font-weight:900;font-size:clamp(48px,12vw,240px);line-height:.85;letter-spacing:-.04em}
.top10-intro h2 .pink{color:var(--pink)}
.top10-intro .sub{font-family:"JetBrains Mono",monospace;text-transform:uppercase;font-size:14px;letter-spacing:.08em;margin-top:20px;max-width:640px}

.scene{
  min-height:100vh;padding:80px 40px;position:relative;
  border-top:2px solid var(--ink);
  display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center;
  overflow:hidden;
}
.scene:nth-child(odd){background:var(--off)}
.scene:nth-child(even){background:var(--grey-2)}
.scene[data-invert="1"]{background:var(--ink);color:var(--off)}
.scene[data-invert="1"] .place-badge{background:var(--pink);color:var(--ink)}

.scene-left{position:relative;height:min(720px,80vh)}
.scene-photo{
  position:relative;width:100%;height:100%;
  transform:rotate(-2deg);
  border:3px solid var(--ink);box-shadow:16px 16px 0 var(--pink),24px 24px 0 var(--ink);
  overflow:hidden;background:var(--ink);
}
.scene:nth-child(even) .scene-photo{transform:rotate(2deg);box-shadow:-16px 16px 0 var(--pink),-24px 24px 0 var(--ink)}
.scene[data-invert="1"] .scene-photo{box-shadow:16px 16px 0 var(--pink), 24px 24px 0 var(--off)}
.scene-photo .halftone-wrap{width:100%;height:100%;display:block}

/* — Номер места: bottom-right corner badge (не перекрывает лицо) */
.place-badge{
  position:absolute;bottom:-18px;right:-18px;z-index:5;pointer-events:none;
  font-family:"Unbounded",sans-serif;font-weight:900;
  font-size:clamp(90px,13vw,190px);line-height:.85;letter-spacing:-.05em;
  background:var(--ink);color:var(--pink);
  padding:4px 22px 12px;border:3px solid var(--ink);
  box-shadow:8px 8px 0 var(--pink);
}
.scene:nth-child(even) .place-badge{right:auto;left:-18px}

.scene-right{position:relative}
.scene-place-tag{
  font-family:"Archivo Black",sans-serif;font-size:16px;text-transform:uppercase;letter-spacing:.15em;
  background:var(--pink);color:var(--ink);display:inline-block;padding:6px 12px;margin-bottom:24px;border:2px solid var(--ink);
}
.scene-name{
  font-family:"Unbounded",sans-serif;font-weight:900;
  font-size:clamp(36px,5.5vw,88px);line-height:.9;letter-spacing:-.03em;margin-bottom:24px;
}
.scene-clinic{font-family:"JetBrains Mono",monospace;font-size:14px;text-transform:uppercase;letter-spacing:.05em;opacity:.75;margin-bottom:32px;line-height:1.5}
.scene-hook{
  font-family:"Archivo Black",sans-serif;font-size:clamp(18px,1.8vw,24px);line-height:1.25;
  text-transform:uppercase;letter-spacing:-.01em;margin-bottom:32px;
  border-left:6px solid var(--pink);padding:8px 0 8px 20px;
}
.scene-score{
  display:flex;align-items:flex-end;gap:20px;margin-bottom:32px;
  border-top:2px solid currentColor;border-bottom:2px solid currentColor;padding:20px 0;
  flex-wrap:wrap;
}
/* СТАБИЛИЗАЦИЯ COUNT-UP:
   tabular-nums + фикс. min-width на цифру + резерв под "9,53"
   → шрифт-виджет не дёргает layout между кадрами */
.scene-score .val{
  font-family:"Unbounded",sans-serif;font-weight:900;
  font-size:clamp(72px,9vw,140px);line-height:.85;letter-spacing:-.05em;
  color:var(--pink);
  font-variant-numeric:tabular-nums;
  min-width:4.3ch;
  display:inline-block;
  will-change:contents;
}
.scene[data-invert="1"] .scene-score .val{color:var(--pink)}
.scene-score .of{font-family:"Unbounded",sans-serif;font-weight:900;font-size:40px;line-height:1;padding-bottom:16px;opacity:.4;font-variant-numeric:tabular-nums}
.scene-score .lbl{font-family:"JetBrains Mono",monospace;font-size:12px;text-transform:uppercase;letter-spacing:.1em;padding-bottom:14px;opacity:.75}

.dossier{display:grid;grid-template-columns:1fr;gap:14px;font-family:"JetBrains Mono",monospace;font-size:13px;text-transform:uppercase;letter-spacing:.02em}
.dossier .row{display:grid;grid-template-columns:140px 1fr;gap:14px;padding:10px 0;border-top:1px dashed currentColor}
.dossier .row .k{opacity:.55;font-size:11px;letter-spacing:.1em}
.dossier .row .v{font-family:"Archivo Black",sans-serif;font-size:14px;text-transform:uppercase;line-height:1.3}
.arsenal-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.arsenal-tags .tag{
  border:1.5px solid currentColor;padding:3px 8px;font-family:"JetBrains Mono",monospace;
  font-size:11px;text-transform:uppercase;letter-spacing:.05em;
}

/* — радар */
.radar-sec{background:var(--pink);padding:120px 40px;border-top:4px solid var(--ink);border-bottom:4px solid var(--ink)}
.radar-title{font-family:"Unbounded",sans-serif;font-weight:900;font-size:clamp(40px,8vw,160px);line-height:.85;letter-spacing:-.04em;margin-bottom:20px}
.radar-sub{font-family:"JetBrains Mono",monospace;text-transform:uppercase;font-size:14px;letter-spacing:.08em;max-width:640px;margin-bottom:80px}
.radar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.radar-card{background:var(--off);border:3px solid var(--ink);box-shadow:12px 12px 0 var(--ink);padding:32px;position:relative}
.radar-card .rc-place{font-family:"Unbounded",sans-serif;font-weight:900;font-size:80px;line-height:.85;letter-spacing:-.04em;color:var(--pink);font-variant-numeric:tabular-nums}
.radar-card .rc-name{font-family:"Archivo Black",sans-serif;font-size:16px;text-transform:uppercase;line-height:1.15;margin:10px 0 8px}
.radar-card .rc-score{font-family:"JetBrains Mono",monospace;font-size:14px;letter-spacing:.05em;margin-bottom:20px}
.radar-svg{width:100%;height:auto;display:block}

/* ══════════════════════════════════════════════════════════════════
   СПИСОК 50 — ТИКЕРЫ (плавные, GPU-акселерированные)
   ══════════════════════════════════════════════════════════════════ */
.list50{background:var(--ink);color:var(--off);padding:120px 0 60px;border-top:4px solid var(--ink)}
.list50-title{padding:0 40px;font-family:"Unbounded",sans-serif;font-weight:900;font-size:clamp(48px,10vw,200px);line-height:.85;letter-spacing:-.04em;margin-bottom:20px}
.list50-title .pink{color:var(--pink)}
.list50-sub{padding:0 40px;font-family:"JetBrains Mono",monospace;text-transform:uppercase;font-size:14px;letter-spacing:.08em;max-width:720px;margin-bottom:60px;opacity:.75}

.ticker50-lane{
  position:relative;overflow:hidden;padding:22px 0;
  border-top:1px solid rgba(255,255,255,.15);
  border-bottom:1px solid rgba(255,255,255,.15);
  mask-image: linear-gradient(90deg, transparent 0, black 6%, black 94%, transparent 100%);
  -webkit-mask-image: linear-gradient(90deg, transparent 0, black 6%, black 94%, transparent 100%);
}
.ticker50-track{
  display:flex;gap:20px;white-space:nowrap;width:max-content;
  animation: t50 var(--t50-dur-desk) linear infinite;
  animation-play-state:running;
  will-change:transform;
  transform:translate3d(0,0,0);
  backface-visibility:hidden;
}
.ticker50-track.rev{ animation: t50-rev var(--t50-dur-desk) linear infinite; }
.ticker50-lane.paused .ticker50-track{ animation-play-state:paused }

.ticker50-card{
  flex:0 0 auto;display:flex;align-items:center;gap:16px;
  border:1.5px solid rgba(255,255,255,.35);padding:14px 20px 14px 14px;
  background:transparent;transition:background .2s,color .2s,border-color .2s,transform .2s;
  min-width:440px;cursor:none;
}
.ticker50-card:hover{background:var(--pink);color:var(--ink);border-color:var(--ink);transform:translateY(-2px)}
.ticker50-card .n{font-family:"Unbounded",sans-serif;font-weight:900;font-size:44px;line-height:.85;letter-spacing:-.04em;min-width:70px;color:var(--pink);font-variant-numeric:tabular-nums}
.ticker50-card:hover .n{color:var(--ink)}
.ticker50-card .info{display:flex;flex-direction:column;gap:2px;min-width:0}
.ticker50-card .fio{font-family:"Archivo Black",sans-serif;font-size:14px;text-transform:uppercase;letter-spacing:-.01em}
.ticker50-card .cl{font-family:"JetBrains Mono",monospace;font-size:11px;text-transform:uppercase;letter-spacing:.05em;opacity:.7}
.ticker50-card .ph{width:52px;height:52px;flex:0 0 52px;border:1.5px solid rgba(255,255,255,.4);overflow:hidden;background:var(--ink)}
.ticker50-card .ph img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.4)}
.ticker50-card .ph.np{background:repeating-linear-gradient(45deg, var(--ink) 0 6px, var(--pink) 6px 12px)}
.ticker50-card .sc{font-family:"Unbounded",sans-serif;font-weight:900;font-size:22px;letter-spacing:-.02em;margin-left:auto;padding-left:20px;font-variant-numeric:tabular-nums}

@keyframes t50 { from{transform:translate3d(0,0,0)} to{transform:translate3d(-50%,0,0)} }
@keyframes t50-rev { from{transform:translate3d(-50%,0,0)} to{transform:translate3d(0,0,0)} }

/* ══════════════════════════════════════════════════════════════════
   ПОПАП С ДОСЬЕ
   ══════════════════════════════════════════════════════════════════ */
.modal-overlay{
  position:fixed;inset:0;z-index:99000;
  background:rgba(10,10,10,.85);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  display:none;
  align-items:center;justify-content:center;
  padding:40px 20px;
  overflow-y:auto;
}
.modal-overlay.open{display:flex;animation:fadeIn .25s ease-out}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}

.modal{
  position:relative;background:var(--off);color:var(--ink);
  max-width:1200px;width:100%;min-height:400px;
  border:3px solid var(--ink);box-shadow: 20px 20px 0 var(--pink);
  padding:40px 40px 40px;
  display:grid;grid-template-columns:.85fr 1.15fr;gap:40px;
  margin:auto;
}
.modal-close{
  position:absolute;top:-3px;right:-3px;z-index:2;
  width:64px;height:64px;background:var(--ink);color:var(--off);
  font-family:"Unbounded",sans-serif;font-weight:900;font-size:36px;
  border:3px solid var(--ink);cursor:none;
  display:flex;align-items:center;justify-content:center;
  transition:background .2s,color .2s,transform .2s;
}
.modal-close:hover{background:var(--pink);color:var(--ink);transform:rotate(90deg)}
.modal-left{position:relative}
.modal-photo{
  position:relative;width:100%;aspect-ratio:3/4;
  border:2.5px solid var(--ink);overflow:hidden;background:var(--ink);
  box-shadow:10px 10px 0 var(--pink);
}
.modal-photo .halftone-wrap{width:100%;height:100%;display:block}
.modal-place{
  position:absolute;top:-24px;left:-24px;z-index:3;
  font-family:"Unbounded",sans-serif;font-weight:900;
  font-size:clamp(70px,8vw,120px);line-height:.85;letter-spacing:-.05em;
  background:var(--pink);color:var(--ink);
  padding:6px 20px 12px;border:3px solid var(--ink);
  box-shadow:6px 6px 0 var(--ink);
}
.modal-radar{margin-top:28px;background:var(--pink);border:2.5px solid var(--ink);padding:20px;box-shadow:8px 8px 0 var(--ink)}
.modal-radar h5{font-family:"Archivo Black",sans-serif;font-size:14px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px}
.modal-radar svg{width:100%;height:auto;display:block}

.modal-right{overflow:hidden}
.modal-tag{
  font-family:"Archivo Black",sans-serif;font-size:13px;text-transform:uppercase;letter-spacing:.15em;
  background:var(--ink);color:var(--pink);display:inline-block;padding:5px 10px;margin-bottom:20px;
}
.modal-name{font-family:"Unbounded",sans-serif;font-weight:900;font-size:clamp(32px,3.5vw,54px);line-height:.9;letter-spacing:-.03em;margin-bottom:16px}
.modal-clinic{font-family:"JetBrains Mono",monospace;font-size:13px;text-transform:uppercase;letter-spacing:.05em;opacity:.75;margin-bottom:24px;line-height:1.5}
.modal-score-row{
  display:flex;align-items:flex-end;gap:20px;
  border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);padding:16px 0;
  margin-bottom:24px;flex-wrap:wrap;
}
.modal-score-row .val{
  font-family:"Unbounded",sans-serif;font-weight:900;
  font-size:clamp(56px,6vw,96px);line-height:.85;letter-spacing:-.05em;color:var(--pink);
  font-variant-numeric:tabular-nums;
}
.modal-score-row .of{font-family:"Unbounded",sans-serif;font-weight:900;font-size:32px;line-height:1;padding-bottom:12px;opacity:.4}
.modal-score-row .lbl{font-family:"JetBrains Mono",monospace;font-size:11px;text-transform:uppercase;letter-spacing:.1em;padding-bottom:10px;opacity:.75}

.modal-hook{
  font-family:"Archivo Black",sans-serif;font-size:clamp(16px,1.5vw,20px);line-height:1.3;
  text-transform:uppercase;letter-spacing:-.01em;margin-bottom:24px;
  border-left:5px solid var(--pink);padding:6px 0 6px 16px;
}
.modal-dossier{display:grid;grid-template-columns:1fr;gap:10px;font-family:"JetBrains Mono",monospace;font-size:12px;text-transform:uppercase;letter-spacing:.02em}
.modal-dossier .row{display:grid;grid-template-columns:120px 1fr;gap:12px;padding:8px 0;border-top:1px dashed rgba(0,0,0,.3)}
.modal-dossier .row .k{opacity:.55;font-size:10px;letter-spacing:.1em}
.modal-dossier .row .v{font-family:"Archivo Black",sans-serif;font-size:13px;text-transform:uppercase;line-height:1.3}

/* — FAQ */
.faq-sec{background:var(--off);padding:120px 40px}
.faq-title{font-family:"Unbounded",sans-serif;font-weight:900;font-size:clamp(48px,10vw,200px);line-height:.85;letter-spacing:-.04em;margin-bottom:60px}
.faq-item{border-top:2px solid var(--ink);padding:24px 0;cursor:none}
.faq-item:last-child{border-bottom:2px solid var(--ink)}
.faq-q{
  font-family:"Archivo Black",sans-serif;font-size:clamp(18px,2.2vw,32px);
  text-transform:uppercase;letter-spacing:-.02em;line-height:1.15;
  display:flex;align-items:center;gap:20px;justify-content:space-between;
}
.faq-q .plus{font-family:"Unbounded",sans-serif;font-weight:900;font-size:40px;transition:transform .3s;flex:0 0 auto}
.faq-item.open .faq-q .plus{transform:rotate(45deg);color:var(--pink)}
.faq-a{
  font-family:"JetBrains Mono",monospace;font-size:15px;line-height:1.6;letter-spacing:.01em;
  max-height:0;overflow:hidden;transition:max-height .4s ease;
}
.faq-item.open .faq-a{max-height:600px;padding-top:18px}

/* — CTA */
.cta-sec{background:var(--pink);padding:120px 40px;border-top:4px solid var(--ink);text-align:center;position:relative;overflow:hidden}
.cta-title{font-family:"Unbounded",sans-serif;font-weight:900;font-size:clamp(48px,12vw,240px);line-height:.85;letter-spacing:-.05em}
.cta-title .stroke{-webkit-text-stroke:3px var(--ink);color:transparent}
.cta-sub{font-family:"JetBrains Mono",monospace;text-transform:uppercase;font-size:14px;letter-spacing:.08em;margin:32px auto 40px;max-width:640px}
.cta-btn{
  display:inline-flex;align-items:center;gap:12px;
  background:var(--ink);color:var(--off);padding:22px 32px;
  font-family:"Archivo Black",sans-serif;font-size:20px;text-transform:uppercase;letter-spacing:.05em;
  border:3px solid var(--ink);box-shadow:8px 8px 0 var(--off);
  transition:transform .2s,box-shadow .2s;cursor:none;
}
.cta-btn:hover{transform:translate(-3px,-3px);box-shadow:14px 14px 0 var(--off)}

/* — Footer */
.foot{background:var(--ink);color:var(--off);padding:100px 40px 40px;border-top:4px solid var(--ink)}
.foot-top{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:60px;margin-bottom:80px}
.foot-logo{font-family:"Unbounded",sans-serif;font-weight:900;font-size:clamp(36px,6vw,100px);line-height:.85;letter-spacing:-.04em}
.foot-logo .pink{color:var(--pink)}
.foot h5{font-family:"Archivo Black",sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:.15em;margin-bottom:16px;opacity:.7}
.foot ul{list-style:none}
.foot li{font-family:"JetBrains Mono",monospace;font-size:13px;text-transform:uppercase;letter-spacing:.05em;padding:6px 0;border-bottom:1px dashed rgba(255,255,255,.15)}
.foot-bot{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:20px;padding-top:40px;border-top:1px solid rgba(255,255,255,.2)}
.foot-bot .disclaim{font-family:"JetBrains Mono",monospace;font-size:10px;text-transform:uppercase;letter-spacing:.05em;opacity:.5;max-width:800px;line-height:1.5}
.foot-bot .egg{font-family:"Archivo Black",sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:.05em;cursor:none;color:var(--pink);border-bottom:1px dashed var(--pink)}

/* ══════════════════════════════════════════════════════════════════
   RESPONSIVE
   ══════════════════════════════════════════════════════════════════ */

/* — планшеты и крупные ноуты 900–1279px */
@media (max-width: 1279px){
  .radar-grid{grid-template-columns:repeat(2,1fr)}
  .radar-card:nth-child(3){grid-column:1 / -1;max-width:600px;margin:0 auto}
  .stats-grid{grid-template-columns:repeat(4,1fr)}
  .modal{grid-template-columns:.9fr 1.1fr;gap:32px;padding:32px}
  .foot-top{grid-template-columns:1fr 1fr;gap:40px}
  .foot-top > :first-child{grid-column:1/-1}
}

/* — планшеты 700–900px */
@media (max-width: 900px){
  section{padding:60px 24px}
  .hero-topbar,.hero-mid,.hero-bot{padding-left:24px;padding-right:24px}
  .scene{grid-template-columns:1fr;padding:60px 24px;min-height:auto}
  .scene-left{height:60vh;min-height:400px;margin-bottom:60px}
  .scene:nth-child(even) .place-badge{left:auto;right:-18px}
  .scene-photo,.scene:nth-child(even) .scene-photo{transform:rotate(-1.5deg)}
  .stats-grid{grid-template-columns:repeat(2,1fr)}
  .stat{border-left:none;border-top:1px dashed rgba(255,255,255,.25)}
  .stat:first-child,.stat:nth-child(2){border-top:none}
  .stat:nth-child(2){border-left:1px dashed rgba(255,255,255,.25)}
  .stat:nth-child(4){border-left:1px dashed rgba(255,255,255,.25)}
  .method-grid{grid-template-columns:1fr;gap:60px}
  .method-sec{padding:80px 24px}
  .radar-sec{padding:80px 24px}
  .radar-grid{grid-template-columns:1fr;gap:30px}
  .radar-card:nth-child(3){grid-column:auto;max-width:none;margin:0}
  .foot{padding:60px 24px 24px}
  .foot-top{grid-template-columns:1fr;gap:40px;margin-bottom:40px}
  .crit{grid-template-columns:60px 1fr 70px;gap:12px;padding:16px 4px}
  .crit .d{display:none}
  .crit .c{font-size:28px}
  .crit .n{font-size:14px}
  .crit .w{font-size:24px}
  .hero-3d{width:280px;height:280px;right:auto;left:50%;top:50%;transform:translate(-50%,-50%);opacity:.35}
  @keyframes float3d{0%,100%{transform:translate(-50%,-50%) rotate(0)}50%{transform:translate(-50%,calc(-50% - 14px)) rotate(6deg)}}
  .float-badge{padding:8px 12px;font-size:11px}
  .float-badge.b1{top:14%;left:4%}
  .float-badge.b2{top:20%;right:4%}
  .float-badge.b3{bottom:18%;left:4%}
  .float-badge.b4{bottom:24%;right:4%}
  .list50-title,.list50-sub{padding:0 24px}
  .list50{padding:80px 0 40px}
  .ticker50-card{min-width:340px}
  .ticker50-card .n{font-size:36px;min-width:56px}
  .modal{grid-template-columns:1fr;padding:24px 20px;box-shadow:10px 10px 0 var(--pink)}
  .modal-close{width:52px;height:52px;font-size:28px}
  .modal-photo{aspect-ratio:4/5;max-width:340px;margin:0 auto}
  .modal-place{font-size:64px;top:-16px;left:-16px}
  .modal-overlay{padding:20px 12px}
}

/* — мобилки < 700px */
@media (max-width: 700px){
  html,body{cursor:auto}
  .cursor,.cursor-trail{display:none}
  section{padding:50px 18px}
  .hero-topbar{padding:14px 18px;font-size:10px;gap:8px}
  .hero-topbar .logo{font-size:16px;width:100%}
  .hero-topbar > div:not(.logo){font-size:10px}
  .hero-mid{padding:20px 18px;min-height:55vh}
  .hero-bot{padding:14px 18px;font-size:10px;gap:12px}
  .hero-title{font-size:clamp(48px,17vw,110px)}
  .hero-3d{width:220px;height:220px;opacity:.28}
  .float-badge{padding:6px 10px;font-size:10px;box-shadow:3px 3px 0 var(--ink)}
  .float-badge.b1{top:12%;left:3%;transform:rotate(-4deg) scale(.85)}
  .float-badge.b2{top:18%;right:3%;transform:rotate(3deg) scale(.85)}
  .float-badge.b3{bottom:16%;left:3%;transform:rotate(2deg) scale(.85)}
  .float-badge.b4{bottom:22%;right:3%;transform:rotate(-3deg) scale(.85)}

  .stats{padding:50px 18px}
  .stats-grid{gap:0}
  .stat{padding:16px}
  .method-sec{padding:60px 18px}
  .method-title{font-size:44px}
  .method-body{font-size:14px}
  .sticker{padding:28px 22px;font-size:19px}
  .sticker h4{font-size:22px}
  .criteria-list{margin-top:40px}
  .crit{grid-template-columns:50px 1fr 56px;gap:8px;padding:12px 4px}
  .crit .c{font-size:22px}
  .crit .n{font-size:12px}
  .crit .w{font-size:18px}
  .scene{padding:50px 18px;gap:30px}
  .scene-left{height:55vh;min-height:340px;margin-bottom:70px}
  .place-badge{
    font-size:80px;padding:2px 14px 8px;
    bottom:-14px;right:-10px;
  }
  .scene:nth-child(even) .place-badge{right:-10px;left:auto}
  .scene-name{font-size:30px}
  .scene-clinic{font-size:12px}
  .scene-hook{font-size:16px;padding:6px 0 6px 14px;border-left-width:4px}
  .scene-score{gap:12px;padding:14px 0}
  .scene-score .val{font-size:60px;min-width:4ch}
  .scene-score .of{font-size:26px;padding-bottom:8px}
  .scene-score .lbl{font-size:10px;padding-bottom:6px}
  .dossier{font-size:11px}
  .dossier .row{grid-template-columns:90px 1fr;gap:10px;padding:8px 0}
  .dossier .row .k{font-size:9px}
  .dossier .row .v{font-size:12px}
  .arsenal-tags .tag{font-size:10px;padding:2px 6px}
  .top10-intro{padding:70px 18px 40px}
  .radar-sec{padding:60px 18px}
  .radar-title{font-size:44px}
  .radar-sub{margin-bottom:40px;font-size:12px}
  .radar-card{padding:24px 20px}
  .radar-card .rc-place{font-size:60px}
  .radar-card .rc-name{font-size:14px}
  .radar-card .rc-score{font-size:12px}
  .list50{padding:60px 0 40px}
  .list50-title,.list50-sub{padding:0 18px}
  .list50-title{font-size:56px}
  .list50-sub{font-size:12px;margin-bottom:40px}
  .ticker50-lane{padding:14px 0}
  .ticker50-track{ animation-duration: var(--t50-dur-mob) !important; }
  .ticker50-card{min-width:290px;padding:10px 14px 10px 10px;gap:10px}
  .ticker50-card .n{font-size:28px;min-width:44px}
  .ticker50-card .fio{font-size:12px}
  .ticker50-card .cl{font-size:10px}
  .ticker50-card .ph{width:40px;height:40px;flex:0 0 40px}
  .ticker50-card .sc{font-size:18px;padding-left:10px}
  .faq-sec{padding:60px 18px}
  .faq-title{font-size:56px;margin-bottom:30px}
  .faq-q{font-size:15px;gap:12px}
  .faq-q .plus{font-size:28px}
  .faq-a{font-size:13px}
  .cta-sec{padding:70px 18px}
  .cta-title{font-size:52px}
  .cta-sub{font-size:12px;margin:20px auto 24px}
  .cta-btn{padding:16px 22px;font-size:16px}
  .foot{padding:50px 18px 20px}
  .foot-top{margin-bottom:30px}
  .foot-logo{font-size:44px; line-height: 1.05;}
  .foot h5{font-size:11px}
  .foot li{font-size:11px}
  .foot-bot .disclaim{font-size:9px}

  .modal-overlay{padding:16px 10px}
  .modal{padding:22px 16px}
  .modal-name{font-size:26px}
  .modal-clinic{font-size:11px}
  .modal-score-row .val{font-size:48px}
  .modal-hook{font-size:14px}
  .modal-place{font-size:52px;padding:4px 14px 8px}
  .modal-close{width:44px;height:44px;font-size:24px;top:-3px;right:-3px}
  .modal-dossier{font-size:11px}
  .modal-dossier .row{grid-template-columns:1fr;gap:2px}
  .modal-dossier .row .k{font-size:9px}
  .modal-dossier .row .v{font-size:12px}

  .marquee{height:44px}
  .marquee-track{font-size:16px;gap:36px}
  .marquee-track span{gap:36px}
  .marquee-track span::after{font-size:16px}
}

/* — Уважаем prefers-reduced-motion */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
    scroll-behavior:auto !important;
  }
}
