.world-journey{position:relative;height:620vh;height:620svh;margin:36px 0 78px;isolation:isolate;color:#f3eddf;--world-copper:#ef9a72;--world-teal:#9cd6ca;scroll-margin-top:16px}
.world-sticky{position:sticky;top:16px;height:calc(100vh - 32px);height:calc(100svh - 32px);min-height:640px;max-height:960px;overflow:hidden;background:#233941;border:1px solid #293638}
.world-canvas,.world-poster{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;touch-action:pan-y}
.world-canvas{opacity:0;transition:opacity .6s ease;outline-offset:-6px!important}
.world-poster{opacity:1;transition:opacity .6s ease;object-position:60% center}
.world-ready .world-canvas{opacity:1}.world-ready .world-poster{opacity:0;pointer-events:none}
.world-sticky:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(6,17,31,.44),transparent 24%,transparent 53%,rgba(5,15,26,.84));z-index:1}
.world-topline{position:absolute;z-index:2;top:30px;left:32px;right:32px;display:flex;justify-content:space-between;align-items:center;gap:16px;font:10px/1.5 var(--mono,monospace);text-transform:uppercase;letter-spacing:.12em;color:#f3eddfb8}
.world-topline>span:first-child{display:flex;align-items:center;gap:10px}.world-topline>span:first-child:before{content:'';width:6px;height:6px;display:block;background:var(--world-copper);border-radius:50%;box-shadow:0 0 16px #ef9a7240}
.world-skip{font:10px/1.5 var(--mono,monospace);color:#f3eddfc7;position:relative;z-index:2;padding:10px 0;white-space:nowrap}.world-skip:hover{color:white}
.world-topline>span:first-child{margin-right:auto}.world-atmosphere-toggle{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:6px 10px;border:1px solid #c8e1e22d;background:#0817274d;color:#d8e5e4;border-radius:2px;font:9px/1.4 var(--mono,monospace);letter-spacing:0;text-transform:none;white-space:nowrap}.world-atmosphere-toggle:hover{background:#18304491;border-color:#9bc9d263}.world-atmosphere-toggle>span:first-child{font-size:13px;line-height:1}.world-atmosphere-toggle[hidden]{display:none}
.world-caption{position:absolute;z-index:2;left:36px;bottom:116px;width:min(450px,70%);pointer-events:none}
.world-stage-label{font:10px/1.5 var(--mono,monospace);color:var(--world-copper);text-transform:uppercase;letter-spacing:.13em;margin-bottom:14px}
.world-stage-title{font-family:var(--serif,Georgia,serif);font-weight:400;font-size:clamp(38px,4vw,60px);line-height:1.02;letter-spacing:-.03em;max-width:520px;text-wrap:balance;color:#f8f1e2}
.world-stage-copy{font:13px/1.7 var(--sans,sans-serif);max-width:355px;margin-top:15px;color:#e7e7dbb8;text-wrap:pretty}
.world-controls{position:absolute;z-index:3;bottom:30px;left:36px;right:36px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #f5ebd92b;padding-top:17px}
.world-chapters{display:flex;gap:7px;align-items:center}.world-chapters button{display:flex;align-items:center;justify-content:center;gap:8px;min-width:44px;min-height:44px;padding:10px 13px;border:1px solid #f6eedd35;border-radius:0;color:#e9e7dfb5;background:#182b3266;font:10px/1.4 var(--mono,monospace);transition:color .2s,background .2s,border-color .2s}
.world-chapters button[aria-pressed=true]{color:#1a2b30;background:#f2a47d;border-color:#f2a47d}.world-chapters button:hover{border-color:#f2a47d;color:#fff}.world-chapters button[aria-pressed=true]:hover{color:#1a2b30}
.world-replay{display:flex;gap:8px;align-items:center;min-height:44px;padding:8px 0 8px 10px;border:0;background:transparent;color:#e9e7dfb5;font:10px/1.4 var(--mono,monospace)}.world-replay:hover{color:#fff}
.world-progress{position:absolute;left:0;bottom:0;height:3px;width:100%;background:#eee7dc1f;z-index:3;overflow:hidden}.world-progress-fill{display:block;width:100%;height:100%;transform:scaleX(0);transform-origin:left;background:#f3a479}
.world-status{position:absolute;z-index:2;right:36px;bottom:113px;max-width:180px;color:#f4eed39c;font:9px/1.6 var(--mono,monospace);text-align:right}
.world-failed{height:auto}.world-failed .world-sticky{position:relative;height:720px;min-height:500px}.world-failed .world-chapters,.world-failed .world-replay,.world-failed .world-progress{display:none}
.world-journey:not([data-world-mounted]){height:auto}.world-journey:not([data-world-mounted]) .world-sticky{position:relative;top:0}.world-journey:not([data-world-mounted]) .world-controls,.world-journey:not([data-world-mounted]) .world-status{display:none}
.world-manual{height:auto}.world-manual .world-sticky{position:relative}.world-journey button:focus-visible,.world-journey a:focus-visible{outline:2px solid #f9e6c4;outline-offset:4px}
@media(min-width:1600px){.world-sticky{max-height:1050px}}
@media(max-width:760px){.world-journey{height:640vh;height:640svh;margin:22px 0 56px}.world-sticky{top:12px;height:calc(100vh - 24px);height:calc(100svh - 24px);min-height:0;max-height:none}.world-topline{top:22px;left:20px;right:20px;font-size:8px;letter-spacing:.06em}.world-skip{font-size:8px}.world-caption{left:23px;bottom:116px;width:calc(100% - 46px)}.world-stage-title{font-size:42px;max-width:310px}.world-stage-label{font-size:8px;margin-bottom:10px}.world-stage-copy{font-size:11px;line-height:1.7;max-width:265px;margin-top:11px}.world-controls{left:22px;right:22px;bottom:23px;gap:8px;padding-top:12px}.world-chapters{gap:5px}.world-chapters button{padding:10px;min-width:42px;font-size:9px}.world-chapters button span{display:none}.world-replay{font-size:9px;gap:5px}.world-status{right:22px;bottom:88px;font-size:8px;max-width:180px}.world-sticky:after{background:linear-gradient(180deg,#111c2088,transparent 26%,transparent 40%,#0e181dda 79%,#0e181deb)}.world-manual,.world-failed{height:auto}}
@media(max-width:380px){.world-sticky{min-height:535px}.world-topline{left:16px;right:16px}.world-caption{left:18px;bottom:121px;width:calc(100% - 36px)}.world-stage-title{font-size:36px}.world-controls{left:17px;right:17px}.world-chapters button{min-width:39px;padding:8px}.world-replay{font-size:8px}}
@media(prefers-reduced-motion:reduce){.world-journey{height:auto}.world-sticky{position:relative;top:0}.world-canvas,.world-poster{transition:none}}
@media(max-width:760px){.world-atmosphere-toggle{position:absolute;right:0;top:36px;min-width:36px;min-height:36px;justify-content:center;padding:7px}.world-atmosphere-label{display:none}.world-sticky:after{background:linear-gradient(180deg,#06111f66,transparent 26%,transparent 45%,#05101cb8 80%,#05101cdb)}}

/* The film and actual project cards share its last viewport. */
.world-outro{position:absolute;inset:0;z-index:4;pointer-events:none;overflow:hidden}
.world-outro-paper{position:absolute;inset:0;background:var(--paper,#f5f4ef);opacity:var(--world-outro-paper,0)}
.world-outro-brand{position:absolute;display:flex;align-items:center;justify-content:center;gap:.3em;opacity:var(--world-outro-logo,0);font-family:var(--sans,"DM Sans",sans-serif);font-weight:600;line-height:1;letter-spacing:-.055em;white-space:nowrap;will-change:opacity}
.world-outro-brand>svg{width:1.2em;height:1.2em;flex:none;stroke:#db8b63;stroke-width:1.2;letter-spacing:normal}
.world-outro-brand b{font:inherit;color:#b94e2b}
.world-cinematic{margin-bottom:0}
.world-cinematic .world-sticky{border-color:rgba(41,54,56,calc(1 - var(--world-outro-paper,0)))}
.world-cinematic .world-topline,.world-cinematic .world-caption,.world-cinematic .world-controls,.world-cinematic .world-status,.world-cinematic .world-sticky:after{opacity:var(--world-outro-ui,1)}
.world-cinematic+.world-linked{position:relative;z-index:5;margin-top:calc(-1 * var(--world-stage-height));background:var(--paper,#f5f4ef);opacity:var(--world-project-reveal,0);min-height:var(--world-stage-height)}
.world-cinematic+.world-linked .section-heading{transform:translateY(calc((1 - var(--world-project-reveal,0))*14px))}
.world-manual .world-outro,.world-failed .world-outro{display:none}
