/* ============================================================
   SWEAT ARENA — Dehradun
   ============================================================ */

:root{
  --ink:#08080A;
  --ink2:#0D0D10;
  --surf:#131317;
  --surf2:#1A1A20;
  --line:rgba(255,255,255,.09);
  --line2:rgba(255,255,255,.16);
  --txt:#EFEDE6;
  --mut:#8B8980;
  --volt:#D7FF3C;
  --volt-d:#B2D62A;
  --ember:#FF4E1A;

  --nav-h:78px;
  --pad:clamp(20px,5vw,80px);
  --maxw:1400px;

  --f-disp:'Anton',Impact,sans-serif;
  --f-body:'Inter',system-ui,-apple-system,sans-serif;
  --f-mono:'JetBrains Mono',ui-monospace,monospace;

  --ease:cubic-bezier(.22,1,.36,1);
  --ease2:cubic-bezier(.65,.05,.36,1);
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--ink);color:var(--txt);
  font-family:var(--f-body);font-size:16px;line-height:1.6;
  overflow-x:hidden;-webkit-font-smoothing:antialiased;
}
body.lock{overflow:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
::selection{background:var(--volt);color:#000}

/* film grain */
body::after{
  content:"";position:fixed;inset:-50%;z-index:9990;pointer-events:none;opacity:.035;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)'/%3E%3C/svg%3E");
  animation:grain 1s steps(3) infinite;
}
@keyframes grain{
  0%{transform:translate(0,0)}33%{transform:translate(-3%,2%)}66%{transform:translate(2%,-3%)}100%{transform:translate(0,0)}
}

.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad);width:100%}

/* ---------- TYPE ---------- */
.h2{
  font-family:var(--f-disp);font-weight:400;
  font-size:clamp(2.6rem,7vw,6rem);line-height:.92;
  letter-spacing:-.02em;text-transform:uppercase;margin:0 0 22px;
}
.h2 em{font-style:normal;color:var(--volt)}
.lead{font-size:clamp(1.05rem,1.6vw,1.3rem);line-height:1.65;color:#CFCDC5;margin:0 0 18px;max-width:56ch}
.body{color:var(--mut);margin:0 0 26px;max-width:56ch}
.sec__tag{
  font-family:var(--f-mono);font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;
  color:var(--mut);display:flex;align-items:center;gap:14px;margin:0 0 22px;
}
.sec__tag i{font-style:normal;color:var(--volt);position:relative;padding-right:14px}
.sec__tag i::after{content:"";position:absolute;right:0;top:50%;width:6px;height:1px;background:var(--line2)}
.sec__note{color:var(--mut);max-width:46ch;margin:0;font-size:1.02rem}
.eyebrow{
  font-family:var(--f-mono);font-size:.72rem;letter-spacing:.3em;text-transform:uppercase;
  color:#B9B7AF;display:flex;align-items:center;gap:12px;margin:0 0 clamp(20px,3vw,34px);
}
.eyebrow__dot{width:7px;height:7px;border-radius:50%;background:var(--volt);box-shadow:0 0 0 0 rgba(215,255,60,.6);animation:pulse 2.4s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 12px rgba(215,255,60,0)}100%{box-shadow:0 0 0 0 rgba(215,255,60,0)}}

.sec{position:relative;padding:clamp(80px,12vh,160px) 0}
.sec__head{margin-bottom:clamp(44px,6vw,80px);max-width:900px}
.sec__head--split{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:end;max-width:none}

/* ---------- BUTTONS ---------- */
.btn{
  position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:15px 28px;border-radius:100px;font-weight:600;font-size:.9rem;letter-spacing:.02em;
  border:1px solid transparent;overflow:hidden;isolation:isolate;
  transition:color .4s var(--ease),border-color .4s var(--ease),transform .4s var(--ease);
  will-change:transform;
}
.btn::before{
  content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;
  transform:translateY(101%);transition:transform .5s var(--ease);
}
.btn:hover::before{transform:translateY(0)}
.btn svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .4s var(--ease)}
.btn:hover svg{transform:translateX(4px)}
.btn--lg{padding:19px 34px;font-size:.95rem}
.btn--sm{padding:11px 20px;font-size:.82rem}
.btn--full{width:100%}

