@font-face{font-family:"Fredoka Local";src:url("assets/Fredoka-Variable.ttf") format("truetype");font-style:normal;font-weight:300 700;font-display:swap}
@font-face{font-family:"Nunito Local";src:url("assets/NunitoSans-Variable.ttf") format("truetype");font-style:normal;font-weight:200 1000;font-display:swap}
:root{--navy:oklch(.29 .13 275);--navy-deep:oklch(.205 .105 275);--cream:oklch(.975 .018 80);--paper:oklch(.995 .007 80);--orange:oklch(.69 .22 38);--pink:oklch(.62 .25 350);--blue:oklch(.69 .17 228);--yellow:oklch(.88 .18 94);--green:oklch(.67 .19 145);--ink:oklch(.25 .08 270);--muted:oklch(.5 .035 270);--ease:cubic-bezier(.16,1,.3,1);--display:"Fredoka Local","Arial Rounded MT Bold",sans-serif;--body:"Nunito Local","Trebuchet MS",sans-serif;--header:72px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 16px)}
body{margin:0;color:var(--ink);background:var(--cream);font-family:var(--body);font-weight:600;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.menu-open{overflow:hidden}
body.music-gate-open{overflow:hidden}
img,video,svg{display:block;max-width:100%}
a{color:inherit}
button{font:inherit}
h1,h2,h3,p,figure{margin-top:0}
h1,h2,h3{font-family:var(--display);line-height:.95;text-wrap:balance}
p{text-wrap:pretty}
:focus-visible{outline:4px solid var(--yellow);outline-offset:4px}
.sr-only,.skip-link{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link:focus{z-index:1000;top:10px;left:10px;width:auto;height:auto;margin:0;padding:10px 14px;clip:auto;color:var(--navy);background:var(--yellow);border-radius:10px}
.scroll-progress{position:fixed;z-index:1000;inset:0 0 auto;height:4px;background:transparent}.scroll-progress span{display:block;width:100%;height:100%;background:var(--pink);transform:scaleX(0);transform-origin:left;will-change:transform}
.site-header{position:fixed;z-index:100;inset:4px 0 auto;width:100%;height:var(--header);padding:0 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--paper);transition-property:background-color,box-shadow;transition-duration:.25s;transition-timing-function:var(--ease)}
.site-header.is-scrolled{background:var(--navy-deep);box-shadow:0 14px 34px rgba(10,7,44,.24)}
.brand{display:flex;align-items:center;gap:9px;text-decoration:none}.brand img{width:49px;height:49px;padding:3px;object-fit:contain;background:var(--paper);border-radius:18px;rotate:-3deg;box-shadow:0 8px 18px rgba(10,7,44,.18)}.brand>span{font-family:var(--display);font-weight:650;line-height:.9}.brand small{display:block;margin-top:5px;color:var(--yellow);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase}
.menu-button{position:relative;width:46px;height:46px;border:0;border-radius:15px;color:var(--paper);background:rgba(255,255,255,.1);cursor:pointer}.menu-button span{position:absolute;left:12px;width:22px;height:2px;background:currentColor;border-radius:2px;transition-property:transform,opacity;transition-duration:.22s;transition-timing-function:var(--ease)}.menu-button span:nth-child(1){top:15px}.menu-button span:nth-child(2){top:22px}.menu-button span:nth-child(3){top:29px}.menu-button[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-button[aria-expanded="true"] span:nth-child(2){opacity:0}.menu-button[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.site-nav{position:fixed;inset:calc(var(--header) + 4px) 12px auto;padding:14px;display:grid;gap:5px;color:var(--navy);background:var(--paper);border-radius:22px;box-shadow:0 24px 64px rgba(15,9,54,.28);opacity:0;visibility:hidden;transform:translateY(-12px);transition-property:opacity,visibility,transform;transition-duration:.25s;transition-timing-function:var(--ease)}.site-nav.is-open{opacity:1;visibility:visible;transform:translateY(0)}.site-nav a{min-height:48px;padding:10px 14px;display:flex;align-items:center;justify-content:center;border-radius:13px;font-weight:900;text-decoration:none}.site-nav a:hover{background:oklch(.94 .06 230)}
.header-action{display:none}
.hero{position:relative;isolation:isolate;min-height:100svh;padding:calc(var(--header) + 44px) 16px 70px;display:grid;grid-template-columns:minmax(0,1fr);place-items:center;overflow:hidden;color:var(--paper);background:var(--navy-deep)}
.hero-spotlight{position:absolute;z-index:-1;inset:-20%;background:radial-gradient(circle at var(--spot-x,70%) var(--spot-y,40%),oklch(.48 .19 285 / .7),transparent 27%);pointer-events:none}
.hero::before{content:"";position:absolute;z-index:-1;width:520px;aspect-ratio:1;right:-340px;top:7%;border:58px solid var(--pink);border-radius:50%;opacity:.8}.hero::after{content:"";position:absolute;z-index:-1;width:380px;aspect-ratio:1;left:-260px;bottom:-120px;background:var(--blue);border-radius:46% 54% 62% 38%/42% 38% 62% 58%;rotate:23deg}
.hero-type{position:absolute;z-index:-1;inset:auto 0 2%;display:grid;color:transparent;font-family:var(--display);font-size:clamp(6rem,28vw,22rem);font-weight:700;line-height:.66;letter-spacing:-.08em;text-align:center;-webkit-text-stroke:1px rgba(255,255,255,.12);opacity:.75;pointer-events:none}.hero-type strong{margin-left:.18em}
.hero-stage{width:min(100%,1240px);display:grid;grid-template-columns:minmax(0,1fr);gap:42px;align-items:center}
.hero-copy,.hero-reel{min-width:0}
.hero-copy{position:relative;z-index:3}.hero-kicker{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;color:oklch(.89 .05 275);font-size:.78rem;font-weight:900}.hero-kicker span{padding:7px 10px;color:var(--navy);background:var(--yellow);border-radius:999px}.hero h1{max-width:9ch;margin-bottom:22px;font-size:clamp(3.5rem,15vw,7.7rem);letter-spacing:-.065em}.hero h1 em{position:relative;color:var(--yellow);font-style:normal}.hero h1 em::after{content:"";position:absolute;left:4%;right:-3%;bottom:-.03em;height:.09em;background:var(--pink);border-radius:999px;transform:scaleX(0);transform-origin:left;animation:draw-line .7s 1.1s var(--ease) forwards}.hero-copy>p:last-of-type{max-width:46ch;margin-bottom:26px;color:oklch(.9 .025 275);font-size:clamp(1rem,4vw,1.2rem)}
.hero-actions,.contact-actions{display:flex;flex-direction:column;gap:10px}.action{min-height:56px;padding:14px 20px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:18px;font-weight:950;text-align:center;text-decoration:none;transition-property:transform,box-shadow,background-color;transition-duration:.22s;transition-timing-function:var(--ease)}.action:hover{transform:translateY(-3px)}.action:active,.header-action:active,.floating-contact:active,.reel-controls button:active,.console-tabs button:active{transform:scale(.96)}.action svg{width:21px;fill:currentColor}.action-hot{color:var(--paper);background:var(--orange);box-shadow:0 16px 36px oklch(.69 .22 38/.28),inset 0 -3px 0 rgba(107,25,6,.2)}.action-ghost{color:var(--paper);background:rgba(255,255,255,.09);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
.hero-reel{position:relative;width:min(88vw,540px);justify-self:center}.reel-window{position:relative;aspect-ratio:1;filter:drop-shadow(0 32px 55px rgba(6,4,30,.34))}.reel-slide{position:absolute;inset:0;margin:0;overflow:hidden;background:var(--navy);border-radius:42% 58% 38% 62%/53% 42% 58% 47%;opacity:0;transform:translateX(24px) rotate(3deg) scale(.94);transition-property:opacity,transform;transition-duration:.65s;transition-timing-function:var(--ease);pointer-events:none}.reel-slide.is-current{opacity:1;transform:translateX(0) rotate(-2deg) scale(1);pointer-events:auto}.reel-slide img{width:100%;height:100%;object-fit:cover;outline:1px solid rgba(255,255,255,.1);outline-offset:-1px}.reel-slide figcaption{position:absolute;inset:auto 16px 18px;width:max-content;max-width:calc(100% - 32px);padding:10px 13px;color:var(--navy);background:var(--yellow);border-radius:12px;font-family:var(--display);font-size:1rem;font-weight:650;box-shadow:0 8px 24px rgba(10,7,44,.22)}.reel-slide figcaption span{display:block;font-family:var(--body);font-size:.67rem;font-weight:900}.reel-controls{position:absolute;z-index:5;right:-7px;bottom:-10px;padding:7px;display:flex;align-items:center;gap:7px;color:var(--paper);background:var(--pink);border-radius:18px;box-shadow:0 14px 30px rgba(10,7,44,.3)}.reel-controls button{width:42px;height:42px;display:grid;place-items:center;border:0;border-radius:12px;color:var(--navy);background:var(--paper);cursor:pointer;transition-property:transform,background-color;transition-duration:.2s}.reel-controls button:hover{background:var(--yellow)}.reel-controls svg{width:20px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.reel-controls p{margin:0;font-size:.75rem;font-variant-numeric:tabular-nums}.reel-controls b{font-family:var(--display);font-size:1.05rem}.reel-controls span{opacity:.7}
.orbit-label{position:absolute;z-index:4;padding:8px 11px;color:var(--navy);background:var(--paper);border-radius:999px;font-size:.68rem;font-weight:950;box-shadow:0 8px 24px rgba(10,7,44,.2);animation:float 4.5s ease-in-out infinite alternate}.orbit-one{top:5%;left:-6%;rotate:-8deg}.orbit-two{top:28%;right:-8%;color:var(--paper);background:var(--blue);rotate:7deg;animation-delay:-1.7s}.orbit-three{left:4%;bottom:4%;background:var(--orange);rotate:4deg;animation-delay:-3s}
.hero-scroll{position:absolute;z-index:5;left:16px;bottom:18px;display:flex;align-items:center;gap:9px;color:oklch(.87 .04 275);font-size:.7rem;font-weight:900;text-decoration:none}.hero-scroll i{width:38px;height:2px;background:var(--yellow);transform-origin:left;animation:pulse-line 1.6s ease-in-out infinite}
@keyframes draw-line{to{transform:scaleX(1)}}@keyframes float{to{transform:translateY(-12px) rotate(3deg)}}@keyframes pulse-line{50%{transform:scaleX(.4);opacity:.45}}
.power-marquee{position:relative;z-index:8;margin-top:-2px;overflow:hidden;color:var(--navy);background:var(--yellow);border-block:4px solid var(--navy);rotate:-1deg}.power-track{width:max-content;padding:16px 0;display:flex;align-items:center;gap:18px;animation:marquee 30s linear infinite}.power-track span{font-family:var(--display);font-size:clamp(1.1rem,4vw,1.65rem);font-weight:650;white-space:nowrap}.power-track i{width:13px;height:13px;background:var(--pink);clip-path:polygon(50% 0,61% 34%,98% 35%,68% 56%,79% 93%,50% 71%,21% 93%,32% 56%,2% 35%,39% 34%)}@keyframes marquee{to{transform:translateX(-50%)}}
.section{padding:clamp(90px,15vw,160px) 16px}.section-intro,.cast-heading,.motion-heading{width:min(100%,1180px);margin:0 auto clamp(38px,7vw,70px)}.section-intro>p,.cast-heading>p,.motion-heading>p,.history-copy>p:first-child,.training-copy>p:first-child,.contact-copy>p:first-child{margin-bottom:10px;color:var(--pink);font-size:.78rem;font-weight:950;letter-spacing:.06em;text-transform:uppercase}.section-intro h2,.cast-heading h2,.motion-heading h2,.history h2,.training h2,.contact h2{margin-bottom:18px;font-size:clamp(2.8rem,9vw,6.4rem);letter-spacing:-.055em}
.attractions{background:var(--cream)}.attraction-console{width:min(100%,1180px);margin:auto;display:grid;gap:18px}.console-tabs{display:flex;gap:8px;overflow-x:auto;padding:4px 4px 10px;scrollbar-width:thin;scroll-snap-type:x mandatory}.console-tabs button{min-height:48px;padding:10px 15px;flex:0 0 auto;border:0;border-radius:999px;color:var(--navy);background:var(--paper);box-shadow:0 5px 14px rgba(31,25,88,.08);font-weight:900;scroll-snap-align:start;cursor:pointer;transition-property:color,background-color,transform;transition-duration:.22s;transition-timing-function:var(--ease)}.console-tabs button[aria-selected="true"]{color:var(--paper);background:var(--pink)}.console-screen{position:relative;overflow:hidden;color:var(--paper);background:var(--navy-deep);border-radius:30px;box-shadow:0 26px 62px rgba(31,25,88,.18)}.console-screen video,.console-screen img{width:100%;height:auto;max-height:720px;aspect-ratio:9/16;object-fit:contain;background:var(--navy-deep);outline:1px solid rgba(255,255,255,.1);outline-offset:-1px}.console-screen [hidden]{display:none}.console-screen.is-switching video,.console-screen.is-switching img{opacity:.18;transform:scale(.985)}.console-screen video,.console-screen img{transition-property:opacity,transform;transition-duration:.25s;transition-timing-function:var(--ease)}.screen-copy{padding:20px;display:flex;gap:16px;align-items:flex-start}.screen-copy>span{color:var(--yellow);font-family:var(--display);font-size:2.2rem;font-weight:700;font-variant-numeric:tabular-nums}.screen-copy h3{margin:2px 0 8px;font-size:clamp(1.9rem,6vw,3.4rem)}.screen-copy p{max-width:46ch;margin:0;color:oklch(.87 .035 275)}
.event-world{position:relative;isolation:isolate;padding:clamp(90px,14vw,150px) 0;overflow:hidden;color:var(--paper);background:var(--orange)}.event-world::before{content:"";position:absolute;z-index:-1;right:-14%;top:-25%;width:60%;aspect-ratio:1;border:clamp(40px,8vw,110px) solid var(--yellow);border-radius:50%;opacity:.9}.event-heading{padding-inline:16px;width:min(100%,1180px);margin:0 auto 60px}.event-heading p{margin-bottom:10px;font-weight:950}.event-heading h2{max-width:10ch;margin:0;font-size:clamp(3.2rem,10vw,7.7rem);letter-spacing:-.06em}.event-lines{border-top:1px solid rgba(255,255,255,.25)}.event-line{padding:22px 16px;display:grid;grid-template-columns:38px 1fr;gap:6px 14px;align-items:center;border-bottom:1px solid rgba(255,255,255,.25);transition-property:background-color,transform;transition-duration:.3s;transition-timing-function:var(--ease)}.event-line:hover{background:rgba(255,255,255,.09);transform:translateX(5px)}.event-line span{font-family:var(--display);font-variant-numeric:tabular-nums}.event-line h3{margin:0;font-size:clamp(2.15rem,8vw,5.6rem);letter-spacing:-.04em}.event-line p{grid-column:2;margin:0;color:oklch(.96 .025 40);font-size:.9rem}
.history{position:relative;isolation:isolate;overflow:hidden;color:var(--paper);background:var(--navy-deep)}.history-year{position:absolute;z-index:-1;top:2%;left:-.04em;color:transparent;font-family:var(--display);font-size:clamp(11rem,40vw,38rem);font-weight:700;line-height:.8;letter-spacing:-.09em;-webkit-text-stroke:2px oklch(.62 .25 350/.25);opacity:.9}.history-copy{width:min(100%,680px);margin-left:auto;padding-top:clamp(150px,30vw,270px)}.history-copy>p:not(:first-child){max-width:62ch;color:oklch(.87 .035 275);font-size:1.05rem}.history-copy ul{margin:42px 0 0;padding:0;display:grid;list-style:none}.history-copy li{padding:18px 0;display:grid;gap:4px;border-top:1px solid rgba(255,255,255,.18)}.history-copy strong{color:var(--yellow);font-family:var(--display);font-size:1.6rem}.history-copy span{color:oklch(.85 .035 275)}
.cast{padding:clamp(90px,13vw,140px) 0;overflow:hidden;color:var(--navy);background:var(--pink)}.cast-heading{padding-inline:16px}.cast-heading>p{color:var(--yellow)}.cast-heading h2{max-width:9ch;color:var(--paper)}.cast-rail{padding:10px max(16px,calc((100vw - 1180px)/2)) 40px;display:flex;gap:18px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-color:var(--yellow) rgba(255,255,255,.14)}.cast-card{position:relative;flex:0 0 min(78vw,390px);aspect-ratio:3/4;margin:0;padding:12px;border-radius:32px;box-shadow:0 22px 50px rgba(78,4,48,.26);scroll-snap-align:center;transition-property:transform,box-shadow;transition-duration:.35s;transition-timing-function:var(--ease)}.cast-card:nth-child(odd){rotate:-2deg}.cast-card:nth-child(even){rotate:2.4deg}.cast-card:hover{transform:translateY(-10px) rotate(-1deg);box-shadow:0 32px 66px rgba(78,4,48,.34)}.cast-card img{width:100%;height:100%;object-fit:cover;border-radius:22px;outline:1px solid rgba(0,0,0,.1);outline-offset:-1px}.cast-card figcaption{position:absolute;inset:auto 22px 22px;padding:10px 13px;color:var(--paper);background:var(--navy);border-radius:12px;font-family:var(--display);font-weight:650}.cast-blue{background:var(--blue)}.cast-yellow{background:var(--yellow)}.cast-pink{background:var(--paper)}.cast-orange{background:var(--orange)}
.training{display:grid;gap:44px;color:var(--navy);background:var(--yellow)}.training-visual{position:relative;width:min(100%,560px);justify-self:center}.training-visual img{width:100%;height:auto;border-radius:43% 57% 39% 61%/55% 42% 58% 45%;box-shadow:18px 20px 0 var(--pink);outline:1px solid rgba(0,0,0,.1);outline-offset:-1px}.training-visual span{position:absolute;right:-5px;bottom:7%;padding:10px 14px;color:var(--paper);background:var(--navy);border-radius:999px;font-family:var(--display);font-size:.8rem;rotate:-5deg}.training-copy{max-width:630px}.training-copy>p:first-child{color:var(--pink)}.training-copy>p:not(:first-child){max-width:62ch;color:oklch(.34 .08 275);font-size:1.04rem}
.motion-section{padding:clamp(90px,14vw,150px) 0;color:var(--paper);background:var(--blue);overflow:hidden}.motion-heading{padding-inline:16px}.motion-heading>p{color:var(--yellow)}.motion-heading h2{font-size:clamp(4rem,15vw,10rem)}.filmstrip{padding:10px max(16px,calc((100vw - 1180px)/2)) 40px;display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory}.film{position:relative;flex:0 0 min(82vw,420px);margin:0;padding:9px 9px 60px;color:var(--navy);background:var(--paper);border-radius:24px;box-shadow:0 20px 50px rgba(10,48,77,.24);scroll-snap-align:center}.film:nth-child(2){rotate:1.5deg}.film video{width:100%;height:auto;aspect-ratio:9/16;object-fit:contain;background:var(--navy-deep);border-radius:16px;outline:1px solid rgba(0,0,0,.1);outline-offset:-1px}.film figcaption{position:absolute;left:20px;bottom:17px;font-family:var(--display);font-size:1.1rem;font-weight:650}
.contact{position:relative;isolation:isolate;padding:clamp(100px,16vw,170px) 16px;display:grid;gap:54px;overflow:hidden;color:var(--paper);background:var(--orange)}.contact-burst{position:absolute;z-index:-1;width:min(95vw,720px);aspect-ratio:1;right:-30%;top:10%;background:var(--pink);clip-path:polygon(50% 0,61% 19%,80% 7%,84% 29%,100% 35%,88% 52%,98% 72%,75% 75%,68% 97%,49% 84%,30% 100%,23% 78%,0 73%,12% 53%,0 36%,21% 29%,22% 7%,42% 19%);rotate:12deg}.contact-copy{max-width:760px}.contact-copy>p:first-child{color:var(--yellow)}.contact-copy>p:not(:first-child){max-width:52ch;font-size:1.08rem}.action-light{color:var(--navy);background:var(--paper);box-shadow:0 16px 35px rgba(99,24,6,.18)}.action-dark{color:var(--paper);background:var(--navy)}.contact-info{padding:26px;display:grid;gap:6px;align-content:center;background:var(--navy);border-radius:28px;box-shadow:15px 15px 0 var(--yellow);font-style:normal}.contact-info span{margin-top:13px;color:var(--yellow);font-size:.72rem;font-weight:950;text-transform:uppercase;letter-spacing:.06em}.contact-info strong{font-size:1.05rem}
footer{padding:52px 16px 110px;display:grid;gap:18px;justify-items:center;color:var(--paper);background:var(--navy-deep);text-align:center}.footer-brand img{width:96px;padding:7px;background:var(--paper);border-radius:25px}.footer-brand{rotate:-3deg}.footer-brand:hover{rotate:2deg}footer p{margin:0;font-family:var(--display);font-size:1.25rem}footer small{color:oklch(.76 .035 275)}.music-credit{margin-top:6px;font-size:.7rem}.music-credit a,.site-credit a{text-decoration-color:var(--yellow);text-underline-offset:3px}.music-credit a:hover,.site-credit a:hover{color:var(--yellow)}.site-credit{margin-top:-8px;font-size:.72rem}
.music-gate{position:fixed;z-index:2000;inset:0;padding:24px;display:grid;place-items:center;overflow:hidden;color:var(--paper);background:var(--navy-deep);opacity:1;visibility:visible;transition-property:opacity,visibility;transition-duration:.45s;transition-timing-function:var(--ease)}.music-gate.is-closing{opacity:0;visibility:hidden;pointer-events:none}.music-gate-content{position:relative;z-index:2;width:min(100%,520px);display:grid;justify-items:center;text-align:center}.music-gate-content>img{width:104px;height:104px;margin-bottom:24px;padding:8px;object-fit:contain;background:var(--paper);border-radius:30px;rotate:-4deg;box-shadow:0 20px 44px rgba(6,4,30,.34)}.music-gate-content>p:first-of-type{margin-bottom:8px;color:var(--yellow);font-size:.78rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.music-gate h2{max-width:8ch;margin:0 0 16px;font-size:clamp(3.4rem,14vw,6.6rem);letter-spacing:-.06em}.music-gate-content>p:last-of-type{margin-bottom:28px;color:oklch(.88 .035 275);font-size:1.05rem}.music-gate-primary,.music-gate-secondary{min-height:54px;border:0;font-weight:950;cursor:pointer;transition-property:transform,background-color,box-shadow;transition-duration:.22s;transition-timing-function:var(--ease)}.music-gate-primary{width:min(100%,330px);padding:14px 22px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--navy);background:var(--yellow);border-radius:18px;box-shadow:0 18px 38px rgba(6,4,30,.28)}.music-gate-primary:hover{background:var(--orange);transform:translateY(-3px)}.music-gate-primary:active,.music-gate-secondary:active{transform:scale(.96)}.music-gate-primary svg{width:23px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.music-gate-secondary{margin-top:10px;padding:10px 18px;color:oklch(.84 .035 275);background:transparent;border-radius:14px}.music-gate-secondary:hover{color:var(--paper);background:rgba(255,255,255,.08)}.music-gate-shape{position:absolute;aspect-ratio:1;pointer-events:none}.music-gate-shape-one{width:min(72vw,620px);right:-22%;top:-28%;border:clamp(34px,8vw,82px) solid var(--pink);border-radius:50%}.music-gate-shape-two{width:min(66vw,520px);left:-24%;bottom:-30%;background:var(--blue);border-radius:42% 58% 68% 32%/48% 42% 58% 52%;rotate:24deg}
.music-toggle{position:fixed;z-index:91;left:14px;bottom:14px;min-width:54px;min-height:54px;padding:11px 16px;display:flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:18px;color:var(--paper);background:var(--navy);box-shadow:0 15px 34px rgba(10,7,44,.3);font-weight:950;cursor:pointer;transition-property:transform,box-shadow,background-color;transition-duration:.22s;transition-timing-function:var(--ease)}.music-toggle:hover{background:var(--pink);transform:translateY(-3px);box-shadow:0 20px 44px rgba(10,7,44,.38)}.music-toggle:active{transform:scale(.96)}.audio-icons{position:relative;width:24px;height:24px;flex:0 0 24px}.audio-icon{position:absolute;inset:0;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition-property:opacity,transform,filter;transition-duration:.22s;transition-timing-function:cubic-bezier(.2,0,0,1)}.audio-icon-on{opacity:0;transform:scale(.25);filter:blur(4px)}.music-toggle.is-playing{color:var(--navy);background:var(--yellow)}.music-toggle.is-playing:hover{background:var(--orange)}.music-toggle.is-playing .audio-icon-off{opacity:0;transform:scale(.25);filter:blur(4px)}.music-toggle.is-playing .audio-icon-on{opacity:1;transform:scale(1);filter:blur(0)}
.floating-contact{position:fixed;z-index:90;right:14px;bottom:14px;min-height:54px;padding:13px 17px;display:flex;align-items:center;justify-content:center;gap:9px;color:var(--paper);background:var(--green);border-radius:18px;box-shadow:0 15px 34px rgba(6,80,35,.28);font-weight:950;text-decoration:none;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(76px);transition-property:transform,box-shadow,opacity,visibility;transition-duration:.22s;transition-timing-function:var(--ease)}.floating-contact.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:none}.floating-contact.is-visible:hover{transform:translateY(-3px);box-shadow:0 20px 44px rgba(6,80,35,.35)}.floating-contact svg{width:23px;fill:currentColor}
.reveal{opacity:0;transform:translateY(34px);filter:blur(3px);transition-property:opacity,transform,filter;transition-duration:.8s;transition-delay:var(--delay,0ms);transition-timing-function:var(--ease)}.reveal.is-visible{opacity:1;transform:none;filter:none}.hero-copy>*{opacity:0;transform:translateY(22px);animation:hero-in .8s var(--ease) forwards}.hero-copy>*:nth-child(1){animation-delay:.1s}.hero-copy>*:nth-child(2){animation-delay:.2s}.hero-copy>*:nth-child(3){animation-delay:.32s}.hero-copy>*:nth-child(4){animation-delay:.44s}.hero-reel{opacity:0;transform:scale(.9) rotate(4deg);animation:reel-in 1s .35s var(--ease) forwards}@keyframes hero-in{to{opacity:1;transform:none}}@keyframes reel-in{to{opacity:1;transform:none}}
@media(min-width:700px){.hero-actions,.contact-actions{flex-direction:row}.action{min-width:190px}.event-line{padding-inline:max(28px,calc((100vw - 1180px)/2));grid-template-columns:50px minmax(240px,.8fr) minmax(260px,1.2fr);gap:24px}.event-line p{grid-column:auto;font-size:1rem}.history-copy ul{grid-template-columns:repeat(3,1fr);gap:18px}.history-copy li{padding-right:18px}.training{grid-template-columns:minmax(320px,.92fr) minmax(0,1.08fr);padding-inline:max(28px,calc((100vw - 1180px)/2));align-items:center}.contact{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);padding-inline:max(28px,calc((100vw - 1180px)/2));align-items:center}.music-toggle{left:22px;bottom:22px}.floating-contact{right:22px;bottom:22px}}
@media(min-width:960px){:root{--header:82px}.site-header{padding-inline:max(28px,calc((100vw - 1240px)/2))}.brand img{width:58px;height:58px}.menu-button{display:none}.site-nav{position:static;inset:auto;padding:0;display:flex;align-items:center;gap:2px;color:var(--paper);background:transparent;border-radius:0;box-shadow:none;opacity:1;visibility:visible;transform:none}.site-nav a{min-height:44px;padding:8px 11px}.site-nav a:hover{background:rgba(255,255,255,.1)}.header-action{min-height:48px;padding:11px 16px;display:inline-flex;align-items:center;color:var(--paper);background:var(--orange);border-radius:16px;font-weight:950;text-decoration:none;box-shadow:0 10px 25px oklch(.69 .22 38/.24)}.hero{padding-inline:28px}.hero-stage{grid-template-columns:minmax(420px,.92fr) minmax(420px,1.08fr);gap:clamp(70px,9vw,140px)}.hero-reel{width:min(42vw,560px)}.hero-scroll{left:max(28px,calc((100vw - 1240px)/2))}.attraction-console{grid-template-columns:280px minmax(0,1fr);align-items:stretch}.console-tabs{padding:6px;display:grid;gap:8px;overflow:visible;background:oklch(.94 .035 80);border-radius:26px}.console-tabs button{width:100%;min-height:60px;justify-content:flex-start;text-align:left;border-radius:18px}.console-screen{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(290px,.8fr);min-height:650px}.console-screen video,.console-screen img{height:650px;max-height:none;aspect-ratio:auto}.screen-copy{padding:34px;align-self:end}.history-copy{padding-top:250px}.cast-card{flex-basis:390px}.film{flex-basis:420px}}
@media(max-width:370px){.hero h1{font-size:3.15rem}.hero-reel{width:84vw}.orbit-label{font-size:.6rem}.action{padding-inline:13px}.music-toggle>span:last-child,.floating-contact span{display:none}.music-toggle,.floating-contact{width:56px;padding:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.power-track{animation:none;flex-wrap:wrap;width:auto;padding-inline:16px}.reveal,.hero-copy>*,.hero-reel{opacity:1;transform:none;filter:none}.orbit-label{animation:none}}

/* Interaction refinements */
.console-tabs{padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;overflow:visible;scroll-snap-type:none}
.console-tabs button{width:100%;min-width:0;min-height:56px;white-space:normal;line-height:1.15}
.console-tabs button:last-child:nth-child(odd){grid-column:1/-1}
.console-screen{overflow:visible;background:transparent;border-radius:0;box-shadow:none}
.console-screen video,.console-screen img{width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;background:transparent;border-radius:26px;box-shadow:0 22px 48px rgba(31,25,88,.15);outline:1px solid rgba(0,0,0,.1);outline-offset:-1px}
.screen-copy{margin-top:14px;padding:24px;color:var(--paper);background:var(--navy-deep);border-radius:26px;box-shadow:0 18px 42px rgba(31,25,88,.14)}
.rail-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:22px}
.rail-heading>div:first-child{min-width:0}
.cast-heading>div>p{color:var(--yellow)}
.motion-heading>div>p{color:var(--yellow)}
.rail-buttons{display:flex;flex:0 0 auto;gap:8px}
.rail-buttons button{width:48px;height:48px;display:grid;place-items:center;border:0;border-radius:15px;color:var(--paper);background:var(--navy);box-shadow:0 10px 24px rgba(78,4,48,.2);cursor:pointer;transition-property:transform,background-color,opacity;transition-duration:.22s;transition-timing-function:var(--ease)}
.rail-buttons button:hover{color:var(--navy);background:var(--yellow)}
.rail-buttons button:active{transform:scale(.96)}
.rail-buttons button:disabled{opacity:.38;cursor:not-allowed}
.rail-buttons svg{width:22px;fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}
.rail-buttons-dark button{color:var(--navy);background:var(--paper)}
.rail-buttons-dark button:hover{background:var(--yellow)}

@media(max-width:959px){
  .hero{min-height:0;padding:calc(var(--header) + 20px) 0 0}
  .hero-stage{gap:0}
  .hero-reel{grid-row:1;width:min(100%,460px);margin:0 auto;padding-inline:16px}
  .reel-slide{border-radius:28px 28px 64px 28px}
  .reel-slide figcaption,.orbit-label{display:none}
  .reel-controls{right:28px;bottom:-18px}
  .hero-copy{z-index:7;grid-row:2;margin-top:14px;padding:34px 16px 92px;color:var(--navy);background:var(--cream);border-radius:34px 34px 0 0}
  .hero-kicker{margin-bottom:16px;color:var(--navy)}
  .hero h1{max-width:none;margin-bottom:20px;font-size:clamp(2.85rem,12.2vw,4.25rem);line-height:.96}
  .hero h1 span,.hero h1 em{display:block}
  .hero h1 span{white-space:nowrap}
  .hero h1 em{width:max-content;max-width:100%;color:var(--orange);white-space:nowrap}
  .hero h1 em::after{left:2%;right:0;bottom:-.07em;height:.075em}
  .hero-copy>p:last-of-type{max-width:36ch;color:var(--navy)}
  .hero-actions{position:relative;z-index:2}
  .hero .action-ghost{color:var(--navy);background:var(--paper);box-shadow:inset 0 0 0 1px rgba(31,25,88,.16)}
  .hero-scroll{display:none}
  .console-screen{display:block;min-height:0}
  .screen-copy{margin-top:12px}
}

@media(min-width:700px) and (max-width:959px){
  .console-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
  .console-tabs button:last-child:nth-child(odd){grid-column:auto}
}

@media(min-width:960px){
  .hero-copy{margin-top:0}
  .console-tabs{grid-template-columns:1fr;padding:6px}
  .console-tabs button:last-child:nth-child(odd){grid-column:auto}
  .console-screen{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);min-height:0;gap:22px;align-items:center}
  .console-screen video,.console-screen img{width:auto;max-width:100%;height:auto;max-height:720px;aspect-ratio:auto;justify-self:center}
  .screen-copy{align-self:stretch;margin:0;padding:38px;display:flex;align-items:flex-start;justify-content:flex-end;border-radius:30px;box-shadow:0 22px 50px rgba(31,25,88,.16)}
}

@media(max-width:540px){
  .rail-heading{align-items:flex-start}
  .rail-heading h2{margin-bottom:0;font-size:clamp(2.55rem,12vw,4rem)}
  .rail-buttons{padding-top:20px}
  .rail-buttons button{width:44px;height:44px}
  .music-toggle>span:last-child{display:none}
  .music-toggle{width:54px;padding:0}
}

.music-gate-primary:focus-visible{outline-color:var(--paper)}
