:root{--black:#080a09;--white:#f4f7f0;--acid:#b9ff2c;--grey:#a5aba2;--line:rgba(244,247,240,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--white);font-family:Manrope,Arial,sans-serif;overflow-x:hidden}.grain{position:fixed;inset:0;pointer-events:none;opacity:.18;z-index:20;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.14'/%3E%3C/svg%3E")}.nav{height:78px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:absolute;width:100%;z-index:10}.wordmark{color:var(--white);text-transform:uppercase;text-decoration:none;font-size:.78rem;font-weight:800;letter-spacing:.12em;display:flex;gap:11px;align-items:center}.wordmark span{width:12px;height:12px;background:var(--acid);border-radius:2px;box-shadow:0 0 18px var(--acid)}.nav-cta{color:var(--white);font-size:.82rem;text-decoration:none;border-bottom:1px solid var(--white);padding-bottom:5px}.nav-cta span{color:var(--acid)}.hero{min-height:100vh;display:grid;grid-template-columns:53% 47%;padding-top:78px}.hero-copy{padding:10vh 4vw 5vh;display:flex;flex-direction:column;justify-content:center}.eyebrow,.section-number{font-family:"DM Mono",monospace;color:var(--acid);font-size:.72rem;letter-spacing:.13em;text-transform:uppercase}.hero h1,.concept h2,.screen-map h2,.sponsor h2{font-size:clamp(3.7rem,7.2vw,8.6rem);font-weight:600;line-height:.91;letter-spacing:-.065em;margin:4vh 0 3vh}.hero h1 em,.sponsor h2 em{font-family:Georgia,serif;font-weight:400}.hero h1 em{color:var(--acid)}.lede{color:#cbd0c7;font-size:clamp(1rem,1.35vw,1.3rem);line-height:1.6;max-width:650px;margin:0}.hero-actions{display:flex;align-items:center;gap:28px;margin:5vh 0}.button{display:inline-flex;align-items:center;justify-content:center;gap:35px;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:800;min-height:55px}.primary{background:var(--acid);color:var(--black);padding:0 25px}.primary:hover{box-shadow:0 0 35px rgba(185,255,44,.35)}.text-button{color:var(--white);border-bottom:1px solid var(--line)}.event-line{display:flex;border-top:1px solid var(--line);padding-top:22px;gap:clamp(25px,5vw,85px)}.event-line div{display:flex;flex-direction:column}.event-line strong{font-family:"DM Mono",monospace;font-size:.9rem}.event-line span{font-size:.68rem;color:var(--grey);margin-top:6px}.hero-visual{position:relative;background:#171a17;overflow:hidden;min-height:680px}.portrait-stage{height:100%;width:100%;perspective:1200px;cursor:grab;touch-action:none;display:flex;align-items:center;justify-content:center}.portrait-stage:active{cursor:grabbing}.portrait-card{position:absolute;inset:-4%;transform-style:preserve-3d;will-change:transform;transition:transform .12s ease-out}.portrait-card img{width:100%;height:100%;object-fit:cover;object-position:center 45%;filter:saturate(.78) contrast(1.08) brightness(.8);user-select:none}.portrait-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(8,10,9,.75)),linear-gradient(90deg,rgba(8,10,9,.3),transparent 45%)}.light-sweep{position:absolute;inset:-20%;background:linear-gradient(105deg,transparent 40%,rgba(185,255,44,.16) 49%,transparent 57%);mix-blend-mode:screen;animation:sweep 6s infinite}.screen-pulse{position:absolute;width:17px;height:21px;background:var(--acid);filter:blur(7px);opacity:.8;animation:pulse 2.3s infinite alternate}.p1{top:39%;left:48%}.p2{top:51%;left:55%;animation-delay:.7s}.p3{top:59%;left:45%;animation-delay:1.2s}.orbit-note{position:absolute;z-index:4;top:26px;right:28px;font-family:"DM Mono";font-size:.67rem;text-transform:uppercase;letter-spacing:.12em;background:rgba(8,10,9,.7);padding:10px 13px}.orbit-note span{color:var(--acid)}.visual-caption{position:absolute;z-index:4;bottom:26px;left:28px;display:flex;gap:12px;font-family:"DM Mono";font-size:.62rem;line-height:1.6;text-transform:uppercase}.visual-caption span{color:var(--acid)}.visual-caption p{margin:0}.ticker{background:var(--acid);color:var(--black);overflow:hidden;white-space:nowrap;padding:15px 0;font-family:"DM Mono";font-weight:500;font-size:.78rem;letter-spacing:.11em}.ticker div{animation:marquee 20s linear infinite}.ticker span{margin:0 2.5vw}.concept{padding:11vh 4vw;border-bottom:1px solid var(--line)}.concept-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:9vw}.concept h2,.screen-map h2{font-size:clamp(3.3rem,5.6vw,6.5rem);margin:5vh 0 0}.concept-copy>p{font-size:clamp(1.2rem,1.8vw,1.8rem);line-height:1.5;margin:5vh 0 7vh;color:#d8dcd5}.feature-list>div{display:grid;grid-template-columns:45px 150px 1fr;border-top:1px solid var(--line);padding:22px 0;align-items:start}.feature-list span{font-family:"DM Mono";color:var(--acid);font-size:.7rem}.feature-list strong{font-size:.88rem}.feature-list p{margin:0;color:var(--grey);font-size:.84rem;line-height:1.55}.screen-map{display:grid;grid-template-columns:1fr 1fr;gap:7vw;padding:12vh 8vw;background:#101310}.map-copy>p:not(.section-number){color:var(--grey);max-width:500px;line-height:1.7}.selection-readout{margin-top:7vh;display:flex;align-items:center;gap:18px}.selection-readout>span{font-size:4.5rem;line-height:1;color:var(--acid);font-weight:700}.selection-readout p{margin:0;text-transform:uppercase;font-family:"DM Mono";font-size:.72rem;line-height:1.5}.selection-readout small{color:var(--grey)}.display-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-content:center;max-width:470px;margin:auto;width:100%}.display-tile{aspect-ratio:1;background:#1b1f1a;border:1px solid #373d35;border-radius:18px;box-shadow:inset 0 0 0 7px #252a24,0 12px 25px rgba(0,0,0,.2);color:#777e73;font-family:"DM Mono";font-size:.72rem;cursor:pointer;transition:.2s;display:grid;place-items:center}.display-tile:hover{border-color:var(--acid);transform:translateY(-3px)}.display-tile.active{background:var(--acid);color:var(--black);border-color:var(--acid);box-shadow:0 0 30px rgba(185,255,44,.28),inset 0 0 0 7px #d4ff7b}.sponsor{padding:13vh 4vw 5vh;background:var(--acid);color:var(--black)}.sponsor .section-number{color:var(--black)}.sponsor-inner{max-width:1200px;margin:auto}.sponsor h2{font-size:clamp(4rem,8vw,9rem);margin:6vh 0 5vh}.sponsor-inner>p{font-size:clamp(1.1rem,1.8vw,1.6rem);line-height:1.55;max-width:650px}.cta-row{display:flex;align-items:center;gap:40px;margin-top:6vh}.primary.light{background:var(--black);color:var(--white)}.cta-row p{font-family:"DM Mono";font-size:.68rem;line-height:1.6;text-transform:uppercase}.disclaimer{margin-top:12vh;font-family:"DM Mono";font-size:.6rem;text-transform:uppercase;opacity:.65}footer{height:120px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;font-family:"DM Mono";font-size:.65rem;text-transform:uppercase}footer p{color:var(--grey)}footer>a:last-child{color:var(--white);text-decoration:none}@keyframes sweep{0%,25%{transform:translateX(-55%)}65%,100%{transform:translateX(55%)}}@keyframes pulse{to{opacity:.25;transform:scale(.7)}}@keyframes marquee{to{transform:translateX(-40%)}}
@media(max-width:900px){.hero{grid-template-columns:1fr}.hero-copy{min-height:80vh;padding-top:13vh}.hero-visual{min-height:78vh}.concept-grid,.screen-map{grid-template-columns:1fr}.screen-map{padding:10vh 5vw}.display-grid{margin-top:6vh}.concept-copy{padding-top:0}.event-line{justify-content:space-between}.feature-list>div{grid-template-columns:35px 115px 1fr}.sponsor h2{letter-spacing:-.055em}.cta-row{align-items:flex-start;flex-direction:column}footer p{display:none}}
@media(max-width:560px){.nav{height:66px}.nav-cta{font-size:.7rem}.wordmark{font-size:.68rem}.hero{padding-top:66px}.hero-copy{padding:9vh 5vw 5vh;min-height:720px}.hero h1{font-size:3.7rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:16px}.hero-visual{min-height:690px}.portrait-card{inset:-2% -20%}.portrait-card img{object-position:center}.concept{padding:9vh 5vw}.feature-list>div{grid-template-columns:30px 1fr}.feature-list p{grid-column:2;margin-top:8px}.sponsor{padding:10vh 5vw 4vh}.sponsor h2{font-size:3.8rem}.cta-row .button{width:100%;gap:16px;padding:0 14px}.event-line{gap:10px}.display-grid{gap:9px}.display-tile{border-radius:12px}footer{padding:0 5vw}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}.ticker div,.light-sweep,.screen-pulse{animation:none}.portrait-card{transition:none}}

