:root{--ink:#110d08;--paper:#ead9b9;--acid:#dfff00;--orange:#ff4b17;--blue:#38d9f2;--pink:#ff4d9d;--p:0;--scene:0}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink)}body{margin:0;background:var(--ink);color:var(--paper);font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}.noise{position:fixed;inset:0;z-index:100;pointer-events:none;opacity:.08;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='150'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");mix-blend-mode:soft-light}.cursor-glow{position:fixed;width:34rem;height:34rem;border-radius:50%;z-index:3;pointer-events:none;background:radial-gradient(circle,#dfff0018,transparent 66%);transform:translate(-50%,-50%)}
header{position:fixed;z-index:50;top:0;left:0;right:0;height:76px;display:grid;grid-template-columns:1fr minmax(220px,32vw) 1fr;align-items:center;padding:0 28px;border-bottom:1px solid #ead9b945;mix-blend-mode:difference}.seal{display:flex;align-items:center;gap:10px;width:max-content}.seal b{display:grid;place-content:center;width:43px;height:43px;border:2px solid var(--acid);border-radius:50%;color:var(--acid);font:900 16px 'Arial Black';transform:rotate(calc(-12deg + var(--p)*28deg))}.seal span{font:900 8px/1.15 Arial;letter-spacing:.14em}.meter{height:22px;border:1px solid #ead9b9aa;position:relative;padding:4px}.meter i{display:block;height:100%;width:calc(var(--p)*100%);background:var(--acid);box-shadow:0 0 15px var(--acid)}.meter small{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:var(--paper);font:900 8px Arial;letter-spacing:.2em;mix-blend-mode:difference}.sound{justify-self:end;border:0;color:inherit;background:none;display:flex;align-items:center;gap:3px;cursor:pointer;font:900 8px Arial;letter-spacing:.12em}.sound i{display:block;width:2px;height:13px;background:var(--acid);animation:eq .7s ease-in-out infinite alternate}.sound i:nth-child(2){animation-delay:.2s;height:20px}.sound i:nth-child(3){animation-delay:.4s;height:9px}.sound span{margin-left:8px}.paused *{animation-play-state:paused!important}
.quick-actions{position:fixed;z-index:55;right:24px;top:50%;transform:translateY(-50%);display:grid;border:1px solid #ead9b955;background:#110d08cc;backdrop-filter:blur(8px)}.quick-actions a,.quick-actions button{width:72px;height:57px;border:0;border-bottom:1px solid #ead9b955;background:transparent;color:var(--paper);display:flex;align-items:center;justify-content:space-between;padding:0 10px;font:900 10px Arial;letter-spacing:.1em;cursor:pointer}.quick-actions>*:last-child{border-bottom:0}.quick-actions em{color:var(--acid);font-style:normal}.quick-actions a:hover,.quick-actions button:hover{background:var(--acid);color:var(--ink)}
.trip{height:520vh;position:relative}.stage{position:sticky;top:0;height:100vh;overflow:hidden;background:linear-gradient(127deg,#160908 0 48%,#043a43 48% 100%)}.stage:after{content:'';position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(102deg,transparent 0 18px,#fff 19px 20px);opacity:.02}.sky{position:absolute;inset:0;overflow:hidden}.sky:before{content:'';position:absolute;width:58vw;height:58vw;border:1px solid #ff4b1755;border-radius:50%;left:calc(-30vw + var(--p)*20vw);top:-33vw;box-shadow:0 0 100px #ff4b1733}.sky span{position:absolute;border:1px solid #38d9f240;width:34vw;height:34vw;border-radius:50%;right:calc(-18vw + var(--p)*15vw);bottom:-24vw}.sky span:nth-child(2){width:23vw;height:23vw;right:calc(-12vw + var(--p)*10vw);bottom:-14vw}.sky span:nth-child(3){width:13vw;height:13vw;right:calc(-5vw + var(--p)*5vw);bottom:-6vw}.route{position:absolute;z-index:1;inset:0;opacity:calc(.25 + var(--p)*.5);transform:translateY(calc((.5 - var(--p))*8vh))}.route:before,.route:after{content:'';position:absolute;left:50%;bottom:-18%;height:73%;width:3px;background:var(--paper);transform-origin:bottom;transform:rotate(26deg)}.route:after{transform:rotate(-26deg)}.route i{position:absolute;left:50%;bottom:0;width:12px;height:48%;transform:translateX(-50%);background:repeating-linear-gradient(var(--acid) 0 48px,transparent 48px 87px);clip-path:polygon(45% 0,55% 0,100% 100%,0 100%)}.route i:nth-child(n+2){width:4px;height:35%;left:calc(50% + (var(--n,1)*9%));background:var(--orange);transform:rotate(calc(var(--n,1)*8deg))}.route i:nth-child(2){--n:1}.route i:nth-child(3){--n:-1}.route i:nth-child(4){--n:2}.vertical-note{position:absolute;z-index:5;left:18px;top:50%;margin:0;writing-mode:vertical-rl;transform:translateY(-50%) rotate(180deg);font:900 8px Arial;letter-spacing:.25em;color:#ead9b977}
.duke-card{position:absolute;z-index:10;left:50%;top:50%;width:min(43vw,660px);aspect-ratio:1;transform:translate(-50%,-50%) rotate(calc(-4deg + var(--p)*11deg)) scale(calc(.77 + var(--p)*.25));filter:saturate(calc(1 + var(--p)*.4))}.photo{position:absolute;inset:0;overflow:hidden;clip-path:polygon(3% 0,97% 2%,100% 94%,4% 100%);box-shadow:0 0 0 10px var(--paper)}.photo:after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 42%,#fff4 49%,transparent 55%);transform:translateX(calc(-160% + var(--p)*320%))}.photo img,.duke-ghost img{width:100%;height:100%;object-fit:cover}.duke-ghost{position:absolute;inset:0;opacity:calc(.12 + var(--p)*.15);mix-blend-mode:screen}.duke-ghost.one{filter:hue-rotate(100deg);transform:translateX(calc(var(--p)*-34px))}.duke-ghost.two{filter:hue-rotate(-90deg);transform:translateX(calc(var(--p)*38px))}.evidence{position:absolute;z-index:3;top:-24px;right:-36px;background:var(--orange);color:var(--ink);padding:8px 11px;font:900 8px/1.2 Arial;letter-spacing:.13em;transform:rotate(9deg)}.evidence b{font-size:13px}.coordinates{position:absolute;bottom:-30px;left:5%;font:900 8px/1.45 Arial;letter-spacing:.13em}.scene{position:absolute;z-index:20;inset:0;pointer-events:none;opacity:0;transform:translateY(8vh) scale(.98);transition:opacity .45s ease,transform .65s cubic-bezier(.2,.7,.2,1)}.scene.active{opacity:1;transform:none;pointer-events:auto}.kicker{position:absolute;left:5vw;top:16vh;font:900 10px Arial;letter-spacing:.3em;color:var(--yellow,var(--acid))}.scene-1 h1{position:absolute;left:4vw;top:23vh;margin:0;font:900 clamp(7rem,17vw,17rem)/.62 Impact,'Arial Black',sans-serif;letter-spacing:-.055em;transform:scaleX(.82);transform-origin:left}.scene-1 h1 span{display:block;text-shadow:8px 8px 0 #ff4b17}.scene-1 h1 span:last-child{color:var(--acid);margin-left:13vw}.ticker{position:absolute;left:36vw;top:13vh;background:var(--paper);color:var(--ink);border:3px solid var(--ink);padding:12px 18px;font:900 18px 'Arial Black';transform:rotate(-7deg);box-shadow:7px 7px 0 var(--pink)}.slogan{position:absolute;right:10vw;bottom:11vh;margin:0;font:900 clamp(1.6rem,3.6vw,4rem)/.9 Arial;letter-spacing:-.04em;text-align:right}.slogan b{color:var(--acid);font-size:1.25em}.scene-2 .big-line{position:absolute;left:4vw;top:13vh;margin:0;font:900 clamp(4.5rem,10vw,10rem)/.8 Impact,sans-serif;letter-spacing:-.025em;text-shadow:6px 6px 0 #061c22}.big-line i{color:var(--pink);font-style:normal;-webkit-text-stroke:2px var(--paper);display:inline-block;transform:rotate(-4deg)}.exit{position:absolute;left:5vw;bottom:8vh;width:105px;height:125px;display:grid;place-content:center;text-align:center;background:#136a3c;border:6px solid var(--paper);border-radius:52% 52% 4px 4px;font:900 11px Arial;letter-spacing:.15em;transform:rotate(-6deg)}.exit b{font:900 55px Impact}.receipt{position:absolute;right:8vw;top:16vh;width:210px;padding:22px 18px 26px;background:#f2e5c9;color:#22160d;box-shadow:12px 13px 0 #ff4b17;transform:rotate(5deg);font-family:'Courier New',monospace}.receipt:after{content:'';position:absolute;left:0;right:0;bottom:-10px;height:11px;background:linear-gradient(135deg,transparent 6px,#f2e5c9 0) 0 0/12px 12px repeat-x}.receipt small{display:block;text-align:center;font-weight:900}.receipt span,.receipt b{display:flex;justify-content:space-between;font-size:10px;margin-top:8px}.receipt b{font-size:17px;margin-top:0}.receipt em{font-size:8px;font-weight:900}.scene-3 .vegas{position:absolute;left:5vw;top:11vh;margin:0;font:900 clamp(5rem,12vw,12rem)/.72 Impact,sans-serif;color:var(--paper);text-shadow:7px 7px 0 var(--orange)}.vegas span{color:var(--acid)}.casino-sign{position:absolute;right:7vw;top:17vh;width:240px;height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--pink);border:6px dotted var(--blue);border-radius:50%;background:#160c19;box-shadow:0 0 20px var(--pink),inset 0 0 25px #38d9f244;transform:rotate(6deg);text-align:center}.casino-sign small,.casino-sign em{font:900 9px Arial;letter-spacing:.2em}.casino-sign b{font:italic 30px Georgia}.casino-sign strong{font:900 42px/.8 Impact}.casino-sign em{margin-top:12px;color:var(--acid)}.heat{position:absolute;right:8vw;bottom:10vh;background:var(--yellow,#ffba00);color:var(--ink);padding:9px 14px;font:900 9px Arial;letter-spacing:.15em;transform:rotate(-2deg)}.scene-4{display:grid;place-content:center;padding:12vh 16vw}.chapter{margin:0 0 28px;color:var(--orange);font:900 10px Arial;letter-spacing:.28em}.scene-4 blockquote{position:relative;margin:0;max-width:1050px;font:900 clamp(2.6rem,5.7vw,6.5rem)/.95 Georgia,serif;letter-spacing:-.055em;text-shadow:3px 3px 0 #160d08}.scene-4 blockquote em{color:var(--acid);text-decoration:underline 7px var(--orange)}.stamp{position:absolute;right:8vw;bottom:9vh;width:140px;height:140px;border:7px double var(--orange);border-radius:50%;display:grid;place-content:center;text-align:center;color:var(--orange);font:900 22px/.9 Impact;transform:rotate(-15deg)}.scene-5{display:grid;place-content:center;text-align:center}.last-call{margin:0;color:var(--pink);font:900 10px Arial;letter-spacing:.28em}.scene-5 h2{margin:25px 0 38px;font:900 clamp(8rem,18vw,18rem)/.63 Impact,sans-serif;letter-spacing:-.05em;text-shadow:9px 9px 0 var(--orange)}.scene-5 h2 i{font-style:normal;color:var(--acid)}.final-actions{display:flex;justify-content:center;gap:9px}.final-actions a,.final-actions button{min-height:52px;padding:0 20px;border:1px solid var(--paper);color:var(--paper);background:#110d08aa;font:900 10px Arial;letter-spacing:.14em;display:flex;align-items:center;justify-content:space-between;gap:35px;cursor:pointer}.final-actions a:hover,.final-actions button:hover{background:var(--acid);color:var(--ink);border-color:var(--acid)}.scene-number{position:absolute;z-index:15;right:3vw;bottom:2vh;color:#ead9b91c;font:900 10vw Impact}.mileposts{position:absolute;inset:0;pointer-events:none}.mileposts span{position:absolute;left:0;top:calc(var(--i,0)*25%);font-size:0}.mileposts span:nth-child(1){--i:0}.mileposts span:nth-child(2){--i:1}.mileposts span:nth-child(3){--i:2}.mileposts span:nth-child(4){--i:3}.mileposts span:nth-child(5){--i:4}.mobile-fallback{display:none}
@keyframes eq{to{transform:scaleY(.35)}}@media(max-width:760px){header,.quick-actions,.trip,.cursor-glow{display:none}.mobile-fallback{display:block;min-height:100vh;padding:20px 20px 60px;background:linear-gradient(165deg,#180907 0 41%,#07414a 41% 100%);overflow:hidden}.mobile-art{width:92%;margin:18px auto 35px;aspect-ratio:1;transform:rotate(3deg);box-shadow:12px 12px 0 var(--orange),-10px -10px 0 var(--acid);clip-path:polygon(2% 0,100% 3%,96% 100%,0 95%)}.mobile-art img{width:100%;height:100%;object-fit:cover}.mobile-fallback>p{font:900 10px Arial;letter-spacing:.24em;color:var(--acid)}.mobile-fallback h1,.mobile-fallback h2{margin:18px 0 30px;font:900 22vw/.72 Impact,sans-serif;letter-spacing:-.04em;text-shadow:5px 5px 0 var(--orange)}.mobile-fallback h1 i,.mobile-fallback h2 i{font-style:normal;color:var(--acid)}marquee{margin:20px -20px;padding:12px 0;background:var(--acid);color:var(--ink);font:900 13px Arial;letter-spacing:.08em;transform:rotate(-2deg)}.mobile-fallback blockquote{margin:80px 0;font:900 9vw/1.02 Georgia,serif;letter-spacing:-.04em}.mobile-fallback blockquote em{color:var(--acid);text-decoration:underline 5px var(--orange)}.mobile-fallback h2{text-align:center;margin-top:110px}.mobile-fallback .final-actions{display:grid;grid-template-columns:1fr 1fr}.mobile-fallback .final-actions button{grid-column:span 2}.mobile-fallback .final-actions>*{justify-content:center;padding:0 10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

/* Desktop refinement pass */
@keyframes drive{0%{transform:translateX(0)}70%,100%{transform:translateX(58px)}}
@media(min-width:761px){
  .scene{visibility:hidden;opacity:0;transform:translateY(5vh) scale(.985);transition:opacity .24s ease,transform .38s cubic-bezier(.2,.7,.2,1),visibility 0s linear .24s}
  .scene.active{visibility:visible;opacity:1;transform:none;transition-delay:0s}
  .scroll-drive{position:absolute;left:5vw;bottom:5vh;display:grid;grid-template-columns:auto 82px auto;align-items:center;gap:10px;color:var(--paper);font:900 8px Arial;letter-spacing:.22em}
  .scroll-drive i{display:block;height:1px;background:var(--paper);position:relative}
  .scroll-drive i:after{content:'';position:absolute;left:0;top:-2px;width:24px;height:5px;background:var(--acid);animation:drive 1.7s ease-in-out infinite}
  .scroll-drive em{font-style:normal;color:var(--acid)}
  .scene-4{padding:13vh 17vw}
  .scene-4 blockquote{max-width:980px;font-size:clamp(2.45rem,4.7vw,5.55rem);line-height:1;letter-spacing:-.05em}
  .scene-4 blockquote em{text-decoration-thickness:6px}
  .final-actions a,.final-actions button{min-height:54px;padding:0 21px;border-width:2px;background:#110d08ee;box-shadow:5px 5px 0 #110d08aa}
  .final-actions a:first-child{border-color:var(--acid)}
  .final-actions a:nth-child(2){border-color:var(--orange)}
  .final-actions a:hover,.final-actions button:hover{box-shadow:5px 5px 0 var(--orange)}
}
.coming-toast{position:fixed;z-index:80;left:50%;bottom:28px;transform:translate(-50%,25px);padding:12px 18px;background:var(--acid);color:var(--ink);font:900 10px Arial;letter-spacing:.17em;opacity:0;pointer-events:none;transition:.25s ease;box-shadow:7px 7px 0 var(--orange)}
.coming-toast.show{opacity:1;transform:translate(-50%,0)}