.btn--volt{background:var(--volt);color:#0A0A0A}
.btn--volt::before{background:#fff}
.btn--ghost{border-color:var(--line2);color:var(--txt);backdrop-filter:blur(8px);background:rgba(255,255,255,.04)}
.btn--ghost::before{background:var(--txt)}
.btn--ghost:hover{color:#0A0A0A;border-color:var(--txt)}
.btn--outline{border-color:var(--line2);color:var(--txt)}
.btn--outline::before{background:var(--volt)}
.btn--outline:hover{color:#0A0A0A;border-color:var(--volt)}
.btn__play{
  width:26px;height:26px;border-radius:50%;background:var(--volt);
  display:grid;place-items:center;flex:none;
}
.btn__play svg{width:12px;height:12px;fill:#0A0A0A;stroke:none;transform:translateX(1px)}
.btn:hover .btn__play svg{transform:translateX(1px)}

/* ---------- PRELOADER ---------- */
.loader{position:fixed;inset:0;z-index:10000;background:var(--ink);display:grid;place-items:center}
.loader__inner{text-align:center;width:min(80vw,420px)}
.loader__word{font-family:var(--f-disp);font-size:clamp(2.4rem,8vw,4.4rem);line-height:1;letter-spacing:.02em;text-transform:uppercase}
.loader__word span{display:inline-block;opacity:0;transform:translateY(60%);animation:lw .7s var(--ease) forwards}
.loader__word span:nth-child(1){animation-delay:.05s}.loader__word span:nth-child(2){animation-delay:.11s}
.loader__word span:nth-child(3){animation-delay:.17s}.loader__word span:nth-child(4){animation-delay:.23s}
.loader__word span:nth-child(5){animation-delay:.29s}
@keyframes lw{to{opacity:1;transform:translateY(0)}}
.loader__word em{
  display:block;font-family:var(--f-mono);font-style:normal;font-size:.7rem;
  letter-spacing:.6em;color:var(--volt);margin-top:12px;opacity:0;animation:lw .8s .4s var(--ease) forwards;
}
.loader__bar{height:2px;background:rgba(255,255,255,.12);margin:30px 0 14px;overflow:hidden}
.loader__bar i{display:block;height:100%;width:0;background:var(--volt)}
.loader__num{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.2em;color:var(--mut)}
.loader__curtain{position:absolute;inset:0;background:var(--ink);transform:translateY(100%)}
.loader.done .loader__inner{opacity:0;transform:translateY(-24px);transition:.5s var(--ease)}
.loader.done{transform:translateY(-100%);transition:transform .9s .35s var(--ease2)}

/* ---------- CURSOR ---------- */
.cursor{position:fixed;top:0;left:0;z-index:9999;pointer-events:none;mix-blend-mode:difference;opacity:0;transition:opacity .3s}
.cursor.live{opacity:1}
.cursor__dot{position:absolute;width:6px;height:6px;border-radius:50%;background:#fff;transform:translate(-50%,-50%)}
.cursor__ring{
  position:absolute;width:38px;height:38px;border:1px solid rgba(255,255,255,.5);border-radius:50%;
  transform:translate(-50%,-50%);transition:width .35s var(--ease),height .35s var(--ease),background .35s
}
.cursor.on .cursor__ring{width:64px;height:64px;background:rgba(255,255,255,.12);border-color:transparent}
.cursor.hide{opacity:0}
@media (hover:none),(pointer:coarse){.cursor{display:none}}

/* ---------- PROGRESS ---------- */
.progress{position:fixed;top:0;left:0;height:2px;width:0;background:var(--volt);z-index:9998}

/* ---------- NAV ---------- */
.nav{
  position:fixed;top:0;left:0;right:0;height:var(--nav-h);z-index:900;
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding-inline:var(--pad);transition:background .45s var(--ease),height .45s var(--ease),border-color .45s;
  border-bottom:1px solid transparent;
}
.nav.stuck{background:rgba(8,8,10,.82);backdrop-filter:blur(18px) saturate(1.3);height:66px;border-bottom-color:var(--line)}
.nav.up{transform:translateY(0)}
.nav__brand{display:flex;align-items:center;gap:11px}
.nav__mark{width:34px;height:34px;background:var(--volt);border-radius:9px;display:grid;place-items:center;flex:none;transition:transform .5s var(--ease)}
.nav__mark svg{width:24px;height:24px;fill:#0A0A0A}
.nav__brand:hover .nav__mark{transform:rotate(-8deg) scale(1.06)}
.nav__name{font-family:var(--f-disp);font-size:1.12rem;letter-spacing:.04em;text-transform:uppercase;line-height:1}
.nav__name em{font-style:normal;color:var(--volt)}
.nav__links{display:flex;gap:4px}
.nav__links a{
  position:relative;display:flex;align-items:baseline;gap:6px;padding:9px 14px;border-radius:100px;
  font-size:.87rem;font-weight:500;color:#C7C5BE;transition:color .3s,background .3s;
}
.nav__links a i{font-family:var(--f-mono);font-style:normal;font-size:.58rem;color:var(--volt);opacity:0;transform:translateY(-3px);transition:opacity .3s,transform .3s}
.nav__links a:hover{color:#fff;background:rgba(255,255,255,.06)}
.nav__links a:hover i,.nav__links a.active i{opacity:1;transform:translateY(0)}
.nav__links a.active{color:var(--volt)}
.nav__right{display:flex;align-items:center;gap:14px}

.status{
  display:flex;align-items:center;gap:8px;font-family:var(--f-mono);font-size:.66rem;
  letter-spacing:.14em;text-transform:uppercase;color:var(--mut);
  border:1px solid var(--line);border-radius:100px;padding:7px 13px;white-space:nowrap;
}
.status__dot{width:7px;height:7px;border-radius:50%;background:var(--mut)}
.status.open .status__dot{background:var(--volt);box-shadow:0 0 10px var(--volt)}
.status.open{color:var(--volt);border-color:rgba(215,255,60,.3)}
.status.shut .status__dot{background:var(--ember)}

.burger{display:none;width:42px;height:42px;border:1px solid var(--line2);border-radius:50%;position:relative}
.burger span{position:absolute;left:12px;width:18px;height:1.6px;background:var(--txt);transition:.4s var(--ease)}
.burger span:nth-child(1){top:18px}.burger span:nth-child(2){top:24px}
body.menu-open .burger span:nth-child(1){transform:translateY(3px) rotate(45deg)}
body.menu-open .burger span:nth-child(2){transform:translateY(-3px) rotate(-45deg)}

/* ---------- MOBILE MENU ---------- */
.menu{position:fixed;inset:0;z-index:890;pointer-events:none;visibility:hidden}
.menu__bg{position:absolute;inset:0;background:var(--ink2);clip-path:circle(0% at calc(100% - 48px) 40px);transition:clip-path .8s var(--ease)}
body.menu-open .menu{pointer-events:auto;visibility:visible}
body.menu-open .menu__bg{clip-path:circle(150% at calc(100% - 48px) 40px)}
.menu__list{position:relative;height:100%;display:flex;flex-direction:column;justify-content:center;padding:0 var(--pad);gap:2px}
.menu__list a{display:flex;align-items:baseline;gap:16px;padding:6px 0;overflow:hidden}
.menu__list a i{font-family:var(--f-mono);font-style:normal;font-size:.68rem;color:var(--volt);width:24px}
.menu__list a span{
  display:block;font-family:var(--f-disp);font-size:clamp(2rem,9vw,3.4rem);line-height:1.05;
  text-transform:uppercase;transform:translateY(110%);transition:transform .7s var(--ease);
}
.menu__list a:hover span{color:var(--volt)}
body.menu-open .menu__list a span{transform:translateY(0)}
body.menu-open .menu__list a:nth-child(1) span{transition-delay:.22s}
body.menu-open .menu__list a:nth-child(2) span{transition-delay:.28s}
body.menu-open .menu__list a:nth-child(3) span{transition-delay:.34s}
body.menu-open .menu__list a:nth-child(4) span{transition-delay:.40s}
body.menu-open .menu__list a:nth-child(5) span{transition-delay:.46s}
body.menu-open .menu__list a:nth-child(6) span{transition-delay:.52s}
body.menu-open .menu__list a:nth-child(7) span{transition-delay:.58s}
.menu__foot{position:absolute;bottom:36px;left:var(--pad);right:var(--pad);opacity:0;transition:opacity .5s .7s}
body.menu-open .menu__foot{opacity:1}
.menu__foot a{font-family:var(--f-disp);font-size:1.5rem;color:var(--volt)}
.menu__foot p{color:var(--mut);font-size:.85rem;margin:8px 0 0}

/* ---------- HERO ---------- */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden;padding-bottom:clamp(60px,9vh,110px);padding-top:var(--nav-h)}
.hero__media{position:absolute;inset:-10% 0;z-index:0}
.hero__img{width:100%;height:120%;object-fit:cover;will-change:transform}
.hero__veil{
  position:absolute;inset:0;
  background:
    linear-gradient(to top,var(--ink) 2%,rgba(8,8,10,.68) 40%,rgba(8,8,10,.55) 72%,rgba(8,8,10,.82) 100%),
    linear-gradient(100deg,rgba(8,8,10,.94) 0%,rgba(8,8,10,.5) 58%,rgba(8,8,10,.72) 100%);
}
.hero__glow{
  position:absolute;right:-10%;top:10%;width:52vw;height:52vw;border-radius:50%;
  background:radial-gradient(circle,rgba(215,255,60,.14),transparent 62%);filter:blur(40px);
}
.hero__inner{position:relative;z-index:3;width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad)}

.hero__title{margin:0 0 clamp(26px,4vw,48px);font-family:var(--f-disp);font-weight:400;text-transform:uppercase;letter-spacing:-.025em}
.ln{display:block;overflow:hidden}
.ln__in{display:block;font-size:clamp(3.6rem,15.5vw,15rem);line-height:.82}
.ln--2{display:flex;align-items:center;gap:clamp(12px,2.5vw,34px);padding-left:clamp(0px,7vw,150px);overflow:visible}
.ln--2 .ln__in{
  overflow:hidden;color:rgba(8,8,10,.55);-webkit-text-stroke:2.2px var(--txt);
  filter:drop-shadow(0 3px 26px rgba(0,0,0,.95)) drop-shadow(0 0 8px rgba(0,0,0,.8));
}
.hero__chip{
  flex:none;width:clamp(74px,12vw,190px);aspect-ratio:16/10;border-radius:8px;overflow:hidden;
  border:1px solid var(--line2);will-change:transform;box-shadow:0 24px 60px rgba(0,0,0,.6);
}
.hero__chip img{width:100%;height:100%;object-fit:cover}

.hero__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(24px,4vw,60px);align-items:end}
.hero__lead{font-size:clamp(1rem,1.45vw,1.22rem);color:#D3D1C9;margin:0;max-width:44ch}
.hero__lead strong{color:var(--volt);font-weight:600}
.hero__cta{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}

.hero__stats{
  display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(10px,2vw,24px);
  margin-top:clamp(34px,5vw,64px);padding-top:26px;border-top:1px solid var(--line);
}
.hero__stats b{display:block;font-family:var(--f-disp);font-size:clamp(1.7rem,3.4vw,3rem);line-height:1;letter-spacing:-.01em}
.hero__stats small{display:block;font-family:var(--f-mono);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);margin-top:9px}

.hero__rail{position:absolute;z-index:3;top:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;width:var(--pad)}
.hero__rail--l{left:0}.hero__rail--r{right:0}
.rail__txt{
  writing-mode:vertical-rl;font-family:var(--f-mono);font-size:.6rem;letter-spacing:.32em;
  text-transform:uppercase;color:var(--mut);
}
.hero__rail--l .rail__txt{transform:rotate(180deg)}
.rail__line{width:1px;height:70px;background:linear-gradient(var(--volt),transparent)}
@media (max-width:1100px){.hero__rail{display:none}}

.hero__scroll{position:absolute;left:50%;bottom:26px;z-index:4;transform:translateX(-50%)}
.hero__mouse{display:block;width:24px;height:38px;border:1.5px solid var(--line2);border-radius:14px;position:relative}
.hero__mouse i{position:absolute;left:50%;top:8px;width:3px;height:7px;border-radius:2px;background:var(--volt);transform:translateX(-50%);animation:wheel 1.8s infinite}
@keyframes wheel{0%{opacity:0;transform:translate(-50%,0)}30%{opacity:1}100%{opacity:0;transform:translate(-50%,14px)}}

/* ---------- TICKER ---------- */
.ticker{background:var(--volt);color:#0A0A0A;padding:14px 0;overflow:hidden;border-block:1px solid #0A0A0A}
.ticker__track{display:flex;gap:34px;align-items:center;width:max-content;animation:slide 26s linear infinite}
.ticker__track span{font-family:var(--f-disp);font-size:clamp(1rem,1.7vw,1.5rem);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}
.ticker__track b{font-size:.75rem;opacity:.55}
@keyframes slide{to{transform:translateX(-50%)}}

/* ---------- ABOUT ---------- */
.about__wrap{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(36px,6vw,100px);align-items:start}
.about .h2{font-size:clamp(2.3rem,4.4vw,4.3rem)}
.about__sticky{position:sticky;top:110px}
.stack{position:relative;padding-bottom:22%}
.pimg{position:relative;overflow:hidden;margin:0;background:var(--surf)}
.pimg img{width:100%;height:100%;object-fit:cover;will-change:transform}
.stack__a{border-radius:4px;aspect-ratio:4/5}
.stack__a img{height:118%;margin-top:-9%}
.stack__b{
  position:absolute;right:-6%;bottom:0;width:52%;aspect-ratio:1;border-radius:4px;
  border:8px solid var(--ink);box-shadow:0 30px 70px rgba(0,0,0,.6);
}
.stack__badge{
  position:absolute;left:-5%;bottom:16%;background:var(--volt);color:#0A0A0A;
  padding:16px 20px;border-radius:4px;display:flex;align-items:center;gap:12px;box-shadow:0 20px 50px rgba(0,0,0,.5);
}
.stack__badge b{font-family:var(--f-disp);font-size:2.1rem;line-height:1}
.stack__badge span{font-family:var(--f-mono);font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;line-height:1.5}

.ticks{list-style:none;padding:0;margin:0 0 34px;display:grid;gap:13px}
.ticks li{display:flex;gap:13px;align-items:flex-start;color:#C9C7C0;font-size:.97rem}
.ticks svg{width:18px;height:18px;flex:none;margin-top:3px;fill:none;stroke:var(--volt);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.about__nums{display:flex;gap:clamp(26px,5vw,60px);padding-top:28px;border-top:1px solid var(--line)}
.about__nums b{display:block;font-family:var(--f-disp);font-size:clamp(1.8rem,3.2vw,2.7rem);line-height:1;color:var(--volt)}
.about__nums small{display:block;font-family:var(--f-mono);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);margin-top:8px}

/* ---------- CARDS ---------- */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,1.6vw,22px)}
.card{
  position:relative;background:var(--surf);border:1px solid var(--line);border-radius:6px;overflow:hidden;
  transition:border-color .5s var(--ease),transform .6s var(--ease),background .5s;
}
.card:hover{border-color:rgba(215,255,60,.4);transform:translateY(-6px);background:var(--surf2)}
.card__no{
  position:absolute;top:16px;right:18px;z-index:3;font-family:var(--f-mono);font-size:.66rem;
  letter-spacing:.2em;color:rgba(255,255,255,.55);
}
.card__img{aspect-ratio:16/11}
.card__img img{height:120%;margin-top:-10%;filter:grayscale(.55) contrast(1.05);transition:filter .6s var(--ease),transform .8s var(--ease)}
.card:hover .card__img img{filter:grayscale(0) contrast(1.05)}
.card__img::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,var(--surf),transparent 55%)}
.card__body{padding:0 26px 28px;position:relative;margin-top:-34px;z-index:2}
.card__body h3{font-family:var(--f-disp);font-size:1.45rem;text-transform:uppercase;letter-spacing:.01em;margin:0 0 10px;font-weight:400}
.card__body p{color:var(--mut);font-size:.93rem;margin:0 0 18px;line-height:1.6}
.card__go{
  display:inline-flex;align-items:center;gap:8px;font-family:var(--f-mono);font-size:.66rem;
  letter-spacing:.2em;text-transform:uppercase;color:var(--volt);
}
.card__go svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .4s var(--ease)}
.card:hover .card__go svg{transform:translateX(5px)}

/* ---------- PARALLAX BREAK ---------- */
.break{position:relative;min-height:92vh;display:grid;place-items:center;clip-path:inset(0);text-align:center;padding:100px 0}
.break__media{position:fixed;top:0;left:0;width:100%;height:100vh;z-index:0}
.break__media img{width:100%;height:100%;object-fit:cover}
.break__veil{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(8,8,10,.8),rgba(8,8,10,.52) 50%,rgba(8,8,10,.88))}
.break__inner{position:relative;z-index:2}
.break__tag{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.34em;text-transform:uppercase;color:var(--volt);margin:0 0 26px}
.break__quote{margin:0;font-family:var(--f-disp);font-weight:400;text-transform:uppercase;letter-spacing:-.02em}
.break__quote .ln__in{font-size:clamp(2.5rem,8.5vw,7.5rem);line-height:.94}
.break__quote .em{color:var(--volt)}
.break__by{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.16em;color:var(--mut);margin:30px 0 0}
.break__cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:38px}

