body.entrance-active{overflow:hidden;background:#080b13}
.entrance-active>.topbar,.entrance-active>.rail,.entrance-active>#main,.entrance-active>.player,.entrance-active>.skip-link,.entrance-active>.environment{visibility:hidden;pointer-events:none}
.pmp-entrance[hidden],.pmp-entrance [hidden]{display:none!important}
.pmp-entrance{position:fixed;inset:0;z-index:60;background:radial-gradient(ellipse at 50% 52%,#202133 0%,#0a0d17 55%,#060910 100%);color:#f4f0fa;overflow:hidden;isolation:isolate;--entry-hue:#c4b1fa;font-family:Inter,system-ui,sans-serif}
.entry-header{position:absolute;inset:0 0 auto;z-index:4;display:flex;align-items:center;justify-content:space-between;padding:23px 3.5vw;gap:20px;pointer-events:none}
.entry-brand{display:flex;align-items:center;gap:10px;font-size:17px;letter-spacing:-.055em;font-weight:520;white-space:nowrap}.entry-brand>svg{width:36px;height:32px}.entry-brand strong{font-weight:770}
.entry-signature{font-size:8px;letter-spacing:.25em;text-transform:uppercase;color:#bab4cb;display:flex;align-items:center;gap:10px}.entry-signature:before{content:'';width:4px;height:4px;background:#bbacf7;border-radius:50%;box-shadow:0 0 16px #b397ff}
.entry-welcome{position:absolute;top:12vh;left:6vw;right:6vw;text-align:center;z-index:3;pointer-events:none}
.entry-overline{text-transform:uppercase;color:#c1b2d9;font-size:9px;font-weight:550;letter-spacing:.32em;margin:0 0 17px}
.entry-welcome h1{font-size:clamp(32px,3.65vw,62px);font-weight:450;letter-spacing:-.055em;line-height:1.06;max-width:1050px;margin:0 auto 14px;text-wrap:balance}.entry-welcome h1 em{font-style:normal;color:#cfb8f1}
.entry-welcome-copy{font-size:clamp(12px,1vw,15px);color:#a8a5b8;line-height:1.65;letter-spacing:-.018em}
.entry-scene{position:absolute;inset:35vh 5vw 9vh;z-index:1;overflow:visible;pointer-events:auto}.entry-scene canvas{width:100%;height:100%;display:block;touch-action:none}
.entry-spatial-choices{position:absolute;inset:0;z-index:2;pointer-events:none}
.entry-welcome-footer{position:absolute;bottom:3.5vh;left:3.5vw;right:3.5vw;display:flex;justify-content:space-between;gap:20px;font-size:8px;letter-spacing:.15em;text-transform:uppercase;color:#8e899e;pointer-events:none}
.entry-listening{position:absolute;inset:0;z-index:3;pointer-events:none}.entry-listening button,.entry-listening input,.entry-listening select,.entry-listening summary{pointer-events:auto}
.entry-steps{position:absolute;top:24px;left:50%;transform:translateX(-50%);display:flex;gap:5px}.entry-steps button{display:flex;gap:8px;align-items:center;padding:9px 15px;min-height:36px;border:1px solid transparent;border-radius:24px;font-size:11px;color:#8d899b;white-space:nowrap}.entry-steps button span{font-size:8px;color:#7f728f}.entry-steps button[aria-current=step]{color:#ede2ff;border-color:#a68bc84a;background:#a594c30d}.entry-steps button[aria-current=step] span{color:#c1a6e2}
.entry-heading{position:absolute;top:13vh;left:6vw;right:6vw;text-align:center}.entry-step-count{font-size:8px;letter-spacing:.25em;color:#aa90c4;margin-bottom:10px}.entry-listening h2{font-size:clamp(30px,3vw,50px);font-weight:450;letter-spacing:-.05em;line-height:1.04;outline:none;margin:0}.entry-step-description{margin:12px auto 0;font-size:12px;line-height:1.6;color:#a9a0bb}
#entry-step{position:absolute;top:14vh;right:3.5vw;width:200px;z-index:5}.entry-search-label input{width:100%;min-height:38px;border:0;border-bottom:1px solid #b9a4d035;background:#0e102300;border-radius:0;padding:8px 3px;font-size:11px;color:#e8dcfa;outline-offset:5px}.entry-search-label input::placeholder{color:#8e849f}
.pmp-entrance[data-view=listening] .entry-scene{inset:27vh 7vw 22vh}
.entry-gallery-navigation{position:absolute;bottom:17vh;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:22px}.entry-gallery-navigation button{width:38px;height:36px;color:#d8c9ee;font-size:19px;border:1px solid #b09ace29;border-radius:50%;background:#101322}.entry-gallery-navigation button:disabled{opacity:.25;cursor:default}.entry-gallery-navigation span{min-width:48px;text-align:center;color:#aaa0be;font-size:9px;letter-spacing:.2em}
.entry-bottom{position:absolute;left:4vw;right:4vw;bottom:2.2vh;display:grid;grid-template-columns:1fr auto;gap:8px 30px;align-items:center;padding:18px 0 0;border-top:1px solid #9b87ba22}.entry-selection-summary{display:grid;gap:6px;max-width:min(560px,50vw)}.entry-selection-summary small{font-size:8px;text-transform:uppercase;letter-spacing:.2em;color:#81758f}.entry-selection-summary span{font-size:12px;line-height:1.55;color:#d6c8e8;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.entry-navigation{display:flex;gap:28px;align-items:center}.entry-back{font-size:11px;min-height:43px;color:#a99eb9}.entry-next{display:flex;align-items:center;gap:22px;min-height:47px;padding:12px 22px;background:#d9c9ef;border:1px solid #efdeff38;color:#21162c;border-radius:8px;font-size:12px;font-weight:600;box-shadow:0 0 26px #b297e012;transition:background .2s,box-shadow .2s}.entry-next:hover{background:#ebddfc;box-shadow:0 0 32px #b297e029}.entry-next svg{width:17px;height:17px}.entry-next:disabled{opacity:.55;cursor:progress}.entry-feedback{grid-column:1/-1;min-height:18px;margin:0;color:#d5b7f2;font-size:11px;line-height:1.5;text-align:right}
.pmp-entrance[data-view=listening]>.entry-welcome-footer{display:none}
.entry-refinements{font-size:11px;color:#c7b9d9;pointer-events:auto}.entry-refinements summary{cursor:pointer;list-style:none;padding:10px;border:1px solid #af97cf33;border-radius:6px;text-align:center;background:#141321d9}.entry-final-controls{display:grid;gap:12px;padding:15px;background:#151323f5;border:1px solid #ad8bc337;border-radius:6px;margin-top:8px;box-shadow:0 10px 30px #0007}.entry-final-controls label{display:grid;gap:7px;font-size:10px;color:#a89ab9}.entry-final-controls select{width:100%;min-height:34px;border:1px solid #ae98c633;border-radius:4px;background:#10101b;color:#e4d6f3;font-size:11px;padding:6px}
.entry-scene-fallback{position:absolute;inset:0;display:grid;align-content:center;grid-template-columns:repeat(3,1fr);gap:12px;padding:20px;z-index:4;background:#0b0d18}.entry-scene-fallback p{grid-column:1/-1;text-align:center;font-size:12px;color:#b9aacb}.entry-scene-fallback button{padding:18px;background:#292038;border:1px solid #b196d544;border-radius:8px;color:#e9dff7;font-size:14px}.entry-scene-fallback button[aria-pressed=true]{border-color:#d9b4fa}
.entry-steps button:focus-visible,.entry-next:focus-visible,.entry-back:focus-visible,.entry-gallery-navigation button:focus-visible,.entry-refinements summary:focus-visible{outline:2px solid #dac0fa;outline-offset:5px}
@media(min-width:1700px){.entry-header{padding:30px 4vw}.entry-brand{font-size:22px}.entry-steps{top:30px}.entry-welcome{top:14vh}.entry-welcome h1{font-size:66px}.entry-heading{top:14vh}.entry-step-description{font-size:15px}.entry-listening h2{font-size:54px}.entry-selection-summary span{font-size:15px}.entry-next{min-height:56px;padding:16px 26px;font-size:15px}.entry-back{font-size:14px}.entry-bottom{bottom:3vh}.entry-search-label input{font-size:13px}}
@media(max-width:900px){.entry-signature{display:none}.entry-steps{left:auto;right:3vw;transform:none}.entry-heading{top:13vh}.entry-listening h2{font-size:34px}#entry-step{top:24vh;right:7vw;width:175px}.pmp-entrance[data-view=listening] .entry-scene{inset:31vh 4vw 23vh}.entry-scene{inset:35vh 3vw 9vh}.entry-welcome h1{font-size:38px}.entry-bottom{gap:5px 15px}.entry-navigation{gap:16px}.entry-selection-summary{max-width:39vw}}
@media(max-width:600px){.entry-header{padding:18px 20px}.entry-brand{font-size:16px}.entry-brand>svg{width:30px;height:28px}.entry-welcome{top:11vh;left:24px;right:24px}.entry-overline{font-size:8px;letter-spacing:.22em;margin-bottom:16px}.entry-welcome h1{font-size:34px;line-height:1.08}.entry-welcome-copy{font-size:11px;line-height:1.7;max-width:280px;margin:auto}.entry-scene{inset:34vh 12px 7vh}.entry-welcome-footer{bottom:2.5vh;left:20px;right:20px;font-size:6px;letter-spacing:.08em}.entry-steps{top:70px;left:20px;right:20px;justify-content:center}.entry-steps button{font-size:10px;padding:7px 14px;min-height:33px}.entry-heading{top:125px;left:20px;right:20px}.entry-step-count{display:none}.entry-listening h2{font-size:29px}.entry-step-description{font-size:10px;margin:9px 0 0}#entry-step{top:203px;left:50%;right:auto;transform:translateX(-50%);width:190px}.entry-search-label input{min-height:31px;text-align:center;font-size:10px}.pmp-entrance[data-view=listening] .entry-scene{inset:245px 8px 172px}.entry-gallery-navigation{bottom:133px;gap:20px}.entry-gallery-navigation button{width:32px;height:30px}.entry-gallery-navigation span{font-size:8px}.entry-bottom{left:20px;right:20px;bottom:8px;grid-template-columns:1fr;padding-top:9px;gap:7px}.entry-selection-summary{max-width:100%;display:flex;gap:9px;align-items:center}.entry-selection-summary small{font-size:7px;flex-shrink:0}.entry-selection-summary span{font-size:10px;-webkit-line-clamp:1}.entry-navigation{justify-content:space-between;gap:10px}.entry-next{min-height:41px;padding:10px 17px;font-size:11px;gap:17px}.entry-back{font-size:10px;min-height:36px}.entry-feedback{min-height:15px;font-size:9px;text-align:left}.entry-refinements summary{padding:7px;font-size:10px}.entry-final-controls{grid-template-columns:1fr 1fr;width:310px;position:relative;left:-60px;padding:10px;gap:8px}.entry-scene-fallback{grid-template-columns:repeat(2,1fr);padding:5px;gap:8px}.entry-scene-fallback button{font-size:11px;padding:10px}}
@media(max-height:670px) and (min-width:601px){.entry-header{padding-top:15px}.entry-steps{top:15px}.entry-welcome{top:13vh}.entry-welcome h1{font-size:35px}.entry-welcome-copy{font-size:11px}.entry-overline{margin-bottom:11px}.entry-heading{top:13vh}.entry-listening h2{font-size:30px}.entry-step-description{font-size:11px}.pmp-entrance[data-view=listening] .entry-scene{top:29vh;bottom:25vh}.entry-gallery-navigation{bottom:19vh}.entry-bottom{padding-top:10px}.entry-next{min-height:40px}.entry-welcome-footer{font-size:7px}}
@media(prefers-reduced-motion:reduce){.pmp-entrance *{animation:none!important;transition:none!important}}
.entry-scene>canvas{mask-image:linear-gradient(to bottom,transparent,#000 5%,#000 88%,transparent),linear-gradient(to right,transparent,#000 3%,#000 97%,transparent);mask-composite:intersect}

/* Welcome is a routed page: its overlay lives inside <main>, so <main> must stay visible while the shell chrome is hidden. */
body[data-page=welcome].entrance-active>#main{visibility:visible;pointer-events:auto;margin:0;padding:0;min-height:0}
.entry-fallback-choice{display:flex;flex-direction:column;gap:6px;align-items:center;padding:22px 30px;margin:8px;border:1px solid #c5a9f54a;border-radius:16px;background:#a179d01a;color:#fff;cursor:pointer;font:inherit}.entry-fallback-choice strong{font-size:1.15rem}.entry-fallback-choice small{color:#bdb3d1}.entry-fallback-choice:hover,.entry-fallback-choice:focus-visible{background:#a179d033;outline:2px solid #c9a7ff}

