.build-journey{background:radial-gradient(ellipse at 25% 10%,#17365b55,transparent 60%),#081a37;color:#eef3fc;position:relative;border-block:1px solid #ffffff10}.build-introduction{padding-block:75px 25px;display:flex;align-items:flex-end;justify-content:space-between;gap:70px}.build-introduction h2{color:white;font-size:45px;font-weight:600;letter-spacing:-.055em}.build-introduction .eyebrow{color:#bfd0e9;font-size:9px}.build-introduction>p{font-size:16px;line-height:1.85;color:#a5bad9;max-width:430px;margin-bottom:5px}.build-scroll-track{height:auto;position:relative}.build-sticky{position:relative;top:0;height:auto;min-height:0;padding:40px 0;display:flex;align-items:center;background:radial-gradient(ellipse at 34% 40%,#15345955,transparent 67%),#081a37;overflow:hidden}.build-workspace{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:25px 54px;align-items:center}.build-scene-panel{position:relative;min-width:0;background:radial-gradient(ellipse at 50% 45%,#17396088,transparent 75%);border:1px solid #ffffff14;border-radius:15px;overflow:hidden}.build-scene-meta{display:flex;align-items:center;justify-content:space-between;padding:22px 24px 0;gap:10px;position:relative;z-index:1}.build-scene-meta>span{font:500 8px/1.6 var(--font);letter-spacing:.1em;color:#8ca5cb}.build-scene-meta>span:first-child{display:flex;align-items:center;gap:9px;color:#bbcee9}.build-scene-meta i{display:block;height:5px;width:5px;border-radius:50%;background:var(--yellow);box-shadow:0 0 12px #ffc40066}.build-canvas-host{height:min(59vh,610px);min-height:390px;position:relative;width:100%;isolation:isolate;cursor:grab;touch-action:pan-y}.build-canvas-host:active{cursor:grabbing}.build-canvas-host canvas{width:100%;height:100%;display:block;position:absolute;inset:0;z-index:2;outline-offset:-5px}.build-static-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:.92;background:#081a37}.build-webgl-ready .build-static-poster{visibility:hidden}.build-loading{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#bccde8;font:500 10px var(--font);padding:10px 15px;border-radius:6px;background:#091c3ecc;z-index:3;white-space:nowrap}.build-webgl-ready .build-loading,.build-webgl-fallback .build-loading{display:none}.build-scene-baseline{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:0 24px 20px;position:relative;z-index:3}.build-scene-baseline>span{font:500 6px/1.6 var(--font);letter-spacing:.12em;color:#6885b1;max-width:270px}.build-reset{border:0;background:transparent;color:#a9bfdf;font:500 9px/1.6 var(--font);cursor:pointer;min-height:30px;padding:4px 0}.build-reset:hover{color:var(--yellow)}.build-story-panel{min-width:0}.build-stage-kicker{font:600 9px/1.7 var(--font);letter-spacing:.13em;color:#9db5d8;margin:0 0 26px;display:flex;align-items:center;justify-content:space-between;gap:15px}.build-step-count{font-size:10px;letter-spacing:.07em;color:#ffc400}.build-caption-stack{min-height:270px;position:relative}.build-caption{padding:0}.build-caption-index{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #ffffff24;border-radius:10px;background:linear-gradient(135deg,#ffffff13,#ffffff03);color:var(--yellow);font:600 14px var(--font);margin-bottom:25px;backdrop-filter:blur(10px)}.build-caption h3{font-size:37px;line-height:1.13;letter-spacing:-.045em;color:#fff;font-weight:600;margin-bottom:21px}.build-caption>p{font-size:16px;line-height:1.9;color:#b2c6e4;margin:0;max-width:395px}.build-caption-rule{display:block;width:30px;height:3px;background:var(--yellow);margin:26px 0 16px;border-radius:3px}.build-caption>small{font:500 7px/1.9 var(--font);letter-spacing:.11em;color:#7f9cc7}.build-play-controls{display:flex;align-items:center;gap:16px;margin-top:25px;flex-wrap:wrap}.build-play{border:1px solid #ffffff2b;color:#e3edfb;background:#ffffff0a;backdrop-filter:blur(12px);font:600 10px var(--font);padding:12px 16px;border-radius:6px;cursor:pointer;min-height:40px;white-space:nowrap}.build-play:hover{border-color:#ffc40088;color:var(--yellow)}.build-interaction-note{font-size:10px;color:#809bc4;line-height:1.7;max-width:160px}.build-model-note{font-size:10px;line-height:1.9;color:#6e89b2;margin:24px 0 0;max-width:395px}.build-bottom-bar{grid-column:1/-1;position:relative}.build-stage-tabs{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.build-stage-tabs>button{display:flex;align-items:center;gap:10px;text-align:left;line-height:1.6;border:0;border-top:1px solid #ffffff1a;padding:17px 3px 7px;background:none;color:#7f9bc5;font:500 9px/1.65 var(--font);cursor:pointer;min-height:52px;transition:color .2s,border-color .2s}.build-stage-tabs>button>span{color:#546e99;font-size:9px;font-weight:600}.build-stage-tabs>button[aria-pressed=true]{border-color:var(--yellow);color:#eff4fd}.build-stage-tabs>button[aria-pressed=true]>span{color:var(--yellow)}.build-stage-tabs>button:hover{color:#fff}.build-progress{height:2px;background:#ffffff0a;overflow:hidden;margin-top:13px}.build-progress>span{display:block;height:100%;width:0;background:linear-gradient(90deg,#b07600,#ffc400);transition:width .08s linear}.build-fallback-note{color:#506d99;font-size:8px;line-height:1.8;margin:13px 0 0}.build-film-body{background:#081a37;width:100vw;height:100vh;overflow:hidden}.build-film-header{height:92px;display:flex;align-items:center;gap:35px;padding:24px 50px;border-bottom:1px solid #ffffff14;background:#081a37}.build-film-header>img{width:210px;height:auto}.build-film-header>div{padding-left:30px;border-left:1px solid #ffffff25}.build-film-header>div>span{display:block;color:#a7bddc;font:500 7px/1.6 var(--font);letter-spacing:.15em}.build-film-header strong{display:block;color:#fff;font:600 17px/1.6 var(--font);letter-spacing:-.03em;margin-top:3px}.build-film-label{margin-left:auto;color:#6582ae;font:500 7px var(--font);letter-spacing:.13em}.build-preview-mode .build-introduction{display:none}.build-preview-mode .build-scroll-track{height:auto}.build-preview-mode .build-sticky{position:relative;top:auto;height:calc(100vh - 92px);min-height:0}.build-preview-mode .build-workspace{width:calc(100% - 100px);max-width:none;grid-template-columns:1.65fr 1fr;gap:12px 45px}.build-preview-mode .build-canvas-host{height:440px;min-height:0}.build-preview-mode .build-scene-meta{padding:17px 20px 0}.build-preview-mode .build-scene-baseline{padding:0 20px 16px}.build-preview-mode .build-stage-kicker{font-size:8px;margin-bottom:17px}.build-preview-mode .build-caption-stack{min-height:265px}.build-preview-mode .build-caption-index{height:37px;width:37px;font-size:12px;margin-bottom:20px}.build-preview-mode .build-caption h3{font-size:32px;margin-bottom:17px}.build-preview-mode .build-caption>p{font-size:14px;line-height:1.9}.build-preview-mode .build-caption-rule{margin-top:21px}.build-preview-mode .build-caption>small{font-size:7px}.build-preview-mode .build-model-note{font-size:8px;margin-top:19px;line-height:1.9}.build-preview-mode .build-play-controls{display:none}.build-preview-mode .build-stage-tabs>button{font-size:8px;gap:9px;padding-top:12px;min-height:41px}.build-preview-mode .build-progress{margin-top:7px}.build-preview-mode .build-fallback-note{font-size:7px;margin-top:10px}.build-preview-mode .build-scene-panel{border-radius:12px}
@media(max-width:1099px){.build-introduction{gap:45px;padding-block:65px 25px}.build-introduction h2{font-size:38px}.build-introduction>p{font-size:15px;max-width:340px}.build-workspace{gap:20px 35px;grid-template-columns:1.45fr 1fr}.build-caption h3{font-size:32px}.build-caption>p{font-size:15px}.build-scene-meta{padding:20px 18px 0}.build-scene-meta>span{font-size:7px}.build-scene-baseline{padding:0 18px 18px}.build-scene-baseline>span{font-size:6px;max-width:210px}.build-caption-stack{min-height:280px}.build-stage-tabs{gap:9px}.build-stage-tabs>button{font-size:8px;gap:7px}.build-canvas-host{height:55vh;min-height:360px}.build-model-note{font-size:9px}.build-scene-meta .build-drag-hint{display:none}}
@media(max-width:760px){.build-introduction{display:block;padding-block:56px 20px}.build-introduction h2{font-size:34px;line-height:1.15}.build-introduction>p{font-size:15px;line-height:1.85;margin:24px 0 0;max-width:100%}.build-scroll-track{height:auto}.build-sticky{position:relative;top:auto;height:auto;min-height:0;display:block;padding:16px 0 45px;overflow:visible}.build-workspace{display:flex;flex-direction:column;gap:27px;align-items:stretch}.build-scene-panel{border-radius:12px}.build-canvas-host{height:350px;min-height:0}.build-scene-meta{padding:18px 18px 0}.build-scene-meta>span{font-size:7px}.build-scene-baseline{padding:0 17px 15px;gap:15px}.build-scene-baseline>span{font-size:5px;max-width:220px}.build-reset{font-size:8px;min-height:32px}.build-story-panel{padding:0 3px}.build-stage-kicker{font-size:8px;margin-bottom:23px}.build-step-count{font-size:9px}.build-caption-stack{min-height:250px}.build-caption-index{height:39px;width:39px;font-size:12px;margin-bottom:23px}.build-caption h3{font-size:32px;margin-bottom:20px}.build-caption>p{font-size:15px;line-height:1.9;max-width:none}.build-caption-rule{margin:24px 0 15px}.build-caption>small{font-size:6px;letter-spacing:.09em}.build-play-controls{margin-top:24px;gap:17px}.build-play{min-height:44px;font-size:10px;padding:13px 17px}.build-interaction-note{font-size:9px;max-width:160px}.build-model-note{font-size:9px;line-height:1.95;margin-top:22px;max-width:none}.build-bottom-bar{min-width:0}.build-stage-tabs{display:flex;gap:15px;overflow-x:auto;max-width:100%;padding-bottom:5px;scrollbar-color:#36547d #0b2447;scrollbar-width:thin}.build-stage-tabs>button{flex:0 0 136px;min-height:58px;font-size:9px;padding-top:17px;gap:10px}.build-stage-tabs>button>span{font-size:9px}.build-progress{margin-top:12px}.build-fallback-note{font-size:8px;line-height:1.9;margin-top:16px}.build-film-body{overflow:auto;height:auto}.build-film-header{height:78px;padding:18px 20px;gap:18px}.build-film-header>img{width:160px}.build-film-header>div{padding-left:16px}.build-film-header>div>span{font-size:6px}.build-film-header strong{font-size:11px}.build-film-label{display:none}.build-preview-mode .build-workspace{width:calc(100% - 40px);display:flex;gap:24px}.build-preview-mode .build-sticky{height:auto;padding-top:20px}.build-preview-mode .build-canvas-host{height:350px}.build-preview-mode .build-play-controls{display:flex}.build-preview-mode .build-caption>p{font-size:15px}.build-preview-mode .build-model-note{font-size:9px}.build-preview-mode .build-stage-tabs>button{font-size:9px;min-height:58px}.build-preview-mode .build-fallback-note{font-size:8px}}
@media(prefers-reduced-motion:reduce){.build-scroll-track{height:auto}.build-sticky{position:relative;height:auto;min-height:0;padding-block:45px}.build-caption,.build-progress>span,.build-stage-tabs>button{transition:none!important}.build-preview-mode .build-sticky{height:calc(100vh - 92px);padding:0}.build-interaction-note{font-size:0}.build-interaction-note:after{content:'Motion reduced · select a stage';font-size:9px}.build-play{display:none}}
@media(min-width:761px) and (max-height:740px){.build-journey:not(.build-preview-mode) .build-sticky{min-height:0}.build-journey:not(.build-preview-mode) .build-canvas-host{height:48vh;min-height:280px}.build-journey:not(.build-preview-mode) .build-caption-stack{min-height:230px}.build-journey:not(.build-preview-mode) .build-caption h3{font-size:31px}.build-journey:not(.build-preview-mode) .build-caption>p{font-size:14px}.build-journey:not(.build-preview-mode) .build-model-note{font-size:8px;margin-top:17px}.build-journey:not(.build-preview-mode) .build-play-controls{margin-top:18px}.build-journey:not(.build-preview-mode) .build-caption-index{height:37px;width:37px;margin-bottom:20px}}

/* Pin only after JavaScript initializes. Without JS, the poster and caption stay compact. */
@media(min-width:761px){.build-motion-enabled .build-scroll-track{height:580vh}.build-motion-enabled .build-sticky{position:sticky;top:0;height:100vh;padding:0;min-height:0}}
.build-skip{display:inline-flex;color:#99b1d4;font:500 9px/1.8 var(--font);margin-top:22px;border-bottom:1px solid #476085;padding-bottom:3px;gap:22px}.build-skip:hover{color:#ffc400}
.build-preview-mode .build-sticky{padding:0}.build-loading{display:none}.build-is-loading:not(.build-webgl-ready):not(.build-webgl-fallback) .build-loading{display:block}