/* ---------- COACHES ---------- */
.coach__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,1.6vw,22px)}
.coach{position:relative}
.coach__img{aspect-ratio:3/4;border-radius:6px}
.coach__img img{height:118%;margin-top:-9%;filter:grayscale(1) contrast(1.08);transition:filter .6s var(--ease),transform .9s var(--ease)}
.coach:hover .coach__img img{filter:grayscale(0)}
.coach__img::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(8,8,10,.88),transparent 52%);transition:opacity .5s}
.coach__meta{position:absolute;left:22px;right:22px;bottom:22px;z-index:2}
.coach__meta h3{font-family:var(--f-disp);font-size:1.4rem;text-transform:uppercase;margin:0;font-weight:400;letter-spacing:.01em}
.coach__meta p{font-family:var(--f-mono);font-size:.64rem;letter-spacing:.18em;text-transform:uppercase;color:var(--volt);margin:7px 0 0}
.coach__tags{
  position:absolute;left:22px;right:22px;bottom:22px;z-index:3;list-style:none;padding:0;margin:0;
  display:flex;gap:7px;flex-wrap:wrap;opacity:0;transform:translateY(14px);transition:.5s var(--ease);
}
.coach__tags li{
  font-family:var(--f-mono);font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;
  border:1px solid var(--line2);border-radius:100px;padding:6px 11px;background:rgba(8,8,10,.6);backdrop-filter:blur(6px);
}
.coach:hover .coach__meta{transform:translateY(-40px);transition:.5s var(--ease)}
.coach:hover .coach__tags{opacity:1;transform:translateY(0)}

