:root{--world-bg:#0c0d0e;--world-ivory:#f3eee5;--world-muted:#bcb8b0;--world-gold:#e2ad68}
html,body{min-height:100%;background:var(--world-bg)}body{margin:0;color:var(--world-ivory)}body.panel-open{overflow:hidden}.world{height:100svh;min-height:620px;position:relative;overflow:hidden;isolation:isolate;background:#101112}.world-art{position:absolute;z-index:-2;inset:-16px;background:#101112 url('assets/threshold-v3.webp') center center/cover no-repeat;transform:translate3d(var(--parallax-x,0px),var(--parallax-y,0px),0) scale(1.025);transition:transform .8s cubic-bezier(.2,.7,.2,1);will-change:transform}.world::after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(10,11,12,.12),transparent 56%)}.world-header{position:absolute;z-index:4;left:5.5%;right:5.5%;top:42px;display:flex;align-items:center;justify-content:space-between}.world-brand{display:flex;align-items:center;gap:17px;color:#f3eee5;text-decoration:none;font:11px/1.2 Georgia,serif;letter-spacing:.38em}.brand-mark{display:block;width:32px;height:32px;border:1px solid #d6a45c;border-radius:50%;position:relative}.brand-mark::after,.brand-mark::before{content:'';position:absolute;background:#d6a45c}.brand-mark::after{width:1px;height:40px;left:15px;top:-5px}.brand-mark::before{width:40px;height:1px;left:-5px;top:15px}.world-motion{font:11px/1.3 Arial,sans-serif;color:#ddd7ce;background:#1117;border:1px solid #8a8782;border-radius:50px;min-height:44px;padding:0 16px}.world-motion:hover{border-color:#e2ad68;color:white}.world-content{position:absolute;left:5.5%;top:27%;width:min(38%,510px)}.world-content h1{font:400 clamp(56px,5.5vw,91px)/.98 Georgia,'Times New Roman',serif;letter-spacing:-.055em;margin:0 0 26px;color:var(--world-ivory)}.world-content p{font:17px/1.5 Georgia,serif;letter-spacing:.045em;color:#d1ccc3;margin:0 0 40px}.world-actions{display:flex;align-items:center;gap:32px;flex-wrap:wrap}.world-actions button{font:13px/1.3 Arial,sans-serif;color:var(--world-ivory);cursor:pointer}.world-primary{display:flex;align-items:center;justify-content:space-between;gap:25px;background:#e2ad68!important;color:#17120c!important;border:0;border-radius:30px;padding:0 23px;min-height:48px;transition:background .2s,transform .2s}.world-primary:hover{background:#f0c386!important;color:#17120c!important;transform:translateY(-2px)}.world-secondary{background:transparent;border:0;border-bottom:1px solid #aca59b;padding:10px 0;min-height:44px}.world-secondary:hover{color:#e2ad68}.world-points{position:absolute;inset:0;pointer-events:none}.world-point{position:absolute;pointer-events:auto;width:44px;height:44px;border:1px solid #f5e5cf91;border-radius:50%;background:#100f0c45;color:white;display:grid;place-items:center;padding:0;transition:transform .3s,border .3s}.world-point::before{content:'';width:8px;height:8px;border-radius:50%;background:#fff3df}.world-point:hover,.world-point:focus-visible{transform:scale(1.18);border-color:#e2ad68}.world-point span{position:absolute;left:53px;white-space:nowrap;opacity:0;font:12px Arial,sans-serif;text-shadow:0 1px 8px #000;transition:opacity .2s}.world-point:hover span,.world-point:focus-visible span{opacity:1}.point-one{left:39%;top:36%}.point-two{left:76%;top:45%}.point-three{left:49%;top:74%}.no-script{position:absolute;bottom:20px;left:5%;padding:10px;background:#111}.no-script a{color:#e2ad68}
.research-dialog{position:fixed;inset:0 0 0 auto;margin:0;width:min(66vw,1060px);height:100dvh;max-width:none;max-height:none;border:0;border-left:1px solid #3d3d3c;padding:0;background:#101112;color:#f3eee5;box-shadow:-30px 0 100px #0009;overflow:auto;overscroll-behavior:contain;animation:panel-in .4s cubic-bezier(.2,.7,.2,1)}.research-dialog::backdrop{background:#0007;animation:veil-in .4s ease}.evidence-dialog{width:min(92vw,1440px)}.method-dialog{width:min(80vw,1250px)}.dialog-head{position:sticky;top:0;z-index:10;background:#101112f2;backdrop-filter:blur(10px);border-bottom:1px solid #3a3a39;display:flex;align-items:center;justify-content:space-between;padding:0 48px;min-height:72px;color:#aba8a2;font:10px/1.4 Arial,sans-serif;letter-spacing:.16em}.dialog-head button{background:none;border:0;color:#f3eee5;font:13px Arial,sans-serif;min-height:48px;cursor:pointer}.dialog-head button span{font-size:24px;vertical-align:middle;margin-left:12px;font-weight:200}.dialog-body{padding:0 48px 70px}.experience-section,.atlas-section,.method-section{border:0;padding:42px 0 0;scroll-margin-top:85px}.experience-introline{font:14px/1.6 Arial,sans-serif;color:#bcb8b0;max-width:650px;margin-bottom:24px}.experience-dialog .story-topline{display:none}.experience-dialog .story-stage{grid-template-columns:minmax(0,1fr) minmax(0,.65fr);min-height:520px}.experience-dialog .stage-copy{padding:20px 12px 20px 0}.experience-dialog .stage-title{font-size:clamp(35px,3.5vw,52px)}.experience-dialog .stage-prose{font-size:15px}.experience-dialog .stage-architecture{margin:0 -2vw}.experience-dialog .story-status{min-height:0;padding-top:10px}.story-explanation{border-top:1px solid #30343a;margin-top:8px;padding:18px 0}.story-explanation>summary{font-size:14px;min-height:44px;display:flex;align-items:center}.story-explanation>summary::after{content:'+';margin-left:auto;font-size:22px;color:#d6a45c}.story-explanation[open]>summary::after{content:'−'}.journey-map{display:grid;grid-template-columns:repeat(5,1fr);position:relative;gap:0;margin:12px 0 4px;padding:20px 0 0}.journey-map::before{content:'';position:absolute;left:10%;right:10%;top:25px;border-top:1px solid #5a5d5d}.journey-place{z-index:1;text-align:center;font:10px/1.5 Arial,sans-serif;color:#828a8d}.journey-place i{display:block;margin:0 auto 10px;width:11px;height:11px;border-radius:50%;background:#101112;border:1px solid #828a8d;transition:background .3s,box-shadow .3s}.journey-place.is-current{color:#f3eee5}.journey-place.is-current i{background:#e2ad68;border-color:#e2ad68;box-shadow:0 0 0 5px #e2ad6833}.journey-note{grid-column:1/-1;font:11px/1.5 Arial,sans-serif;color:#929ba0;margin:15px 0 0}.atlas-section .eyebrow,.method-section .eyebrow{margin-bottom:20px}.method-section{gap:50px}.method-section .sources-region{padding-left:35px}.research-dialog .text-button{white-space:normal}.research-dialog :focus-visible,.world :focus-visible{outline:2px solid #e2ad68;outline-offset:4px}@keyframes panel-in{from{transform:translateX(35px);opacity:.4}to{transform:translateX(0);opacity:1}}@keyframes veil-in{from{opacity:0}to{opacity:1}}
@media(max-width:1000px){.world-content{width:48%;left:5%}.world-actions{gap:20px}.research-dialog{width:min(83vw,920px)}.evidence-dialog{width:100vw}.dialog-head{padding:0 30px}.dialog-body{padding:0 30px 60px}.experience-dialog .story-stage{grid-template-columns:1fr .7fr}}
@media(max-width:700px){.world{min-height:650px}.world-art{background-position:65% center;transform:scale(1.04)}.world::after{background:linear-gradient(180deg,#0c0d0eec 0%,#0c0d0e99 29%,transparent 57%,#0c0d0ecb 100%)}.world-header{top:22px;left:22px;right:22px}.world-brand{font-size:10px;gap:13px}.brand-mark{width:26px;height:26px}.brand-mark::after{left:12px;height:32px;top:-4px}.brand-mark::before{top:12px;width:32px;left:-4px}.world-motion{font-size:10px;padding:0 13px}.world-content{left:24px;right:24px;top:17%;width:auto}.world-content h1{font-size:clamp(49px,13vw,67px);line-height:1;max-width:340px;margin-bottom:16px}.world-content p{font-size:14px;margin-bottom:0;max-width:280px}.world-actions{position:fixed;bottom:32px;left:24px;right:24px;z-index:3;gap:12px;display:grid;grid-template-columns:1fr 1fr}.world-primary{grid-column:1/-1;width:100%;min-height:50px}.world-secondary{border:1px solid #938d84;border-radius:24px;min-height:46px;background:#101112c9!important}.world-point{width:44px;height:44px}.point-one{left:22%;top:46%}.point-two{left:75%;top:51%}.point-three{left:50%;top:67%}.world-point span{display:none}.research-dialog,.evidence-dialog,.method-dialog{width:100vw}.dialog-head{min-height:62px;padding:0 20px}.dialog-body{padding:0 20px 60px}.experience-section,.atlas-section,.method-section{padding-top:28px}.experience-dialog .story-stage{display:flex;min-height:0}.experience-dialog .stage-architecture{margin:0;height:24vh;min-height:170px}.experience-dialog .stage-copy{padding:18px 0 8px}.experience-dialog .stage-prose{font-size:15px}.experience-introline{font-size:13px}.journey-place{font-size:9px}.journey-note{font-size:10px}.method-section .sources-region{padding-left:0}.section-heading h2{max-width:240px}}
@media(prefers-reduced-motion:reduce){.world-art,.research-dialog,.research-dialog::backdrop,.world-point,.journey-place i{animation:none!important;transition:none!important}}.reduced-motion .world-art,.reduced-motion .research-dialog,.reduced-motion .world-point,.reduced-motion .journey-place i{animation:none!important;transition:none!important}
.journey-traveler{position:absolute;z-index:3;top:19px;left:var(--to);width:13px;height:13px;margin-left:-6px;border-radius:50%;background:#e2ad68;box-shadow:0 0 0 5px #e2ad6833;animation:travel .45s ease both}.journey-place.is-current i{background:#101112;box-shadow:none}@keyframes travel{from{left:var(--from)}to{left:var(--to)}}@media(prefers-reduced-motion:reduce){.journey-traveler{animation:none}}.reduced-motion .journey-traveler{animation:none}
.experience-dialog .story-shell[data-phase=stance] .story-stage{display:block;min-height:0}.experience-dialog .story-shell[data-phase=stance] .stage-architecture{display:none}.experience-dialog .story-shell[data-phase=stance] .stage-copy{padding:18px 0}.experience-dialog .story-shell[data-phase=stance] .stage-options{max-width:none;gap:0}.experience-dialog .story-shell[data-phase=stance] .choice-row{border:0;border-bottom:1px solid #3d3d3d;border-radius:0;background:transparent;padding:14px 0;min-height:104px}.experience-dialog .story-shell[data-phase=stance] .choice-row::before{content:'';flex:0 0 72px;width:72px;height:72px;border:1px solid #aa977e;border-radius:50%;background:url('assets/threshold-v3.webp') 64% 45%/auto 150px}.experience-dialog .story-shell[data-phase=stance] .choice-row:nth-child(2)::before{background-position:84% 80%}.experience-dialog .story-shell[data-phase=stance] .choice-row:nth-child(3)::before{background-position:47% 24%}.experience-dialog .story-shell[data-phase=stance] .choice-number{display:none}.experience-dialog .story-shell[data-phase=stance] .choice-label{font:26px/1.25 Georgia,serif}.experience-dialog .story-shell[data-phase=stance] .choice-description{max-width:400px}.experience-dialog .story-shell[data-phase=stance] .choice-row:hover{background:#171716;transform:none}.experience-dialog .story-shell[data-phase=stance] .stage-prose{margin-bottom:10px}
body.panel-open .world-art{transform:translate3d(var(--parallax-x,0px),var(--parallax-y,0px),0) scale(1.075)}
.reduced-motion .research-dialog::backdrop{animation:none!important;transition:none!important}
.character-dialogue{font:italic 22px/1.45 Georgia,serif;color:#f3eee5;margin:0 0 16px;max-width:520px}
.scene-prop{align-self:center;width:100%;aspect-ratio:1;background:url('assets/scene-props.webp') 0% center/300% 100% no-repeat;image-rendering:pixelated;filter:drop-shadow(0 15px 30px #0009)}.scene-prop[data-place=well]{background-position:50% center}.scene-prop[data-place=engine]{background-position:100% center}@media(max-width:700px){.scene-prop{order:0;align-self:center;width:min(50vw,195px);margin:8px auto}}
.experience-dialog .stage-architecture{margin:0;min-width:0;overflow:hidden}
.character-portrait{align-self:center;position:relative;width:100%;aspect-ratio:3/4;max-height:430px;background-repeat:no-repeat;background-size:400% 100%;background-position:0% center;image-rendering:pixelated;filter:drop-shadow(0 15px 30px #0009)}.character-warden{background-image:url('assets/warden-sprites.webp')}.character-keeper{background-image:url('assets/keeper-sprites.webp')}.character-portrait[data-face=surprised]{background-position:33.333% center}.character-portrait[data-face=guarded]{background-position:66.666% center}.character-portrait[data-face=warm]{background-position:100% center}.character-caption{position:absolute;bottom:-14px;right:10%;font:11px/1.4 Arial,sans-serif;color:#c7bca9;letter-spacing:.07em;text-transform:uppercase}.reaction-next{margin-top:12px;max-width:280px}.experience-dialog,.dialog-body,.story-shell,.stage-copy,.stage-options{min-width:0;max-width:100%}.experience-dialog{overflow-x:hidden}.experience-dialog .story-continuity{overflow-x:auto}@media(max-width:700px){.character-portrait{order:0;align-self:center;width:min(48vw,190px);height:auto;max-height:none;aspect-ratio:3/4;margin:10px auto 12px}.experience-dialog .stage-copy{order:1}.character-caption{right:0;bottom:-8px;font-size:9px}}
.inline-evidence{display:inline;padding:0;margin-left:5px;background:none;border:0;border-bottom:1px solid #907954;color:#e2ad68;font:inherit;text-align:left;cursor:pointer}.inline-evidence:hover{color:#fff}
.three-ready .world-art{background-image:url('assets/chamber-closed.webp')}.portal-container{position:absolute;z-index:0;right:2%;top:5%;width:65%;height:86%;pointer-events:none}.portal-container canvas{width:100%;height:100%;display:block;pointer-events:auto;touch-action:pan-y;cursor:grab;outline-offset:-5px}.portal-container canvas.dragging{cursor:grabbing}.portal-container canvas[hidden]{display:none}.portal-hint{position:absolute;bottom:2%;right:8%;font:11px/1.4 Arial,sans-serif;color:#ddd5c9;opacity:0;transition:opacity .2s;pointer-events:none}.portal-container:hover .portal-hint,.portal-container:focus-within .portal-hint{opacity:1}.world-content{z-index:2}.world-points{z-index:3}.world-header{z-index:4}@media(max-width:700px){.portal-container{left:2%;right:2%;top:30%;width:96%;height:48%}.portal-hint{bottom:0;right:6%}}
.view-switch{min-width:0}.view-switch button{min-width:74px;padding:8px 12px}.map-scroll{overflow:auto;scrollbar-color:#505760 transparent}.mechanism-map{display:grid;grid-template-columns:140px repeat(4,minmax(130px,1fr));min-width:660px}.map-axis{padding:22px 10px 18px;color:#d6d2c9;font:15px/1.35 Georgia,serif;border-bottom:1px solid #4a5055}.map-axis:first-child{font:10px/1.5 Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#a9adb3}.map-game,.map-cell{min-height:96px;padding:15px 10px;border-bottom:1px solid #30343a}.map-game{font:17px/1.35 Georgia,serif}.map-game small{display:block;margin-top:7px;font:10px/1.5 Arial,sans-serif;color:#a9adb3}.map-cell{display:flex;flex-wrap:wrap;align-content:center;justify-content:flex-start;gap:3px;border-left:1px solid #24292d}.map-point{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:53px;min-height:54px;background:none;border:1px solid transparent;color:#a9adb3;font:9px/1 Arial,sans-serif}.map-point i{display:block;width:12px;height:12px;border:1px solid #d6a45c;border-radius:50%;background:#d6a45c}.map-point.reset i{border-color:#90a6b5;background:transparent;border-radius:0;transform:rotate(45deg)}.map-point.unknown i{border-color:#c17475;background:transparent;border-radius:0;border-style:dashed}.map-point.mixed i{background:linear-gradient(90deg,#a9adb3 50%,transparent 50%);border-color:#a9adb3}.map-point:hover,.map-point[aria-pressed=true]{border-color:#d6a45c;background:#211d18;color:#f3eee5}.map-caption{font:12px/1.6 Arial,sans-serif;color:#a9adb3;margin:18px 0 0;max-width:680px}

.experience-dialog .stage-title{scroll-margin-top:90px}

.experience-dialog .journey-map{scroll-margin-top:82px}

/* The 3D hall uses a subdued atmospheric field, shared with the lit 3D floor. */
.three-ready .world-art{background-image:radial-gradient(ellipse 3% 49% at 67% 47%,#e4b27970 0%,#a26b3c42 30%,transparent 100%),radial-gradient(ellipse 24% 45% at 67% 46%,#865a3942 0%,transparent 80%),radial-gradient(ellipse 35% 12% at 67% 78%,#9a704549 0%,transparent 75%),linear-gradient(180deg,#101213 0%,#171716 65%,#090b0c 100%)}
.world.three-ready::after{background:linear-gradient(90deg,#090b0dbb 0%,#0a0b0c44 37%,transparent 67%)}

/* Equal entry points: all three destinations carry the same visual weight. */
.world-content{width:min(40%,580px)}
.world-content h1{font-size:clamp(50px,4.4vw,76px)}
.world-content p{max-width:390px;letter-spacing:0;line-height:1.5}
.world-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:510px}
.world-actions .world-secondary{width:100%;min-height:48px;padding:0 12px;border:1px solid #b8afa0;border-radius:3px;background:#111a!important;color:#f3eee5;font:14px/1.2 Arial,sans-serif;transition:background .2s,border-color .2s}
.world-actions .world-secondary:hover,.world-actions .world-secondary:focus-visible{background:#e5ddd01f!important;border-color:#f3eee5;color:#fff}
@media(max-width:700px){.world-content{width:auto}.world-content h1{font-size:clamp(43px,11vw,62px)}.world-actions{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none;gap:6px}.world-actions .world-secondary{font-size:12px;padding:0 5px;min-height:48px}}

/* Original static scene layers and transitions. */
html,body{background:#03030c}
.world{position:sticky;top:0;height:100svh;min-height:0;overflow:hidden;background:#03030c}
.world-art{z-index:0;inset:0;transform:none!important;transition:none;background:#03030c url('assets/chamber-closed.webp') center center/cover no-repeat}
.fiber-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;opacity:0;transition:opacity .6s ease;pointer-events:none}
.fiber-video.is-ready{opacity:1}.world-veil{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(180deg,#03030b44 0%,#03030b05 36%,#03030b3d 65%,#03030bc9 100%)}
.world::after{display:none}.scroll-runway{height:105svh;background:#03030c}
.world-header{z-index:4;top:34px;left:4%;right:4%;align-items:flex-start}
.world-brand{display:flex;flex-direction:column;align-items:flex-start;gap:22px;font:500 clamp(15px,1.15vw,22px)/1 Arial,sans-serif;letter-spacing:0;color:white}
.world-brand small{font:10px/1.4 Arial,sans-serif;letter-spacing:.06em;color:#bbb9ca}
.world-motion{border:0;background:transparent;color:#d7d4e1;border-radius:0;padding:0;font:12px/1.3 Arial,sans-serif}
.world-motion:hover{color:white}
.world-content{position:absolute;z-index:3;left:4%;right:4%;top:auto;bottom:10%;width:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:40px}
/* Let scene controls receive pointer input through the empty content area. */
.world-content{pointer-events:none}.world-content h1,.world-side{pointer-events:auto}
.world-content h1{margin:0;max-width:850px;font:400 clamp(46px,5.5vw,100px)/1.03 Arial,sans-serif;letter-spacing:-.045em;color:white;text-shadow:0 2px 28px #02020d}
.world-content h1 span{display:block}.world-content h1 span:nth-child(2){padding-left:clamp(20px,3vw,65px)}.world-content h1 span:nth-child(3){padding-left:clamp(44px,6vw,130px)}
.world-side{width:min(24vw,350px);flex:none}.world-side p{margin:0 0 28px;max-width:320px;font:15px/1.5 Arial,sans-serif;letter-spacing:0;color:#e4e4f0}
.world-actions{display:grid;grid-template-columns:1fr;gap:9px;max-width:none}
.world-actions .world-secondary{min-height:44px;border:1px solid #d4d4e6a0;border-radius:30px;background:#08081835!important;display:flex;align-items:center;justify-content:center;gap:12px;font:12px/1 Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#fff}
.world-actions .world-secondary:hover,.world-actions .world-secondary:focus-visible{background:#f2f2ff!important;color:#101019;border-color:#f2f2ff}
.scroll-hint{position:absolute;z-index:3;left:50%;bottom:24px;transform:translateX(-50%);color:#d1d0e5;font:10px/1 Arial,sans-serif;letter-spacing:.13em;white-space:nowrap}
.scroll-hint span{display:inline-block;margin-left:8px;font-size:16px}
body.panel-open .world-art{transform:none}
@media(max-width:700px){.world{min-height:0}.world-art{background-position:58% center}.world-header{top:22px;left:22px;right:22px}.world-brand{font-size:15px;gap:15px}.world-brand small{font-size:9px}.world-motion{font-size:11px}.world-content{left:22px;right:22px;bottom:72px;top:auto;display:block}.world-content h1{font-size:clamp(43px,10vw,58px);max-width:none;margin:0 0 28px}.world-content h1 span:nth-child(2){padding-left:20px}.world-content h1 span:nth-child(3){padding-left:40px}.world-side{width:100%}.world-side p{font-size:13px;max-width:300px;margin:0 0 18px}.world-actions{position:static;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.world-actions .world-secondary{font-size:10px;letter-spacing:.02em;padding:0 4px;min-height:44px;gap:3px}.scroll-hint{bottom:22px;font-size:9px}.fiber-video{object-position:53% center}}
@media(prefers-reduced-motion:reduce){.fiber-video{transition:none}}.reduced-motion .fiber-video{transition:none}
@media(max-width:700px){.world-veil{background:linear-gradient(180deg,#03030b28 0%,#03030b18 30%,#03030b9c 56%,#03030bf2 87%,#03030b 100%)}}
.reduced-motion .scroll-hint,.world.static-visual .scroll-hint{display:none}.reduced-motion .scroll-runway,.world.static-visual + .scroll-runway{height:0}
@media(prefers-reduced-motion:reduce){.scroll-hint{display:none}.scroll-runway{height:0}}

/* Original interactive loop scene.  The opening is a second authored plate;
   selectable paths and retained traces are independent stateful overlays. */
.world{position:relative}
.loop-scene{position:absolute;inset:0;z-index:1;overflow:hidden;pointer-events:none;background:#070c14}
.scene-frame{position:absolute;left:50%;top:50%;width:max(100vw,177.68svh);height:max(100svh,56.28vw);transform:translate(-50%,-50%);transition:transform 1.1s cubic-bezier(.22,.7,.2,1);pointer-events:none}
/* The action stays still while the illustrated scene moves behind it. */
.scene-controls{position:absolute;left:50%;top:50%;width:max(100vw,177.68svh);height:max(100svh,56.28vw);transform:translate(-50%,-50%);pointer-events:none}
.scene-plate{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;user-select:none}
.scene-open{opacity:0;transition:opacity 1s ease}
.loop-scene[data-phase="opened"] .scene-open{opacity:1}
.loop-scene[data-phase="entered"][data-choice="left"] .scene-frame{transform:translate(-48%,-49%) scale(1.08)}
.loop-scene[data-phase="entered"][data-choice="right"] .scene-frame{transform:translate(-52%,-49%) scale(1.08)}
.scene-traces{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.route-line,.memory-link{fill:none;stroke:#c8e8ff;stroke-width:3;stroke-linecap:round;opacity:0;transition:opacity .7s ease;filter:drop-shadow(0 0 6px #8bb7d8)}
.route-line{stroke-width:4}.memory-link{stroke-width:3;stroke-dasharray:7 10}
.memory-mark{fill:none;stroke:#e0f5ff;stroke-width:3;opacity:0;transition:opacity .6s ease;filter:drop-shadow(0 0 9px #9ddaff)}
.loop-scene[data-choice="left"]:not([data-phase="choose"]) .left-mark,.loop-scene[data-choice="right"]:not([data-phase="choose"]) .right-mark,.loop-scene[data-phase="returned"] .center-mark,.loop-scene[data-phase="opened"] .center-mark{opacity:1}
.loop-scene[data-phase="entered"][data-choice="left"] .left-line,.loop-scene[data-phase="entered"][data-choice="right"] .right-line,.loop-scene[data-phase="opened"][data-choice="left"] .left-link,.loop-scene[data-phase="opened"][data-choice="right"] .right-link{opacity:1}
.scene-status{position:absolute;top:19%;left:50%;transform:translateX(-50%);margin:0;white-space:nowrap;color:#e5f2ff;font:12px/1.4 Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase;text-shadow:0 2px 16px #000}
.route-choice,.scene-next{position:absolute;pointer-events:auto;min-height:44px;min-width:115px;padding:0 15px;border:1px solid #c7e5fcb3;border-radius:2px;color:#f3f8ff;background:#07101bc9;font:11px/1.2 Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;transition:background .25s,border-color .25s,transform .25s;cursor:pointer}
.route-choice{top:47%;transform:translate(-50%,-50%)}.route-left{left:33%}.route-right{left:67%}.route-choice span{margin-left:7px}
.route-center{left:50%}
.route-choice:hover,.route-choice:focus-visible,.scene-next:hover,.scene-next:focus-visible{background:#e6f4ff;color:#101a25;border-color:#fff}
.scene-next{top:68%;left:50%;transform:translate(-50%,-50%);min-width:170px}
.route-choice[hidden],.scene-next[hidden]{display:none}
.world-veil{z-index:2;background:linear-gradient(180deg,#03081022 0%,transparent 40%,#03081033 67%,#030810d9 100%)}
@media(max-width:700px){.scene-frame{width:100vw;height:56.28vw;top:17%;transform:translateX(-50%)}.loop-scene[data-phase="entered"][data-choice="left"] .scene-frame,.loop-scene[data-phase="entered"][data-choice="right"] .scene-frame{transform:translateX(-50%) scale(1.04)}.scene-status{top:5%;font-size:9px;letter-spacing:.1em}.route-choice{min-width:90px;padding:0 8px;font-size:9px}.scene-next{top:85%;min-width:150px;font-size:10px}.world-veil{background:linear-gradient(180deg,#03081000 0%,#03081000 38%,#03081098 58%,#030810f2 86%,#030810 100%)}}
@media(max-width:700px){.scene-controls{width:100vw;height:56.28vw;top:17%;transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.scene-frame,.scene-open,.route-line,.memory-link,.memory-mark{transition:none!important}}.reduced-motion .scene-frame,.reduced-motion .scene-open,.reduced-motion .route-line,.reduced-motion .memory-link,.reduced-motion .memory-mark{transition:none!important}

/* Four visual beats: the chosen doors part, the camera enters a distinct
   room, the chamber returns with a retained mark, and the center door opens. */
.scene-doors{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.door-seam{fill:#d8f2ff;opacity:0;filter:drop-shadow(0 0 8px #cceaff);transition:opacity .25s}
.scene-frame:has(.route-left:is(:hover,:focus-visible)) .seam-left,.scene-frame:has(.route-right:is(:hover,:focus-visible)) .seam-right{opacity:.75}
.door svg{overflow:hidden;transform-box:fill-box;transition:transform .9s cubic-bezier(.2,.65,.2,1);filter:brightness(1)}
.door svg:first-child{transform-origin:left center}.door svg:last-child{transform-origin:right center}
.loop-scene[data-phase="entered"][data-choice="left"] .door-left svg,.loop-scene[data-phase="entered"][data-choice="right"] .door-right svg,.loop-scene[data-phase="opened"] .door-center svg{transform:scaleX(.025);filter:brightness(1.6)}
.loop-scene[data-phase="entered"][data-choice="left"] .scene-frame{transform-origin:33% 50%;transform:translate(-50%,-50%) scale(1.48);transition:transform 1.7s cubic-bezier(.3,.65,.18,1) .35s}
.loop-scene[data-phase="entered"][data-choice="right"] .scene-frame{transform-origin:67% 50%;transform:translate(-50%,-50%) scale(1.48);transition:transform 1.7s cubic-bezier(.3,.65,.18,1) .35s}
.branch{opacity:0;pointer-events:none;object-fit:cover;transform:scale(1.07);transition:opacity .35s ease,transform 1.5s ease}
.loop-scene[data-phase="entered"][data-choice="left"] .branch-left,.loop-scene[data-phase="entered"][data-choice="right"] .branch-right{opacity:1;transform:scale(1);transition:opacity .9s ease 1.1s,transform 2.1s ease .7s}
.branch-memory{position:absolute;left:50%;top:53%;width:18px;height:18px;transform:translate(-50%,-50%) rotate(45deg);border:1px solid #e7f7ff;box-shadow:0 0 18px #b9e6ff,inset 0 0 12px #b9e6ff;opacity:0;pointer-events:none}
.loop-scene[data-phase="entered"] .branch-memory{opacity:1;transition:opacity .6s ease 1.8s}
.route-line,.memory-link{display:none}
.loop-scene[data-phase="entered"] .left-mark,.loop-scene[data-phase="entered"] .right-mark{opacity:0!important}
.route-choice:hover,.route-choice:focus-visible{box-shadow:0 0 28px #bcdfff80}
@media(max-width:700px){.loop-scene[data-phase="entered"][data-choice="left"] .scene-frame,.loop-scene[data-phase="entered"][data-choice="right"] .scene-frame{transform:translateX(-50%) scale(1.15)}}
@media(prefers-reduced-motion:reduce){.door svg,.branch,.branch-memory{transition:none!important}.loop-scene[data-phase="entered"] .scene-frame{transition:none!important}}
.reduced-motion .door svg,.reduced-motion .branch,.reduced-motion .branch-memory,.reduced-motion .loop-scene[data-phase="entered"] .scene-frame{transition:none!important}
/* One research question on the first screen; evidence remains one click away. */
.world-content h1{max-width:min(67vw,830px);font-size:clamp(35px,4.2vw,68px);line-height:1.08;letter-spacing:-.035em}
@media(max-width:700px){.world-content h1{max-width:none;font-size:clamp(28px,7.3vw,40px);line-height:1.1;margin-bottom:22px}}
@media(max-width:700px){.route-choice{width:30%;max-width:110px;min-width:0;padding:0 2px;font-size:9px;letter-spacing:0}.route-left{left:17%}.route-center{left:50%}.route-right{left:83%}}
.research-finding{max-width:920px;margin:24px 0 32px;padding-left:18px;border-left:1px solid #d6b580}
.research-finding h3{margin:0 0 9px;font:400 21px/1.3 Georgia,serif;color:#f3eee5}
.research-finding p{margin:0;color:#c2c9cf;font:15px/1.7 Arial,sans-serif}
.research-finding a{color:#ead2a8;text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.filters .view-switch{grid-column:1 / -1}.filters .view-switch button{min-width:0;flex:1}}
