/* ============================================================================
   Compliance Forum 2026
   Стеклянная айдентика: индиго-космос, барвинок, аква-линии, золото премии.
   ========================================================================== */

/* --- Токены ---------------------------------------------------------------- */
:root{
  --ink:#070A1C;
  --ink-2:#0A0E28;
  --indigo:#171153;
  --indigo-2:#241C6B;

  --peri:#7C8CF8;
  --peri-hi:#AEB8FF;
  --aqua:#4CE0D0;
  --gold:#E8C57A;
  --gold-hi:#F7E7BC;

  --paper:#ECEEFF;
  --muted:rgba(236,238,255,.60);
  --faint:rgba(236,238,255,.38);

  --line:rgba(160,175,255,.14);
  --line-2:rgba(160,175,255,.26);
  --glass:rgba(133,152,255,.055);
  --glass-2:rgba(133,152,255,.10);

  --accent:linear-gradient(100deg,var(--peri-hi),var(--aqua));

  --f-display:'Manrope','Inter',system-ui,sans-serif;
  --f-body:'Inter','Manrope',system-ui,sans-serif;
  --f-mono:'JetBrains Mono',ui-monospace,monospace;

  --ease:cubic-bezier(.22,.61,.36,1);
  --r:22px;
  --r-sm:14px;
  --pad:clamp(20px,5vw,64px);
  --sec:clamp(88px,11vw,168px);
  --max:1220px;
  --ticker-h:35px;
}

/* --- База ------------------------------------------------------------------ */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--ink);
  color:var(--paper);
  font-family:var(--f-body);
  font-size:clamp(15px,1.05vw,17px);
  line-height:1.62;
  font-weight:400;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}
a{color:inherit;text-decoration:none}
:focus-visible{outline:2px solid var(--aqua);outline-offset:3px;border-radius:4px}
::selection{background:rgba(124,140,248,.4)}

