:root{--void:#020604;--ink:#06110c;--green:#0a3a27;--acid:#bafc38;--mint:#67f6ba;--paper:#e7eadf;--gold:#b99b60;--line:rgba(186,252,56,.22)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--void);color:var(--paper);font-family:Manrope,sans-serif;overflow-x:hidden}.noise{position:fixed;inset:0;z-index:90;pointer-events:none;opacity:.06;background:url("data:image/svg+xml,%3Csvg viewBox='0 0 170 170' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='x'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23x)'/%3E%3C/svg%3E")}.progress{position:fixed;left:0;top:0;height:3px;width:0;background:var(--acid);z-index:100;box-shadow:0 0 20px var(--acid)}.cursor{position:fixed;width:24px;height:24px;border:1px solid var(--acid);border-radius:50%;z-index:120;pointer-events:none;transform:translate(-50%,-50%);transition:width .2s,height .2s;mix-blend-mode:difference}header{position:fixed;top:0;z-index:50;width:100%;height:70px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(#020604e8,transparent);font:10px DM Mono;letter-spacing:.16em}.logo{color:inherit;text-decoration:none}.logo span{display:inline-grid;place-items:center;width:32px;height:32px;border:1px solid var(--acid);color:var(--acid);font:20px Archivo Black;margin-right:10px;transform:rotate(-6deg)}header nav{display:flex;gap:34px}header nav a,.mini-cta{color:inherit;text-decoration:none}.mini-cta{border:1px solid var(--acid);padding:10px 15px;color:var(--acid)}.hero{height:100svh;min-height:720px;position:relative;overflow:hidden;display:grid;place-items:center;background:radial-gradient(circle at 70% 25%,#0b5a3b 0,transparent 34%),var(--void)}.hero-image{position:absolute;inset:-8%;background:linear-gradient(90deg,#020604ea 18%,transparent 62%,#020604b8),linear-gradient(0deg,#020604 0,transparent 45%),url("assets/gentleman.jpg") 76% center/cover;filter:saturate(.55) contrast(1.15)}.scan{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 3px,rgba(130,255,190,.025) 4px);z-index:2}.orb{position:absolute;border-radius:50%;filter:blur(12px);opacity:.55}.orb-a{width:420px;height:420px;background:#0fff8a20;left:-120px;top:20%;animation:float 9s ease-in-out infinite}.orb-b{width:220px;height:220px;background:#bafc3840;right:7%;bottom:5%;animation:float 7s 1s ease-in-out infinite reverse}.hero-copy{position:relative;z-index:4;width:min(1100px,90%);padding-top:35px}.kicker,.section-title>span,.manifest-copy>span,.modal-code{font:10px DM Mono;letter-spacing:.22em;color:var(--acid)}h1{font:clamp(74px,13vw,175px)/.68 Archivo Black;margin:25px 0;letter-spacing:-.09em;display:flex;flex-direction:column;width:min-content}h1 span{display:block}h1 .outline{-webkit-text-stroke:2px var(--paper);color:transparent;margin-left:.34em}h1 em{position:absolute;left:38%;top:42%;font:italic clamp(34px,5vw,70px) DM Mono;color:var(--acid);letter-spacing:-.08em;transform:rotate(-8deg);text-shadow:0 0 24px #95ff43}h1 b{position:absolute;right:0;bottom:4%;font:clamp(70px,15vw,210px) Archivo Black;color:#ffffff09;-webkit-text-stroke:1px #ffffff2a;letter-spacing:-.1em}.sub{font:11px/1.8 DM Mono;letter-spacing:.13em}.sub strong{color:var(--acid)}.enter{position:absolute;right:5%;bottom:3%;width:130px;height:130px;border:1px solid var(--acid);border-radius:50%;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--paper);text-decoration:none;font:9px/1.5 DM Mono;letter-spacing:.15em;animation:pulse 2s infinite}.enter i{position:absolute;inset:8px;border:1px dashed #aaff55;border-radius:50%;animation:spin 10s linear infinite}.enter b{font-size:20px;color:var(--acid)}.side-code{position:absolute;right:12px;top:35%;writing-mode:vertical-rl;font:8px DM Mono;letter-spacing:.2em;color:#ffffff70}.scroll{position:absolute;bottom:25px;z-index:4;font:8px DM Mono;letter-spacing:.2em}.scroll span{display:block;text-align:center;font-size:20px;color:var(--acid);animation:bounce 1.2s infinite}.story{padding:140px 5vw 180px;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 60%,#0f513642,transparent 42%),var(--ink)}.section-title{text-align:center;position:relative;z-index:3}.section-title h2,.manifest-copy h2,.finale h2{font:clamp(54px,8vw,110px)/.85 Archivo Black;letter-spacing:-.07em;margin:20px 0}.section-title h2 i,.finale h2 i{color:var(--acid);font-style:normal;-webkit-text-stroke:0}.section-title p{color:#8d9e94;font:12px DM Mono}.route{position:absolute;top:380px;left:0;width:100%;height:260px}.route svg{width:100%;height:100%;overflow:visible}.route path{fill:none;stroke:#ffffff48;stroke-width:2;stroke-dasharray:3 8}.route .route-live{stroke:var(--acid);stroke-width:3;stroke-dasharray:180 900;filter:drop-shadow(0 0 8px var(--acid));animation:route 8s linear infinite}.acts{position:relative;z-index:3;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1100px;margin:110px auto 0}.act{background:#091711;border:1px solid #ffffff22;padding:12px 12px 28px;transform:rotate(var(--r));transition:transform .3s,box-shadow .3s;position:relative;box-shadow:0 30px 60px #0008}.act:hover{transform:rotate(0) translateY(-14px);box-shadow:0 30px 70px #51ff9430}.act-img{height:330px;background-size:cover;background-position:center;filter:saturate(.6) contrast(1.15)}.taste{background-image:linear-gradient(0deg,#092117,transparent),url("assets/leopard.jpg")}.bars{background-image:linear-gradient(0deg,#092117,transparent),url("assets/chess.jpg")}.party{background-image:linear-gradient(0deg,#092117,transparent),url("assets/party-confetti.webp");background-position:center 65%}.act small{display:block;margin-top:18px;color:var(--acid);font:9px DM Mono;letter-spacing:.15em}.act h3{font:38px Archivo Black;margin:8px 0;letter-spacing:-.04em}.act p{color:#8a9a91;font-size:12px}.act .num{position:absolute;right:15px;bottom:10px;font:70px Archivo Black;color:#ffffff0b}.manifesto{min-height:980px;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:7vw;padding:120px 7vw;background:linear-gradient(120deg,#030806 40%,#0a2117)}.portrait{height:720px;position:relative;background:linear-gradient(0deg,#020604 0,transparent 45%),url("assets/black-uniform-evening-couple.webp") center/cover;clip-path:polygon(5% 0,100% 4%,95% 100%,0 94%);filter:contrast(1.1) saturate(.65)}.portrait:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 48%,#bafc3830 49%,transparent 50%);animation:scanX 4s infinite}.target{position:absolute;border:1px solid var(--acid);width:60px;height:60px}.target:after,.target:before{content:"";position:absolute;background:var(--acid)}.target:before{width:80px;height:1px;left:-10px;top:29px}.target:after{width:1px;height:80px;top:-10px;left:29px}.t1{top:30%;left:45%}.t2{bottom:22%;right:19%;transform:scale(.6)}.label{position:absolute;left:7%;bottom:12%;font:9px/1.8 DM Mono;color:var(--acid)}.manifest-copy .acid{font:18px DM Mono;color:var(--acid);letter-spacing:.18em}.manifest-copy ol{list-style:none;padding:30px 0 0;margin:0}.manifest-copy li{display:grid;grid-template-columns:55px 1fr;border-top:1px solid #ffffff2b;padding:22px 0}.manifest-copy li>b{font:24px DM Mono;color:var(--acid)}.manifest-copy strong{font:15px Archivo Black}.manifest-copy li p{color:#8d9b93;font-size:12px;margin:7px 0}.pulse{overflow:hidden;background:var(--acid);color:#06110c;transform:rotate(-1.5deg) scale(1.03);padding:12px 0;font:20px Archivo Black;white-space:nowrap}.pulse div{width:max-content;animation:marquee 18s linear infinite}.access{padding:160px 5vw;background:radial-gradient(circle at 50% 55%,#11442e 0,transparent 40%),#020604;overflow:hidden}.cards{display:flex;justify-content:center;align-items:center;gap:20px;max-width:1100px;margin:100px auto 0;perspective:1200px}.pass{width:32%;min-height:480px;border:1px solid #87dca855;background:linear-gradient(145deg,#10251a,#07100c);padding:25px;position:relative;overflow:hidden;transform:rotateY(10deg) rotateZ(-3deg);transition:.45s;box-shadow:0 25px 60px #000}.pass:nth-child(3){transform:rotateY(-10deg) rotateZ(3deg)}.pass:hover{transform:translateY(-20px) rotate(0) scale(1.03);border-color:var(--acid);z-index:3}.pass.main{transform:translateY(-25px);background:linear-gradient(145deg,#214d2b,#07100c);border-color:var(--acid);box-shadow:0 0 70px #6fff8030}.pass.main:hover{transform:translateY(-42px) scale(1.04)}.foil{position:absolute;inset:-100%;background:linear-gradient(115deg,transparent 44%,#bafc3830 49%,#fff6 50%,transparent 56%);transform:translateX(-30%);transition:1s}.pass:hover .foil{transform:translateX(45%)}.pass-head,.pass-foot{display:flex;justify-content:space-between;align-items:center;font:9px DM Mono;letter-spacing:.15em}.pass-head b{color:var(--acid)}.pass-icon{font-size:70px;color:var(--acid);margin:70px 0 25px;text-shadow:0 0 30px #bafc38}.pass h3{font:45px Archivo Black;margin:0}.pass>p{font:12px/1.6 DM Mono;color:#91a097;min-height:65px}.pass-foot{position:absolute;bottom:24px;left:25px;right:25px;border-top:1px solid #ffffff25;padding-top:18px}.pass-foot strong{font:22px Archivo Black}.pass-foot button{border:0;background:none;color:var(--acid);font:10px DM Mono;cursor:pointer}.badge{position:absolute;right:-35px;top:28px;background:var(--acid);color:#06110c;padding:7px 38px;transform:rotate(45deg);font:8px Archivo Black}.royal{border-color:#937942;background:linear-gradient(145deg,#292414,#080a07)}.royal .pass-icon,.royal .pass-head b,.royal button{color:var(--gold);text-shadow:0 0 30px #b99b60}.finale{min-height:850px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;position:relative;overflow:hidden;background:#06110c}.rings{position:absolute;width:720px;height:720px}.rings i{position:absolute;inset:0;border:1px solid #bafc3828;border-radius:50%;animation:ring 7s ease-in-out infinite}.rings i:nth-child(2){inset:100px;animation-delay:-2s}.rings i:nth-child(3){inset:220px;animation-delay:-4s}.finale>p{font:10px DM Mono;color:var(--acid);letter-spacing:.2em;z-index:2}.finale h2{z-index:2}.finale h2 span{-webkit-text-stroke:2px var(--paper);color:transparent}.count{z-index:2;display:grid;grid-template-columns:repeat(4,1fr);width:min(600px,90%);margin:35px 0}.count div{border-right:1px solid #ffffff2b}.count div:last-child{border:0}.count b{display:block;font:45px Archivo Black}.count span{font:8px DM Mono;color:var(--acid)}.finale>a{z-index:2;background:var(--acid);color:#06110c;padding:18px 27px;text-decoration:none;font:11px Archivo Black;letter-spacing:.1em}.finale>a b{margin-left:50px}footer{padding:50px 4vw;display:flex;align-items:center;justify-content:space-between;background:#020604;font:9px DM Mono;color:#718078}footer a{color:inherit;text-decoration:none}dialog{width:min(500px,calc(100% - 24px));background:#07140d;color:var(--paper);border:1px solid var(--acid);padding:42px;box-shadow:0 0 80px #67f6ba35}dialog::backdrop{background:#010302e8;backdrop-filter:blur(8px)}dialog h2{font:48px Archivo Black;margin:20px 0}dialog p{color:#93a097;font-size:13px}.close{position:absolute;right:15px;top:12px;background:none;border:0;color:var(--paper);font-size:27px}form{display:grid;gap:17px;margin-top:30px}label{font:9px DM Mono;letter-spacing:.15em}input{display:block;width:100%;margin-top:8px;border:1px solid #34503f;background:#020604;color:white;padding:14px}form button{background:var(--acid);border:0;padding:16px;font:11px Archivo Black;cursor:pointer}form small{color:#65756c}.success{text-align:center;padding:40px 0}.success b{color:var(--acid);font:26px Archivo Black}.reveal{opacity:0;transform:translateY(50px);transition:opacity .9s,transform .9s}.reveal.visible{opacity:1;transform:none}
@keyframes float{50%{transform:translate(40px,-35px) scale(1.12)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{box-shadow:0 0 35px #bafc3845;transform:scale(1.04)}}@keyframes bounce{50%{transform:translateY(7px)}}@keyframes route{to{stroke-dashoffset:-1080}}@keyframes scanX{0%,20%{transform:translateX(-100%)}80%,100%{transform:translateX(100%)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes ring{50%{transform:scale(1.12);opacity:.3}}
@media(max-width:760px){.cursor,header nav{display:none}header{padding:0 18px}.hero-copy{width:calc(100% - 36px)}h1{font-size:76px}.hero-image{background-position:60% center;opacity:.75}h1 em{left:38%;top:45%;font-size:34px}h1 b{font-size:100px;bottom:12%}.sub{font-size:9px}.enter{width:105px;height:105px;right:18px;bottom:8%}.side-code{display:none}.story{padding:100px 18px 120px}.section-title h2,.manifest-copy h2,.finale h2{font-size:52px}.route{top:450px;height:650px;transform:rotate(90deg) scale(1.7)}.acts{grid-template-columns:1fr;gap:55px;margin-top:80px;padding:0 14px}.act{max-width:350px;margin:auto}.act-img{height:370px}.manifesto{grid-template-columns:1fr;padding:90px 18px;min-height:auto}.portrait{height:590px}.manifest-copy{padding-top:40px}.cards{flex-direction:column;gap:50px;margin-top:70px}.pass,.pass:nth-child(3),.pass.main{width:100%;max-width:370px;transform:rotate(-2deg);min-height:450px}.pass:nth-child(3){transform:rotate(2deg)}.pass.main{order:-1;transform:translateY(0)}.access{padding:110px 18px}.finale{min-height:760px;padding:90px 18px}.rings{width:520px;height:520px}.count b{font-size:32px}footer{padding:45px 18px;gap:25px;flex-wrap:wrap}dialog{padding:35px 22px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.cursor{display:none}}

/* Updated RANDOM identity */
.logo{display:inline-flex;align-items:center;gap:10px;line-height:1.15}.logo-seal{display:inline-block;flex:0 0 44px;width:44px;height:44px;border-radius:50%;background-image:url("assets/random-seal.jpeg");background-size:154px auto;background-position:center 51.5%;box-shadow:0 0 0 1px #c89c61,0 0 24px #bafc3820;transition:transform .35s,box-shadow .35s}.logo:hover .logo-seal{transform:rotate(-8deg) scale(1.08);box-shadow:0 0 0 1px var(--acid),0 0 28px #bafc3850}.logo-word{font:9px/1.35 DM Mono;letter-spacing:.18em}.logo-word b{font-weight:500;color:var(--acid)}
.hero-brand{position:relative;width:min(940px,100%);margin:26px 0 20px}.hero-title{position:relative;display:block;width:100%;height:clamp(165px,25vw,315px);margin:0;font-family:Archivo Black;line-height:.78;letter-spacing:-.085em}.hero-title .random{display:block;font-size:clamp(66px,12vw,170px);white-space:nowrap;color:var(--paper);text-shadow:0 12px 45px #000}.hero-title em{position:absolute;z-index:3;left:12%;top:45%;font:italic clamp(36px,5.6vw,76px) DM Mono;color:var(--acid);letter-spacing:-.09em;transform:rotate(-7deg);text-shadow:0 0 25px #95ff43}.hero-title b{position:absolute;z-index:2;right:0;bottom:-4%;font:clamp(94px,17vw,230px)/.75 Archivo Black;color:var(--acid);letter-spacing:-.1em;-webkit-text-stroke:0;text-shadow:0 0 55px #77ff663a}.hero-seal{position:absolute;z-index:5;right:4%;top:-48px;width:94px;height:94px;border-radius:50%;background:url("assets/random-seal.jpeg") center 51.5%/330px auto;box-shadow:0 0 0 1px #c99d61,0 15px 60px #000,0 0 35px #bafc3828;animation:sealFloat 5s ease-in-out infinite}.hero-seal:after{content:"RANDOM SOCIETY";position:absolute;left:50%;top:112%;transform:translateX(-50%);white-space:nowrap;color:#d0aa72;font:7px DM Mono;letter-spacing:.23em}.hero-copy .sub{position:relative;z-index:5}
@keyframes sealFloat{50%{transform:translateY(-8px) rotate(3deg)}}
@media(max-width:760px){.logo-seal{width:38px;height:38px;flex-basis:38px;background-size:134px auto}.logo-word{font-size:8px}.hero-brand{margin-top:25px}.hero-title{height:245px}.hero-title .random{font-size:clamp(58px,17.3vw,82px);letter-spacing:-.095em}.hero-title em{left:9%;top:35%;font-size:38px}.hero-title b{right:0;bottom:4%;font-size:112px}.hero-seal{width:68px;height:68px;right:3%;top:-39px;background-size:238px auto}.hero-seal:after{font-size:5px}.hero-copy .sub{margin-top:-5px}}

/* Clean cutout mark + restored original outlined 404 */
.logo-seal{display:inline-block!important;flex:0 0 46px!important;width:46px!important;height:46px!important;margin-right:0!important;border:0!important;border-radius:0!important;background:url("assets/random-seal-photoroom.png") center/contain no-repeat!important;box-shadow:none!important;color:transparent!important;font-size:0!important;transform:none!important;filter:drop-shadow(0 5px 8px #000) drop-shadow(0 0 8px #c79a5c44);transition:transform .35s,filter .35s}.logo:hover .logo-seal{transform:rotate(-7deg) scale(1.08)!important;filter:drop-shadow(0 6px 10px #000) drop-shadow(0 0 10px #bafc3866)}
.hero-title b{z-index:1!important;color:#ffffff09!important;-webkit-text-stroke:1px #ffffff38!important;text-shadow:none!important}
@media(max-width:760px){.logo-seal{width:40px!important;height:40px!important;flex-basis:40px!important}}

/* Seal-only navigation mark */
header .logo-seal{width:68px!important;height:68px!important;flex-basis:68px!important}footer .logo-seal{width:76px!important;height:76px!important;flex-basis:76px!important}.logo-word{display:none!important}
@media(max-width:760px){header .logo-seal{width:56px!important;height:56px!important;flex-basis:56px!important}footer .logo-seal{width:64px!important;height:64px!important;flex-basis:64px!important}}

/* Party sits in the visual gap between RANDOM and 404 */
.hero-title em{left:39%!important;top:35%!important;transform:translateY(-50%) rotate(-7deg)!important;white-space:nowrap}.hero-title b{bottom:-7%!important}
@media(max-width:760px){.hero-title em{left:34%!important;top:33%!important;font-size:34px!important}.hero-title b{bottom:0!important}}

/* Updated hero artwork */
.hero-image{background:linear-gradient(90deg,#020604ee 12%,transparent 68%,#0206049c),linear-gradient(0deg,#020604 0,transparent 48%),url("assets/black-uniform-lounge.webp") center 42%/cover!important;filter:saturate(.72) contrast(1.08)!important}
@media(max-width:760px){.hero-image{background-position:54% center!important;opacity:.82}}

/* Refined mobile title and calligraphic micro typography */
.hero-title em{left:auto!important;right:2%!important;top:34%!important}.kicker,header,header nav a,.mini-cta,.section-title>span,.manifest-copy>span,.modal-code,.side-code,.scroll,.enter,.pass-head,.pass-foot,.act small,.label{font-family:"Cormorant Garamond",serif!important;font-weight:600!important;letter-spacing:.13em}.kicker,.mini-cta,.enter{font-style:italic}.mini-cta{font-size:13px}.kicker{font-size:13px}.enter{font-size:13px}.enter span{position:relative;z-index:2}
@media(max-width:760px){.hero-title .random{text-align:center!important;width:100%!important}.hero-title em{left:auto!important;right:4%!important;top:32%!important;font-size:34px!important}.kicker{text-align:center;font-size:12px}.sub{text-align:center}}

/* Readability pass for the calligraphic labels */
.hero-title em{right:1%!important;top:24%!important}.kicker{font-size:17px!important;letter-spacing:.1em!important}.mini-cta,header nav a{font-size:15px!important}.section-title>span,.manifest-copy>span{font-size:14px!important}.modal-code,.pass-head,.pass-foot,.act small,.label{font-size:12px!important}.side-code,.scroll{font-size:11px!important}.enter{font-size:16px!important}
@media(max-width:760px){.hero-title em{right:1%!important;top:21%!important;font-size:35px!important}.kicker{font-size:15px!important;line-height:1.5}.mini-cta{font-size:14px!important}.section-title>span,.manifest-copy>span{font-size:13px!important}}

/* Dedicated desktop/mobile finale layouts */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.enter{gap:0!important}.enter b{position:relative;z-index:2;color:var(--acid)!important;font-size:38px!important;line-height:1!important;text-shadow:0 0 18px #bafc3870}.finale h2{width:min(1180px,94vw);max-width:none!important}.finale h2 .question{display:block!important;color:var(--paper)!important;-webkit-text-stroke:0!important}.finale h2 .answer{display:flex!important;align-items:baseline;justify-content:center;gap:.18em;white-space:nowrap;color:inherit!important;-webkit-text-stroke:0!important}.finale h2 .random-word{color:transparent;-webkit-text-stroke:2px var(--paper)}.finale h2 .enough-word{color:var(--acid);font-style:normal}
@media(min-width:761px){.finale{padding:120px 5vw}.finale h2{font-size:clamp(68px,7.6vw,108px)!important;line-height:.88}.finale h2 .answer{margin-top:.08em}.count{margin-top:55px}.enter{width:130px;height:130px}}
@media(max-width:760px){.finale{min-height:780px!important;padding:105px 18px 85px!important}.finale h2{width:100%!important;font-size:clamp(50px,15vw,64px)!important;line-height:.9!important;margin:22px 0!important}.finale h2 .answer{display:flex!important;flex-direction:column;align-items:center;gap:0;white-space:normal;margin-top:.12em}.finale h2 .random-word,.finale h2 .enough-word{display:block;width:100%;text-align:center}.finale h2 .random-word{-webkit-text-stroke:1.5px var(--paper)}.count{width:100%!important;margin:45px auto!important}.count b{font-size:32px!important}.count span{font-size:9px!important}.finale>a{width:min(320px,100%);display:flex;justify-content:center;align-items:center}.rings{width:min(138vw,520px)!important;height:min(138vw,520px)!important}.enter{width:94px!important;height:94px!important;right:20px!important;bottom:10%!important}.enter b{font-size:34px!important}}

/* Moving scanner inside the portrait bounds */
.t1{animation:targetPatrol 14s cubic-bezier(.45,.05,.55,.95) infinite}.t2{animation:targetPulse 2.4s ease-in-out infinite}
@keyframes targetPatrol{0%{top:16%;left:14%}18%{top:25%;left:58%}38%{top:58%;left:72%}58%{top:72%;left:43%}78%{top:49%;left:17%}100%{top:16%;left:14%}}
@keyframes targetPulse{0%,100%{opacity:.45;filter:drop-shadow(0 0 0 var(--acid))}50%{opacity:1;filter:drop-shadow(0 0 9px var(--acid))}}

/* 404 emblem: the action ring becomes the zero */
.hero-title .error-code{position:absolute;z-index:2;right:0;bottom:-8%;display:flex;align-items:center;justify-content:flex-end;gap:0;width:auto;color:inherit;line-height:.72;filter:drop-shadow(0 14px 25px #0008)}.hero-title .error-four{display:block;font:clamp(100px,15vw,205px)/.72 Archivo Black;color:#ffffff08;-webkit-text-stroke:1px #ffffff45;letter-spacing:-.13em}.hero-title .error-zero{position:relative;display:grid;place-items:center;flex:0 0 clamp(100px,12vw,165px);width:clamp(100px,12vw,165px);height:clamp(100px,12vw,165px);margin:0 -.05em;border:2px solid var(--acid);border-radius:50%;color:var(--acid);text-decoration:none;box-shadow:0 0 28px #bafc3825,inset 0 0 32px #bafc380d;transition:transform .35s,box-shadow .35s}.hero-title .error-zero i{position:absolute;inset:12%;border:1px dashed var(--acid);border-radius:50%;animation:errorSpin 12s linear infinite}.hero-title .error-arrow{display:block;position:relative;z-index:2;font:500 clamp(42px,5vw,64px)/1 "Cormorant Garamond",serif;text-shadow:0 0 18px #bafc3880;transition:transform .3s}.hero-title .error-zero:hover{transform:scale(1.06);box-shadow:0 0 42px #bafc3850,inset 0 0 36px #bafc3818}.hero-title .error-zero:hover .error-arrow{transform:translateY(7px)}
@keyframes errorSpin{to{transform:rotate(360deg)}}
@media(min-width:761px){.hero-title .error-code{right:1%;bottom:-10%}}
@media(max-width:760px){.hero-title .error-code{left:50%;right:auto;bottom:-2%;transform:translateX(-50%);justify-content:center;width:94vw;filter:drop-shadow(0 10px 18px #0008)}.hero-title .error-four{font-size:112px;letter-spacing:-.14em}.hero-title .error-zero{flex-basis:92px;width:92px;height:92px;margin:0 -3px}.hero-title .error-zero i{inset:11%}.hero-title .error-arrow{font-size:42px}}

/* Hero layout refinement: restored 404, ring below dress code, no horizontal drift */
html,body{width:100%;max-width:100%;overflow-x:hidden}
@supports(overflow:clip){html,body{overflow-x:clip}}
main,header,footer,main>section{max-width:100%}
.hero-copy .enter{left:0;right:auto;top:calc(100% + 4px);bottom:auto;width:104px;height:104px}
.hero-copy .enter b{font-size:34px!important}
.acts{width:min(1280px,100%);max-width:1280px;gap:30px}
.act{width:100%}
@media(min-width:761px){.story{padding-left:3vw;padding-right:3vw}}
@media(max-width:760px){.hero-copy .enter{left:calc(50% - 41px)!important;right:auto!important;top:calc(100% + 4px)!important;bottom:auto!important;width:82px!important;height:82px!important}.hero-copy .enter b{font-size:30px!important}.acts{width:100%;max-width:440px;padding:0}.act{max-width:430px}}

/* Booking / two steps */
.booking{width:min(660px,calc(100% - 28px));max-height:calc(100dvh - 28px);overflow:auto;padding:38px;overscroll-behavior:contain;color:var(--paper)}
.booking [hidden]{display:none!important}.booking h2{font-size:42px}.booking h3{font:25px/1.2 Manrope,sans-serif;margin:0 0 8px}.booking .close{cursor:pointer;width:40px;height:40px}
.booking-steps{list-style:none;display:flex;gap:20px;margin:25px 0;padding:0 0 18px;border-bottom:1px solid var(--line);font:12px Manrope,sans-serif;color:#8d9b93}.booking-steps li[aria-current]{color:var(--acid)}
.booking form{display:block;margin-top:20px}.booking-intro{line-height:1.7}.booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0}.booking-wide{grid-column:1/-1}
.booking label,.currency-select{display:block;font:600 13px/1.5 Manrope,sans-serif;letter-spacing:0;color:var(--paper)}.booking label>span:not(:only-child){font-weight:400}
.booking input,.booking textarea,.booking select{font:16px/1.4 Manrope,sans-serif;border:1px solid #34503f;background:#020604;color:var(--paper);padding:12px;border-radius:0;width:100%;display:block;margin-top:7px;min-width:0}
.booking textarea{resize:vertical;max-height:220px}.booking input:focus,.booking textarea:focus,.booking select:focus{outline:2px solid var(--acid);outline-offset:2px}.billing-details summary{cursor:pointer;font-size:13px;color:var(--acid);padding:10px 0}
.booking-total{display:flex;justify-content:space-between;align-items:center;padding:22px 0;margin:15px 0;border-top:1px solid var(--line)}.booking-total strong{font:26px Manrope,sans-serif;color:var(--acid)}
.booking .booking-primary{width:100%;margin-top:14px;padding:17px 12px;font:700 14px Manrope,sans-serif;background:var(--acid);color:var(--void);cursor:pointer;letter-spacing:0}.booking button:disabled{opacity:.45;cursor:not-allowed}
.order-summary{display:grid;grid-template-columns:minmax(90px,1fr) 2fr;gap:12px 20px;margin:24px 0;padding:22px 0;border-block:1px solid var(--line);font-size:14px;line-height:1.5}.order-summary dt{color:#9cab9e}.order-summary dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.order-summary dd:last-child{font-size:23px;color:var(--acid)}
.payment-options{border:0;padding:0;margin:26px 0;display:grid;gap:12px}.payment-options legend{font:600 14px Manrope,sans-serif;padding:0 0 12px}.payment-options label{display:flex;align-items:flex-start;gap:12px;border:1px solid #34503f;padding:15px;cursor:pointer}.payment-options label:has(input:checked){border-color:var(--acid);background:#bafc3809}.payment-options input{width:19px;min-width:19px;margin:2px 0 0;accent-color:var(--acid)}.payment-options small{display:block;color:#9cab9e;font:12px/1.5 Manrope,sans-serif;margin-top:4px}
.booking-status{font:13px/1.6 Manrope,sans-serif;color:#bdcbbf;border-left:2px solid var(--acid);padding-left:14px;margin-top:22px}.booking-actions{display:flex;justify-content:space-between;gap:14px;margin-top:16px}.booking .booking-actions button{background:transparent;color:var(--paper);border:1px solid #34503f;font:12px Manrope,sans-serif;padding:12px;cursor:pointer}.booking-footnote{font-size:11px!important;line-height:1.7}
.payment-page{min-height:100svh;padding:110px 20px 60px;background:radial-gradient(circle at 50% 15%,#103c27,transparent 55%),var(--void)}.payment-shell{max-width:680px;margin:auto}.payment-shell>h1{font:clamp(38px,8vw,64px)/1.05 Archivo Black;letter-spacing:-.06em;display:block;width:auto;margin:24px 0}.payment-shell>p{color:#abbcaf;line-height:1.7}.payment-box{border:1px solid var(--line);background:#06110ce8;padding:28px;margin-top:26px}.currency-tabs{display:flex;gap:10px}.currency-tabs button{background:transparent;border:1px solid var(--line);color:var(--paper);padding:12px 26px;font:600 15px Manrope,sans-serif;cursor:pointer}.currency-tabs button[aria-pressed=true]{background:var(--acid);color:var(--void)}.payment-amount{font:40px Manrope,sans-serif;color:var(--acid);margin:25px 0 10px}.payment-qr{display:block;width:min(260px,100%);height:auto;margin:25px auto;background:white}.payment-box dl{font-size:14px;line-height:1.7}.payment-box dt{color:#8d9b93;margin-top:14px}.payment-box dd{margin:0;overflow-wrap:anywhere}.payment-download{display:block;text-align:center;background:var(--acid);color:var(--void);padding:16px;text-decoration:none;border:0;width:100%;font:600 14px Manrope,sans-serif;cursor:pointer}.payment-message{color:#c5d0c6;line-height:1.7}.payment-error{color:#ffcf9e!important}.payment-shell [hidden]{display:none!important}
@media(max-width:500px){.booking{padding:30px 20px}.booking-grid{grid-template-columns:1fr;gap:16px}.booking-wide{grid-column:auto}.booking-steps{gap:14px;font-size:11px}.order-summary{grid-template-columns:1fr;gap:4px}.order-summary dd{margin-bottom:12px}.booking-actions{flex-direction:column}.payment-box{padding:22px 18px}}
.payment-state{display:inline-block;padding:9px 15px;border:1px solid #b99b60;color:#e3ca9c;font-size:14px}.payment-state.is-paid{border-color:var(--acid);color:var(--acid)}#wallet-element{margin:24px 0}#issued-tickets{border-top:1px solid var(--line);padding-top:24px;margin-top:26px}#issued-tickets h2{font:25px Manrope,sans-serif}

/* Booking typography follows the Archivo / calligraphic identity of the page. */
.booking h3,#issued-tickets h2{font-family:"Archivo Black",sans-serif;font-size:22px;line-height:1.25;letter-spacing:-.035em}
.booking-steps{font:600 17px/1.3 "Cormorant Garamond",Georgia,serif;letter-spacing:.02em}
.booking label,.booking .currency-select,.quantity-field>span,.payment-options legend,.billing-details summary{font:600 20px/1.3 "Cormorant Garamond",Georgia,serif;letter-spacing:.025em}
.booking-intro,.booking-status{font:500 20px/1.45 "Cormorant Garamond",Georgia,serif}
.booking .payment-options small{font:500 18px/1.35 "Cormorant Garamond",Georgia,serif}
.booking .booking-footnote{font:500 17px/1.45 "Cormorant Garamond",Georgia,serif!important}
.booking-total>span{font:600 italic 22px "Cormorant Garamond",Georgia,serif}.booking-total strong,.order-summary dd:last-child,.payment-amount{font-family:"Archivo Black",sans-serif;letter-spacing:-.04em}
.order-summary dt{font:600 19px/1.3 "Cormorant Garamond",Georgia,serif}.order-summary dd{font:400 15px/1.6 Manrope,sans-serif}.order-summary dd:last-child{font-size:24px}
.booking .booking-primary,.booking .booking-actions button,.payment-download{font:400 13px/1.5 "Archivo Black",sans-serif;text-transform:uppercase;letter-spacing:.075em}
.booking .booking-primary{padding:18px 14px}.booking .booking-actions button{font-size:11px;padding:14px}
.booking .quantity-stepper{display:grid;grid-template-columns:58px minmax(68px,1fr) 58px;align-items:center;max-width:280px;border:1px solid #34503f;background:#020604;margin-top:10px}
.booking .quantity-hint{margin:6px 0 12px;font:400 15px/1.6 Manrope,sans-serif;color:#bdcbbf;letter-spacing:0}
.booking .quantity-stepper button{width:58px;height:56px;padding:0;margin:0;border:0;background:transparent;color:var(--acid);font:400 28px/1 "Archivo Black",sans-serif;cursor:pointer;touch-action:manipulation}
.booking .quantity-stepper button:hover:not(:disabled){background:#bafc3815}.booking .quantity-stepper button:disabled{opacity:.25}.booking .quantity-stepper button:focus-visible{outline:2px solid var(--acid);outline-offset:-4px}
.booking .quantity-stepper input{appearance:textfield;-moz-appearance:textfield;width:100%;height:36px;border:0;border-inline:1px solid #34503f;margin:0;padding:0 6px;text-align:center;font:400 25px/1 "Archivo Black",sans-serif;background:transparent;color:var(--paper);cursor:default}
.booking .quantity-stepper input::-webkit-inner-spin-button,.booking .quantity-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
@media(max-width:500px){.booking .quantity-stepper{max-width:none;grid-template-columns:64px minmax(68px,1fr) 64px}.booking .quantity-stepper button{width:64px;height:60px}.booking .booking-primary{font-size:12px;letter-spacing:.045em}.booking-steps{font-size:16px}.booking h3{font-size:20px}}
.bank-currency-label{display:block;font:600 15px Manrope,sans-serif;margin:22px 0 8px;color:var(--paper)}
#payment-currency{width:100%;max-width:320px;min-height:48px;background:#04100a;border:1px solid #34503f;color:var(--paper);font:16px Manrope,sans-serif;padding:12px;border-radius:4px}
.bank-details dd{overflow-wrap:anywhere}.payment-buttons{display:flex;flex-wrap:wrap;gap:12px}.payment-buttons button{flex:1 1 220px}
#qr-payment h2{font:24px "Archivo Black",sans-serif;letter-spacing:-.03em;margin:28px 0 18px}
.bank-qr-frame{width:min(100%,320px);background:#fff;padding:10px;margin:0 auto;border-radius:4px}.bank-qr-frame img{display:block;width:100%;height:auto;aspect-ratio:1}.bank-qr-frame img:not([src]){visibility:hidden}
#email-message{border-left:2px solid var(--acid);padding-left:14px}.payment-page .payment-message{overflow-wrap:anywhere}.payment-page button{min-height:48px;cursor:pointer}
@media(max-width:560px){.payment-buttons{display:grid;grid-template-columns:minmax(0,1fr)}.payment-buttons button{width:100%;font-size:12px}.payment-box dl{grid-template-columns:minmax(0,1fr);gap:5px}.payment-box dd{margin-bottom:12px}.bank-details{font-size:15px}}

/* Privacy notice acknowledgement and public operator details. */
.booking .privacy-confirmation{display:flex;align-items:flex-start;gap:12px;margin:24px 0 0;font:500 14px/1.65 Manrope,Arial,sans-serif;letter-spacing:0;color:#bdcbbf}.booking .privacy-confirmation input{display:block;flex:0 0 20px;width:20px;height:20px;margin:3px 0 0;padding:0;accent-color:var(--acid);cursor:pointer}.privacy-confirmation a{color:var(--acid);text-decoration:underline;text-underline-offset:3px}.privacy-confirmation input:focus-visible{outline:2px solid var(--acid);outline-offset:4px}footer{flex-wrap:wrap}.footer-legal{flex-basis:100%;display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding-top:28px;margin-top:16px;border-top:1px solid #244330;font:400 12px/1.9 Manrope,Arial,sans-serif;letter-spacing:0;color:#9caf9e}.footer-legal p{margin:0 0 12px}.footer-legal .footer-credit{font-size:14px;color:var(--paper)}.footer-legal a{color:var(--paper);text-decoration:underline;text-underline-offset:4px}.footer-legal .footer-privacy{color:var(--acid);max-width:100%;overflow-wrap:anywhere}@media(max-width:760px){.footer-legal{flex-direction:column;align-items:flex-start;gap:22px;font-size:12px}.booking .privacy-confirmation{font-size:13px}}

/* Desktop hero composition */
@media (min-width:761px){
  .hero{min-height:680px;padding:104px 0 82px}
  .hero-image{inset:0;background-size:cover,cover,auto 130%!important;background-position:center,center,right center!important;background-repeat:no-repeat!important}
  .hero-copy{--hero-word-size:clamp(88px,min(9vw,17svh),156px);--hero-code-size:clamp(132px,min(14vw,24svh),220px);width:min(1280px,calc(100% - 112px));padding:0}
  .hero-copy .kicker{margin:0;font-size:clamp(17px,1.25vw,21px);line-height:1.4}
  .hero-brand{width:min(100%,calc(var(--hero-word-size)*4.5));margin:24px 0 22px}
  .hero-title{height:calc(var(--hero-word-size)*.85 + var(--hero-code-size)*.75 + 14px);margin:0}
  .hero-title .random{font-size:var(--hero-word-size);letter-spacing:-.085em;text-align:left!important}
  .hero-title em{left:auto!important;right:0!important;top:calc(var(--hero-word-size)*.52)!important;font-size:clamp(38px,calc(var(--hero-word-size)*.5),76px)!important;transform:translate(6%,-15%) rotate(-7deg)!important}
  .hero-title b{right:0;bottom:0!important;font-size:var(--hero-code-size);line-height:.75}
  .hero-copy .sub{margin:0;font-size:clamp(12px,.9vw,15px);line-height:1.8}
  .hero-copy .enter{position:relative;left:0;right:auto;top:auto;bottom:auto;width:88px;height:88px;margin-top:16px}
  .hero-copy .enter b{font-size:32px!important}
  .hero .scroll{bottom:18px;margin:0;font-size:13px;line-height:1.5}
}

/* Ticket names and accessible purchase actions. */
.pass{display:flex;flex-direction:column;min-height:530px;overflow:clip}
.pass h3 .pass-title-prefix{display:block;margin-bottom:6px;color:var(--acid);font:600 italic 20px/1.2 "Cormorant Garamond",Georgia,serif;letter-spacing:.16em}
.royal h3 .pass-title-prefix{color:var(--gold)}
.pass>p{margin:16px 0 28px;line-height:1.7}
.pass .pass-foot{position:relative;left:auto;right:auto;bottom:auto;gap:14px;margin-top:auto;padding-top:20px}
.pass-foot button{display:inline-flex;align-items:center;justify-content:center;min-width:136px;min-height:48px;padding:10px 16px;border:1px solid var(--acid);background:#bafc380a;color:var(--acid);font:600 italic 21px/1.2 "Cormorant Garamond",Georgia,serif;letter-spacing:.12em;text-shadow:none;cursor:pointer;touch-action:manipulation;transition:background .2s,color .2s,box-shadow .2s}
.pass-foot button:hover{background:var(--acid);color:var(--void);box-shadow:0 0 22px #bafc3826}
.pass-foot button:focus-visible{outline:2px solid var(--acid);outline-offset:4px}
@media(min-width:761px) and (max-width:1100px){.pass h3{font-size:34px}.pass .pass-foot{flex-wrap:wrap}.pass-foot button{flex:1 1 100%;width:100%}}

/* Royal occupancy supplied by the organizer; one Royal entry represents one table. */
.pass .royal-occupancy{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-12px 0 20px;padding:10px 12px;border:1px solid #b99b6066;background:#b99b600d;color:#d6b879}
.royal-occupancy span{font:500 10px/1.4 "DM Mono",monospace;letter-spacing:.08em;text-transform:uppercase}
.royal-occupancy strong{font:600 16px/1.4 Manrope,sans-serif;color:#e5ce9a;white-space:nowrap}