/* ---------- SCHEDULE ---------- */
.sched{display:grid;grid-template-columns:auto 1fr 320px;gap:clamp(18px,2.5vw,38px);align-items:start}
.sched__days{display:flex;flex-direction:column;gap:6px}
.sched__days button{
  font-family:var(--f-mono);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;
  padding:16px 20px;border:1px solid var(--line);border-radius:4px;color:var(--mut);
  transition:.35s var(--ease);text-align:left;min-width:96px;
}
.sched__days button:hover{color:var(--txt);border-color:var(--line2)}
.sched__days button[aria-selected="true"]{background:var(--volt);color:#0A0A0A;border-color:var(--volt);font-weight:500}

.sched__panel{border:1px solid var(--line);border-radius:6px;background:var(--surf);overflow:hidden;min-height:360px}
.srow{
  display:grid;grid-template-columns:120px 1fr 170px;gap:18px;align-items:center;
  padding:19px 26px;border-bottom:1px solid var(--line);transition:background .35s;
}
.srow:last-child{border-bottom:0}
.srow:hover{background:rgba(215,255,60,.05)}
.srow__t{font-family:var(--f-mono);font-size:.82rem;color:var(--volt);letter-spacing:.04em}
.srow__n{font-family:var(--f-disp);font-size:1.15rem;text-transform:uppercase;letter-spacing:.02em}
.srow__n small{display:block;font-family:var(--f-body);font-size:.78rem;color:var(--mut);text-transform:none;letter-spacing:0;margin-top:3px;font-weight:400}
.srow__c{font-family:var(--f-mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mut);text-align:right}
.sclosed{display:grid;place-items:center;min-height:360px;text-align:center;padding:40px}
.sclosed b{display:block;font-family:var(--f-disp);font-size:clamp(2rem,5vw,3.4rem);text-transform:uppercase;color:var(--ember);letter-spacing:.01em}
.sclosed p{color:var(--mut);margin:12px 0 0;max-width:34ch}

.sched__hours{border:1px solid var(--line);border-radius:6px;padding:26px;background:var(--surf)}
.sched__hours h3{font-family:var(--f-disp);font-size:1.2rem;text-transform:uppercase;margin:0 0 18px;font-weight:400}
.sched__hours ul{list-style:none;padding:0;margin:0 0 20px}
.sched__hours li{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:.87rem}
.sched__hours li:last-child{border-bottom:0}
.sched__hours li span:first-child{color:var(--mut)}
.sched__hours li.today{color:var(--volt)}
.sched__hours li.today span:first-child{color:var(--volt);font-weight:600}
.sched__hours li.shut span:last-child{color:var(--ember)}
.sched__note{font-size:.75rem;color:var(--mut);margin:0 0 18px;line-height:1.55}

/* ---------- MARQUEE BREAK ---------- */
.mq{padding:clamp(50px,7vw,90px) 0;overflow:hidden;background:var(--ink2);border-block:1px solid var(--line)}
.mq__row{overflow:hidden}
.mq__track{display:flex;gap:40px;width:max-content;animation:slide 24s linear infinite}
.mq__row--rev .mq__track{animation-direction:reverse;animation-duration:30s}
.mq__track span{
  font-family:var(--f-disp);font-size:clamp(3rem,10vw,8rem);line-height:1.05;text-transform:uppercase;
  letter-spacing:-.02em;color:transparent;-webkit-text-stroke:1.4px rgba(255,255,255,.22);white-space:nowrap;
}
.mq__row--rev .mq__track span:nth-child(odd){-webkit-text-stroke-color:rgba(215,255,60,.55)}

/* ---------- PRICING ---------- */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,1.8vw,24px);align-items:start}
.plan{
  position:relative;border:1px solid var(--line);border-radius:8px;padding:34px 30px;background:var(--surf);
  transition:border-color .5s var(--ease),transform .6s var(--ease);
}
.plan:hover{border-color:var(--line2);transform:translateY(-6px)}
.plan--hero{background:linear-gradient(180deg,rgba(215,255,60,.09),var(--surf) 42%);border-color:rgba(215,255,60,.42);padding-block:44px}
.plan__flag{
  position:absolute;top:-11px;left:30px;background:var(--volt);color:#0A0A0A;font-family:var(--f-mono);
  font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;padding:5px 12px;border-radius:100px;font-weight:500;
}
.plan header h3{font-family:var(--f-disp);font-size:1.5rem;text-transform:uppercase;margin:0;font-weight:400;letter-spacing:.02em}
.plan header p{color:var(--mut);font-size:.86rem;margin:5px 0 0}
.plan__price{display:flex;align-items:baseline;gap:3px;margin:24px 0 26px;padding-bottom:26px;border-bottom:1px solid var(--line)}
.plan__price i{font-style:normal;font-family:var(--f-disp);font-size:1.5rem;color:var(--mut)}
.plan__price b{font-family:var(--f-disp);font-size:clamp(2.6rem,4.4vw,3.6rem);line-height:1;letter-spacing:-.02em}
.plan--hero .plan__price b{color:var(--volt)}
.plan__price small{font-family:var(--f-mono);font-size:.66rem;letter-spacing:.12em;color:var(--mut);margin-left:7px}
.plan ul{list-style:none;padding:0;margin:0 0 28px;display:grid;gap:11px}
.plan li{position:relative;padding-left:24px;font-size:.9rem;color:#C4C2BB}
.plan li::before{content:"";position:absolute;left:0;top:8px;width:9px;height:9px;border-radius:50%;border:1.5px solid var(--volt)}
.plans__fine{text-align:center;color:var(--mut);font-size:.8rem;margin:34px 0 0}

/* ---------- GALLERY ---------- */
.gal{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:200px;grid-auto-flow:dense;gap:clamp(10px,1.2vw,16px)}
.gal__i{border-radius:5px;cursor:pointer;grid-row:span 1}
.gal__i--tall{grid-row:span 2}
.gal__i--wide{grid-column:span 2}
.gal__i img{height:120%;margin-top:-10%;filter:grayscale(.5);transition:filter .6s var(--ease),transform .9s var(--ease)}
.gal__i:hover img{filter:grayscale(0)}
.gal__i::after{
  content:"⤢";position:absolute;inset:0;display:grid;place-items:center;font-size:1.4rem;
  background:rgba(8,8,10,.5);opacity:0;transition:opacity .4s var(--ease);color:var(--volt);
}
.gal__i:hover::after{opacity:1}

/* ---------- QUOTES ---------- */
.quotes{background:var(--ink2);border-block:1px solid var(--line)}
.quotes__box{display:flex;align-items:center;gap:clamp(14px,3vw,40px)}
.quotes__view{flex:1;min-height:230px;position:relative;overflow:hidden}
.qitem{position:absolute;inset:0;opacity:0;transform:translateY(24px);transition:opacity .6s var(--ease),transform .6s var(--ease);pointer-events:none}
.qitem.on{opacity:1;transform:translateY(0);position:relative;pointer-events:auto}
.qitem blockquote{
  margin:0 0 28px;font-weight:300;font-size:clamp(1.15rem,2.5vw,2.05rem);
  line-height:1.4;letter-spacing:-.015em;color:#E6E4DD;max-width:30ch;
}
.qitem blockquote::before{content:"“";color:var(--volt)}
.qitem blockquote::after{content:"”";color:var(--volt)}
.qmeta{display:flex;align-items:center;gap:14px}
.qmeta .qav{
  width:48px;height:48px;border-radius:50%;flex:none;display:grid;place-items:center;
  border:1px solid rgba(215,255,60,.4);color:var(--volt);
  font-family:var(--f-disp);font-size:1.05rem;letter-spacing:.02em;background:rgba(215,255,60,.07);
}
.qmeta b{display:block;font-size:.95rem;font-weight:600}
.qmeta span{font-family:var(--f-mono);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--mut)}
.qstars{margin-left:auto;color:var(--volt);letter-spacing:3px;font-size:.85rem}
.quotes__nav{width:52px;height:52px;border:1px solid var(--line2);border-radius:50%;display:grid;place-items:center;flex:none;transition:.4s var(--ease)}
.quotes__nav svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.quotes__nav:hover{background:var(--volt);color:#0A0A0A;border-color:var(--volt)}
.quotes__dots{display:flex;gap:8px;justify-content:center;margin-top:34px}
.quotes__dots button{width:28px;height:3px;background:var(--line2);border-radius:3px;transition:.4s}
.quotes__dots button.on{background:var(--volt);width:46px}

/* ---------- CONTACT ---------- */
.contact__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(26px,4vw,60px);margin-bottom:clamp(34px,5vw,60px)}
.info{display:flex;gap:18px;padding:22px 0;border-bottom:1px solid var(--line)}
.info:first-child{padding-top:0}
.info__ico{width:44px;height:44px;flex:none;border:1px solid var(--line2);border-radius:50%;display:grid;place-items:center}
.info__ico svg{width:20px;height:20px;fill:none;stroke:var(--volt);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.info h4{font-family:var(--f-mono);font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;color:var(--mut);margin:0 0 9px;font-weight:400}
.info p{margin:0;font-size:1rem;line-height:1.6}
.link{color:var(--volt);border-bottom:1px solid rgba(215,255,60,.35);display:inline-block;margin-top:8px;font-size:.92rem;transition:border-color .3s}
.link:hover{border-color:var(--volt)}

.form{background:var(--surf);border:1px solid var(--line);border-radius:8px;padding:clamp(24px,3vw,36px)}
.form h3{font-family:var(--f-disp);font-size:1.5rem;text-transform:uppercase;margin:0 0 24px;font-weight:400}
.form label{display:block;font-family:var(--f-mono);font-size:.63rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mut);margin-bottom:16px}
.form__row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form input,.form select,.form textarea{
  width:100%;margin-top:9px;background:var(--ink);border:1px solid var(--line);border-radius:5px;
  padding:13px 15px;color:var(--txt);font-family:var(--f-body);font-size:.95rem;letter-spacing:0;text-transform:none;
  transition:border-color .3s,background .3s;
}
.form textarea{resize:vertical}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-color:var(--volt);background:#0B0B0E}
.form input::placeholder,.form textarea::placeholder{color:#55534E}
.form select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238B8980' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center;background-size:16px;padding-right:40px}
.form__msg{font-size:.85rem;color:var(--volt);margin:14px 0 0;min-height:1.2em;text-align:center}
.form__msg.err{color:var(--ember)}

.map{border:1px solid var(--line);border-radius:8px;overflow:hidden;height:clamp(300px,42vh,440px);background:var(--surf)}
.map iframe{width:100%;height:100%;border:0;filter:grayscale(1) invert(.92) contrast(.85);transition:filter .6s var(--ease)}
.map:hover iframe{filter:grayscale(.3) invert(.9) contrast(.9)}

/* ---------- FOOTER ---------- */
.foot{border-top:1px solid var(--line);padding-top:clamp(50px,7vw,80px);overflow:hidden}
.foot__big{
  font-family:var(--f-disp);font-size:clamp(3rem,15vw,14rem);line-height:.85;text-align:center;
  text-transform:uppercase;letter-spacing:-.03em;color:transparent;-webkit-text-stroke:1.2px rgba(215,255,60,.22);
  margin-bottom:clamp(40px,6vw,70px);will-change:transform;user-select:none;
}
.foot__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px;padding-bottom:44px;border-bottom:1px solid var(--line)}
.foot__grid h5{font-family:var(--f-mono);font-size:.64rem;letter-spacing:.22em;text-transform:uppercase;color:var(--volt);margin:0 0 16px;font-weight:400}
.foot__grid p{color:var(--mut);font-size:.9rem;margin:0;line-height:1.75}
.foot__grid a{display:block;color:var(--mut);font-size:.9rem;padding:4px 0;transition:color .3s}
.foot__grid a:hover{color:var(--volt)}
.foot__soc{display:flex;gap:10px;margin-top:16px}
.foot__soc a{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;padding:0;transition:.4s var(--ease)}
.foot__soc svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6}
.foot__soc a:hover{background:var(--volt);color:#0A0A0A;border-color:var(--volt)}
.foot__bar{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:24px 0 30px;flex-wrap:wrap}
.foot__bar p{color:var(--mut);font-size:.8rem;margin:0}
.foot__top{font-family:var(--f-mono);font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--mut);transition:color .3s}
.foot__top:hover{color:var(--volt)}