.upload-label{display:block;font-weight:700;margin:24px 0 12px}input[type=file]{font:inherit;max-width:100%;color:var(--white)}input[type=file]::file-selector-button{background:var(--acid);border:0;padding:12px 16px;margin-right:12px;font:inherit;cursor:pointer}#uploadHelp,.preview-note{font-size:.875rem}.preview-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:24px}.preview-actions button{border:0;cursor:pointer;font-family:inherit}.preview-actions .text-button{background:transparent;border-bottom:1px solid var(--line)}button:disabled{opacity:.4;cursor:not-allowed}.display-tile{overflow:hidden;padding:9px;cursor:default}.display-tile img{width:100%;height:100%;min-height:0;object-fit:contain;border-radius:8px;background:#080a09}.display-tile:hover{transform:none}#previewStatus{min-height:3em;color:var(--acid)}:focus-visible{outline:3px solid #8f5bff;outline-offset:5px}.button,.nav-cta,.feature-list p,.feature-list strong{font-size:.875rem}.visual-caption,.orbit-note,.event-line span,.section-number,.eyebrow,.disclaimer{font-size:.75rem}

.booking-rules{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:40px;border-top:1px solid #080a0950;padding-top:28px}.booking-rules strong{font-size:1.2rem}.booking-rules p{font-size:1rem;line-height:1.6}.sponsor-inner>.terms-pending{font-size:.875rem;max-width:800px}.cta-row p{font-size:.875rem}@media(max-width:700px){.booking-rules{grid-template-columns:1fr;gap:12px}}

.character-viewer{position:relative;background:#171a17;display:flex;flex-direction:column;align-items:center;padding:24px 16px 28px;overflow:hidden;width:100%}.character-canvas{display:block;max-width:100%;width:auto;height:min(65vh,700px);aspect-ratio:1/2;object-fit:contain;touch-action:pan-y;cursor:grab}.character-canvas:active{cursor:grabbing}.hero-visual{display:flex;align-items:center;justify-content:center;min-height:740px}.viewer-kicker{font-family:'DM Mono',monospace;font-size:.75rem;letter-spacing:.12em;color:var(--acid);margin:0 0 8px}.turn-controls{display:flex;gap:20px;align-items:center;justify-content:center;width:100%}.turn-controls button{border:1px solid #66705f;border-radius:50%;background:#20261e;color:var(--white);width:44px;height:44px;font-size:1.4rem;cursor:pointer}.turn-controls button:hover{border-color:var(--acid);color:var(--acid)}.view-label{font-family:'DM Mono',monospace;font-size:.875rem;min-width:165px;text-align:center}.viewer-help{color:var(--grey);font-size:.875rem;margin:12px 0}.viewer-link{color:var(--acid);font-size:.875rem;padding:8px}.preview-character{align-self:start;border:1px solid var(--line);border-radius:18px}.preview-character .character-canvas{height:auto;width:100%;max-width:350px}.map-copy .display-grid{grid-template-columns:repeat(6,1fr);gap:8px;margin:28px 0 0;max-width:100%}.map-copy .display-tile{border-radius:9px;padding:5px;box-shadow:none;font-size:.75rem}.map-copy .display-tile img{border-radius:4px}.screen-map{align-items:start}.booking-rules strong{line-height:1.4;display:block}@media(max-width:900px){.hero-visual{min-height:650px}.character-canvas{height:560px}.preview-character{max-width:470px;margin:0 auto}.screen-map{gap:36px}}@media(max-width:560px){.hero-visual{min-height:610px}.character-canvas{height:500px}.character-viewer{padding-inline:10px}.turn-controls{gap:12px}.map-copy .display-grid{gap:6px}}

.day-picker{max-width:860px;margin-top:40px;padding:28px;border:1px solid #080a0950}.day-picker fieldset{padding:0;margin:0;border:0}.day-picker legend{font-size:1.4rem;font-weight:800}.day-picker #dayHelp{font-size:1rem;line-height:1.5}.day-options{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}.day-option{display:flex;align-items:center;gap:16px;border:2px solid #080a0960;padding:24px;cursor:pointer}.day-option:has(input:checked){background:#080a09;color:#f4f7f0;border-color:#080a09}.day-option input{width:24px;height:24px;accent-color:#b9ff2c;flex-shrink:0}.day-option>span{display:flex;flex-direction:column;gap:8px}.day-option strong{font-size:1.25rem}.day-option span span{font-size:.875rem;line-height:1.5}.price-summary{border-top:1px solid #080a0950;margin-top:28px;padding-top:24px}.price-summary>div{display:flex;align-items:center;justify-content:space-between;gap:16px}.price-summary strong{font-size:clamp(2rem,5vw,3rem);font-variant-numeric:tabular-nums}.price-summary p,.booking-note{font-size:.875rem;line-height:1.6}.booking-note{margin-top:24px;overflow-wrap:anywhere}.booking-note a{color:inherit}.day-picker .cta-row{margin-top:24px;gap:24px}.day-picker .cta-row p{text-transform:none;font-size:.875rem}.day-picker button{border:0;font-family:inherit;cursor:pointer}.day-picker button:disabled{cursor:not-allowed;opacity:.45}@media(max-width:560px){.day-picker{padding:20px 14px}.day-options{grid-template-columns:1fr}.day-option{padding:18px}.price-summary>div{align-items:flex-start;flex-direction:column;gap:8px}}

[hidden]{display:none!important}.checkout-steps{display:flex;list-style:none;gap:24px;padding:0 0 24px;margin:0 0 28px;border-bottom:1px solid #080a0950;font-size:.875rem;flex-wrap:wrap}.checkout-steps li{opacity:.6}.checkout-steps [aria-current]{font-weight:800;opacity:1}.package-options{margin-top:32px!important}.package-options .day-option{margin-top:16px}.package-price{display:block;font-size:1.1rem!important;margin-top:8px}.checkout-step h3,#successStep h3{font-size:1.6rem;line-height:1.3;margin-top:0}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px}.contact-fields label{font-size:1rem;font-weight:700}.contact-fields label span{font-weight:400}.contact-fields input{display:block;width:100%;margin-top:10px;padding:14px 12px;border:1px solid #080a0980;border-radius:0;background:#efffd4;color:#080a09;font:inherit}.checkout-actions{display:flex;gap:20px;align-items:center;margin-top:28px}.checkout-actions .primary{margin-left:auto;min-width:190px}.checkout-back{background:transparent;color:inherit;text-decoration:underline;padding:16px;font-size:1rem}.review-details{display:grid;grid-template-columns:140px 1fr;gap:16px;line-height:1.5;overflow-wrap:anywhere}.review-details dt{font-weight:700}.review-details dd{margin:0}.agreement{display:flex;gap:14px;line-height:1.6;margin-top:30px}.agreement input{width:22px;height:22px;flex-shrink:0;margin-top:3px;accent-color:#080a09}.success-mark{display:grid;place-items:center;width:54px;height:54px;border:2px solid currentColor;border-radius:50%;font-size:2rem;margin-bottom:24px}#successStep p{line-height:1.6}#successStep a{color:inherit;overflow-wrap:anywhere}#orderError{padding:16px;border:2px solid #8b1b0e;background:#fff3d6;color:#72190e;line-height:1.5}.trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.day-option input[type=radio]{accent-color:#b9ff2c}@media(max-width:560px){.contact-fields{grid-template-columns:1fr}.checkout-steps{gap:16px;font-size:.875rem}.review-details{grid-template-columns:1fr;gap:6px}.review-details dd{margin-bottom:14px}.checkout-actions{gap:8px}.checkout-actions .primary{min-width:0;flex:1;padding:0 16px}} 
.contact-preferences{margin-top:28px!important}.contact-preferences legend{font-size:1.1rem}.contact-preferences p{font-size:.875rem;line-height:1.5}.contact-options{display:flex;flex-wrap:wrap;gap:12px}.contact-options label{display:flex;align-items:center;gap:10px;border:1px solid #080a0980;padding:14px 18px;cursor:pointer}.contact-options input{width:22px;height:22px;accent-color:#080a09}.contact-options label:has(input:checked){background:#080a09;color:#b9ff2c}#contactError{font-weight:700}

.day-option-unavailable{grid-column:1/-1;cursor:not-allowed;border-style:dashed;background:rgba(8,10,9,.08)}.day-option-unavailable input{opacity:.55}.day-option-unavailable strong,.day-option-unavailable span{opacity:.78}