.wrap{position:relative;z-index:1;width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--pad)}
.wrap--narrow{max-width:880px}
.skip{position:fixed;left:-999px}
.skip:focus{left:12px;top:12px;z-index:99;background:var(--peri);color:#0a0a1a;padding:8px 14px;border-radius:8px}

/* --- Фон ------------------------------------------------------------------- */
.bg{position:fixed;inset:0;z-index:-3;overflow:hidden;background:
  radial-gradient(120% 90% at 50% -10%,#1A1550 0%,#0B0F2B 45%,var(--ink) 100%)}
.bg__aurora{position:absolute;border-radius:50%;filter:blur(90px);opacity:.5;will-change:transform}
.bg__aurora--a{width:60vw;height:60vw;left:-15vw;top:-10vw;background:radial-gradient(circle,rgba(124,140,248,.55),transparent 68%);animation:drift1 34s var(--ease) infinite alternate}
.bg__aurora--b{width:52vw;height:52vw;right:-12vw;top:28vh;background:radial-gradient(circle,rgba(76,224,208,.26),transparent 68%);animation:drift2 44s var(--ease) infinite alternate}
.bg__aurora--c{width:48vw;height:48vw;left:22vw;bottom:-18vw;background:radial-gradient(circle,rgba(120,86,232,.42),transparent 70%);animation:drift3 52s var(--ease) infinite alternate}
@keyframes drift1{to{transform:translate3d(12vw,10vh,0) scale(1.15)}}
@keyframes drift2{to{transform:translate3d(-14vw,-12vh,0) scale(1.1)}}
@keyframes drift3{to{transform:translate3d(10vw,-14vh,0) scale(.9)}}

.bg__grid{position:absolute;inset:0;opacity:.5;
  background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);
  background-size:88px 88px;
  mask-image:radial-gradient(90% 70% at 50% 20%,#000,transparent 78%)}
.bg__noise{position:absolute;inset:0;opacity:.32;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E")}

/* --- Сигнатурная «5» -------------------------------------------------------- */
.five{
  position:fixed;z-index:-2;top:50%;right:-6vw;
  transform:translate(0,-50%);
  transition:transform 1.4s var(--ease),opacity 1.4s var(--ease),filter 1.4s var(--ease);
  opacity:0;pointer-events:none;user-select:none;
  filter:drop-shadow(0 0 60px rgba(124,140,248,.35));
}
.five__glyph{
  display:block;
  font-family:var(--f-display);font-weight:800;line-height:.72;
  font-size:clamp(300px,58vh,660px);
  color:transparent;
  -webkit-text-stroke:1.5px rgba(174,184,255,.42);
  background:linear-gradient(160deg,rgba(124,140,248,.22),rgba(76,224,208,.10) 55%,transparent);
  -webkit-background-clip:text;background-clip:text;
}
body[data-five="right"] .five{opacity:.5;transform:translate(2vw,-50%) rotate(-3deg)}
body[data-five="left"] .five{opacity:.45;right:auto;left:-8vw;transform:translate(-2vw,-50%) rotate(4deg)}
body[data-five="center"] .five{opacity:.3;right:auto;left:50%;transform:translate(-50%,-50%) scale(1.1)}
body[data-five="gold"] .five{opacity:.4;transform:translate(-1vw,-50%) rotate(-2deg);filter:drop-shadow(0 0 70px rgba(232,197,122,.3))}
body[data-five="gold"] .five__glyph{
  -webkit-text-stroke:1.5px rgba(232,197,122,.5);
  background:linear-gradient(160deg,rgba(232,197,122,.24),transparent 60%);
  -webkit-background-clip:text;background-clip:text;
}

/* --- Типографика ------------------------------------------------------------ */
.eyebrow{
  font-family:var(--f-mono);font-size:11px;font-weight:400;
  letter-spacing:.24em;text-transform:uppercase;color:var(--aqua);
  margin:0 0 18px;display:flex;align-items:center;gap:12px;
}
.eyebrow::before{content:'';width:26px;height:1px;background:currentColor;opacity:.8;flex:none}
.eyebrow--gold{color:var(--gold)}
.head--center .eyebrow{justify-content:center}

.h2{
  font-family:var(--f-display);font-weight:700;
  font-size:clamp(30px,4.1vw,58px);line-height:1.05;letter-spacing:-.035em;
  margin:0 0 20px;text-wrap:balance;
}
.h3{
  font-family:var(--f-display);font-weight:700;
  font-size:clamp(19px,1.7vw,25px);line-height:1.2;letter-spacing:-.025em;
  margin:0 0 12px;
}
.lead{font-size:clamp(16px,1.35vw,19px);line-height:1.62;color:var(--muted);max-width:60ch;margin:0}
.lead--center{margin-inline:auto;text-align:center}
.micro{font-family:var(--f-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--faint);margin:0 0 16px}
.micro--center{text-align:center}
.note{font-family:var(--f-mono);font-size:12px;color:var(--faint);letter-spacing:.04em;margin:16px 0 0}
.note--center{text-align:center}

/* --- Секции ----------------------------------------------------------------- */
.section{position:relative;padding-block:var(--sec)}
.section::before{content:'';position:absolute;top:0;left:var(--pad);right:var(--pad);height:1px;
  background:linear-gradient(90deg,transparent,var(--line-2) 18%,var(--line-2) 82%,transparent)}
.head{margin-bottom:clamp(40px,5vw,64px);max-width:840px}
.head--center{margin-inline:auto;text-align:center}
.head--tight{margin-bottom:32px}

/* --- Кнопки ------------------------------------------------------------------ */
.btn{
  --bg:linear-gradient(135deg,#8E9BFF,#6470E8);
  position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:14px 26px;border-radius:999px;
  background:var(--bg);color:#080B1E;
  font-weight:600;font-size:14px;letter-spacing:.01em;line-height:1.2;
  box-shadow:0 10px 34px -14px rgba(124,140,248,.9),inset 0 1px 0 rgba(255,255,255,.4);
  transition:transform .35s var(--ease),box-shadow .35s var(--ease),filter .35s var(--ease);
  overflow:hidden;text-align:center;
}
.btn::after{content:'';position:absolute;inset:0;background:linear-gradient(120deg,transparent 35%,rgba(255,255,255,.55) 50%,transparent 65%);
  transform:translateX(-120%);transition:transform .7s var(--ease)}
.btn:hover{transform:translateY(-2px);box-shadow:0 16px 44px -14px rgba(124,140,248,1),inset 0 1px 0 rgba(255,255,255,.5)}
.btn:hover::after{transform:translateX(120%)}
.btn:active{transform:translateY(0)}
.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}
.btn:disabled:hover{transform:none}
.btn--lg{padding:17px 34px;font-size:15px}
.btn--sm{padding:10px 20px;font-size:13px}
.btn--block{width:100%}
.btn--ghost{
  background:var(--glass-2);color:var(--paper);
  border:1px solid var(--line-2);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  box-shadow:none;
}
.btn--ghost:hover{background:rgba(133,152,255,.18);border-color:rgba(174,184,255,.45);box-shadow:0 12px 34px -18px rgba(124,140,248,.9)}
.btn--gold{--bg:linear-gradient(135deg,#F3DCA6,#D4AC61);box-shadow:0 10px 34px -14px rgba(232,197,122,.85),inset 0 1px 0 rgba(255,255,255,.5)}
.btn--gold:hover{box-shadow:0 16px 44px -14px rgba(232,197,122,1),inset 0 1px 0 rgba(255,255,255,.6)}

.cta-strip{display:flex;flex-wrap:wrap;gap:14px;margin-top:clamp(36px,4.5vw,56px)}
.cta-strip--center{justify-content:center}
.cta-strip--soft{padding-top:clamp(28px,3.5vw,44px);border-top:1px dashed var(--line-2)}

/* --- Стекло ------------------------------------------------------------------ */
.glass{
  position:relative;border-radius:var(--r);
  background:linear-gradient(150deg,rgba(133,152,255,.10),rgba(133,152,255,.03));
  border:1px solid var(--line-2);
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  box-shadow:0 24px 70px -40px rgba(0,0,0,.9),inset 0 1px 0 rgba(255,255,255,.08);
}

/* --- Стеклянная панель раздела ------------------------------------------------
   Крупный блок, который физически отделяет секцию от фона. Ставится не на
   каждую секцию, а через одну — иначе страница превращается в стопку плашек. */
.section--panel{padding-block:clamp(52px,6.5vw,104px)}
.section--panel::before{display:none}
.panel{
  position:relative;border-radius:34px;padding:clamp(26px,4.4vw,76px);overflow:hidden;
  background:linear-gradient(157deg,rgba(133,152,255,.11),rgba(133,152,255,.028) 58%,rgba(76,224,208,.032));
  border:1px solid var(--line-2);
  backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
  box-shadow:0 50px 120px -70px rgba(0,0,0,1),inset 0 1px 0 rgba(255,255,255,.10);
}
.panel::before{content:'';position:absolute;left:12%;right:12%;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(174,184,255,.6),transparent)}
.panel--gold{border-color:rgba(232,197,122,.26);
  background:linear-gradient(157deg,rgba(232,197,122,.10),rgba(133,152,255,.03) 55%,rgba(232,197,122,.045))}
.panel--gold::before{background:linear-gradient(90deg,transparent,rgba(232,197,122,.7),transparent)}
/* стекло внутри стекла мутнеет — вложенные карточки делаем легче */
.panel .glass{box-shadow:inset 0 1px 0 rgba(255,255,255,.07);
  background:linear-gradient(150deg,rgba(133,152,255,.09),rgba(133,152,255,.015))}

/* --- Бегущая строка ------------------------------------------------------------
   Контент продублирован дважды, дорожка едет на -50% — шов не виден.         */
.ticker{position:fixed;inset:0 0 auto;z-index:42;height:var(--ticker-h);
  background:#04061A;border-bottom:1px solid var(--line);overflow:hidden}
.ticker__track{display:flex;align-items:center;white-space:nowrap;padding:9px 0;
  font-family:var(--f-mono);font-size:12px;font-weight:400;
  letter-spacing:.08em;text-transform:uppercase;color:var(--muted);
  animation:marq 38s linear infinite;will-change:transform}
.ticker__track>span{padding:0 22px}
.ticker__track b{color:var(--paper);font-weight:500}
.ticker__track .star{color:var(--aqua);font-style:normal}
@keyframes marq{to{transform:translateX(-50%)}}
.ticker:hover .ticker__track{animation-play-state:paused}

/* --- Шапка -------------------------------------------------------------------- */
.hdr{position:fixed;left:0;right:0;top:var(--ticker-h);z-index:40;transition:background .4s var(--ease),border-color .4s var(--ease),backdrop-filter .4s}
.hdr::after{content:'';position:absolute;inset:auto 0 0;height:1px;background:var(--line);opacity:0;transition:opacity .4s}
.hdr.is-stuck{background:rgba(8,11,30,.72);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.hdr.is-stuck::after{opacity:1}
.hdr__in{max-width:var(--max);margin-inline:auto;padding:16px var(--pad);display:flex;align-items:center;gap:clamp(16px,3vw,40px)}

.logo{display:flex;align-items:center;flex:none;transition:opacity .3s}
.logo:hover{opacity:.82}
/* локап 754×110 — на 26px высоты даёт ~178px ширины, соразмерно навигации */
.logo__full{height:26px;width:auto;max-width:min(48vw,190px);object-fit:contain}
.logo__mark{display:none;height:26px;width:auto}
.logo--foot .logo__full{height:34px;max-width:min(60vw,240px)}

.nav{display:flex;gap:clamp(14px,2vw,30px);margin-left:auto}
.nav__link{position:relative;font-size:14px;color:var(--muted);padding:6px 0;transition:color .3s}
.nav__link::after{content:'';position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--aqua);transition:right .4s var(--ease)}
.nav__link:hover,.nav__link.is-active{color:var(--paper)}
.nav__link:hover::after,.nav__link.is-active::after{right:0}

.hdr__side{display:flex;align-items:center;gap:12px;margin-left:auto}
.nav+.hdr__side{margin-left:0}

.lang{display:flex;padding:3px;border-radius:999px;background:var(--glass-2);border:1px solid var(--line);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.lang__btn{padding:6px 11px;border-radius:999px;font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;
  color:var(--faint);transition:color .3s,background .3s}
.lang__btn:hover{color:var(--paper)}
.lang__btn.is-on{background:rgba(174,184,255,.18);color:var(--paper)}

.burger{display:none;width:40px;height:40px;border-radius:12px;border:1px solid var(--line-2);
  background:var(--glass-2);position:relative}
.burger span{position:absolute;left:11px;right:11px;height:1.5px;background:var(--paper);transition:transform .35s var(--ease),opacity .3s}
.burger span:first-child{top:16px}
.burger span:last-child{bottom:16px}
.burger[aria-expanded="true"] span:first-child{transform:translateY(5px) rotate(45deg)}
.burger[aria-expanded="true"] span:last-child{transform:translateY(-5px) rotate(-45deg)}

/* --- Hero --------------------------------------------------------------------- */
.hero{position:relative;min-height:100svh;display:flex;align-items:center;
  padding-block:calc(clamp(96px,12vh,140px) + var(--ticker-h)) clamp(64px,8vh,104px);
  overflow:hidden}
.hero__in{position:relative;z-index:2}
.hero__orbs{position:absolute;inset:0;z-index:1;pointer-events:none}
.orb{position:absolute;border-radius:50%;
  background:radial-gradient(circle at 30% 28%,rgba(255,255,255,.5),rgba(174,184,255,.14) 42%,rgba(124,140,248,.05) 62%,transparent 72%);
  border:1px solid rgba(174,184,255,.16);
  backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);
  box-shadow:inset -14px -20px 60px rgba(76,224,208,.14),0 30px 90px -40px rgba(0,0,0,.9);
}
.orb--1{width:min(24vw,300px);aspect-ratio:1;right:-5vw;top:11vh;animation:float 17s var(--ease) infinite alternate}
.orb--2{width:min(13vw,140px);aspect-ratio:1;right:24vw;bottom:11vh;animation:float 13s var(--ease) infinite alternate-reverse}
.orb--3{width:min(9vw,96px);aspect-ratio:1;right:2vw;bottom:26vh;animation:float 21s var(--ease) infinite alternate}
@keyframes float{to{transform:translate3d(-28px,-38px,0) rotate(12deg)}}

/* --- 3D-объекты: хром + индиго-глянец ------------------------------------- */
.sprite{position:absolute;width:0;height:0;overflow:hidden}
/* --- Монументальная «5»: главный объект первого экрана ---------------------
   Три вложенных трансформа: позиция (обёртка) → наклон за курсором (span)
   → парение (svg). Так они не конфликтуют между собой.                     */
.hero__five{
  position:absolute;right:0;top:50%;z-index:1;pointer-events:none;
  width:clamp(280px,42vw,660px);aspect-ratio:1;transform:translateY(-50%);
}
/* рендер идёт на своей синей подложке без альфы: под ним кладём световое пятно
   того же оттенка, а края кадра растушёвываем маской — квадрат не читается */
.hero__five::before{content:'';position:absolute;inset:-14%;z-index:-1;border-radius:50%;
  background:radial-gradient(closest-side,rgba(0,42,110,.85),rgba(0,26,72,.5) 52%,transparent 76%)}
.hero__five img{
  mask-image:radial-gradient(closest-side at 50% 50%,#000 68%,rgba(0,0,0,.75) 84%,transparent 100%);
  -webkit-mask-image:radial-gradient(closest-side at 50% 50%,#000 68%,rgba(0,0,0,.75) 84%,transparent 100%);
}
.hero__five-in{display:block;transition:transform .6s var(--ease)}
.hero__five img,.hero__five svg{display:block;width:100%;height:auto;transform-origin:50% 56%;
  animation:five-hero 19s var(--ease) infinite alternate}
@keyframes five-hero{
  from{transform:perspective(1200px) rotateX(6deg) rotateY(-13deg) rotateZ(-3deg) translateY(10px)}
  to  {transform:perspective(1200px) rotateX(-4deg) rotateY(11deg) rotateZ(3deg) translateY(-14px)}
}

/* печать раздела: маленький объект над заголовком секции */
.seal{display:block;width:58px;margin:0 0 18px;filter:drop-shadow(0 12px 18px rgba(4,6,22,.6))}
.seal svg{display:block;width:100%;height:auto;
  animation:seal-float 9s var(--ease) infinite alternate}
@keyframes seal-float{
  from{transform:perspective(500px) translateY(3px) rotateY(-10deg) rotateZ(-2deg)}
  to  {transform:perspective(500px) translateY(-5px) rotateY(11deg) rotateZ(2deg)}
}
.head--center .seal{margin-inline:auto}
.seal--gold{filter:drop-shadow(0 12px 22px rgba(184,138,62,.45))}

.hero__eyebrow{color:var(--aqua)}
.hero__title{
  font-family:var(--f-display);font-weight:800;
  /* высота экрана учитывается наравне с шириной: на низких окнах
     заголовок ужимается, чтобы дата и кнопки остались над сгибом */
  font-size:clamp(42px,min(8.6vw,11.6vh),132px);
  line-height:.92;letter-spacing:-.045em;
  margin:0 0 20px;text-transform:uppercase;
}
.hero__line{display:block;overflow:hidden}
.hero__line>span{display:block;transform:translateY(102%);transition:transform 1.1s var(--ease)}
body.is-ready .hero__line>span{transform:none}
.hero__line:nth-child(2)>span{transition-delay:.09s}
.hero__line:nth-child(3)>span{transition-delay:.18s}
.hero__line--year>span{
  font-weight:800;
  background:var(--accent);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero__slogan{font-family:var(--f-display);font-weight:700;
  font-size:clamp(17px,min(1.9vw,2.9vh),27px);line-height:1.2;letter-spacing:-.022em;
  margin:0 0 14px;background:var(--accent);
  -webkit-background-clip:text;background-clip:text;color:transparent}
.hero__sub{
  font-family:var(--f-display);font-weight:600;
  font-size:clamp(16px,min(2.1vw,3.2vh),28px);line-height:1.2;letter-spacing:-.025em;
  margin:0 0 14px;color:var(--peri-hi);
}
.hero__lead{max-width:54ch;color:var(--muted);font-size:clamp(15px,1.2vw,17px);margin:0 0 30px}

/* четыре равные ячейки в строку: flex-wrap ронял «Формат» на вторую строку
   и растягивал его во всю ширину */
.hero__meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:0 0 30px;
  border:1px solid var(--line-2);border-radius:var(--r-sm);overflow:hidden;
  background:var(--line);max-width:760px}
.hero__cell{padding:16px 20px;background:rgba(10,14,40,.5);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.hero__cell dt{font-family:var(--f-mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--faint);margin-bottom:6px}
.hero__cell dd{margin:0;font-size:15px;font-weight:500;white-space:nowrap}
.hero__cta{display:flex;flex-wrap:wrap;gap:14px}

.scroller{position:absolute;left:50%;bottom:28px;transform:translateX(-50%);z-index:2;
  display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--faint);transition:color .3s}
.scroller:hover{color:var(--paper)}
.scroller__label{font-family:var(--f-mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase}
.scroller__rail{position:relative;width:1px;height:52px;background:var(--line-2);overflow:hidden}
.scroller__dot{position:absolute;left:-1.5px;width:4px;height:14px;border-radius:2px;background:var(--aqua);
  animation:fall 2.4s var(--ease) infinite}
@keyframes fall{0%{top:-16px;opacity:0}25%{opacity:1}75%{opacity:1}100%{top:52px;opacity:0}}

/* --- Появление при скролле ----------------------------------------------------- */
[data-anim]{opacity:0;transform:translateY(28px);transition:opacity .85s var(--ease),transform .85s var(--ease)}
[data-anim].in{opacity:1;transform:none}
.stagger{opacity:0;transform:translateY(20px);transition:opacity .7s var(--ease),transform .7s var(--ease);
  transition-delay:calc(var(--i,0)*70ms)}
.in .stagger{opacity:1;transform:none}
.chips,.stats,.noms,.cards,.spk,.parts,.tl,.faq,.prog,.gal{opacity:1;transform:none}

/* --- Чипсы аудитории ------------------------------------------------------------ */
.chips{list-style:none;display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:0 0 clamp(48px,6vw,80px)}
.chips li{padding:9px 18px;border-radius:999px;font-size:13.5px;color:var(--muted);
  border:1px solid var(--line-2);background:var(--glass);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  transition:color .35s,border-color .35s,transform .35s var(--ease)}
.chips li:hover{color:var(--paper);border-color:rgba(76,224,208,.5);transform:translateY(-2px)}

/* --- Блок «5 лет» в About -------------------------------------------------------- */
.big5{display:grid;grid-template-columns:auto 1fr;gap:clamp(24px,4vw,56px);align-items:center;
  padding:clamp(28px,4vw,52px);overflow:hidden}
.big5__num{
  font-family:var(--f-display);font-weight:800;font-size:clamp(110px,17vw,230px);line-height:.76;
  background:linear-gradient(150deg,var(--peri-hi),var(--aqua));
  -webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 0 40px rgba(124,140,248,.4));
}
.big5__body p{color:var(--muted);margin:0 0 26px;max-width:52ch}

/* --- Таймлайн -------------------------------------------------------------------- */
.section--anniv .tl{
  display:grid;grid-auto-flow:column;grid-auto-columns:minmax(190px,1fr);
  gap:0;overflow-x:auto;padding-bottom:12px;scrollbar-width:thin;
  scroll-snap-type:x proximity;
}
.tl__item{position:relative;padding:38px 22px 0 0;scroll-snap-align:start}
.tl__item::before{content:'';position:absolute;left:0;right:0;top:14px;height:1px;background:var(--line-2)}
.tl__item::after{content:'';position:absolute;left:0;top:9px;width:11px;height:11px;border-radius:50%;
  background:var(--ink);border:1px solid var(--peri);transition:background .4s,box-shadow .4s}
.tl__item:hover::after{background:var(--aqua);box-shadow:0 0 0 6px rgba(76,224,208,.14)}
.tl__item.is-now::after{background:var(--aqua);box-shadow:0 0 0 7px rgba(76,224,208,.16);animation:pulse 2.6s ease-in-out infinite}
@keyframes pulse{50%{box-shadow:0 0 0 13px rgba(76,224,208,0)}}
.tl__year{font-family:var(--f-mono);font-size:15px;letter-spacing:.1em;font-variant-numeric:tabular-nums;color:var(--aqua);display:block;margin-bottom:10px}
.tl__item.is-now .tl__year{color:var(--gold)}
.tl__title{font-family:var(--f-display);font-size:15px;font-weight:700;line-height:1.28;margin:0 0 8px}
.tl__text{font-size:13.5px;color:var(--faint);line-height:1.5;margin:0;padding-right:14px}

/* --- Счётчики ---------------------------------------------------------------------- */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;
  margin-top:clamp(48px,6vw,80px);background:var(--line);border:1px solid var(--line-2);border-radius:var(--r-sm);overflow:hidden}
.stat{padding:clamp(22px,3vw,34px);background:rgba(10,14,40,.46);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:background .4s}
.stat:hover{background:rgba(24,30,72,.6)}
.stat__num{font-family:var(--f-display);font-weight:800;font-size:clamp(30px,3.4vw,46px);line-height:1;
  letter-spacing:-.04em;font-variant-numeric:tabular-nums;margin-bottom:10px;
  background:linear-gradient(140deg,#fff,var(--peri-hi));-webkit-background-clip:text;background-clip:text;color:transparent}
.stat__label{font-size:13px;color:var(--faint);line-height:1.4}

/* --- Премия ------------------------------------------------------------------------ */
.awards{overflow:hidden}
.awards__glow{position:absolute;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(58% 48% at 50% 0%,rgba(232,197,122,.20),transparent 70%),
    radial-gradient(46% 40% at 82% 96%,rgba(232,197,122,.13),transparent 70%);
}
.awards .wrap{position:relative;z-index:1}
.awards__title{display:flex;flex-direction:column;align-items:center;gap:2px;
  font-weight:800;letter-spacing:-.04em;
  background:linear-gradient(96deg,#fff 8%,var(--gold-hi) 34%,#C79B4E 56%,var(--gold-hi) 78%,#fff);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  background-size:220% 100%;animation:sheen 9s linear infinite}
@keyframes sheen{to{background-position:220% 0}}
.awards__year{font-weight:800;font-size:.92em;letter-spacing:.02em}

.noms{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:16px}
.nom{position:relative;padding:26px 26px 26px 62px;border-radius:var(--r-sm);
  background:linear-gradient(150deg,rgba(232,197,122,.10),rgba(232,197,122,.02));
  border:1px solid rgba(232,197,122,.22);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  transition:transform .4s var(--ease),border-color .4s,box-shadow .4s}
.nom:hover{transform:translateY(-4px);border-color:rgba(232,197,122,.5);
  box-shadow:0 26px 60px -34px rgba(232,197,122,.7)}
.nom::before{content:'';position:absolute;left:24px;top:29px;width:18px;height:18px;border-radius:50%;
  background:radial-gradient(circle at 34% 30%,var(--gold-hi),#B98F45);
  box-shadow:0 0 0 4px rgba(232,197,122,.12)}
.nom__title{font-family:var(--f-display);font-size:15px;font-weight:700;line-height:1.32;margin:0 0 8px;color:var(--gold-hi)}
.nom__text{font-size:13.5px;color:var(--muted);margin:0;line-height:1.5}
.noms--modal{margin-top:26px;grid-template-columns:1fr}
.noms--modal .nom{padding:16px 18px 16px 52px}
.noms--modal .nom::before{left:18px;top:19px;width:14px;height:14px}
.noms--modal .nom__text{display:none}

/* --- Карточки преимуществ ------------------------------------------------------------ */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.card{position:relative;padding:30px;border-radius:var(--r);overflow:hidden;
  background:linear-gradient(150deg,rgba(133,152,255,.09),rgba(133,152,255,.025));
  border:1px solid var(--line-2);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  transition:transform .45s var(--ease),border-color .45s}
.card::before{content:'';position:absolute;inset:0;opacity:0;transition:opacity .45s;
  background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%),rgba(174,184,255,.16),transparent 65%)}
.card:hover{transform:translateY(-5px);border-color:rgba(174,184,255,.4)}
.card:hover::before{opacity:1}
.card__ico{position:relative;display:block;width:58px;margin:0 0 22px;
  filter:drop-shadow(0 14px 20px rgba(4,6,22,.55))}
.card__ico svg{display:block;width:100%;height:auto;
  animation:seal-float 10s var(--ease) infinite alternate;
  animation-delay:calc(var(--i,0)*-1.6s)}
.card__title{position:relative;font-family:var(--f-display);font-size:17px;font-weight:700;line-height:1.25;margin:0 0 10px}
.card__text{position:relative;font-size:14px;color:var(--muted);margin:0;line-height:1.55}

/* --- Роли участия ---------------------------------------------------------------------- */
.roles{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:18px;align-items:stretch}
.role{display:flex;flex-direction:column;padding:clamp(26px,3vw,38px);
  transition:transform .5s var(--ease),border-color .5s,box-shadow .5s}
.role p{color:var(--muted);font-size:14.5px;margin:0 0 28px;flex:1}
.role:hover{border-color:rgba(174,184,255,.4);box-shadow:0 34px 80px -50px rgba(124,140,248,.9)}
.role__ico{display:block;align-self:flex-start;width:54px;margin:0 0 18px;
  filter:drop-shadow(0 14px 20px rgba(4,6,22,.55))}
.role__ico svg{display:block;width:100%;height:auto;
  animation:seal-float 11s var(--ease) infinite alternate}
.role__tag{display:inline-block;align-self:flex-start;margin-bottom:16px;padding:5px 12px;border-radius:999px;
  font-family:var(--f-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--faint);border:1px solid var(--line-2)}
.role--primary{background:linear-gradient(150deg,rgba(124,140,248,.22),rgba(76,224,208,.06));
  border-color:rgba(174,184,255,.34)}
.role--primary .role__tag{color:var(--aqua);border-color:rgba(76,224,208,.4)}

/* --- Программа -------------------------------------------------------------------------- */
.prog{list-style:none;padding:0;margin:0;position:relative}
.prog::before{content:'';position:absolute;left:clamp(78px,9vw,120px);top:14px;bottom:14px;width:1px;
  background:linear-gradient(180deg,transparent,var(--line-2) 6%,var(--line-2) 94%,transparent)}
.prog__item{position:relative;display:grid;grid-template-columns:clamp(78px,9vw,120px) 1fr;
  gap:clamp(20px,3vw,40px);padding-block:clamp(14px,1.6vw,20px)}
.prog__time{font-family:var(--f-mono);font-size:14px;letter-spacing:.02em;color:var(--peri-hi);
  font-variant-numeric:tabular-nums;
  padding-top:20px;text-align:right;padding-right:22px}
.prog__end{display:block;font-size:11px;color:var(--faint);margin-top:2px}
.prog__dot{position:absolute;left:clamp(78px,9vw,120px);top:27px;width:9px;height:9px;margin-left:-4px;
  border-radius:50%;background:var(--ink);border:1px solid var(--peri);z-index:1;transition:background .4s,box-shadow .4s}
.prog__item:hover .prog__dot{background:var(--aqua);box-shadow:0 0 0 5px rgba(76,224,208,.16)}
.prog__card{width:100%;text-align:left;padding:20px 24px;border-radius:var(--r-sm);
  background:linear-gradient(150deg,rgba(133,152,255,.08),rgba(133,152,255,.02));
  border:1px solid var(--line);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  transition:transform .4s var(--ease),border-color .4s,background .4s}
.prog__card:hover{transform:translateX(6px);border-color:rgba(174,184,255,.36)}
.prog__title{font-family:var(--f-display);font-size:16px;font-weight:700;line-height:1.3;margin:0}
.prog__text{font-size:13.5px;color:var(--muted);margin:8px 0 0;line-height:1.5}
.prog__item--break .prog__card{background:transparent;border-style:dashed;border-color:var(--line)}
.prog__item--break .prog__title{font-family:var(--f-body);font-size:14px;color:var(--faint);font-weight:500}
.prog__item--break .prog__card:hover{transform:none;border-color:var(--line-2)}
.prog__item--award .prog__card{background:linear-gradient(150deg,rgba(232,197,122,.16),rgba(232,197,122,.03));
  border-color:rgba(232,197,122,.34)}
.prog__item--award .prog__title{color:var(--gold-hi)}
.prog__item--award .prog__dot{border-color:var(--gold);background:var(--gold)}
.prog__item--award .prog__time{color:var(--gold)}
.prog__tag{display:inline-block;margin-bottom:10px;padding:4px 11px;border-radius:999px;
  font-family:var(--f-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--gold);border:1px solid rgba(232,197,122,.4)}

/* --- Спикеры ------------------------------------------------------------------------------ */
.spk{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}
.spk__ghost{padding:26px;border-radius:var(--r);text-align:center;
  background:linear-gradient(150deg,rgba(133,152,255,.07),rgba(133,152,255,.02));
  border:1px solid var(--line);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  transition:border-color .45s,transform .45s var(--ease)}
.spk__ghost:hover{border-color:rgba(174,184,255,.34);transform:translateY(-4px)}
.spk__av{width:92px;height:92px;margin:0 auto 18px;border-radius:50%;position:relative;overflow:hidden;
  background:radial-gradient(circle at 32% 28%,rgba(174,184,255,.34),rgba(124,140,248,.10) 55%,transparent 72%);
  border:1px solid var(--line-2)}
.spk__av::after{content:'';position:absolute;left:50%;top:26%;width:34px;height:34px;border-radius:50%;
  transform:translateX(-50%);background:rgba(236,238,255,.16);
  box-shadow:0 42px 0 -4px rgba(236,238,255,.16);filter:blur(.4px)}
.spk__av img{width:100%;height:100%;object-fit:cover;position:relative;z-index:1}
.spk__bar{height:9px;border-radius:5px;background:rgba(236,238,255,.10);margin:0 auto 9px;filter:blur(2.5px)}
.spk__bar--w1{width:72%}
.spk__bar--w2{width:52%}
.spk__hint{font-family:var(--f-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--faint);margin:16px 0 0}
.spk__card{padding:24px;border-radius:var(--r);text-align:center;width:100%;
  background:linear-gradient(150deg,rgba(133,152,255,.09),rgba(133,152,255,.02));
  border:1px solid var(--line-2);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  transition:transform .45s var(--ease),border-color .45s}
.spk__card:hover{transform:translateY(-5px);border-color:rgba(174,184,255,.4)}
.spk__name{font-family:var(--f-display);font-size:15px;font-weight:700;margin:0 0 6px}
.spk__role{font-size:13px;color:var(--muted);margin:0;line-height:1.45}
.spk__co{font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;color:var(--aqua);margin:10px 0 0}

/* --- Галерея прошлых форумов ----------------------------------------------- */
.gal{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.gal__item{position:relative;display:block;padding:0;width:100%;aspect-ratio:4/3;overflow:hidden;
  border-radius:var(--r);border:1px solid var(--line-2);background:var(--glass);
  transition:transform .5s var(--ease),border-color .5s,box-shadow .5s}
.gal__item--lead{grid-column:span 2;aspect-ratio:16/10}
.gal__item:hover{transform:translateY(-5px);border-color:rgba(174,184,255,.42);
  box-shadow:0 36px 80px -46px rgba(124,140,248,.95)}
.gal__img{width:100%;height:100%;object-fit:cover;
  transform:scale(1.02);transition:transform .8s var(--ease),filter .6s;
  filter:saturate(.92) contrast(1.03)}
.gal__item:hover .gal__img{transform:scale(1.07);filter:saturate(1.05) contrast(1.05)}
.gal__item::after{content:'';position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(7,10,28,.05) 40%,rgba(7,10,28,.86));
  transition:opacity .5s}
.gal__year{position:absolute;left:16px;top:16px;z-index:2;padding:5px 12px;border-radius:999px;
  font-family:var(--f-mono);font-size:10px;letter-spacing:.16em;color:var(--paper);
  background:rgba(8,11,30,.6);border:1px solid var(--line-2);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.gal__cap{position:absolute;left:20px;right:20px;bottom:18px;z-index:2;text-align:left;
  font-size:13.5px;line-height:1.4;color:var(--paper);
  transform:translateY(6px);opacity:.85;transition:transform .5s var(--ease),opacity .5s}
.gal__item:hover .gal__cap{transform:none;opacity:1}

.modal--photo{width:min(1080px,100%);background:linear-gradient(150deg,rgba(20,24,60,.96),rgba(9,12,34,.97))}
.modal--photo .modal__body{padding:clamp(14px,2vw,20px)}
.photo__img{width:100%;height:auto;border-radius:var(--r-sm);border:1px solid var(--line-2)}
.photo__cap{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:16px 4px 4px;
  font-size:14px;color:var(--muted)}
.photo__year{font-family:var(--f-mono);font-size:11px;letter-spacing:.16em;color:var(--aqua)}

/* --- Глобус --------------------------------------------------------------------------------- */
.globe-wrap{display:grid;grid-template-columns:1fr minmax(280px,44%);gap:clamp(32px,5vw,72px);align-items:center}
.globe__count{font-family:var(--f-mono);font-size:13px;color:var(--faint);letter-spacing:.06em;margin:26px 0 0;
  display:flex;align-items:baseline;gap:10px}
.globe__num{font-family:var(--f-display);font-weight:800;font-size:38px;letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:var(--aqua)}
.globe{position:relative;aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle at 34% 28%,rgba(174,184,255,.22),rgba(23,17,83,.5) 48%,rgba(7,10,28,.9) 76%);
  border:1px solid var(--line-2);
  box-shadow:inset -22px -26px 80px rgba(0,0,0,.7),0 40px 100px -50px rgba(124,140,248,.9);
  overflow:hidden}
.globe__ring{position:absolute;inset:6%;border-radius:50%;border:1px solid rgba(174,184,255,.16)}
.globe__ring--1{transform:rotateX(74deg);animation:spinX 26s linear infinite}
.globe__ring--2{transform:rotateX(74deg) rotateY(60deg);animation:spinY 34s linear infinite}
.globe__ring--3{inset:20%;border-color:rgba(76,224,208,.2)}
.globe__mer{position:absolute;inset:6%;border-radius:50%;border:1px solid rgba(174,184,255,.10)}
@keyframes spinX{to{transform:rotateX(74deg) rotateZ(360deg)}}
@keyframes spinY{to{transform:rotateX(74deg) rotateY(60deg) rotateZ(-360deg)}}
.globe__dot{position:absolute;width:7px;height:7px;margin:-3.5px 0 0 -3.5px;border-radius:50%;
  background:var(--aqua);box-shadow:0 0 0 4px rgba(76,224,208,.16),0 0 14px rgba(76,224,208,.9);
  animation:blip 3.4s ease-in-out infinite}
@keyframes blip{0%,100%{box-shadow:0 0 0 4px rgba(76,224,208,.16),0 0 14px rgba(76,224,208,.7)}
  50%{box-shadow:0 0 0 11px rgba(76,224,208,0),0 0 18px rgba(76,224,208,1)}}
.globe__label{position:absolute;transform:translate(12px,-50%);font-family:var(--f-mono);font-size:10px;
  letter-spacing:.1em;color:var(--faint);white-space:nowrap;opacity:0;transition:opacity .4s}
.globe:hover .globe__label{opacity:1}

/* --- Партнёры --------------------------------------------------------------------------------- */
.parts{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1px;
  background:var(--line);border:1px solid var(--line-2);border-radius:var(--r-sm);overflow:hidden}
.part{display:grid;place-items:center;min-height:104px;padding:20px;text-align:center;
  background:rgba(10,14,40,.44);
  font-family:var(--f-display);font-size:13px;font-weight:600;letter-spacing:-.01em;
  color:var(--muted);transition:background .4s,color .4s}
.part:hover{background:rgba(28,34,84,.62);color:var(--paper)}
.part img{max-height:44px;width:auto;object-fit:contain;filter:brightness(0) invert(1);opacity:.75;transition:opacity .4s}
.part:hover img{opacity:1}

/* --- FAQ ---------------------------------------------------------------------------------------- */
.faq{border-top:1px solid var(--line)}
.faq__item{border-bottom:1px solid var(--line)}
.faq__q{display:flex;align-items:center;gap:20px;width:100%;padding:22px 0;text-align:left;
  font-family:var(--f-display);font-size:15px;font-weight:700;line-height:1.35;transition:color .3s}
.faq__q:hover{color:var(--peri-hi)}
.faq__sign{margin-left:auto;flex:none;position:relative;width:26px;height:26px;border-radius:50%;
  border:1px solid var(--line-2);transition:background .35s,border-color .35s,transform .45s var(--ease)}
.faq__sign::before,.faq__sign::after{content:'';position:absolute;left:50%;top:50%;background:currentColor;transition:opacity .3s}
.faq__sign::before{width:11px;height:1px;transform:translate(-50%,-50%)}
.faq__sign::after{width:1px;height:11px;transform:translate(-50%,-50%)}
.faq__item.is-open .faq__sign{transform:rotate(180deg);border-color:rgba(76,224,208,.5)}
.faq__item.is-open .faq__sign::after{opacity:0}
.faq__a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s var(--ease)}
.faq__item.is-open .faq__a{grid-template-rows:1fr}
.faq__inner{overflow:hidden}
.faq__inner p{margin:0;padding:0 46px 24px 0;color:var(--muted);font-size:14.5px}

/* --- Финал ------------------------------------------------------------------------------------- */
.final__card{padding:clamp(34px,5vw,72px);text-align:center;overflow:hidden;
  background:linear-gradient(150deg,rgba(124,140,248,.20),rgba(76,224,208,.05))}
.final__card .eyebrow{justify-content:center}
.final__card .lead{margin-inline:auto}
.final__title{font-size:clamp(30px,5vw,66px)}
.final__meta{display:flex;flex-wrap:wrap;justify-content:center;gap:clamp(20px,4vw,52px);margin:38px 0 0}
.final__meta dt{font-family:var(--f-mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--faint);margin-bottom:6px}
.final__meta dd{margin:0;font-family:var(--f-display);font-weight:600;font-size:clamp(15px,1.5vw,19px)}
.final .cta-strip{justify-content:center}

/* --- Подвал ------------------------------------------------------------------------------------ */
.foot{position:relative;padding-block:clamp(56px,7vw,96px) 32px;border-top:1px solid var(--line-2);
  background:linear-gradient(180deg,transparent,rgba(7,10,28,.85))}
.foot__in{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:clamp(24px,4vw,56px)}
.foot__org{font-size:13.5px;color:var(--faint);margin:20px 0 0;max-width:34ch}
.foot__col{display:flex;flex-direction:column;gap:10px}
.foot__link{font-size:14px;color:var(--muted);transition:color .3s}
.foot__link:hover{color:var(--aqua)}
.foot__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;
  margin-top:clamp(40px,5vw,72px);padding-top:24px;border-top:1px solid var(--line);
  font-family:var(--f-mono);font-size:11px;letter-spacing:.04em;color:var(--faint)}

/* --- Модальные окна ------------------------------------------------------------------------------ */
.mroot{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:clamp(12px,3vw,32px)}
.mroot[hidden]{display:none}
.mroot__veil{position:absolute;inset:0;background:rgba(4,6,20,.72);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  opacity:0;transition:opacity .45s var(--ease)}
.mroot.is-open .mroot__veil{opacity:1}

.modal{position:relative;width:min(680px,100%);max-height:min(88vh,900px);overflow-y:auto;
  border-radius:var(--r);
  background:linear-gradient(150deg,rgba(30,34,84,.94),rgba(12,16,44,.96));
  border:1px solid var(--line-2);
  backdrop-filter:blur(26px);-webkit-backdrop-filter:blur(26px);
  box-shadow:0 50px 120px -50px rgba(0,0,0,1),inset 0 1px 0 rgba(255,255,255,.09);
  opacity:0;transform:translateY(22px) scale(.985);
  transition:opacity .45s var(--ease),transform .45s var(--ease);
  scrollbar-width:thin}
.modal[hidden]{display:none}
.modal.is-open{opacity:1;transform:none}
.modal--gold{border-color:rgba(232,197,122,.3);
  background:linear-gradient(150deg,rgba(46,38,66,.95),rgba(14,14,38,.96))}
.modal--done{width:min(480px,100%);text-align:center}
.modal__body{padding:clamp(26px,4vw,46px)}
.modal__x{position:absolute;right:16px;top:16px;z-index:2;width:38px;height:38px;border-radius:50%;
  border:1px solid var(--line-2);background:rgba(10,14,40,.6);transition:background .3s,transform .4s var(--ease)}
.modal__x:hover{background:rgba(124,140,248,.28);transform:rotate(90deg)}
.modal__x span{position:absolute;left:50%;top:50%;width:12px;height:1px;background:var(--paper)}
.modal__x span:first-child{transform:translate(-50%,-50%) rotate(45deg)}
.modal__x span:last-child{transform:translate(-50%,-50%) rotate(-45deg)}
.modal__title{font-family:var(--f-display);font-weight:700;font-size:clamp(21px,2.6vw,31px);
  line-height:1.14;letter-spacing:-.02em;margin:0 0 14px;padding-right:44px}
.modal__lead{color:var(--muted);font-size:14.5px;margin:0 0 26px}
.modal__h3{font-family:var(--f-display);font-size:15px;font-weight:700;margin:24px 0 8px;color:var(--peri-hi)}
.modal--gold .modal__h3{color:var(--gold-hi)}
.modal__p{font-size:14px;color:var(--muted);margin:0}

/* --- Формы ------------------------------------------------------------------------------------------ */
.form{display:flex;flex-direction:column;gap:14px}
.form__row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.field{display:flex;flex-direction:column;gap:7px}
.field>span{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}
.field input,.field textarea{
  width:100%;padding:13px 16px;border-radius:12px;font:inherit;font-size:14.5px;color:var(--paper);
  background:rgba(8,11,30,.55);border:1px solid var(--line-2);
  transition:border-color .3s,background .3s,box-shadow .3s;resize:vertical}
.field input:hover,.field textarea:hover{border-color:rgba(174,184,255,.34)}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--aqua);
  background:rgba(8,11,30,.8);box-shadow:0 0 0 3px rgba(76,224,208,.14)}
.field.is-bad input,.field.is-bad textarea{border-color:#FF7B92;box-shadow:0 0 0 3px rgba(255,123,146,.14)}
.field__err{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.08em;color:#FF9FB0;display:none;line-height:1.4}
.field.is-bad .field__err{display:block}
.form__err{margin-top:4px}

.pick{border:1px solid var(--line-2);border-radius:12px;padding:12px 16px;margin:0;
  display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;background:rgba(8,11,30,.4)}
.pick legend{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--faint);padding:0 6px}
.pick__opt{display:inline-flex;align-items:center;gap:8px;font-size:14px;cursor:pointer;color:var(--muted);transition:color .3s}
.pick__opt:hover{color:var(--paper)}
.pick__opt input{appearance:none;width:16px;height:16px;border-radius:50%;border:1px solid var(--line-2);
  position:relative;transition:border-color .3s;flex:none}
.pick__opt input:checked{border-color:var(--aqua)}
.pick__opt input:checked::after{content:'';position:absolute;inset:3px;border-radius:50%;background:var(--aqua)}
.pick__opt:has(input:checked){color:var(--paper)}
.form .btn{margin-top:8px}

/* --- Подтверждение ---------------------------------------------------------------------------------- */
.done{display:flex;flex-direction:column;align-items:center}
.done__mark{width:82px;height:82px;margin-bottom:24px}
.done__mark svg{width:100%;height:100%;fill:none;stroke-linecap:round;stroke-linejoin:round}
.done__ring{stroke:rgba(76,224,208,.4);stroke-width:1.5;stroke-dasharray:176;stroke-dashoffset:176;
  animation:ring .9s var(--ease) forwards}
.done__tick{stroke:var(--aqua);stroke-width:3;stroke-dasharray:44;stroke-dashoffset:44;
  animation:tick .5s var(--ease) .55s forwards}
@keyframes ring{to{stroke-dashoffset:0}}
@keyframes tick{to{stroke-dashoffset:0}}
.done .note{max-width:38ch}
.done .btn{margin-top:26px}

/* --- Адаптив ------------------------------------------------------------------------------------------ */
@media (max-width:1080px){
  .globe-wrap{grid-template-columns:1fr}
  .globe{max-width:440px;margin-inline:auto;width:100%}
  .foot__in{grid-template-columns:1fr 1fr}
}
@media (max-width:900px){
  .nav{position:fixed;inset:0 0 auto;top:0;flex-direction:column;gap:0;margin:0;
    padding:96px var(--pad) 34px;background:rgba(8,11,30,.96);
    backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
    border-bottom:1px solid var(--line-2);
    transform:translateY(-102%);transition:transform .5s var(--ease);z-index:-1}
  .nav.is-open{transform:none}
  .nav__link{padding:16px 0;font-size:17px;border-bottom:1px solid var(--line);color:var(--paper)}
  .burger{display:block}
  .hdr__side{margin-left:auto}
  .five{opacity:0 !important}
  .hero__five{width:min(78vw,340px);right:-6vw;top:auto;bottom:2vh;transform:none;opacity:.9}
  .seal{width:46px;margin-bottom:14px}
  .gal__item--lead{grid-column:auto;aspect-ratio:4/3}
  .big5{grid-template-columns:1fr;text-align:left}
  .hero{min-height:auto;padding-block:130px 90px}
  .hero__meta{width:100%}
  .hero__meta{grid-template-columns:repeat(2,minmax(0,1fr))}
  .scroller{display:none}
  .orb--2,.orb--3{display:none}
  .orb--1{opacity:.6;top:auto;bottom:6vh;right:-8vw}
}
@media (max-width:640px){
  .hdr .btn--sm{display:none}
  .hdr .logo__full{display:none}
  .hdr .logo__mark{display:block}
  .form__row{grid-template-columns:1fr}
  .foot__in{grid-template-columns:1fr}
  .prog::before{left:0}
  .prog__item{grid-template-columns:1fr;gap:8px;padding-left:22px}
  .prog__time{text-align:left;padding:0;display:flex;align-items:baseline;gap:10px}
  .prog__end{margin:0}
  .prog__dot{left:0;top:8px}
  :root{--ticker-h:31px}
  .ticker__track{font-size:10.5px;padding:8px 0}
  .ticker__track>span{padding:0 16px}
  .panel{border-radius:24px;padding:24px 20px}
  .btn{width:100%}
  .cta-strip .btn{width:100%}
  .hero__cta .btn{width:100%}
  .final__meta{gap:22px}
  .noms{grid-template-columns:1fr}
  .hero__meta{grid-template-columns:1fr}
}

/* --- Уважение к prefers-reduced-motion ------------------------------------------------------------------ */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;
    transition-duration:.001ms !important}
  [data-anim],.stagger{opacity:1 !important;transform:none !important}
  .hero__line>span{transform:none !important}
  .five{display:none}
  .seal svg,.card__ico svg,.role__ico svg{animation:none;transform:perspective(700px) rotateY(-7deg)}
  .ticker__track{animation:none}
}

/* ============================================================================
   РИТМ СТРАНИЦЫ: светлые блоки, стеклянные блоки, акцентный блок Премии
   Секции собраны на токенах, поэтому светлая тема — это переопределение
   переменных в области видимости секции плюс правка «зашитых» поверхностей.
   ========================================================================== */

/* --- Светлый блок --------------------------------------------------------- */
.section--light{
  --paper:#0C1030;
  --muted:rgba(12,16,48,.68);
  --faint:rgba(12,16,48,.46);
  --line:rgba(28,34,96,.12);
  --line-2:rgba(28,34,96,.20);
  --glass:rgba(255,255,255,.62);
  --glass-2:rgba(255,255,255,.78);
  --aqua:#0E9484;          /* контрастная бирюза: на белом исходная не читается */
  --peri:#4A56D8;
  --peri-hi:#3B46C4;
  color:var(--paper);
  background:linear-gradient(180deg,#EDEFF8 0%,#F7F8FD 42%,#EEF0F9 100%);
}
.section--light::before{display:none}          /* граница цветом, линия не нужна */

/* белая карточка-панель поверх подложки секции */
.section--light .panel{
  background:#fff;
  border-color:rgba(28,34,96,.10);
  box-shadow:0 44px 90px -60px rgba(16,22,74,.55),0 2px 6px -2px rgba(16,22,74,.10);
  backdrop-filter:none;-webkit-backdrop-filter:none;
}
.section--light .panel::before{
  background:linear-gradient(90deg,transparent,rgba(74,86,216,.32),transparent)}

/* карточки и прочие поверхности */
.section--light .glass,
.section--light .card,
.section--light .prog__card,
.section--light .spk__ghost,
.section--light .spk__card,
.section--light .gal__item{
  background:linear-gradient(150deg,#fff,rgba(255,255,255,.72));
  border-color:rgba(28,34,96,.12);
  box-shadow:0 26px 54px -42px rgba(16,22,74,.6);
}
.section--light .panel .glass{background:linear-gradient(150deg,#F4F6FD,#FBFCFF)}
.section--light .card::before{
  background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%),rgba(74,86,216,.10),transparent 65%)}
.section--light .card:hover,
.section--light .role:hover,
.section--light .gal__item:hover{border-color:rgba(74,86,216,.34)}
.section--light .chips li{background:#fff}
.section--light .chips li:hover{border-color:rgba(14,148,132,.55)}

/* сетки в 1px-разрыв: ячейки белые, «шов» — светлая линия */
.section--light .stat,
.section--light .part{background:rgba(255,255,255,.86)}
.section--light .stat:hover,
.section--light .part:hover{background:#fff}
.section--light .part img{filter:none;opacity:.85}

/* точки таймлайна и программы: заливка под цвет подложки */
.section--light .tl__item::after,
.section--light .prog__dot{background:#fff}
.section--light .prog__item--break .prog__card{background:transparent}

/* градиентный текст на светлом */
.section--light .stat__num{background-image:linear-gradient(140deg,#141A56,#4A56D8)}
.section--light .big5__num{background-image:linear-gradient(150deg,#3B46C4,#0E9484);
  filter:drop-shadow(0 14px 26px rgba(74,86,216,.28))}

/* кнопки */
.section--light .btn{--bg:linear-gradient(135deg,#6C79F0,#4048CE);color:#fff;
  box-shadow:0 14px 30px -14px rgba(64,72,206,.8),inset 0 1px 0 rgba(255,255,255,.35)}
.section--light .btn--ghost{background:rgba(255,255,255,.9);color:var(--paper);
  border-color:rgba(28,34,96,.18);box-shadow:0 10px 24px -18px rgba(16,22,74,.7)}
.section--light .btn--ghost:hover{background:#fff;border-color:rgba(74,86,216,.45)}

/* спикеры-заглушки */
.section--light .spk__av{
  background:radial-gradient(circle at 32% 28%,rgba(74,86,216,.20),rgba(74,86,216,.07) 55%,transparent 72%)}
.section--light .spk__av::after{background:rgba(20,26,80,.14);
  box-shadow:0 42px 0 -4px rgba(20,26,80,.14)}
.section--light .spk__bar{background:rgba(20,26,80,.11)}

/* 3D-объекты: на белом тяжёлая тень выглядит грязно */
.section--light .seal,
.section--light .card__ico,
.section--light .role__ico{filter:drop-shadow(0 14px 20px rgba(20,26,80,.26))}

/* --- Акцентный блок Премии ------------------------------------------------- */
.section--feature{
  padding-block:clamp(96px,12vw,190px);
  border-top:1px solid rgba(232,197,122,.30);
  border-bottom:1px solid rgba(232,197,122,.30);
  background:
    radial-gradient(72% 58% at 50% 0%,rgba(232,197,122,.17),transparent 72%),
    radial-gradient(58% 48% at 84% 100%,rgba(232,197,122,.11),transparent 70%),
    linear-gradient(180deg,#0A0714 0%,#05040D 52%,#0A0714 100%);
}
.section--feature::before{display:none}
.section--feature .awards__glow{opacity:.55}
.section--feature .h2{font-size:clamp(34px,5.4vw,74px)}
.section--feature .panel--gold{
  border-color:rgba(232,197,122,.32);
  background:linear-gradient(157deg,rgba(232,197,122,.12),rgba(10,7,20,.5) 55%,rgba(232,197,122,.06));
  box-shadow:0 60px 140px -80px rgba(232,197,122,.5),inset 0 1px 0 rgba(255,255,255,.10);
}
/* золотая звезда-разделитель, тот же знак, что и в бегущей строке */
.section--feature .panel--gold::after{
  content:'✦';position:absolute;left:50%;bottom:18px;transform:translateX(-50%);
  font-size:13px;color:var(--gold);opacity:.55}

@media (max-width:640px){
  .section--light .panel{box-shadow:0 24px 50px -40px rgba(16,22,74,.5)}
}

/* белое на белом: внутри белой панели поверхности тонируются */
.section--light .panel .prog__card,
.section--light .panel .chips li,
.section--light .panel .card{background:linear-gradient(150deg,#F3F5FD,#FBFCFF)}
.section--light .panel .prog__item--break .prog__card{background:transparent}

/* подписи поверх фотографии остаются светлыми — под ними тёмный градиент */
.section--light .gal__cap,
.section--light .gal__year{color:#fff}

/* --- Эхо главного объекта в блоке юбилея ------------------------------------
   Тот же рендер за стеклянной панелью: backdrop-filter размывает его,
   и объект работает связкой между экранами, а не отдельной картинкой.     */
.section--anniv{overflow:hidden}
.anniv-echo{position:absolute;z-index:0;right:-8%;top:50%;transform:translateY(-50%);
  width:min(52vw,700px);aspect-ratio:1;pointer-events:none;opacity:.55}
.anniv-echo img{display:block;width:100%;height:auto;
  mask-image:radial-gradient(closest-side,#000 58%,rgba(0,0,0,.5) 80%,transparent 100%);
  -webkit-mask-image:radial-gradient(closest-side,#000 58%,rgba(0,0,0,.5) 80%,transparent 100%)}
@media (max-width:900px){ .anniv-echo{opacity:.3;right:-24%;width:86vw} }

/* ============================================================================
   UX/UI-РЕВИЗИЯ. Три принципа:
   1) один уровень границ вместо трёх — секция сама является блоком;
   2) реальная иерархия заголовков — размер отражает важность секции;
   3) плотность — вертикальный ритм сжат примерно на четверть.
   ========================================================================== */

/* --- 1. Панель перестаёт быть рамкой ---------------------------------------- */
.panel{border:0;border-radius:0;padding:0;background:none;box-shadow:none;
  backdrop-filter:none;-webkit-backdrop-filter:none}
.panel::before{display:none}
.section--light .panel{background:none;box-shadow:none}
.panel--gold{background:none;border:0}
.section--panel{padding-block:clamp(64px,7.5vw,120px)}

/* карточки внутри — без второго контура, разделяет фон и отступ */
.section--light .panel .prog__card,
.section--light .panel .chips li,
.section--light .panel .card{background:#fff}

/* --- 2. Иерархия заголовков -------------------------------------------------
   Ключевые секции говорят громко, служебные — вполголоса.                    */
.h2{font-size:clamp(27px,3.1vw,44px);line-height:1.06;letter-spacing:-.03em}
#about .h2,#anniversary .h2,#awards .h2,#final .h2{
  font-size:clamp(34px,4.6vw,66px);letter-spacing:-.04em}
#program .h2{font-size:clamp(30px,3.8vw,54px)}
.lead{font-size:clamp(15px,1.15vw,17.5px);line-height:1.55;max-width:56ch}
.head{margin-bottom:clamp(30px,3.4vw,46px)}

/* --- 3. Печати над заголовками убраны ---------------------------------------
   На светлом фоне 58-пиксельный 3D-объект читался мутным пятном и не нёс
   информации — заголовок и метка справляются лучше.                          */
.seal{display:none}

/* --- 4. Awards: чистый чёрный вместо сепии ---------------------------------- */
.section--feature{
  border-top:1px solid rgba(232,197,122,.34);
  border-bottom:1px solid rgba(232,197,122,.34);
  background:
    radial-gradient(64% 46% at 50% 0%,rgba(232,197,122,.10),transparent 62%),
    linear-gradient(180deg,#05060E 0%,#03040A 50%,#05060E 100%);
  padding-block:clamp(78px,9vw,140px)}
.section--feature .awards__glow{display:none}
.awards__title{font-weight:800;letter-spacing:-.045em}
.nom{background:rgba(232,197,122,.045);border-color:rgba(232,197,122,.20)}
.nom:hover{background:rgba(232,197,122,.09);border-color:rgba(232,197,122,.44)}

/* --- 5. Спикеры: полоса вместо экрана из шести пустых карточек -------------- */
.spk{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.spk__ghost:nth-child(n+4){display:none}
.spk__ghost{padding:20px}
.spk__av{width:64px;height:64px;margin-bottom:14px}
.spk__av::after{width:24px;height:24px;top:24%;box-shadow:0 30px 0 -3px rgba(236,238,255,.16)}

/* --- 6. Партнёры: ряд без пустых ячеек -------------------------------------- */
.parts{display:flex;flex-wrap:wrap;gap:0;background:none;border:0;border-radius:0;
  border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2)}
.part{flex:1 1 190px;min-height:88px;border-right:1px solid var(--line);
  background:none;font-size:14px}
.part:last-child{border-right:0}
.section--light .part{background:none}
.section--light .part:hover{background:rgba(255,255,255,.7)}

/* --- 7. Плотность ------------------------------------------------------------ */
.section{padding-block:clamp(64px,8vw,116px)}
.cta-strip{margin-top:clamp(28px,3vw,40px)}
.chips{margin-bottom:clamp(34px,4vw,56px)}
.stats{margin-top:clamp(34px,4vw,56px)}
.big5{padding:clamp(24px,3vw,40px)}

/* --- 8. Мобильный: метаданные в две колонки, а не четыре строки ------------- */
@media (max-width:640px){
  .hero__meta{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hero__cell{padding:13px 14px}
  .hero__cell dd{font-size:14px;white-space:normal}
  .section,.section--panel{padding-block:56px}
  .spk__ghost:nth-child(n+4){display:block}
  .spk{grid-template-columns:repeat(2,1fr)}
}

/* --- 9. Остатки рамок: правила с большей специфичностью перебивали сброс ---- */
.section--feature .panel--gold,
.section--light .panel,
.section--panel .panel{background:none;border:0;box-shadow:none;padding:0;
  backdrop-filter:none;-webkit-backdrop-filter:none}
.section--feature .panel--gold::after{display:none}

/* --- 10. «Зачем быть в зале»: асимметричная сетка вместо шести близнецов ----
   Разный размер задаёт порядок чтения: сначала главное, потом остальное.    */
#benefits{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
#benefits .card:nth-child(1){grid-column:span 4}
#benefits .card:nth-child(2){grid-column:span 2}
#benefits .card:nth-child(3),
#benefits .card:nth-child(4),
#benefits .card:nth-child(5){grid-column:span 2}
#benefits .card:nth-child(6){grid-column:span 6;display:flex;align-items:center;gap:28px}
#benefits .card:nth-child(6) .card__ico{margin:0;flex:none}
#benefits .card:nth-child(6) .card__title{margin:0;flex:0 0 auto;min-width:230px}
#benefits .card:nth-child(6) .card__text{margin:0;max-width:62ch}
#benefits .card:nth-child(1) .card__title{font-size:clamp(19px,1.8vw,25px)}
#benefits .card:nth-child(1) .card__ico{width:66px}

@media (max-width:900px){
  #benefits{grid-template-columns:repeat(2,minmax(0,1fr))}
  #benefits .card:nth-child(n){grid-column:span 1}
  #benefits .card:nth-child(1),
  #benefits .card:nth-child(6){grid-column:span 2}
  #benefits .card:nth-child(6){display:block}
  #benefits .card:nth-child(6) .card__ico{margin-bottom:16px}
}
@media (max-width:560px){
  #benefits{grid-template-columns:1fr}
  #benefits .card:nth-child(n){grid-column:span 1}
}

/* --- 11. Сквозная лента ------------------------------------------------------
   Фрагмент ленты повторяется по вертикали (верх и низ стыкуются без шва),
   поэтому она непрерывна через секции любой высоты. Живёт под контентом
   (z-index 0) и выходит за границы секции, связывая соседние экраны.        */
.rail{position:absolute;z-index:0;top:-120px;right:1%;width:380px;
  pointer-events:none;opacity:.85;
}
.rail svg{display:block;width:100%;height:100%}
.section--light .rail{opacity:.62}
.section--feature .rail{opacity:.34}
#awards .rail,#partners .rail{right:-2%}
/* в юбилее справа стоит стеклянная пятёрка — лента идёт тише, чтобы не спорить */
#anniversary .rail{opacity:.30}
/* последняя секция: снизу лента растворяется, дальше её подхватывать нечему */
/* лента появляется в первом светлом блоке и растворяется в конце страницы */
#about .rail{-webkit-mask-image:linear-gradient(180deg,transparent,#000 150px);
  mask-image:linear-gradient(180deg,transparent,#000 150px)}
#final .rail{-webkit-mask-image:linear-gradient(180deg,#000 62%,transparent);
  mask-image:linear-gradient(180deg,#000 62%,transparent)}
@media (max-width:1100px){ .rail{opacity:.34;right:-8%} }
@media (max-width:760px){ .rail{display:none} }

/* --- Премия в меню и золотой CTA после каждого блока ------------------------ */
.nav__link--gold{color:var(--gold-hi)}
.nav__link--gold::before{content:'';width:5px;height:5px;border-radius:50%;
  background:var(--gold);display:inline-block;margin-right:8px;vertical-align:middle;
  box-shadow:0 0 8px rgba(232,197,122,.9)}
.nav__link--gold::after{background:var(--gold)}
.nav__link--gold:hover,.nav__link--gold.is-active{color:#fff}
.section--light .btn--gold{--bg:linear-gradient(135deg,#EBCB86,#B8873A);color:#1A1204}
.cta-strip .btn--gold{flex:0 0 auto}

/* в подвале остался один адрес — даём ему вес */
.foot__link--mail{font-size:16px;color:var(--paper)}
.foot__link--mail:hover{color:var(--aqua)}

/* --- Стрелка сопровождения -------------------------------------------------- */
.snav{position:fixed;right:26px;bottom:26px;z-index:45;width:56px;height:56px;
  display:grid;place-items:center;border-radius:50%;
  background:rgba(8,11,30,.72);border:1px solid rgba(76,224,208,.5);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  box-shadow:0 12px 34px -14px rgba(76,224,208,.7),0 0 0 0 rgba(76,224,208,.35);
  opacity:0;pointer-events:none;transform:translateY(14px) scale(.9);
  transition:opacity .45s var(--ease),transform .45s var(--ease),
             background .3s,border-color .3s,box-shadow .3s}
.snav.is-on{opacity:1;pointer-events:auto;transform:none}
.snav svg{width:24px;height:24px;fill:none;stroke:var(--aqua);stroke-width:1.8;
  stroke-linecap:round;stroke-linejoin:round;
  transition:transform .5s var(--ease)}
.snav.is-up svg{transform:rotate(180deg)}
.snav:hover{background:rgba(76,224,208,.16);border-color:var(--aqua);
  box-shadow:0 16px 44px -14px rgba(76,224,208,.95)}
.snav:hover svg{stroke:#EAFFFB}
/* мягкая пульсация, подсказывающая направление */
.snav.is-on svg{animation:snav-hint 2.4s var(--ease) infinite}
@keyframes snav-hint{0%,70%,100%{transform:translateY(0)}35%{transform:translateY(3px)}}
.snav.is-up svg{animation:snav-hint-up 2.4s var(--ease) infinite}
@keyframes snav-hint-up{0%,70%,100%{transform:rotate(180deg) translateY(0)}
  35%{transform:rotate(180deg) translateY(3px)}}
@media (max-width:640px){ .snav{right:16px;bottom:16px;width:48px;height:48px}
  .snav svg{width:21px;height:21px} }
@media (prefers-reduced-motion:reduce){ .snav.is-on svg,.snav.is-up svg{animation:none} }

/* пятёрка в юбилее не должна перекрывать текст 2026 года */
.anniv-echo{opacity:.34;right:-16%}

/* длинные числа: «16 000+» не помещалось в ячейку и обрезалось */
.stat__num{white-space:nowrap}
.stat__num--wide{font-size:clamp(25px,2.5vw,34px);letter-spacing:-.035em}
.stats{grid-template-columns:repeat(auto-fit,minmax(168px,1fr))}

/* шесть показателей в один ряд делали ячейку уже числа: 3×2 читается лучше */
.stats{grid-template-columns:repeat(3,minmax(0,1fr))}
.stat__num--wide{font-size:clamp(28px,3.1vw,42px);letter-spacing:-.04em}
@media (max-width:900px){ .stats{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (max-width:520px){ .stats{grid-template-columns:1fr} }

/* --- География: точки на глобусе + читаемый список --------------------------- */
.globe__pin{position:absolute;width:0;height:0}
.globe__pin .globe__dot{position:absolute;left:-4px;top:-4px;margin:0;
  width:8px;height:8px;pointer-events:auto;cursor:default;
  animation-delay:var(--d,0s)}
.globe__pin .globe__label{position:absolute;left:12px;top:-8px;
  padding:4px 9px;border-radius:6px;white-space:nowrap;
  background:rgba(6,9,26,.9);border:1px solid var(--line-2);
  color:var(--paper);opacity:0;transform:translateY(2px);
  transition:opacity .25s var(--ease),transform .25s var(--ease);z-index:3}
.globe:hover .globe__label{opacity:0}          /* снимаем прежний общий показ */
.globe__pin:hover .globe__label{opacity:1;transform:none}
.globe__pin:hover .globe__dot{box-shadow:0 0 0 7px rgba(76,224,208,.22),0 0 18px rgba(76,224,208,1)}

.geo{list-style:none;display:flex;flex-wrap:wrap;gap:7px 8px;padding:0;margin:22px 0 0;max-width:56ch}
.geo li{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;
  color:var(--muted);padding:6px 11px;border-radius:999px;
  border:1px solid var(--line);background:var(--glass);
  transition:color .3s,border-color .3s}
.geo li:hover{color:var(--paper);border-color:rgba(76,224,208,.5)}