/* ---------- LIGHTBOX ---------- */
.lb{position:fixed;inset:0;z-index:9995;background:rgba(5,5,7,.95);backdrop-filter:blur(10px);display:grid;place-items:center;padding:5vw;opacity:0;visibility:hidden;transition:.45s var(--ease)}
.lb.on{opacity:1;visibility:visible}
.lb img{max-width:100%;max-height:88vh;object-fit:contain;border-radius:6px;transform:scale(.94);transition:transform .5s var(--ease)}
.lb.on img{transform:scale(1)}
.lb__x{position:absolute;top:22px;right:26px;width:46px;height:46px;border:1px solid var(--line2);border-radius:50%;font-size:1rem;transition:.35s}
.lb__x:hover{background:var(--volt);color:#0A0A0A}

/* ---------- REVEAL ---------- */
.reveal{opacity:0;transform:translateY(34px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.reveal.in{opacity:1;transform:none}
[data-split] .ch{display:inline-block;transform:translateY(105%);transition:transform .95s var(--ease)}
[data-split].in .ch{transform:translateY(0)}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:1180px){
  .nav__links{display:none}
  .burger{display:block}
  .cards,.plans{grid-template-columns:repeat(2,1fr)}
  .coach__grid{grid-template-columns:repeat(2,1fr)}
  .sched{grid-template-columns:1fr;gap:18px}
  .sched__days{flex-direction:row;overflow-x:auto;gap:8px;padding-bottom:4px;scrollbar-width:none}
  .sched__days::-webkit-scrollbar{display:none}
  .sched__days button{min-width:auto;padding:13px 18px;flex:none}
  .sched__hours{max-width:none}
}
@media (max-width:960px){
  .about__wrap{grid-template-columns:1fr;gap:60px}
  .about__sticky{position:static}
  .stack{max-width:520px;padding-bottom:18%}
  .sec__head--split{grid-template-columns:1fr;align-items:start;gap:22px}
  .hero__grid{grid-template-columns:1fr;gap:28px}
  .hero__cta{justify-content:flex-start}
  .contact__grid{grid-template-columns:1fr}
  .foot__grid{grid-template-columns:1fr 1fr;gap:30px}
  .gal{grid-template-columns:repeat(2,1fr);grid-auto-rows:150px}
  .gal__i--wide{grid-column:span 2}
}
@media (max-width:700px){
  .status{display:none}
  .hero{min-height:92svh}
  .hero__stats{grid-template-columns:repeat(2,1fr);gap:22px 14px}
  .ln__in{line-height:.94}
  .ln--2{padding-left:0}
  .cards,.plans,.coach__grid{grid-template-columns:1fr}
  .plan--hero{order:-1}
  .srow{grid-template-columns:92px 1fr;gap:12px;padding:16px 18px}
  .srow__c{display:none}
  .form__row{grid-template-columns:1fr}
  .quotes__nav{display:none}
  .foot__bar{justify-content:center;text-align:center}
  .break{min-height:80vh}
}
@media (max-width:460px){
  .foot__grid{grid-template-columns:1fr}
  .btn--lg{padding:16px 24px;width:100%}
  .hero__cta{width:100%}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}
  [data-split] .ch{transform:none}
  body::after{display:none}
}
