/* PGP-WO009. Public navigation and front door, approved fonts and palette. */
.visitor-journey .journey-header{flex-wrap:wrap;gap:8px 24px}
.visitor-journey .front-link{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;background:#0a1017;border-bottom:1px solid #f4efdf;font:12px/1.4 Arial,sans-serif}
.visitor-journey .risk-footer{position:relative;background:#0a1017;color:#f4efdf;padding:24px 5vw;font:12px/1.7 Arial,sans-serif}
.visitor-journey .risk-footer p{margin:0;max-width:900px}
.door{min-height:100svh;background:#0a1017;color:#f4efdf;position:relative;isolation:isolate}
.door-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.door:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0a1017ed,transparent);z-index:-1}
.door .journey-header{position:relative;inset:auto;padding:24px 5vw}
.door-copy{margin:8svh 5vw 0;padding:32px;background:#0a1017;max-width:640px;border-top:2px solid #f4b344}
.door-copy .eyebrow{font:12px/1.6 Arial,sans-serif;letter-spacing:.1em;color:#f4b344;margin:0 0 24px}
.door-copy h1{font:400 clamp(64px,7.8vw,112px)/.94 LeagueGothic,Impact,sans-serif;margin:0;text-shadow:none}
.door-choices{display:flex;flex-wrap:wrap;gap:16px 32px;margin-top:32px}
.door-choices a{min-height:48px;display:inline-flex;align-items:center;border-bottom:1px solid #f4efdf;font:16px/1.5 Arial,sans-serif;padding:8px 0}
.door-choices .enter{color:#f4b344;border-color:#f4b344}
.door-note{font:12px/1.7 Arial,sans-serif;background:#0a1017;width:fit-content;margin:40px 5vw 0;padding:8px 16px;max-width:90%}
.door .risk-footer{margin-top:40px}
@media(max-width:899px){
 .visitor-journey .journey-header .proper{width:136px}
 .visitor-journey .journey-header .back{order:3;width:100%;margin-left:0}
 .visitor-journey .journey-header .front-link{margin-left:auto;padding:8px 0}
 .visitor-journey .static-intro{padding-top:160px}
 .visitor-journey .risk-footer{padding:24px}
 .door .journey-header{padding:16px 24px}
 .door-copy{margin:32px 24px 0;padding:24px}
 .door-copy h1{font-size:64px}
 .door-image{height:100%;object-position:60% center}
 .door-note{margin:32px 24px 0;padding:8px 0;max-width:calc(100% - 48px)}
}
/* PGP-WO010. One public story; the approved room remains the menu. */
.door{display:flex;flex-direction:column}
.door .risk-footer{margin-top:auto;width:100%}
.door .door-note{margin-bottom:40px}
.continuous .journey-header,.menu-page .journey-header,.alias-page .journey-header{position:fixed;inset:0 0 auto;padding:16px 5vw;background:var(--ink);gap:16px;flex-wrap:nowrap}
.visitor-journey .journey-header nav{display:flex;gap:24px;align-items:center}
.visitor-journey .journey-header nav a{font:12px/1.5 Arial,sans-serif;display:flex;align-items:center;min-height:44px;border-bottom:1px solid var(--paper)}
.continuous .scroll-story{padding-top:96px}
.continuous .story-beat{scroll-margin-top:88px;outline:none}
.continuous .beat-copy{max-width:800px}
.continuous .beat-still figcaption{padding:12px 24px 0;font:12px/1.5 Arial,sans-serif;color:var(--paper)}
.continuous .beat-copy h1,.continuous .beat-copy h2{font-size:clamp(56px,7vw,96px)}
.continuous .signup{scroll-margin-top:80px;display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:112px 8vw 80px;background:var(--ink);border-top:1px solid var(--amber)}
.signup .eyebrow,.alias-copy .eyebrow{font:12px/1.6 Arial,sans-serif;letter-spacing:.1em;color:var(--amber);margin:0 0 24px}
.signup h2,.alias-copy h1{font:400 clamp(64px,8vw,112px)/.94 LeagueGothic,Impact,sans-serif;margin:0;text-shadow:none}
.signup p,.alias-copy p{font:16px/1.65 Arial,sans-serif}
.signup-fields{max-width:560px;width:100%}
#stay-informed{display:flex;flex-direction:column}
#stay-informed>label:not(.consent){font:14px/1.5 Arial,sans-serif;margin-bottom:8px}
#stay-informed input:not([type=checkbox]){border:1px solid var(--paper);border-radius:0;min-height:48px;padding:12px 16px;font:16px/1.5 Arial,sans-serif;background:var(--ink);color:var(--paper);margin-bottom:24px;width:100%}
#stay-informed input:focus-visible{outline:3px solid var(--amber);outline-offset:4px}
.consent{display:flex;align-items:flex-start;gap:16px;min-height:44px;margin:0 0 24px;font:14px/1.65 Arial,sans-serif;cursor:pointer}
.consent input{flex:none;width:24px;height:24px;accent-color:var(--amber);margin:4px 0 0}
#stay-informed button{min-height:56px;display:flex;justify-content:space-between;align-items:center;background:var(--amber);color:var(--ink);font:16px/1.5 Arial,sans-serif;padding:16px 24px;text-align:left}
#stay-informed-result:empty{margin:0}
.after-form{display:flex;flex-wrap:wrap;gap:24px;margin-top:32px}
.after-form a{font:14px/1.5 Arial,sans-serif;display:inline-flex;align-items:center;min-height:44px;border-bottom:1px solid var(--paper)}
#owners-box{background:var(--ink);overflow-y:auto;overscroll-behavior:contain}
#owners-box .owners-hub{min-height:100svh;flex:1}
#owners-box .close-menu{position:fixed;top:24px;right:5vw;z-index:5;display:flex;align-items:center;gap:32px;min-height:48px;background:var(--ink);padding:8px 16px;border-bottom:1px solid var(--paper);font:14px/1.5 Arial,sans-serif}
#owners-box .close-menu span{font-size:28px}
#owners-box #owner-menu,.menu-page #owner-menu{padding-top:120px;padding-bottom:32px}
#owners-box .destinations,.menu-page .destinations{gap:24px 4vw}
#owners-box .destinations strong,.menu-page .destinations strong{font-size:clamp(36px,3.3vw,48px)}
#owners-box .destinations small,.menu-page .destinations small{text-transform:uppercase}
#owners-box .owner-bottom,.menu-page .owner-bottom{margin-top:24px}
#owners-box .owner-bottom a:first-child,.menu-page .owner-bottom a:first-child{color:var(--amber);font-size:16px;border-bottom:1px solid var(--amber)}
.menu-page .owners-hub{min-height:max(900px,100svh)}
.alias-page{min-height:100svh;display:flex;flex-direction:column}
.alias-copy{padding:160px 5vw 80px}
.alias-page .risk-footer{margin-top:auto}
@media(min-width:900px) and (prefers-reduced-motion:no-preference){
 .continuous.has-motion .scroll-story{padding-top:0}
 .continuous.has-motion .story-beat{min-height:112svh;padding:112px 5vw 96px}
 .continuous.has-motion .beat-copy{width:min(480px,44vw);background:var(--ink);padding:32px}
 .continuous.has-motion .beat-copy h1,.continuous.has-motion .beat-copy h2{font-size:clamp(56px,5.5vw,80px)}
 .continuous.has-motion .story-beat:first-child{justify-content:flex-end}
 .continuous.has-motion .story-beat:first-child .beat-copy{width:min(560px,46vw)}
 .continuous.has-motion .story-beat:first-child h1{font-size:clamp(64px,7vw,104px)}
 .continuous.has-motion .kick-beat{align-items:flex-start;padding-top:120px}
 .continuous.has-motion .kick-beat .beat-copy{width:360px;padding:24px}
 .continuous.has-motion .kick-beat h2{font-size:64px}
 .continuous.has-motion .kick-beat .beat-body{margin-bottom:0}
 .continuous.has-motion .film-canvas{opacity:1}
}
@media(max-width:899px){
 .continuous .journey-header,.menu-page .journey-header,.alias-page .journey-header{padding:8px 24px;gap:8px}
 .visitor-journey .journey-header nav{gap:16px}
 .continuous .journey-header .proper,.menu-page .journey-header .proper,.alias-page .journey-header .proper{width:112px;flex:none}
 .visitor-journey .journey-header nav a{font-size:11px}
 .continuous .scroll-story{padding-top:72px}
 .continuous .beat-copy{padding:32px 24px 56px}
 .continuous .signup{grid-template-columns:1fr;gap:32px;padding:64px 24px}
 #owners-box .close-menu{right:24px;top:16px}
 #owners-box .owners-hub,.menu-page .owners-hub{min-height:100svh}
 #owners-box .scene,.menu-page .owners-hub>.scene{top:80px}
 #owners-box #owner-menu,.menu-page #owner-menu{position:relative;padding:calc(56.28vw + 112px) 24px 32px;background:linear-gradient(0deg,#0a1017 0%,#0a1017 70%,transparent 95%)}
 #owners-box .destinations,.menu-page .destinations{gap:0;grid-template-columns:1fr}
 #owners-box .destinations strong,.menu-page .destinations strong{font-size:36px}
 #owners-box .destinations>a,.menu-page .destinations>a{padding:16px 0}
 .door .door-note{margin-bottom:32px}
}

/* The invitation to scroll ends when Stay informed enters the viewport. */
.continuous.story-ended .film-caption>span{visibility:hidden}

/* Visitor rewrite 15 Oct 2026 (Aidan): an obvious invitation to scroll on the first screen; it leaves once scrolling starts. */
.scroll-cue{display:inline-flex;align-items:center;gap:16px;min-height:56px;margin-top:24px;padding:12px 24px;background:var(--amber);color:var(--ink);font:16px/1.4 Arial,sans-serif;text-decoration:none;border:0}
.scroll-cue span{font-size:24px;line-height:1}
.scroll-cue:focus-visible{outline:3px solid var(--paper);outline-offset:4px}
@media(min-width:900px) and (prefers-reduced-motion:no-preference){
 .continuous.has-motion .scroll-cue{position:fixed;left:50%;bottom:40px;transform:translateX(-50%);z-index:20;box-shadow:0 8px 32px #0a101799;transition:opacity .4s ease}
 .continuous.has-motion .scroll-cue span{animation:cue-bob 1.6s ease-in-out infinite}
 .continuous.has-scrolled .scroll-cue{opacity:0;pointer-events:none;visibility:hidden;transition:opacity .4s ease,visibility 0s .4s}
}
@keyframes cue-bob{0%,100%{transform:translateY(-3px)}50%{transform:translateY(5px)}}

/* Reading pause (Aidan 15 Oct 2026): each beat is taller and its words stay pinned while the picture holds, then the story moves on. Desktop motion only. */
@media(min-width:900px) and (prefers-reduced-motion:no-preference){
 .continuous.has-motion .story-beat{min-height:175svh;align-items:flex-start}
 .continuous.has-motion .story-beat .beat-copy{position:sticky;top:max(120px,calc(50svh - 200px))}
 .continuous.has-motion .kick-beat .beat-copy{top:120px}
}
