:root{--accent: #ff2b2b;--ink: #060608;--paper: #f2efe9;font-size:16px}*{box-sizing:border-box;margin:0;padding:0}html{scrollbar-width:thin;scrollbar-color:#2a2a30 #0a0a0c}body{background:var(--ink);color:var(--paper);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit}button{font:inherit;cursor:pointer}#track{height:900vh}#gl{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0}#gl canvas{display:block;width:100%;height:100%}#ui{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;pointer-events:none}#ui a,#ui button{pointer-events:auto}.mono{font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.08em}.brandbar{position:fixed;inset:0 0 auto 0;height:3px;z-index:50;display:flex}.brandbar span{flex:1}.nav{position:fixed;inset:3px 0 auto 0;z-index:40;display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.25rem;font-size:.72rem;text-transform:uppercase}.nav .wordmark img{height:26px;display:block;opacity:.95}.nav .right{display:flex;align-items:center;gap:1rem}.nav .clock{opacity:.55}.nav .mode-btn{pointer-events:auto;background:transparent;color:var(--paper);border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:.42rem 1rem;text-transform:uppercase;letter-spacing:.14em;font-size:.68rem;transition:border-color .3s,color .3s,box-shadow .3s}.nav .mode-btn:hover{border-color:var(--accent);color:var(--accent)}.nav .mute-btn{pointer-events:auto;display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;flex:none;background:transparent;color:var(--paper);border:1px solid rgba(255,255,255,.28);border-radius:999px;font-size:.8rem;line-height:1;transition:border-color .3s,color .3s,opacity .3s}.nav .mute-btn:hover{border-color:var(--accent);color:var(--accent)}.nav .mute-btn.muted{color:#fff6;border-color:#ffffff2e}.hud{opacity:.55}@media (max-width: 720px){.nav .clock,.hud{display:none}}.dots{position:fixed;right:1.1rem;top:50%;transform:translateY(-50%);z-index:40;display:flex;flex-direction:column;gap:.9rem}.dots button{pointer-events:auto;position:relative;width:9px;height:9px;border-radius:50%;border:1px solid rgba(255,255,255,.45);background:transparent;padding:0;transition:background .3s,border-color .3s,transform .3s}.dots button.active{background:var(--accent);border-color:var(--accent);transform:scale(1.35)}.dots button .tip{position:absolute;right:1.4rem;top:50%;transform:translateY(-50%);font-size:.62rem;letter-spacing:.14em;white-space:nowrap;opacity:0;transition:opacity .25s;pointer-events:none;text-transform:uppercase;color:#ffffffd9;background:#060608b3;padding:.2rem .5rem;border-radius:4px}.dots button:hover .tip,.dots button.active .tip{opacity:1}@media (max-width: 720px){.dots{right:.55rem;gap:.7rem}.dots button .tip{display:none}}.hero-title{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;text-align:center;transition:opacity .4s;pointer-events:none}.hero-title h1{font-size:clamp(3rem,11vw,8.5rem);font-weight:850;letter-spacing:-.03em;line-height:.93;text-shadow:0 6px 60px rgba(0,0,0,.6)}.hero-title h1 .pre{display:block;font-size:.5em;letter-spacing:.02em;opacity:.92}.hero-title p{margin-top:1.1rem;font-size:clamp(.95rem,2.4vw,1.3rem);opacity:.8}.hero-title .hint{margin-top:2.4rem;font-size:.66rem;letter-spacing:.3em;text-transform:uppercase;opacity:.5;animation:bob 2s ease-in-out infinite}@keyframes bob{50%{transform:translateY(7px)}}.finale{position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;display:grid;place-items:center;text-align:center;opacity:0;pointer-events:none;transition:opacity .3s}.finale .kicker{font-size:.7rem;letter-spacing:.3em;color:var(--accent);text-transform:uppercase}.finale .map{margin-top:.9rem;font-size:clamp(.9rem,2.2vw,1.15rem);opacity:.75}.finale h2{margin-top:1.6rem;font-size:clamp(2.4rem,8.5vw,6.5rem);font-weight:850;letter-spacing:-.03em;line-height:.95;text-shadow:0 6px 60px rgba(0,0,0,.6)}.finale h2 .pre{display:block;font-size:.5em;letter-spacing:.02em;opacity:.92}.finale .ctas{margin-top:2.4rem;display:flex;gap:.9rem;justify-content:center;align-items:center;flex-wrap:wrap}.finale .cta{background:var(--accent);color:#fff;text-decoration:none;border:0;font-family:inherit;cursor:pointer;font-weight:800;letter-spacing:.18em;font-size:.82rem;padding:.85rem 2rem;border-radius:999px;transition:transform .25s,box-shadow .25s}.finale .cta:hover{transform:scale(1.05);box-shadow:0 0 40px -6px var(--accent)}.finale .ghost{background:transparent;color:var(--paper);text-decoration:none;border:1px solid rgba(255,255,255,.3);border-radius:999px;font-weight:700;letter-spacing:.16em;font-size:.74rem;padding:.85rem 1.6rem;text-transform:uppercase;transition:border-color .3s,color .3s}.finale .ghost:hover{border-color:var(--accent);color:var(--accent)}body.contact-open{overflow:hidden}.contact-modal[hidden]{display:none}.contact-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:140;display:grid;place-items:center;padding:1.25rem;background:#030305d1;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);pointer-events:auto;animation:contact-in .3s ease both}@keyframes contact-in{0%{opacity:0}}.contact-panel{position:relative;width:min(820px,100%);max-height:calc(100dvh - 2.5rem);overflow:auto;padding:clamp(1.45rem,4vw,3rem);color:var(--paper);background:linear-gradient(90deg,#f63f2f 0,#f63f2f 20%,#fe720c 20%,#fe720c 40%,#feca0d 40%,#feca0d 60%,#7fc527 60%,#7fc527 80%,#1f93e0 80%) top / 100% 4px no-repeat,radial-gradient(circle at 92% 0%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 34%),#0c0c10;border:1px solid rgba(255,255,255,.14);border-radius:18px;box-shadow:0 28px 90px #0000009e;animation:contact-panel-in .42s cubic-bezier(.2,.8,.2,1) both}@keyframes contact-panel-in{0%{opacity:0;transform:translateY(18px) scale(.985)}}.contact-close{position:absolute;top:1.15rem;right:1.15rem;display:grid;place-items:center;width:2.35rem;height:2.35rem;padding:0;border-radius:50%;color:#ffffffbf;background:#ffffff0d;border:1px solid rgba(255,255,255,.16);transition:color .2s,border-color .2s,transform .2s}.contact-close:hover{color:var(--accent);border-color:var(--accent);transform:rotate(5deg)}.contact-head{padding-right:3rem}.contact-kicker{margin-bottom:.65rem;color:var(--accent);font-size:.64rem;letter-spacing:.28em;text-transform:uppercase}.contact-head h2{font-size:clamp(2.2rem,6vw,4.2rem);line-height:.9;letter-spacing:-.045em;font-weight:870}.contact-head p{max-width:520px;margin-top:1rem;color:#f2efe9a3;font-size:.88rem;line-height:1.55}.contact-form{margin-top:clamp(1.5rem,4vw,2.3rem)}.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.15rem}.field{min-width:0;display:flex;flex-direction:column;gap:.48rem}.field>span:first-child{color:#f2efe9ad;font-size:.65rem;font-weight:750;letter-spacing:.15em;text-transform:uppercase}.field input:not([type=range]),.field select{width:100%;min-height:3rem;padding:.78rem .9rem;color:var(--paper);background:#ffffff0b;border:1px solid rgba(255,255,255,.15);border-radius:8px;outline:none;color-scheme:dark;font:inherit;font-size:.88rem;transition:border-color .2s,background .2s,box-shadow .2s}.field input::placeholder{color:#f2efe947}.field input:not([type=range]):hover,.field select:hover{border-color:#ffffff4d}.field input:not([type=range]):focus,.field select:focus{border-color:var(--accent);background:#fff1;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.field-budget{position:relative;grid-column:1 / -1;padding:1rem 1.05rem .85rem;background:#ffffff09;border:1px solid rgba(255,255,255,.11);border-radius:10px}.field-budget output{position:absolute;top:.82rem;right:1.05rem;color:var(--paper);font-size:.9rem;font-weight:800}.field-budget input[type=range]{width:100%;height:18px;margin-top:.35rem;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent;cursor:ew-resize}.field-budget input[type=range]::-webkit-slider-runnable-track{height:3px;border-radius:99px;background:linear-gradient(90deg,rgba(255,255,255,.2),var(--accent))}.field-budget input[type=range]::-webkit-slider-thumb{width:18px;height:18px;margin-top:-7.5px;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--paper);border:4px solid var(--accent);border-radius:50%;box-shadow:0 0 20px color-mix(in srgb,var(--accent) 50%,transparent)}.field-budget input[type=range]::-moz-range-track{height:3px;border-radius:99px;background:linear-gradient(90deg,rgba(255,255,255,.2),var(--accent))}.field-budget input[type=range]::-moz-range-thumb{width:12px;height:12px;background:var(--paper);border:4px solid var(--accent);border-radius:50%}.range-labels{display:flex;justify-content:space-between;color:#f2efe959;font-size:.55rem;letter-spacing:.09em}.range-labels i{font-style:normal}.contact-trap{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}.contact-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1.25rem}.contact-note{max-width:250px;color:#f2efe966;font-size:.68rem;line-height:1.5}.contact-submit{display:inline-flex;align-items:center;justify-content:center;gap:1rem;min-width:220px;padding:.9rem 1.25rem;color:#fff;background:var(--accent);border:0;border-radius:999px;font-size:.74rem;font-weight:850;letter-spacing:.16em;box-shadow:0 14px 36px color-mix(in srgb,var(--accent) 24%,transparent);transition:transform .2s,box-shadow .2s,opacity .2s}.contact-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 18px 46px color-mix(in srgb,var(--accent) 35%,transparent)}.contact-submit i{font-style:normal;font-size:1rem;transition:transform .2s}.contact-submit:hover:not(:disabled) i{transform:translate(3px)}.contact-submit:disabled{cursor:wait;opacity:.7}.contact-status{display:none;margin-top:1rem;padding:.8rem 1rem;border-radius:8px;font-size:.78rem;line-height:1.45}.contact-status.show{display:block;color:#f2efe9bf;background:#ffffff0d}.contact-status.success{color:#bcecb0;background:#51ae3d1f;border:1px solid rgba(116,221,93,.24)}.contact-status.error{color:#ffaaa4;background:#ff3b301a;border:1px solid rgba(255,59,48,.22)}@media (max-width: 640px){.contact-modal{padding:0;align-items:end}.contact-panel{width:100%;max-height:calc(100dvh - .5rem);padding:1.55rem 1rem 1.2rem;border-radius:18px 18px 0 0}.contact-close{top:1rem;right:1rem}.contact-head{padding-right:2.7rem}.contact-head h2{font-size:clamp(2.45rem,14vw,3.4rem)}.contact-grid{grid-template-columns:1fr;gap:.85rem}.field-budget{grid-column:auto}.contact-actions{align-items:stretch;flex-direction:column}.contact-note{max-width:none;text-align:center}.contact-submit{width:100%}}.card{position:fixed;top:50%;left:9vw;z-index:30;width:min(355px,calc(100vw - 4.5rem));padding:1.15rem 1.3rem;background:#08080ba8;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.1);border-left:3px solid var(--accent);border-radius:10px;opacity:0;transform:translateY(calc(-50% + 18px));transition:opacity .45s,transform .45s;pointer-events:none}.card.right{left:auto;right:9vw}.card.show{opacity:1;transform:translateY(-50%);pointer-events:auto}.card .kicker{font-size:.6rem;letter-spacing:.26em;color:var(--accent);text-transform:uppercase}.card h2{margin:.45rem 0 .55rem;font-size:1.45rem;font-weight:800;letter-spacing:.02em}.card p{font-size:.85rem;line-height:1.55;color:#f2efe9d1}.card ul{margin-top:.75rem;list-style:none}.card li{font-size:.72rem;letter-spacing:.06em;padding:.24rem 0;color:#f2efe999}.card li:before{content:"— ";color:var(--accent)}.card .cta{display:inline-block;margin-top:.9rem;background:var(--accent);color:#fff;text-decoration:none;border:0;font-family:inherit;cursor:pointer;font-weight:800;letter-spacing:.18em;font-size:.78rem;padding:.75rem 1.6rem;border-radius:999px;transition:transform .25s,box-shadow .25s}.card .cta:hover{transform:scale(1.04);box-shadow:0 0 36px -6px var(--accent)}.card .cta-ig{display:inline-block;margin:.7rem 0 0 .7rem;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:#f2efe9b3;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:2px;transition:color .25s,border-color .25s}.card .cta-ig:hover{color:var(--accent);border-color:var(--accent)}@media (max-width: 720px){.card,.card.right{left:1rem;right:3.4rem;top:auto;bottom:4.6rem;width:auto;transform:translateY(18px)}.card.show{transform:none}.card p{font-size:.8rem}}.footer{position:fixed;inset:auto 0 0 0;z-index:40;display:flex;align-items:center;justify-content:space-between;padding:.7rem 1.25rem;font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;background:linear-gradient(transparent,#060608d1)}.footer a{text-decoration:none;opacity:.9}.footer a:hover{color:var(--accent);opacity:1}.footer .loc{opacity:.4}@media (max-width: 720px){.footer .loc{display:none}}.gate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;text-align:center;background:var(--ink);transition:opacity .8s;pointer-events:auto}.gate.leaving{opacity:0;pointer-events:none}.gate .inner{padding:1.5rem}.gate .word img{height:34px;display:block;margin:0 auto;opacity:.9}.gate .bar{width:min(220px,60vw);height:2px;margin:1.6rem auto;background:#ffffff1f;overflow:hidden;border-radius:2px}.gate .bar i{display:block;height:100%;width:0%;background:var(--paper);transition:width .3s}.gate .q{font-size:clamp(1.7rem,5.5vw,3.2rem);font-weight:850;letter-spacing:-.02em;opacity:0;transform:translateY(12px);transition:opacity .6s,transform .6s}.gate .choices{margin-top:2.2rem;display:flex;gap:.8rem;justify-content:center;flex-wrap:wrap;opacity:0;transform:translateY(12px);transition:opacity .6s .15s,transform .6s .15s}.gate.ready .q,.gate.ready .choices{opacity:1;transform:none}.gate .choices button{background:transparent;color:var(--paper);border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:.95rem 2.1rem;font-weight:800;letter-spacing:.2em;font-size:.8rem;transition:border-color .3s,color .3s,box-shadow .3s,transform .2s}.gate .choices button:hover{border-color:var(--c);color:var(--c);box-shadow:0 0 34px -10px var(--c);transform:translateY(-2px)}.gate .sound{margin-top:2.4rem;font-size:.62rem;letter-spacing:.24em;text-transform:uppercase;opacity:.4}.flash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#fff;opacity:0;pointer-events:none}.flash.fire{animation:flashfire .5s ease-out}@keyframes flashfire{0%{opacity:.95}to{opacity:0}}body[data-fx=retro] #gl canvas{image-rendering:pixelated}.rec-hud{position:fixed;left:1.4rem;top:4.6rem;z-index:45;display:none;align-items:center;gap:.5rem;font-size:.8rem;letter-spacing:.22em;color:#fff;text-shadow:0 0 8px rgba(0,0,0,.8);pointer-events:none}body[data-fx=vhs] .rec-hud{display:flex}.rec-hud .dot{width:10px;height:10px;border-radius:50%;background:#f22;box-shadow:0 0 10px #f22;animation:recblink 1.1s steps(1) infinite}@keyframes recblink{50%{opacity:.15}}.fx-toast{position:fixed;bottom:5.5rem;left:50%;transform:translate(-50%);z-index:80;padding:.5rem 1.1rem;border-radius:999px;background:#000000bf;border:1px solid rgba(255,255,255,.2);font-size:.7rem;letter-spacing:.2em;color:#fff;opacity:0;pointer-events:none}.fx-toast.show{animation:fxtoast 1.6s ease forwards}@keyframes fxtoast{0%{opacity:0}12%{opacity:1}75%{opacity:1}to{opacity:0}}.debug{position:fixed;left:1rem;top:4rem;z-index:90;font-size:.68rem;line-height:1.7;padding:.6rem .85rem;background:#000000b8;border:1px solid rgba(255,255,255,.18);border-radius:8px;pointer-events:none;white-space:pre}@media (prefers-reduced-motion: reduce){.hero-title .hint{animation:none}.card{transition:opacity .2s}}
