:root{--access-accent:#dcfd51;--typed-angle:0deg;--signal:0%}.access-page{min-height:100svh;overflow-x:hidden;background:#141510}.access-page[data-access=host]{--access-accent:#c0abe9}.access-header{height:96px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,5vw,80px);border-bottom:1px solid #ffffff12}.access-header .brand-name{font-size:9px}.access-edition{font-size:9px;letter-spacing:.13em;color:#9a9e8c}.access-edition i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--access-accent);margin-right:9px;box-shadow:0 0 16px #dcfd5166}.access-layout{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center;max-width:1450px;min-height:calc(100svh - 164px);margin:0 auto;padding:48px clamp(24px,6vw,90px);position:relative}.access-copy{position:relative;z-index:2}.access-copy .eyebrow{font-size:9px;letter-spacing:.22em;color:var(--access-accent);display:flex;gap:12px;align-items:center}.access-copy .eyebrow::before{content:'';width:25px;height:1px;background:var(--access-accent)}.access-copy h1{font-size:clamp(62px,7.3vw,112px);font-weight:500;line-height:.93;letter-spacing:-.075em;margin:24px 0}.access-copy h1>span{display:block;color:var(--access-accent)}.access-copy .access-description{font-size:14px;line-height:1.85;color:#a3a995;max-width:370px}.access-form{margin-top:35px;max-width:405px}.access-field-label{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:10px;letter-spacing:.06em;margin-bottom:10px}.access-field-label>span{font-size:8px;color:var(--access-accent)}.access-input-wrap{position:relative;display:flex;align-items:center;border:1px solid #4d553a;background:#1b1e14;border-radius:5px;transition:border-color .25s,box-shadow .25s;overflow:hidden}.access-input-wrap:focus-within{border-color:var(--access-accent);box-shadow:0 0 0 4px #dcfd5110}.access-input-wrap input{background:transparent;border:0;outline:0;width:100%;min-width:0;min-height:61px;padding:15px 72px 15px 18px;color:var(--ink);font-size:18px;letter-spacing:.2em}.access-input-wrap input::placeholder{font-size:12px;letter-spacing:0;color:#727d60}.access-input-wrap input:focus-visible{outline:none}.access-input-wrap input[type=text]{letter-spacing:.025em}.access-input-wrap button{position:absolute;right:8px;background:transparent;padding:12px;min-height:44px;font-size:10px;color:#b7bfa7;border-radius:3px}.access-input-wrap button:hover{color:var(--access-accent)}.access-progress{height:2px;margin-top:10px;background:#303725;overflow:hidden;border-radius:2px}.access-progress i{display:block;height:100%;width:var(--signal);background:var(--access-accent);transition:width .35s cubic-bezier(.15,.8,.2,1);box-shadow:0 0 15px var(--access-accent)}.access-submit{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:55px;padding:15px 20px;margin-top:20px;background:var(--access-accent);color:#141510;font-size:13px;font-weight:600;border-radius:4px;transition:transform .25s,box-shadow .25s}.access-submit>span:last-child{font-size:24px;line-height:1;font-weight:400}.access-submit:hover{transform:translateY(-2px);box-shadow:0 10px 30px #dcfd5115}.access-submit:disabled{opacity:.8}.access-feedback{min-height:24px;color:var(--access-accent);font-size:11px;margin-top:16px;line-height:1.8}.access-smallprint{font-size:8px;color:#7c8868;letter-spacing:.1em;margin-top:6px}.access-error .access-input-wrap{border-color:#ffa588;animation:access-shake .4s ease}.access-error .access-feedback{color:#ffb69e}.access-error .access-progress i{background:#ffb69e}.access-art{width:100%;aspect-ratio:1;position:relative;perspective:900px;isolation:isolate;max-width:560px}.access-art::before{content:'';position:absolute;inset:5%;border-radius:50%;background:radial-gradient(ellipse,#c6e55815,transparent 64%);filter:blur(10px);transition:transform .6s,opacity .6s}.access-ring{position:absolute;inset:2%;border:1px solid #74865344;border-radius:50%;transform:rotateX(26deg) rotateY(-21deg);transition:transform .7s cubic-bezier(.2,.8,.2,1)}.access-ring::after{content:'';position:absolute;left:17%;top:10%;width:8px;height:8px;border-radius:50%;background:var(--access-accent);box-shadow:0 0 15px #dcfd5144}.access-ring.ring-two{inset:-7%;border-style:dashed;border-color:#6e805522;transform:rotateX(-30deg) rotateY(25deg) rotateZ(-20deg);animation:access-orbit 24s ease-in-out infinite}.vinyl-tilt{position:absolute;inset:13%;transform:rotateX(16deg) rotateY(-22deg) rotateZ(-18deg);transform-style:preserve-3d;transition:transform .65s cubic-bezier(.15,.8,.2,1);filter:drop-shadow(17px 35px 35px #0007)}.vinyl-disc{position:absolute;inset:0;border-radius:50%;background:repeating-radial-gradient(circle at center,transparent 0 3px,#989e9d10 3px 4px),conic-gradient(from 35deg,#11150e 0deg,#4e5644 45deg,#161c0f 80deg,#0a0e08 150deg,#515a47 210deg,#10150b 260deg,#373f2c 320deg,#11150e 360deg);border:1px solid #727f5655;box-shadow:inset 0 0 0 7px #242b1f,inset 0 0 0 8px #74825933,inset 0 0 0 10px #0d110a;animation:access-vinyl 25s linear infinite}.vinyl-label{position:absolute;inset:31%;border-radius:50%;background:var(--access-accent);color:#1b2313;display:flex;flex-direction:column;justify-content:center;align-items:center;transform:rotate(var(--typed-angle));transition:transform .6s cubic-bezier(.15,.8,.2,1);box-shadow:0 0 0 4px #141810,0 0 0 5px #71854855}.vinyl-label::after{content:'';position:absolute;inset:calc(50% - 5px);background:#141510;border:1px solid #8d9c73;border-radius:50%}.vinyl-label .label-name{font-size:clamp(22px,3.3vw,45px);line-height:1;font-weight:600;letter-spacing:-.12em;margin-bottom:25px}.vinyl-label .label-volume{font-size:7px;letter-spacing:.13em;margin-top:3px}.vinyl-label .label-side{position:absolute;top:14px;font-size:6px;letter-spacing:.14em}.vinyl-shine{position:absolute;inset:0;border-radius:50%;background:linear-gradient(125deg,transparent 25%,#e6f3c928 30%,transparent 34%,transparent 66%,#b8c2f013 70%,transparent 75%);mix-blend-mode:screen;pointer-events:none}.access-sticker{position:absolute;bottom:4%;right:5%;background:var(--access-accent);color:#141510;width:86px;height:86px;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;transform:rotate(15deg);box-shadow:0 0 0 6px #141510;font-size:7px;letter-spacing:.1em;animation:access-sticker 6s ease-in-out infinite}.access-sticker strong{font-size:28px;letter-spacing:-.07em;line-height:1.1;font-weight:500}.art-caption{position:absolute;bottom:-7%;left:0;right:0;text-align:center;font-size:8px;letter-spacing:.15em;color:#889773}.art-coordinate{position:absolute;top:0;right:0;font-size:7px;color:#748762;letter-spacing:.1em}.signal-bars{position:absolute;bottom:6%;left:3%;height:58px;display:flex;align-items:center;gap:4px;width:73px;transform:rotate(-8deg)}.signal-bars i{display:block;width:4px;height:var(--bar,20%);background:var(--access-accent);opacity:.6;border-radius:3px;transition:height .3s}.access-focused .vinyl-tilt{transform:rotateX(4deg) rotateY(-9deg) rotateZ(-8deg) scale(1.035)}.access-typing .access-art::before{opacity:1;transform:scale(1.25)}.access-typing .access-ring:not(.ring-two){transform:rotateX(26deg) rotateY(-21deg) rotateZ(var(--typed-angle))}.access-checking .vinyl-disc{animation-duration:2s}.access-checking .access-submit>span:last-child{animation:access-vinyl 1.2s linear infinite}.access-approved .access-art{animation:access-arrive .95s cubic-bezier(.5,0,.2,1) forwards}.access-approved .access-copy{animation:access-copy-out .95s cubic-bezier(.5,0,.2,1) forwards}.access-approved .access-ring{border-color:var(--access-accent)}.access-footer{min-height:68px;padding:15px clamp(24px,5vw,80px);border-top:1px solid #ffffff12;display:flex;justify-content:space-between;align-items:center;gap:20px;color:#8b957a;font-size:8px;letter-spacing:.12em}.access-footer a:hover{color:var(--access-accent)}.access-page .intro{display:none}.host-lock-button{border:1px solid #766789;background:transparent;color:#d2baf5;padding:10px 15px;border-radius:4px;font-size:11px;white-space:nowrap}.host-lock-button:hover{background:#c0abe913}.host-session-note{font-size:10px;color:#b5a1cd;margin-top:15px}.access-noscript{margin:20px auto;max-width:550px;padding:20px;background:#2b2418;color:#e1cf9d}
@keyframes access-vinyl{to{transform:rotate(360deg)}}@keyframes access-orbit{50%{transform:rotateX(-15deg) rotateY(45deg) rotateZ(35deg)}}@keyframes access-sticker{50%{transform:translateY(-9px) rotate(8deg)}}@keyframes access-shake{20%,60%{transform:translateX(-5px)}40%,80%{transform:translateX(5px)}}@keyframes access-arrive{45%{transform:rotate(-5deg) scale(1.06);opacity:1}to{transform:rotate(12deg) scale(1.7);opacity:0;filter:blur(12px)}}@keyframes access-copy-out{45%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-32px)}}
@media(max-width:900px){.access-layout{gap:20px;padding:45px 35px}.access-copy h1{font-size:69px}.access-art{max-width:420px}.access-sticker{width:68px;height:68px;font-size:6px}.access-sticker strong{font-size:23px}.art-caption{font-size:6px}.signal-bars{transform:scale(.8) rotate(-8deg)}.access-description{font-size:12px!important}}
@media(max-width:650px){.access-header{height:76px;padding:0 23px}.access-header .brand-name{font-size:7px}.access-edition{font-size:7px}.access-layout{display:flex;flex-direction:column-reverse;padding:30px 25px 35px;gap:25px;min-height:calc(100svh - 137px);justify-content:center;align-items:stretch}.access-art{width:200px;max-width:64vw;align-self:center;margin:0 0 15px;aspect-ratio:1}.access-ring{inset:0}.access-ring.ring-two{inset:-8%}.vinyl-tilt{inset:8%}.vinyl-label{inset:30%}.vinyl-label .label-name{font-size:23px;margin-bottom:20px}.vinyl-label .label-volume{font-size:5px;margin-top:0}.vinyl-label .label-side{font-size:4px;top:9px}.vinyl-label::after{inset:calc(50% - 3px)}.access-sticker{width:52px;height:52px;right:-4%;bottom:-4%;font-size:5px}.access-sticker strong{font-size:18px}.signal-bars{left:-18%;bottom:0;transform:scale(.65);height:50px}.art-caption{display:none}.art-coordinate{font-size:5px;right:-18%;top:6%}.access-copy{max-width:440px;width:100%;align-self:center}.access-copy h1{font-size:clamp(43px,12.7vw,68px);margin:16px 0 15px;line-height:.95}.access-copy h1>span{display:inline}.access-copy .eyebrow{font-size:7px;letter-spacing:.17em}.access-copy .eyebrow::before{width:18px}.access-copy .access-description{font-size:12px;max-width:340px;line-height:1.7}.access-form{margin-top:25px;max-width:none}.access-field-label{font-size:9px}.access-input-wrap input{min-height:54px;font-size:17px}.access-submit{min-height:52px;font-size:12px;margin-top:15px}.access-feedback{font-size:10px;margin-top:12px;min-height:21px}.access-smallprint{font-size:7px;letter-spacing:.07em}.access-footer{min-height:61px;padding:18px 24px;font-size:6px;gap:15px}.access-footer>span:last-child{text-align:right;max-width:155px}.host-lock-button{font-size:10px;padding:10px}.host-page .site-header{gap:10px}.host-page .site-header .text-link{font-size:9px}}
@media(max-height:740px) and (max-width:650px){.access-art{width:140px;margin:0 0 8px}.access-layout{padding-top:23px;gap:16px}.vinyl-label .label-name{font-size:18px;margin-bottom:12px}.vinyl-label .label-side{top:4px;font-size:3px}.vinyl-label .label-volume{font-size:4px}.access-sticker{width:44px;height:44px}.access-sticker strong{font-size:16px}.access-copy h1{font-size:47px}.access-form{margin-top:18px}.access-header{height:65px}}
/* Keep the rotating 3D rings inside the entrance instead of widening the page. */
.access-layout{overflow:hidden;overflow:clip}
.access-page[data-access=invitation] .access-layout{min-height:calc(100svh - 96px)}
@media(max-width:650px){.access-page[data-access=invitation] .access-layout{min-height:calc(100svh - 76px)}}
@media(max-height:740px) and (max-width:650px){.access-page[data-access=invitation] .access-layout{min-height:calc(100svh - 65px)}}

/* Mobile keeps the same record finish and type hierarchy as desktop. */
@media(max-width:650px){.access-header{height:70px}.access-layout{padding:24px 24px 30px;gap:16px;justify-content:center}.access-art{width:clamp(190px,58vw,260px);max-width:none;margin:0 0 8px}.access-copy h1{font-size:clamp(43px,12vw,68px);letter-spacing:-.065em;line-height:.98}.access-form{margin-top:22px}.access-input-wrap input{font-size:17px;min-height:56px;padding-right:92px}.access-input-wrap input::placeholder{font-size:14px}.access-field-label{font-size:11px}.access-submit{font-size:14px;min-height:56px}.access-input-wrap button{font-size:11px}.access-page[data-access=invitation] .access-layout{min-height:calc(100svh - 70px)}.vinyl-label .label-side{font-size:5px}.vinyl-label .label-volume{font-size:6px;text-align:center;max-width:80%}.art-coordinate{right:-5%}}
@media(max-height:650px) and (max-width:650px){.access-art{width:170px}.access-layout{gap:8px;padding-top:18px}.access-copy h1{font-size:clamp(39px,11vw,52px);margin-top:8px}.access-form{margin-top:16px}}
