:root{--blue: #005bff;--green: #95ff00;--black: #050505;--soft-black: #141414;--light: #0b0b0f;--white: #ffffff;--purple: #7424dc;--text: #f5f5f0;--muted: rgba(245, 245, 240, .72);--surface: #101014;--surface-strong: #18181d;--line: rgba(255, 255, 255, .14);--header-height: 116px;--button-shape: polygon(13px 0, 100% 0, 100% calc(100% - 16px) , calc(100% - 16px) 100%, 0 100%, 0 13px)}body[data-theme=light]{--soft-black: #181818;--light: #f2f2f2;--text: #050505;--muted: rgba(24, 24, 24, .76);--surface: #ffffff;--surface-strong: #f8f8f8;--line: rgba(0, 0, 0, .14)}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{width:100%;margin:0;color:var(--text);background:var(--light);font-family:Chakra Petch,Arial,sans-serif;overflow-x:hidden}.ufo-flyby{position:fixed;top:var(--ufo-y, 44vh);left:0;z-index:85;width:clamp(128px,15vw,230px);aspect-ratio:1;pointer-events:none;transform:translate3d(-34vw,0,0) rotate(var(--ufo-tilt, -7deg)) scale(var(--ufo-scale, 1));will-change:transform}.ufo-flyby:before,.ufo-flyby:after{position:absolute;top:44%;right:54%;z-index:-1;width:min(54vw,680px);height:26px;border-radius:999px;opacity:0;pointer-events:none;content:"";transform-origin:right center}.ufo-flyby:before{background:linear-gradient(90deg,#95ff0000,#95ff0029 28%,#95ff009e);filter:blur(9px)}.ufo-flyby:after{height:5px;background:linear-gradient(90deg,#7424dc00,#7424dc61 34%,#ffffffb8);filter:blur(2px)}.ufo-flyby img{display:block;width:100%;height:auto;opacity:0;filter:drop-shadow(0 16px 24px rgba(0,0,0,.34))}.ufo-flyby.is-flying{animation:ufoFlyby 1.8s cubic-bezier(.16,.84,.21,1) both}.ufo-flyby.is-flying img{animation:ufoShipFade 1.8s ease both}.ufo-flyby.is-flying:before{animation:ufoTrail 4.2s ease-out both}.ufo-flyby.is-flying:after{animation:ufoTrail 3.6s ease-out .12s both}@keyframes ufoFlyby{0%{transform:translate3d(-34vw,0,0) rotate(var(--ufo-tilt, -7deg)) scale(var(--ufo-scale, 1))}to{transform:translate3d(118vw,-8vh,0) rotate(var(--ufo-tilt, -7deg)) scale(var(--ufo-scale, 1))}}@keyframes ufoShipFade{0%{opacity:0}14%,78%{opacity:1}to{opacity:0}}@keyframes ufoTrail{0%{opacity:0;transform:scaleX(.28)}12%,34%{opacity:1;transform:scaleX(1)}62%{opacity:.38;transform:scaleX(1.08)}to{opacity:0;transform:scaleX(1.2)}}.cursor-moon{position:fixed;top:0;left:0;z-index:140;width:34px;height:34px;opacity:0;pointer-events:none;transform:translate3d(-999px,-999px,0);transition:opacity .18s ease;will-change:transform}.cursor-moon.is-active{opacity:1}.cursor-moon:before{position:absolute;top:50%;left:50%;width:7px;height:7px;border-radius:50%;background:radial-gradient(circle at 34% 28%,#fff 0 16%,#d7d3ff 17% 42%,#8a45ff 72%,#7424dc);box-shadow:0 0 8px #95ff0085,0 0 14px #7424dc6b;content:"";animation:cursorMoonOrbit 1.45s linear infinite}@keyframes cursorMoonOrbit{0%{transform:rotate(0) translate(13px) rotate(0)}to{transform:rotate(360deg) translate(13px) rotate(-360deg)}}@media(prefers-reduced-motion:reduce),(pointer:coarse){.cursor-moon{display:none}}a{color:inherit;text-decoration:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:minmax(130px,210px) 1fr auto;align-items:center;gap:26px;min-height:var(--header-height);padding:24px clamp(24px,4vw,64px) 18px;background:#0b0b0fe0;backdrop-filter:blur(14px)}body[data-theme=light] .site-header{background:#f2f2f2e6}.is-scrolled .site-header{z-index:120}.brand{display:inline-flex;align-items:center;width:152px;height:64px}.brand img{display:block;width:100%;height:auto}.main-nav{display:flex;justify-content:center;align-items:center;gap:clamp(16px,2.4vw,34px);font-size:14px;font-weight:700;text-transform:uppercase}.mobile-menu-controls{display:none}.main-nav a{position:relative;line-height:1}.main-nav a:after{position:absolute;left:0;bottom:-9px;width:100%;height:3px;background:var(--green);transform:scaleX(0);transform-origin:left;transition:transform .18s ease;content:""}.main-nav a:hover:after,.main-nav a:focus-visible:after{transform:scaleX(1)}.cta{--cta-bg: var(--purple);--cta-fg: var(--white);--cta-border: var(--cta-bg);--cta-border-width: 0px;position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:50px;padding:0 24px;border:0;color:var(--cta-fg);background:transparent;font-size:14px;font-weight:700;line-height:1;text-transform:uppercase;transition:transform .18s ease,filter .18s ease}.cta:before,.cta:after{position:absolute;clip-path:var(--button-shape);content:""}.cta:before{z-index:-2;inset:0;background:var(--cta-border)}.cta:after{z-index:-1;inset:var(--cta-border-width);background:var(--cta-bg)}.cta:hover,.cta:focus-visible{transform:translateY(-2px);filter:brightness(1.04)}.cta-icon{font-size:22px;line-height:1;transition:transform .18s ease}.cta:hover .cta-icon,.cta:focus-visible .cta-icon{transform:translate(2px,-2px)}.cta-header{min-width:164px}.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px}.language-switch{display:inline-flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--line);background:#ffffff0d}.language-switch button{min-width:34px;height:30px;border:0;color:var(--text);background:transparent;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.language-switch button[aria-pressed=true]{color:var(--black);background:var(--green)}.theme-toggle{display:inline-grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);color:var(--text);background:#ffffff0d;cursor:pointer}body[data-theme=light] .theme-toggle,body[data-theme=light] .language-switch{background:#0000000a}.theme-icon{font-size:22px}@media(min-width:861px){.language-switch{position:absolute;top:42px;left:clamp(214px,17vw,300px)}}.menu-toggle{position:relative;isolation:isolate;display:none;width:48px;height:44px;border:0;background:transparent;clip-path:polygon(10px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 10px)}.menu-toggle:before{position:absolute;z-index:-1;inset:0;background:var(--text);clip-path:inherit;content:""}.menu-toggle:after{position:absolute;z-index:-1;inset:1px;background:var(--light);clip-path:inherit;content:""}body[data-theme=light] .menu-toggle:after{background:var(--surface-strong)}.menu-toggle span:not(.sr-only){display:block;width:20px;height:2px;margin:4px auto;background:var(--text)}.hero{position:relative;display:grid;min-height:calc(100svh - var(--header-height));padding:10px clamp(24px,4vw,64px) 0;overflow:visible;background:radial-gradient(circle at 78% 14%,rgba(116,36,220,.24),transparent 32%),radial-gradient(circle at 34% 58%,rgba(149,255,0,.08),transparent 34%),var(--light)}body[data-theme=light] .hero{background:var(--light)}.is-scrolled .hero{overflow:hidden}.hero-copy{position:relative;z-index:10;max-width:min(835px,59vw);align-self:start}.hero h1{margin:-2px 0 24px;font-family:Anton,Impact,sans-serif;font-size:clamp(82px,10.2vw,196px);font-weight:400;line-height:.9;letter-spacing:0;text-transform:uppercase}.hero h1 span{display:block}.headline-today{color:var(--purple)}.hero-bottom{display:flex;align-items:end;gap:16px}.hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.cta-primary{--cta-bg: var(--purple);min-width:150px}.cta-secondary{--cta-bg: #0b0b0f;--cta-fg: var(--text);--cta-border: rgba(255, 255, 255, .82);--cta-border-width: 1px;min-width:150px}body[data-theme=light] .cta-secondary{--cta-bg: #f2f2f2;--cta-fg: var(--black);--cta-border: var(--black)}.cta-secondary:hover,.cta-secondary:focus-visible{--cta-bg: var(--green);--cta-fg: var(--black);--cta-border: var(--green)}.value-list{display:grid;gap:1px;margin:0 0 8px;padding:0;list-style:none;max-width:390px;font-size:clamp(16px,1.4vw,22px);font-weight:700;line-height:1;text-transform:uppercase}.hero-character{position:absolute;z-index:50;top:clamp(-132px,-7.5vw,-92px);right:clamp(70px,calc(45vw - 578px),340px);bottom:auto;width:min(50vw,730px);isolation:isolate;pointer-events:none}.hero-character-image{display:block;width:100%;height:auto;scale:1;transform:translateZ(0);backface-visibility:hidden;will-change:opacity,scale}.hero-character-image-point,.hero-character-image-alt,.hero-character-image-flex,.hero-character-image-open{position:absolute;inset:0;opacity:0}.hero-character-image-point,.hero-character-image-open{inset:auto auto 0 50%;width:auto;max-width:none;height:100%;transform:translate3d(-50%,0,0)}.hero-character:before,.hero-character:after{position:absolute;inset:-4% -6%;z-index:4;opacity:0;pointer-events:none;content:""}.hero-character:before{background:linear-gradient(100deg,transparent 21%,rgba(255,255,255,.92) 48%,rgba(149,255,0,.92) 50%,transparent 74%),linear-gradient(180deg,transparent 0 46%,rgba(255,255,255,.82) 48%,rgba(116,36,220,.76) 50%,transparent 53% 100%);mix-blend-mode:screen}.hero-character:after{background:repeating-linear-gradient(180deg,#95ff0000 0 11px,#95ff0042 12px,#7424dc38 13px,#95ff0000 16px);mix-blend-mode:color-dodge}.hero-character.is-swap-ready:before{animation:heroFlash 18s ease-in-out infinite both;will-change:opacity,transform}.hero-character.is-swap-ready:after{animation:heroScan 18s ease-in-out infinite both;will-change:opacity,transform}.hero-character.is-swap-ready .hero-character-image-primary{animation:heroPrimarySwap 18s ease-in-out infinite both}.hero-character.is-swap-ready .hero-character-image-point{animation:heroPointSwap 18s ease-in-out infinite both}.hero-character.is-swap-ready .hero-character-image-alt{animation:heroAltSwap 18s ease-in-out infinite both}.hero-character.is-swap-ready .hero-character-image-flex{animation:heroFlexSwap 18s ease-in-out infinite both}.hero-character.is-swap-ready .hero-character-image-open{animation:heroOpenSwap 18s ease-in-out infinite both}@keyframes heroPrimarySwap{0%,12%,90%,to{opacity:1;scale:1}20%,82%{opacity:0;scale:1.035}}@keyframes heroPointSwap{0%,10%,35%,to{opacity:0;scale:.985}17%,28%{opacity:1;scale:1.025}}@keyframes heroAltSwap{0%,30%,55%,to{opacity:0;scale:.985}37%,48%{opacity:1;scale:1.025}}@keyframes heroFlexSwap{0%,50%,75%,to{opacity:0;scale:.985}57%,68%{opacity:1;scale:1.025}}@keyframes heroOpenSwap{0%,70%,95%,to{opacity:0;scale:.985}77%,88%{opacity:1;scale:1.025}}@keyframes heroFlash{0%,14%,20%,32%,39%,52%,59%,72%,79%,90%,97%,to{opacity:0;transform:translate(-8%) skew(-7deg)}17%,36%,56%,76%,94%{opacity:.3;transform:translate(9%) skew(-7deg)}}@keyframes heroScan{0%,15%,20%,33%,39%,53%,59%,73%,79%,91%,97%,to{opacity:0;transform:translateY(-2px)}17%,36%,56%,76%,94%{opacity:.14;transform:translateY(3px)}}@media(prefers-reduced-motion:reduce){.hero-character.is-swap-ready .hero-character-image-primary,.hero-character.is-swap-ready .hero-character-image-point,.hero-character.is-swap-ready .hero-character-image-alt,.hero-character.is-swap-ready .hero-character-image-flex,.hero-character.is-swap-ready .hero-character-image-open,.hero-character.is-swap-ready:before,.hero-character.is-swap-ready:after{animation:none}}.price-card{position:absolute;z-index:80;right:clamp(24px,4.8vw,72px);bottom:0;width:min(278px,22vw);min-width:252px;padding:30px 28px 28px;color:var(--white);background:var(--purple);clip-path:polygon(24% 0,100% 0,100% 100%,0 100%,0 23%);font-family:Chakra Petch,Arial,sans-serif;text-transform:uppercase;text-decoration:none;transition:filter .18s ease,transform .18s ease}.price-card:hover,.price-card:focus-visible{filter:brightness(1.08);transform:translateY(-4px)}.price-kicker,.price-period{margin:0;font-size:13px;font-weight:700;text-align:center}.price-row{display:flex;justify-content:center;align-items:baseline;margin:1px 0 -4px;font-weight:700;line-height:.8}.currency{font-size:40px}.price-main{font-family:Chakra Petch,Arial,sans-serif;font-size:78px}.price-cents{font-family:Chakra Petch,Arial,sans-serif;font-size:34px}.price-card ul{display:grid;gap:14px;margin:24px 0 0;padding:0;list-style:none;font-size:13px;font-weight:700}.price-card li{display:flex;align-items:flex-start;gap:12px;line-height:1.14}.price-card li span{flex:0 0 20px;display:inline-flex;place-items:center;align-items:center;justify-content:center;width:20px;height:20px;font-size:20px;line-height:1;transform:translateY(-1px)}.intro-band{position:relative;z-index:60;display:grid;place-items:center;min-height:180px;padding:56px 24px;color:var(--white);background:var(--black)}.intro-band p{margin:0;font-family:Anton,Impact,sans-serif;font-size:clamp(36px,6vw,82px);line-height:.95;text-align:center;text-transform:uppercase}.section-inner{width:min(1200px,calc(100% - 48px));margin:0 auto}.section-pad{padding:clamp(72px,8vw,118px) 0}.opening-band,.plans-section,.location-section,.facilities-section,.training-section,.gallery-section,.faq-section,.contact-section,.final-cta-section{content-visibility:auto;contain-intrinsic-size:720px}.reveal-on-scroll{opacity:0;transform:translate3d(0,28px,0);filter:blur(8px)}.reveal-on-scroll.is-visible{opacity:1;transform:translateZ(0);filter:none;animation:sectionReveal .72s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--reveal-delay, 0ms)}@keyframes sectionReveal{0%{opacity:0;transform:translate3d(0,28px,0);filter:blur(8px)}to{opacity:1;transform:translateZ(0);filter:none}}@media(prefers-reduced-motion:reduce){.reveal-on-scroll,.reveal-on-scroll.is-visible{opacity:1;transform:none;filter:none;animation:none}}.eyebrow{margin:0 0 18px;color:var(--purple);font-size:14px;font-weight:700;line-height:1;text-transform:uppercase}.section-lead{max-width:620px;margin:0;color:var(--muted);font-size:clamp(18px,2vw,24px);font-weight:600;line-height:1.18}.section-heading{display:grid;gap:4px;max-width:820px;margin-bottom:42px}.opening-band{position:relative;z-index:70;padding:clamp(58px,7vw,92px) 0;color:var(--white);background:linear-gradient(90deg,rgba(149,255,0,.12),transparent 22%,rgba(116,36,220,.16) 72%,transparent),var(--black)}.opening-band:before,.opening-band:after{position:absolute;left:0;width:100%;height:1px;background:linear-gradient(90deg,var(--purple),var(--green),transparent);content:""}.opening-band:before{top:18px}.opening-band:after{bottom:18px}.opening-grid,.split-layout,.location-grid,.training-grid,.faq-grid,.contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.86fr);gap:clamp(34px,6vw,90px);align-items:center}.opening-band .eyebrow{color:var(--green)}.opening-band h2,.plans-section h2,.location-section h2,.facilities-section h2,.training-section h2,.gallery-section h2,.faq-section h2,.contact-section h2,.final-cta-section h2{margin:0;font-family:Anton,Impact,sans-serif;font-size:clamp(46px,7vw,104px);font-weight:400;line-height:.94;letter-spacing:0;text-transform:uppercase}.opening-band h2{display:grid;justify-items:start;gap:14px}.opening-date{display:inline-block;color:var(--green);font-size:.82em;line-height:1}.opening-copy{display:grid;gap:18px}.opening-copy p{margin:0;font-size:clamp(20px,2.3vw,32px);font-weight:700;line-height:1.12;text-transform:uppercase}.opening-copy p+p{color:#ffffffc7;font-size:18px;line-height:1.35;text-transform:none}.plans-section{background:var(--light)}.plans-section .split-layout{grid-template-columns:minmax(300px,.7fr) minmax(620px,1.3fr);gap:clamp(36px,4vw,68px)}.plans-section h2{max-width:520px;font-size:clamp(56px,5.8vw,88px)}.plans-section .section-lead{max-width:470px;font-size:clamp(17px,1.6vw,21px);line-height:1.25}.plan-card{position:relative;isolation:isolate;display:grid;gap:18px;padding:clamp(28px,4vw,42px);color:var(--white);background:var(--purple);clip-path:polygon(34px 0,100% 0,100% calc(100% - 34px),calc(100% - 34px) 100%,0 100%,0 34px);text-decoration:none;transition:box-shadow .18s ease,transform .18s ease}.plan-card:before,.location-image:before,.contact-form:before{display:none}.plan-card:after{display:none}.plan-card:hover,.plan-card:focus-visible{box-shadow:0 24px 60px #7424dc3d;transform:translateY(-4px)}body[data-theme=light] .plan-card{color:var(--white);background:var(--purple);box-shadow:0 22px 58px #00000038}.plan-label{margin:0;color:var(--white);font-size:16px;font-weight:700;text-transform:uppercase}.promo-kicker{justify-self:start;margin:0;padding:8px 12px;color:var(--black);background:var(--green);font-size:13px;font-weight:700;line-height:1;text-transform:uppercase;transform:skew(-7deg)}.plan-pricing{display:grid;grid-template-columns:minmax(0,1.18fr) auto minmax(0,1fr);align-items:stretch;gap:10px}.promo-price-block,.standard-price-block{display:grid;align-content:center;min-width:0;padding:clamp(16px,2vw,24px);background:#0505056b;border:1px solid rgba(255,255,255,.2)}.promo-price-block{border-color:var(--green);box-shadow:inset 0 0 28px #95ff0014}.standard-price-block{border-color:#ffffff52}.promo-limit,.standard-price-label{margin:0 0 10px;color:var(--white);font-size:clamp(12px,1.2vw,15px);font-weight:700;line-height:1.05;text-transform:uppercase}.promo-limit strong{display:block;margin-top:4px;color:var(--green);font-size:clamp(20px,2.3vw,30px);line-height:.95}.standard-price-label{color:var(--green)}.standard-price-note{display:grid;gap:3px;margin:16px 0 0;color:var(--white);font-size:13px;font-weight:700;line-height:1;text-transform:uppercase}.standard-price-note span{color:#ffffffb8;font-size:11px}.plan-price{display:flex;align-items:baseline;gap:2px;color:var(--green);font-family:Chakra Petch,Arial,sans-serif;font-weight:700;line-height:.82;white-space:nowrap}.plan-price span{font-size:clamp(58px,7vw,96px)}.plan-price small{color:var(--white);font-size:clamp(22px,2.6vw,34px)}.standard-price{display:flex;align-items:baseline;gap:2px;color:var(--white);font-family:Chakra Petch,Arial,sans-serif;font-weight:700;line-height:.85;white-space:nowrap}.standard-price span{font-size:clamp(58px,6.2vw,86px)}.standard-price small{font-size:clamp(22px,2.4vw,32px)}.price-change-arrow{align-self:center;justify-self:center;display:grid;place-items:center;width:48px;height:48px;color:var(--green)}.price-change-arrow .material-symbols-outlined{font-size:38px;line-height:1}.final-price-panel{display:none;align-items:center;min-height:250px;padding:clamp(22px,4vw,38px);background:#0505056b;border:1px solid rgba(255,255,255,.28)}.final-plan-price{display:flex;align-items:baseline;gap:4px;color:var(--white);font-family:Chakra Petch,Arial,sans-serif;font-weight:700;line-height:.8;white-space:nowrap}.final-plan-price span{font-size:clamp(108px,13vw,172px)}.final-plan-price small{font-size:clamp(38px,5vw,68px)}body[data-price-mode=standard] .promo-kicker,body[data-price-mode=standard] .plan-pricing{display:none}body[data-price-mode=standard] .final-price-panel{display:flex}.plan-period{margin:-4px 0 6px;color:var(--white);font-size:20px;font-weight:700;text-transform:uppercase}body[data-theme=light] .plan-period{color:var(--white)}.check-list{display:grid;gap:12px;margin:0 0 10px;padding:0;list-style:none}.check-list li{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:700}body[data-theme=light] .check-list li{color:#ffffffd1}.check-list .material-symbols-outlined{color:var(--green);font-size:22px}.plan-card .cta{--cta-bg: var(--green);--cta-fg: var(--black);--cta-border: var(--green)}.location-section{color:var(--white);background:var(--black)}.location-section .section-lead{color:#ffffffc2}.location-section address{margin-top:28px;color:var(--green);font-style:normal;font-size:clamp(22px,2.5vw,34px);font-weight:700;line-height:1.08;text-transform:uppercase}.cta-location{--cta-bg: var(--green);--cta-fg: var(--black);--cta-border: var(--green);margin-top:30px;min-width:178px}.location-image{position:relative;isolation:isolate;margin:0;overflow:hidden;background:var(--black);clip-path:polygon(34px 0,100% 0,100% calc(100% - 34px),calc(100% - 34px) 100%,0 100%,0 34px);box-shadow:0 24px 60px #00000052}.location-image img{position:relative;z-index:1;display:block;width:100%;height:min(72vw,760px);object-fit:cover;object-position:center}.facility-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.facility-card,.training-list article{display:grid;align-content:start;gap:14px;min-height:230px;padding:24px;background:var(--surface);border:0}.facility-card .material-symbols-outlined,.facility-card .facility-icon,.training-list .material-symbols-outlined{color:var(--purple);font-size:38px}.facility-card .facility-icon{width:38px;height:38px;fill:currentColor}.facility-card h3,.training-list h3{margin:0;font-size:18px;font-weight:700;line-height:1;text-transform:uppercase}.facility-card p,.training-list p,.faq-list p{margin:0;color:var(--muted);font-size:15px;font-weight:600;line-height:1.35}.training-section{background:var(--light)}.training-list{display:grid;grid-template-columns:1fr 1fr;gap:14px}.gallery-section{position:relative;overflow:hidden;background:var(--surface-strong)}.gallery-heading{max-width:900px}.gallery-mosaic{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:clamp(118px,10vw,158px);gap:clamp(10px,1.4vw,18px)}.gallery-item{position:relative;isolation:isolate;grid-column:span 3;grid-row:span 2;min-height:0;margin:0;overflow:hidden;background:var(--surface);border:0;clip-path:polygon(18px 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%,0 18px)}.gallery-item:after{display:none}.gallery-trigger{display:block;width:100%;height:100%;padding:0;border:0;color:inherit;background:transparent;cursor:zoom-in}.gallery-item img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.01);transition:transform .42s ease,filter .42s ease}.gallery-item:hover img,.gallery-item:focus-within img{filter:brightness(1.08);transform:scale(1.06)}.gallery-trigger:focus-visible{outline:3px solid var(--green);outline-offset:-6px}.gallery-item-hero{grid-column:span 6;grid-row:span 3}.gallery-item-tall{grid-column:span 3;grid-row:span 3}.gallery-item-wide{grid-column:span 6}.gallery-lightbox[hidden]{display:none}.gallery-lightbox{position:fixed;z-index:300;inset:0;display:grid;grid-template-columns:minmax(54px,96px) minmax(0,1fr) minmax(54px,96px);align-items:center;gap:clamp(8px,2vw,22px);padding:clamp(18px,3vw,42px);color:var(--white);background:var(--black)}.gallery-lightbox-figure{display:grid;justify-items:center;gap:14px;min-width:0;margin:0}.gallery-lightbox-image{display:block;max-width:100%;max-height:min(76vh,820px);object-fit:contain}.gallery-lightbox-caption{max-width:min(720px,100%);color:#ffffffc7;font-size:15px;font-weight:700;line-height:1.25;text-align:center}.gallery-lightbox-close,.gallery-lightbox-nav{display:inline-grid;place-items:center;width:54px;height:54px;padding:0;border:0;color:var(--white);background:var(--purple);cursor:pointer;clip-path:var(--button-shape)}.gallery-lightbox-close{position:absolute;top:clamp(14px,2vw,28px);right:clamp(14px,2vw,28px);z-index:3;color:var(--black);background:var(--green)}.gallery-lightbox-nav span,.gallery-lightbox-close span{font-size:32px}.gallery-lightbox-prev{justify-self:end}.gallery-lightbox-next{justify-self:start}.gallery-lightbox-close:hover,.gallery-lightbox-close:focus-visible,.gallery-lightbox-nav:hover,.gallery-lightbox-nav:focus-visible{color:var(--black);background:var(--green)}body.gallery-lightbox-open{overflow:hidden}body.gallery-lightbox-open .scroll-reserve-widget,body.gallery-lightbox-open .cookie-banner{display:none}body.reservation-modal-open{overflow:hidden}.faq-section{background:var(--surface-strong)}.faq-list{display:grid;gap:10px}.faq-list details{padding:22px 24px;background:var(--light);border:0}.faq-list summary{cursor:pointer;font-size:18px;font-weight:700;text-transform:uppercase}.faq-list details p{padding-top:12px}.contact-section{color:var(--white);background:var(--black)}.contact-section .section-lead{color:#ffffffc2}.contact-email{display:inline-block;margin:18px 0 20px;color:var(--green);font-size:clamp(18px,2vw,26px);font-weight:700;line-height:1;text-transform:uppercase}.contact-email:hover,.contact-email:focus-visible{color:var(--white)}.contact-copy{align-self:start}.contact-form{position:relative;isolation:isolate;display:grid;gap:14px;padding:clamp(24px,4vw,38px);background:var(--surface);clip-path:polygon(28px 0,100% 0,100% calc(100% - 28px),calc(100% - 28px) 100%,0 100%,0 28px)}.contact-form label{position:relative;z-index:1;display:grid;gap:8px;color:var(--text);font-size:13px;font-weight:700;text-transform:uppercase}.contact-form input,.contact-form textarea{width:100%;min-height:50px;padding:0 14px;border:1px solid var(--line);color:var(--text);background:var(--light);font:inherit}.contact-form textarea{min-height:146px;padding:14px;resize:vertical}.contact-form .contact-terms{display:grid;grid-template-columns:20px 1fr;align-items:start;gap:10px;color:var(--muted);font-size:12px;line-height:1.35;text-transform:none}.contact-terms input{width:18px;min-height:18px;margin:1px 0 0;accent-color:var(--green)}.contact-terms a{color:var(--green);text-decoration:underline;text-underline-offset:3px}.contact-form button{position:relative;z-index:1}.contact-form button:disabled{cursor:wait;filter:grayscale(.35);opacity:.72}.form-status{min-height:20px;margin:0;color:var(--muted);font-size:13px;font-weight:700;line-height:1.35}.form-status[data-status=success]{color:var(--green)}.form-status[data-status=error]{color:#ff5b8a}.final-cta-section{color:var(--white);background:var(--purple)}.final-cta{display:grid;justify-items:start;gap:18px}.final-cta .eyebrow{color:var(--green);margin-bottom:0}.final-cta h2{max-width:880px}.final-cta p:not(.eyebrow){max-width:620px;margin:0;color:#ffffffd1;font-size:clamp(20px,2.4vw,30px);font-weight:700;line-height:1.12}.final-cta .cta{--cta-bg: var(--green);--cta-fg: var(--black);--cta-border: var(--green);margin-top:12px}.site-footer{padding:34px 0;background:var(--black);border-top:1px solid var(--line)}body[data-theme=light] .site-footer{color:var(--black);background:var(--surface)}.footer-grid{display:grid;grid-template-columns:150px 1fr auto;gap:26px;align-items:center}.footer-grid img{width:130px;max-width:100%;aspect-ratio:1448 / 1086;height:auto;object-fit:contain}.footer-grid nav{display:flex;flex-wrap:wrap;gap:18px;justify-content:center;font-size:14px;font-weight:700;text-transform:uppercase}.footer-grid a{color:inherit}.footer-grid p{margin:0;font-size:14px;font-weight:700;text-align:right;text-transform:uppercase}.scroll-reserve-widget{position:fixed;right:clamp(16px,2vw,28px);bottom:clamp(16px,2vw,28px);z-index:150;display:grid;gap:12px;width:min(300px,calc(100vw - 32px));padding:16px;color:var(--white);background:#7424dcf0;clip-path:polygon(18px 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%,0 18px);box-shadow:0 18px 44px #00000052;opacity:1;pointer-events:auto;transform:translateY(0);transition:opacity .18s ease,transform .18s ease}.scroll-reserve-widget.is-hidden{opacity:0;pointer-events:none;transform:translateY(14px)}.widget-close{position:absolute;top:6px;right:6px;z-index:2;display:inline-grid;place-items:center;width:28px;height:28px;padding:0;border:0;color:var(--white);background:transparent;cursor:pointer}.widget-close span{font-size:22px;line-height:1}.widget-kicker,.widget-title,.widget-copy{margin:0;font-weight:700;line-height:1;text-transform:uppercase}.widget-kicker{color:var(--green);font-size:12px}.widget-title{margin-top:6px;font-family:Anton,Impact,sans-serif;font-size:34px;font-weight:400}.widget-copy{margin-top:6px;color:#ffffffd1;font-size:14px}.scroll-reserve-widget .cta{--cta-bg: var(--green);--cta-fg: var(--black);--cta-border: var(--green);width:100%;min-height:46px}.cookie-banner[hidden]{display:none}.cookie-banner{position:fixed;left:clamp(14px,2vw,28px);right:clamp(14px,2vw,28px);bottom:clamp(14px,2vw,28px);z-index:230;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:18px;color:var(--black);background:var(--green);box-shadow:0 18px 60px #95ff003d,0 18px 60px #0000006b}.cookie-title{margin:0 0 6px;color:var(--purple);font-size:14px;font-weight:700;line-height:1;text-transform:uppercase}.cookie-banner p:not(.cookie-title){max-width:720px;margin:0;color:#050505c7;font-size:14px;font-weight:700;line-height:1.32}.cookie-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.cookie-button,.cookie-actions a{min-height:42px;padding:0 14px;border:0;color:var(--white);background:var(--purple);font:inherit;font-size:13px;font-weight:700;text-transform:uppercase;cursor:pointer}.cookie-reject{color:var(--white);background:var(--black)}.cookie-accept{color:var(--black);background:var(--white)}.cookie-actions a{display:inline-flex;align-items:center;color:var(--black);background:transparent}.reservation-modal[hidden]{display:none}.reservation-modal{position:fixed;inset:0;z-index:260;display:grid;place-items:center;padding:22px;background:#000000b8}.reservation-modal-panel{position:relative;display:grid;gap:16px;width:min(560px,100%);padding:clamp(28px,5vw,46px);color:var(--white);background:var(--purple);clip-path:polygon(30px 0,100% 0,100% calc(100% - 30px),calc(100% - 30px) 100%,0 100%,0 30px);box-shadow:0 24px 70px #00000070}.reservation-modal-panel .eyebrow{margin:0;color:var(--green)}.reservation-modal-panel h2{margin:0;font-family:Anton,Impact,sans-serif;font-size:clamp(44px,7vw,76px);font-weight:400;line-height:.94;text-transform:uppercase}.reservation-modal-panel p:not(.eyebrow){margin:0;color:#ffffffd6;font-size:18px;font-weight:700;line-height:1.28}.reservation-modal-panel .cta{--cta-bg: var(--green);--cta-fg: var(--black);--cta-border: var(--green);justify-self:start;margin-top:8px}.reservation-modal-close{position:absolute;top:12px;right:14px;display:inline-grid;place-items:center;width:34px;height:34px;padding:0;border:0;color:var(--green);background:transparent;cursor:pointer}.reservation-modal-close span{font-size:28px}.legal-page{min-height:100svh;padding:clamp(28px,5vw,70px);color:var(--text);background:var(--light)}.legal-brand{display:inline-flex;width:138px;margin-bottom:clamp(36px,6vw,76px)}.legal-brand img{display:block;width:100%;height:auto}.legal-content{max-width:880px}.legal-content h1{margin:0 0 28px;font-family:Anton,Impact,sans-serif;font-size:clamp(54px,8vw,112px);font-weight:400;line-height:.92;text-transform:uppercase}.legal-content h2{margin:34px 0 10px;color:var(--green);font-size:20px;font-weight:700;line-height:1;text-transform:uppercase}.legal-content p{margin:0 0 14px;color:var(--muted);font-size:18px;font-weight:700;line-height:1.42}@media(max-width:1120px){:root{--header-height: 98px}.site-header{grid-template-columns:150px 1fr auto}.main-nav{gap:18px;font-size:12px}.hero-copy{max-width:64vw}.hero-character{top:-70px;right:clamp(34px,8vw,92px);bottom:auto;width:min(56vw,590px)}.price-card{width:252px}.facility-grid{grid-template-columns:repeat(3,1fr)}.gallery-mosaic{grid-template-columns:repeat(6,1fr)}.gallery-item,.gallery-item-tall{grid-column:span 3;grid-row:span 2}.gallery-item-hero,.gallery-item-wide{grid-column:span 6}}@media(max-width:1050px){.plans-section .split-layout{grid-template-columns:1fr;gap:42px}.plans-section h2,.plans-section .section-lead{max-width:720px}.plan-card{justify-self:center;width:min(760px,100%)}}@media(max-width:860px){:root{--header-height: 86px}body{padding-bottom:86px}.site-header{grid-template-columns:auto 1fr auto;gap:10px;padding:14px 18px}.brand{display:inline-flex;width:86px;height:54px}.menu-toggle{display:block;justify-self:end;grid-column:3;grid-row:1}.main-nav{position:absolute;top:100%;left:18px;right:18px;display:none;grid-template-columns:1fr 1fr;gap:0;padding:12px;border:1px solid var(--line);background:#0b0b0ff7}body[data-theme=light] .main-nav{background:#f2f2f2f7}.main-nav.is-open{display:grid}.main-nav a{padding:14px 10px}.mobile-menu-controls{display:flex;grid-column:1 / -1;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:12px 10px 2px;border-top:1px solid var(--line)}.mobile-menu-controls .language-switch,.mobile-menu-controls .theme-toggle{display:inline-flex}.mobile-menu-controls .theme-toggle{display:inline-grid}.cta-header{min-width:142px;width:auto;height:44px;padding:0 14px;font-size:13px}.cta-header span{font-size:22px}.header-actions{grid-column:2;grid-row:1;gap:8px;justify-content:flex-end}.header-actions>.language-switch,.header-actions>.theme-toggle{display:none}.language-switch button{min-width:28px;height:28px;font-size:11px}.theme-toggle{width:36px;height:36px}.hero{min-height:auto;padding:18px 18px 0;overflow:hidden;overflow:clip}.hero-copy{max-width:none}.hero h1{max-width:560px;font-size:clamp(66px,20vw,128px)}.hero-bottom{align-items:start;flex-direction:column-reverse;gap:18px;padding-bottom:700px}.hero-character{inset:auto auto 126px 50%;width:min(82vw,430px);transform:translate(-48%)}.price-card{right:18px;bottom:0;width:218px}.section-inner{width:min(100% - 36px,720px)}.opening-grid,.split-layout,.location-grid,.training-grid,.faq-grid,.contact-grid{grid-template-columns:1fr}.plan-pricing{grid-template-columns:minmax(0,1.25fr) auto minmax(0,.9fr)}.facility-grid,.training-list,.footer-grid{grid-template-columns:1fr}.gallery-mosaic{grid-template-columns:1fr;grid-auto-rows:auto}.gallery-item,.gallery-item-hero,.gallery-item-tall,.gallery-item-wide{grid-column:auto;grid-row:auto;aspect-ratio:4 / 3}.gallery-item-hero,.gallery-item-wide{aspect-ratio:16 / 11}.gallery-lightbox{grid-template-columns:1fr;grid-template-rows:1fr;align-items:center;justify-items:center;padding:max(72px,env(safe-area-inset-top)) 16px max(96px,env(safe-area-inset-bottom))}.gallery-lightbox-figure{grid-column:1 / -1;grid-row:1;align-self:center;width:100%;gap:12px}.gallery-lightbox-image{max-width:100%;max-height:calc(100svh - 220px)}.gallery-lightbox-caption{max-width:calc(100vw - 40px);color:var(--white);font-size:16px}.gallery-lightbox-close,.gallery-lightbox-nav{width:64px;height:58px}.gallery-lightbox-close{top:max(14px,env(safe-area-inset-top));right:16px}.gallery-lightbox-nav{position:absolute;bottom:max(18px,env(safe-area-inset-bottom));z-index:2;color:var(--white);background:var(--purple)}.gallery-lightbox-prev{left:16px;justify-self:auto}.gallery-lightbox-next{right:16px;justify-self:auto}.footer-grid,.footer-grid p{text-align:left}.footer-grid nav{justify-content:flex-start}.scroll-reserve-widget{left:24px;right:14px;bottom:12px;width:auto;grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:22px 12px 12px}.widget-close{top:4px;right:8px;width:24px;height:24px;color:var(--green);background:transparent}.widget-close span{font-size:24px}.widget-title{font-size:21px}.widget-copy{font-size:11px}.scroll-reserve-widget .cta{width:auto;min-width:120px;min-height:42px;padding:0 14px;font-size:12px}.cookie-banner{grid-template-columns:1fr;bottom:104px}.cookie-actions{justify-content:flex-start}.reservation-modal{align-items:end;padding:14px}.reservation-modal-panel{padding:32px 22px 24px}.reservation-modal-panel .cta{width:100%}}@media(max-width:520px){.site-header{grid-template-columns:auto 1fr auto;gap:8px}.brand{width:86px}.cta-header{min-width:124px;padding:0 12px;font-size:12px}.hero h1{font-size:clamp(58px,22vw,92px)}.hero-actions{width:100%;gap:12px}.cta-primary,.cta-secondary{flex:1 1 150px;min-width:0;padding:0 16px}.hero-bottom{padding-bottom:700px}.hero-character{top:auto;bottom:138px;width:min(92vw,380px);transform:translate(-50%)}.price-card{left:auto;right:18px;width:min(260px,calc(100% - 36px));min-width:0;padding:28px 24px}.price-card ul{grid-template-columns:1fr}.plan-card{gap:14px;padding:28px 20px}.plan-pricing{grid-template-columns:1fr;gap:8px}.price-change-arrow{justify-self:center;transform:rotate(90deg)}.promo-price-block,.standard-price-block{padding:18px}.promo-limit strong{display:inline;margin:0 0 0 4px}.final-price-panel{min-height:220px;padding:22px 18px}.location-image img{height:auto;max-height:78vh;object-fit:contain}}
