@font-face{font-family:Sora;src:url('assets/sora.ttf') format('truetype');font-display:swap}
:root{color-scheme:dark;--gold:#dbbd8a;--ink:#17090e;--paper:#f3eee5;--gutter:5vw}
*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#786048 #17090e}body{margin:0;background:var(--ink);color:var(--paper);font-family:Sora,"PingFang SC","Microsoft YaHei",sans-serif}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:2px solid var(--gold);outline-offset:8px}.skip{position:fixed;top:-100px;z-index:30}.skip:focus{top:20px;left:20px;background:var(--ink);padding:14px}
.fx-header{position:fixed;inset:0 0 auto;z-index:12;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:24px var(--gutter);background:linear-gradient(#17090e90,transparent)}.fx-header img{display:block;width:170px;height:auto}.fx-header>span{font-size:12px;letter-spacing:.15em;color:#d0b7b6;margin-left:auto;margin-right:6vw}.site-link{display:flex;gap:30px;font-size:13px;padding:12px 0;border-bottom:1px solid #d1b58566}
.stage{position:fixed;inset:0;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 72% 40%,#681b2480,transparent 62%),linear-gradient(120deg,#17090e,#250b15 60%,#380c16)}.stage-light{position:absolute;right:-15vw;top:-20vh;width:80vw;height:130vh;background:radial-gradient(ellipse,#8f383833,transparent 65%);transform:rotate(-30deg)}#robot-stage{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity 1.3s}.has-scene #robot-stage{opacity:1}.stage-poster{position:absolute;right:-6%;top:10%;width:65%;height:80%;object-fit:contain;opacity:.45;transition:opacity .7s}.has-scene .stage-poster{opacity:0}.stage-vignette{position:absolute;inset:0;background:linear-gradient(90deg,#17090e 0%,#17090ecc 23%,#17090e18 53%,transparent 68%),linear-gradient(0deg,#17090e 0%,transparent 25%)}
.chapter{height:105svh;min-height:640px;position:relative;display:flex;align-items:center;padding:130px var(--gutter) 110px}.chapter:last-child{height:100svh}.scene-copy{position:relative;z-index:5;max-width:51vw}.kicker{font-size:11px;letter-spacing:.16em;line-height:1.7;margin:0 0 32px;color:var(--gold)}h1,h2{font-size:clamp(44px,5.45vw,94px);font-weight:500;line-height:1.23;letter-spacing:-.055em;margin:0}h1{font-size:clamp(48px,5.5vw,94px)}em{font-style:normal;color:var(--gold);font-weight:350}.description{font-size:clamp(15px,1.05vw,18px);line-height:1.95;max-width:27em;color:#d6c2c2;margin:28px 0 0;letter-spacing:.015em}.scene-link{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;font-size:13px;line-height:1.6;border-bottom:1px solid #dbbd8a70;padding:12px 0;margin-top:28px}.scene-link>span{font-size:21px}.scene-link:hover{color:var(--gold);border-color:var(--gold)}.detail{font-size:11px;color:#b99898;letter-spacing:.12em;margin-top:32px}.scene-actions{display:flex;flex-wrap:wrap;gap:24px}.secondary{color:#c8afb2}
.is-enhanced .chapter{min-height:100svh}.is-enhanced .scene-copy{position:fixed;top:50%;left:var(--gutter);transform:translateY(-50%);opacity:0;pointer-events:none;will-change:transform,opacity}.is-enhanced .chapter:first-child .scene-copy{opacity:1;pointer-events:auto}
.journey-nav{position:fixed;z-index:12;right:2.5vw;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:20px}.journey-nav a{display:flex;align-items:center;justify-content:flex-end;gap:13px;min-height:24px;font-size:10px;letter-spacing:.08em;color:#dbbd8a60}.journey-nav a:after{content:'';display:block;width:5px;height:5px;border:1px solid currentColor;border-radius:50%;transition:background .2s}.journey-nav [aria-current]{color:var(--gold)}.journey-nav [aria-current]:after{background:var(--gold);box-shadow:0 0 14px #dbbd8a77}.journey-nav a span{opacity:0;transition:opacity .3s}.journey-nav a:hover span,.journey-nav a[aria-current] span{opacity:1}.fx-footer{position:fixed;inset:auto 0 0;z-index:12;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px var(--gutter);font-size:10px;letter-spacing:.05em;color:#ab8e95;background:linear-gradient(transparent,#17090ea0)}#scene-status{margin:0;color:#a9947c}.scroll-hint{font-size:9px;letter-spacing:.16em}.scroll-hint span{font-size:15px;margin-left:20px}
@media(min-width:1600px){:root{--gutter:6vw}.scene-copy{max-width:48vw}}
@media(max-width:900px){.fx-header>span{display:none}.scene-copy{max-width:57vw}.journey-nav a span{display:none}h1,h2{font-size:clamp(42px,6vw,72px)}.description{font-size:15px;max-width:25em}.fx-footer{font-size:9px}.scroll-hint{display:none}}
@media(max-width:600px){:root{--gutter:7vw}.fx-header{padding:20px var(--gutter)}.fx-header img{width:135px}.site-link{font-size:11px;gap:20px}.chapter{min-height:820px;height:110svh;align-items:flex-end;padding:340px var(--gutter) 100px}.scene-copy{max-width:85vw}.is-enhanced .scene-copy{top:auto;bottom:clamp(85px,11svh,120px);transform:none;max-width:82vw}.kicker{font-size:9px;letter-spacing:.08em;margin-bottom:18px}h1,h2{font-size:clamp(33px,9.8vw,54px);line-height:1.25}h1 br:nth-child(2){display:none}.description{font-size:13px;line-height:1.85;max-width:25em;margin-top:20px}.scene-link{font-size:11px;gap:24px;margin-top:18px;padding:10px 0}.detail{font-size:10px;line-height:1.8;margin-top:20px}.scene-actions{gap:12px 24px}.stage-vignette{background:linear-gradient(0deg,#17090e 4%,#17090ef0 25%,#17090e66 52%,transparent 72%)}.stage-poster{width:100%;right:0;top:2%;height:58%}.journey-nav{right:4vw;top:45%;gap:14px}.fx-footer{padding:20px var(--gutter);font-size:8px;gap:10px}#scene-status{max-width:44%;text-align:right}.preview-label{max-width:55%}}
@media(max-height:600px) and (min-width:601px){.fx-header{padding-block:15px}.fx-header img{width:125px}.fx-footer{padding-block:15px}.is-enhanced .scene-copy{top:53%}h1,h2{font-size:clamp(28px,7.6vh,46px)}.kicker{margin-bottom:16px;font-size:9px}.description{font-size:13px;line-height:1.7;margin-top:18px}.scene-link{margin-top:14px;padding:8px 0}.detail{margin-top:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}#robot-stage,.stage-poster{transition:none}}

/* Real imagery is projected onto depth geometry; the original stage remains. */
.photographic-world,.scene-photograph{position:absolute;inset:0;width:100%;height:100%}.scene-photograph{object-fit:cover;opacity:0}.scene-photograph:first-child{opacity:1}.has-depth .photographic-world{visibility:hidden}#robot-stage{transition:opacity .35s}.stage-vignette{background:linear-gradient(90deg,#17090ef5 0%,#17090eac 30%,#17090e12 68%),linear-gradient(0deg,#17090e 0%,transparent 30%,#17090e35 100%)}.top-nav{display:flex;gap:34px;margin-left:auto;margin-right:6vw;font-size:11px;letter-spacing:.06em;color:#dac9c4}.top-nav a:hover{color:var(--gold)}.cutaway-toggle{font:inherit;font-size:13px;background:none;color:inherit;border:0;border-bottom:1px solid #dbbd8a70;cursor:pointer}.cutaway-toggle:disabled{opacity:.45;cursor:wait}.cutaway-toggle:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:6px}.photo-credit{pointer-events:auto}.fx-footer{pointer-events:none}
/* Added chapters share the existing full-window stage, type and wine/gold palette. */
.content-chapter{position:relative;isolation:isolate;overflow:clip}.frc-intro:before,.showcase:before{content:'';position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse at 78% 42%,#862b352c,transparent 65%);pointer-events:none}.frc-scene{min-height:100svh;display:grid;grid-template-columns:1.04fr 1fr;align-items:center;gap:5vw;padding:130px 9vw 110px var(--gutter);position:relative}.frc-scene+.frc-scene:before{content:'';position:absolute;inset:0 9vw auto var(--gutter);height:1px;background:linear-gradient(90deg,transparent,#dbbd8a40,transparent)}.frc-copy{max-width:44vw}.chapter-title{font-size:clamp(44px,5.45vw,94px);font-weight:500;line-height:1.23;letter-spacing:-.055em;margin:0}.frc-copy p:not(.kicker):not(.section-lead){font-size:clamp(13px,1.02vw,16px);line-height:1.95;color:#bba7a7;max-width:30em}.section-lead{font-size:clamp(14px,1.25vw,19px);line-height:1.85;color:#dcc8be;margin:28px 0 20px}.film-stage{perspective:1100px;min-width:0;position:relative}.film-stage:after{content:'';position:absolute;width:75%;height:20%;background:#b2522e24;filter:blur(32px);bottom:-9%;left:10%;pointer-events:none}.media-slot{position:relative;overflow:hidden;border:1px solid #dbbd8a46;background:linear-gradient(135deg,#391823a3,#1d0c14c9);box-shadow:inset 0 0 75px #7b3c2820,0 35px 70px #0004}.film-slot{aspect-ratio:16/9;transform:rotateY(-10deg) rotateX(3deg);transform-origin:50% 50%;box-shadow:8px 3px 0 -1px #2d111a,9px 4px 0 #dbbd8a3b,0 40px 80px #0005}.media-slot:before,.media-slot:after{content:'';position:absolute;width:23px;height:23px;border:solid #dbbd8a9c;pointer-events:none}.media-slot:before{top:11px;left:11px;border-width:1px 0 0 1px}.media-slot:after{bottom:11px;right:11px;border-width:0 1px 1px 0}.slot-corner{position:absolute;top:26px;left:29px;font-size:9px;color:#bfa182;letter-spacing:.12em}.slot-format{position:absolute;right:27px;bottom:25px;font-size:9px;letter-spacing:.12em;color:#92796b}.empty-content{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#d8c1a6;font-size:13px;letter-spacing:.1em}.empty-index{font-size:clamp(72px,9vw,144px);font-weight:300;line-height:1;color:transparent;-webkit-text-stroke:1px #dbbd8a39;letter-spacing:-.08em;margin-bottom:8px}.empty-content small{font-size:10px;color:#89716b;letter-spacing:.12em}.film-caption{display:flex;justify-content:space-between;padding:30px 5px 0;color:#a18474;font-size:9px;letter-spacing:.15em}.showcase{min-height:100svh;display:grid;grid-template-columns:.95fr 1.15fr;align-items:center;gap:0;padding:125px 0 145px var(--gutter);overflow:hidden}.showcase-heading{position:relative;z-index:2;max-width:46vw}.gallery-space{min-width:0;align-self:stretch;display:flex;align-items:center;perspective:1200px}.showcase-track{display:flex;align-items:center;gap:26px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;width:100%;padding:70px max(12vw,calc(50% - 180px)) 70px 8vw;scrollbar-width:none;perspective:1100px;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 89%,transparent)}.showcase-track::-webkit-scrollbar{display:none}.team-moment{flex:0 0 clamp(250px,27vw,420px);margin:0;scroll-snap-align:center;transform:translateY(var(--lift,0px)) rotateY(var(--turn,0deg)) scale(var(--scale,1));opacity:var(--alpha,1);transition:transform .1s linear,opacity .1s linear;transform-style:preserve-3d;will-change:transform}.photo-slot{aspect-ratio:4/5}.team-moment:nth-child(even) .photo-slot{background:linear-gradient(150deg,#4d213052,#211019)}.team-moment figcaption{font-size:12px;letter-spacing:.04em;margin:24px 3px 0;color:#c9afa4}.gallery-controls{display:flex;align-items:center;gap:25px;margin-top:30px}.gallery-controls button{border:1px solid #dbbd8a50;border-radius:50%;color:var(--gold);background:transparent;width:42px;height:42px;font-size:18px;cursor:pointer}.gallery-controls button:hover{background:#dbbd8a15}.gallery-controls button:disabled{opacity:.25;cursor:default}.gallery-count{font-size:10px;color:#b89b83;letter-spacing:.1em}.journey-end{position:absolute;bottom:65px;left:var(--gutter);right:9vw;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #dbbd8a27;padding-top:24px}.journey-end p{font-size:13px;color:#c6abab;margin:0}.journey-end .scene-link{margin:0;padding:0 0 8px}
@media(max-width:1050px){.top-nav{gap:22px;margin-right:3vw}.frc-scene{gap:4vw;grid-template-columns:1.05fr 1fr}.frc-copy h2,.chapter-title{font-size:clamp(34px,5.2vw,60px)}.showcase h2{font-size:clamp(36px,5.1vw,60px)}.slot-corner{font-size:8px}.showcase-track{padding-left:5vw}.team-moment{flex-basis:30vw}}
@media(max-width:600px){.top-nav{gap:18px;margin:0}.top-nav a:first-child,.site-link{display:none}.top-nav{font-size:10px}.stage-vignette{background:linear-gradient(0deg,#17090e 0%,#17090edf 30%,#17090e35 65%,#17090e1a 100%)}.frc-scene{min-height:100svh;grid-template-columns:1fr;gap:30px;padding:105px 12vw 90px var(--gutter);align-content:center}.frc-copy{max-width:none}.frc-copy h2,.chapter-title{font-size:clamp(30px,8.5vw,46px)}.frc-copy .kicker{margin-bottom:16px}.section-lead{font-size:13px;line-height:1.8;margin:18px 0 12px}.frc-copy p:not(.kicker):not(.section-lead){font-size:12px;line-height:1.8;margin:10px 0}.frc-copy .scene-link{margin-top:10px}.film-slot{aspect-ratio:16/9;transform:rotateY(-7deg) rotateX(2deg)}.empty-index{font-size:64px;margin:0}.empty-content{font-size:11px;gap:8px}.empty-content small{font-size:9px}.slot-corner{top:19px;left:22px;font-size:7px}.slot-format{right:23px;bottom:20px;font-size:8px}.film-caption{font-size:7px;padding:20px 0 0}.showcase{grid-template-columns:1fr;gap:0;padding:100px 0 155px var(--gutter);min-height:100svh;align-content:center}.showcase-heading{max-width:85vw}.showcase h2{font-size:clamp(30px,8.5vw,46px)}.showcase .section-lead{margin-bottom:8px}.gallery-controls{margin-top:15px;gap:20px}.gallery-controls button{width:34px;height:34px;font-size:15px}.gallery-space{margin-left:calc(-1 * var(--gutter))}.showcase-track{padding:22px 18vw 26px;gap:18px;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}.team-moment{flex-basis:62vw}.photo-slot{aspect-ratio:5/4}.team-moment figcaption{margin-top:16px;font-size:10px}.journey-end{bottom:66px;right:12vw;padding-top:17px;gap:20px;align-items:flex-start}.journey-end p{font-size:10px;line-height:1.8;max-width:13em}.journey-end .scene-link{font-size:10px;white-space:nowrap;gap:15px}.cutaway-toggle{font-size:11px}}
@media(max-height:600px) and (min-width:601px){.frc-scene{padding-top:95px;padding-bottom:70px;min-height:100svh}.frc-copy h2,.chapter-title,.showcase h2{font-size:34px}.frc-copy .section-lead{font-size:13px;margin:14px 0 10px}.frc-copy p:not(.kicker):not(.section-lead){font-size:11px;line-height:1.75}.frc-copy .kicker{margin-bottom:14px}.showcase{padding-top:90px;padding-bottom:110px}.showcase .section-lead{font-size:13px;margin:14px 0}.showcase-track{padding-top:15px;padding-bottom:20px}.team-moment{flex-basis:23vw}.photo-slot{aspect-ratio:4/3}.journey-end{bottom:47px;padding-top:16px}.gallery-controls{margin-top:14px}.empty-index{font-size:72px}}
@media(prefers-reduced-motion:reduce){.team-moment{transition:none}#robot-stage{transition:none}}

/* One screen is exactly one live viewport. The typography and palette stay intact. */
:root{--screen-height:100dvh;--head-safe:clamp(78px,11dvh,126px);--foot-safe:clamp(56px,8dvh,90px)}
html{scroll-snap-type:y mandatory;scroll-padding-top:0}body{overflow-x:clip}.chapter,.frc-scene,.showcase,.is-enhanced .chapter,.chapter:last-child{height:var(--screen-height);min-height:0;max-height:var(--screen-height);scroll-snap-align:start;scroll-snap-stop:always}.chapter{padding:0}.is-enhanced .scene-copy{top:var(--head-safe);bottom:var(--foot-safe);transform:none;display:flex;flex-direction:column;justify-content:safe center;overflow-y:auto;scrollbar-width:thin;overscroll-behavior-y:auto;max-height:none}.scene-copy>*{flex-shrink:0}.scene-copy .scene-link{align-self:flex-start}.scene-copy h1{font-size:clamp(44px,min(5.5vw,10.2dvh),94px)}.scene-copy h2{font-size:clamp(40px,min(5.45vw,10.2dvh),94px)}
.frc-scene{display:block;padding:var(--head-safe) 9vw var(--foot-safe) var(--gutter)}.frc-panel-body{height:100%;min-height:0;display:grid;grid-template-columns:1.04fr 1fr;align-items:center;gap:5vw}.frc-copy{max-height:100%;overflow-y:auto;scrollbar-width:thin;padding:5px 8px 5px 0}.frc-copy:focus-visible,.showcase-track:focus-visible{outline:1px solid #dbbd8a70;outline-offset:4px}.frc-copy h2,.chapter-title{font-size:clamp(34px,min(5.45vw,9.5dvh),94px)}.film-stage{width:min(100%,calc((var(--screen-height) - var(--head-safe) - var(--foot-safe) - 45px)*1.7778));justify-self:center}.film-caption{padding-top:22px}
.showcase{display:block;padding:var(--head-safe) 0 var(--foot-safe) var(--gutter)}.showcase-inner{height:100%;min-height:0;display:grid;grid-template-columns:.95fr 1.15fr;grid-template-rows:minmax(0,1fr) auto;align-items:center;gap:20px 0}.showcase-heading{max-height:100%;overflow-y:auto;padding-right:10px;scrollbar-width:thin}.showcase h2{font-size:clamp(34px,min(5.45vw,9.5dvh),94px)}.gallery-space{height:100%;min-height:0}.showcase-track{position:relative;max-height:100%;padding-block:25px}.team-moment{flex-basis:min(27vw,calc((var(--screen-height) - var(--head-safe) - var(--foot-safe) - 115px)*.7))}.journey-end{position:static;grid-column:1/-1;margin-right:9vw;min-height:40px;padding-top:18px}.team-moment figcaption{margin-top:18px}
.depth-interaction{position:fixed;z-index:4;inset:var(--head-safe) 8vw var(--foot-safe) 53vw;touch-action:pan-y;cursor:grab;outline:none}.depth-interaction:active{cursor:grabbing}.depth-interaction:focus-visible{outline:1px solid #dbbd8a50;outline-offset:-5px}.depth-hint{position:absolute;right:0;bottom:10px;display:flex;align-items:center;gap:20px;color:#e7d4bacc;letter-spacing:.08em;font-size:11px;text-shadow:0 1px 12px #000}.depth-hint>span:last-child{font-size:23px}.touch-hint{display:none}html[data-scene="frc"] .depth-interaction,html[data-scene="showcase"] .depth-interaction{visibility:hidden;pointer-events:none}
@media(max-width:600px){:root{--head-safe:76px;--foot-safe:52px}.fx-header{padding-top:18px;padding-bottom:14px}.is-enhanced .scene-copy{top:max(var(--head-safe),calc(var(--screen-height)*.39));bottom:var(--foot-safe);justify-content:safe center;max-width:82vw}.scene-copy h1{font-size:clamp(31px,min(9.8vw,6.4dvh),54px)}.scene-copy h2{font-size:clamp(30px,min(9.8vw,6.4dvh),54px)}.scene-copy .description{font-size:13px;margin-top:16px}.scene-copy .detail{margin-top:15px}.scene-copy .kicker{margin-bottom:14px}.scene-copy .scene-link{margin-top:14px}.stage-vignette{background:linear-gradient(0deg,#17090e 0%,#17090e 32%,#17090ed4 47%,#17090e10 74%,#17090e25 100%)}.photographic-world{height:min(68dvh,105vw)}.frc-scene{padding:var(--head-safe) 12vw var(--foot-safe) var(--gutter)}.frc-panel-body{display:grid;grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto;gap:22px}.frc-copy{height:100%;max-width:none;align-content:center;padding-right:5px}.frc-copy h2,.chapter-title{font-size:clamp(28px,min(8.5vw,5.9dvh),46px)}.frc-copy .section-lead{font-size:13px;margin:16px 0 12px}.frc-copy p:not(.kicker):not(.section-lead){font-size:13px;line-height:1.8}.film-stage{width:min(100%,calc(var(--screen-height)*.245*1.7778))}.film-caption{padding-top:15px;font-size:8px}.showcase-inner{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr) auto;gap:12px}.showcase-heading{max-width:86vw;overflow:visible}.showcase h2{font-size:clamp(28px,min(8.5vw,5.9dvh),46px)}.showcase .section-lead{margin:16px 0 8px;font-size:13px}.gallery-controls{margin-top:14px}.showcase-track{height:100%;padding-block:15px}.team-moment{flex-basis:min(62vw,calc(var(--screen-height)*.30))}.photo-slot{aspect-ratio:5/4}.gallery-space{align-self:stretch}.journey-end{margin-right:12vw;padding-top:12px;min-height:42px;align-items:center}.journey-end p{max-width:13em}.depth-interaction{inset:var(--head-safe) 5vw auto 5vw;height:calc(var(--screen-height)*.29)}.depth-hint{right:0;bottom:0;font-size:10px;gap:13px}.desktop-hint{display:none}.touch-hint{display:inline}.fx-footer{padding-block:17px}}
@media(max-width:600px) and (max-height:650px){:root{--head-safe:65px;--foot-safe:42px}.fx-header img{width:120px}.fx-header{padding-top:15px;gap:15px}.top-nav{gap:14px;font-size:9px}.is-enhanced .scene-copy{top:calc(var(--screen-height)*.37)}.scene-copy .kicker{font-size:8px;margin-bottom:10px}.scene-copy .description{font-size:12px;line-height:1.65;margin-top:12px}.scene-copy .detail{font-size:9px;margin-top:10px}.scene-copy .scene-link{font-size:10px;margin-top:10px;padding-block:8px}.scene-actions{gap:7px 15px}.frc-panel-body{gap:12px}.frc-copy{align-content:start}.frc-copy h2,.chapter-title,.showcase h2{font-size:28px}.frc-copy .kicker,.showcase .kicker{margin-bottom:10px}.frc-copy .section-lead{margin:12px 0 9px}.film-stage{width:min(100%,calc(var(--screen-height)*.21*1.7778))}.empty-index{font-size:52px}.empty-content{gap:6px;font-size:10px}.empty-content small{font-size:8px}.film-caption{padding-top:10px;font-size:7px}.showcase .section-lead{font-size:12px;line-height:1.6;margin:10px 0 6px}.gallery-controls{margin-top:10px}.gallery-controls button{width:29px;height:29px}.team-moment{flex-basis:57vw}.photo-slot{aspect-ratio:5/3}.showcase-track{padding-block:10px}.team-moment figcaption{font-size:9px;margin-top:10px}.showcase-inner{gap:9px}.journey-end{padding-top:10px}.fx-footer{padding-block:13px}}
@media(max-height:600px) and (min-width:601px){:root{--head-safe:65px;--foot-safe:40px}.scene-copy h1,.scene-copy h2{font-size:clamp(27px,7.6dvh,46px)}.frc-copy h2,.chapter-title,.showcase h2{font-size:clamp(26px,7.3dvh,38px)}.frc-copy .kicker,.showcase .kicker{margin-bottom:12px}.showcase .section-lead{font-size:12px;margin:12px 0 9px}.frc-copy .section-lead{font-size:12px;margin:12px 0 9px}.frc-copy p:not(.kicker):not(.section-lead){font-size:12px;line-height:1.7}.film-caption{padding-top:12px}.team-moment{flex-basis:min(25vw,calc((var(--screen-height) - 150px)*1.05))}.photo-slot{aspect-ratio:4/3}.showcase-track{padding-block:12px}.team-moment figcaption{font-size:10px;margin-top:14px}.journey-end{min-height:30px;padding-top:10px}.gallery-controls{margin-top:12px}.gallery-controls button{width:32px;height:32px}.showcase-inner{gap:12px}.depth-hint{font-size:10px;bottom:0}}

/* The pre-rendered scene replaces its fallback atomically under the welcome. */
#robot-stage{transition:none}.scene-photograph{transform:scale(1.12);transform-origin:center}.has-depth .photographic-world{visibility:hidden}

/* Persistent section navigation; scene and content remain full-viewport. */
.fx-header{z-index:40;background:linear-gradient(180deg,#17090ee8 0%,#17090e70 70%,transparent);padding-bottom:25px}
.top-nav{gap:clamp(24px,3.1vw,52px);margin:0 0 0 auto;font-size:14px;letter-spacing:.035em;white-space:nowrap}
.top-nav a{position:relative;display:block;padding:13px 0;color:#e7ddd2a6;transition:color .3s}
.top-nav a:after{content:'';position:absolute;left:0;right:0;bottom:3px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .35s ease;box-shadow:0 0 12px #dbbd8a50}
.top-nav a:hover,.top-nav a[aria-current]{color:var(--gold)}.top-nav a[aria-current]:after{transform:scaleX(1)}
.stage{will-change:opacity}.frc-intro{isolation:isolate}.media-slot:empty{min-height:0}
@media(max-width:600px){.fx-header{padding:18px 6vw 22px;gap:18px}.fx-header img{width:120px}.top-nav{gap:18px;margin-left:auto;font-size:12px}.top-nav a:first-child{display:block}.top-nav a{padding:10px 0}.top-nav a:after{bottom:1px}}
@media(max-width:380px){.fx-header{padding-inline:5vw;gap:12px}.fx-header img{width:100px}.top-nav{gap:12px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.top-nav a,.top-nav a:after{transition:none}}

/* V34: the photograph and first FRC panel share a continuous, time-smoothed dissolve. */
#about-frc .frc-scene:first-child .frc-panel-body{will-change:opacity,transform}
#about-frc:before{opacity:.5}.stage{z-index:0}.content-chapter{z-index:2}
@media(max-width:760px){:root{--head-safe:128px}.frc-scene{padding-top:var(--head-safe)}.depth-interaction{top:var(--head-safe)}}

/* Let the document collect each full-screen FRC snap target. */
#about-frc{overflow:visible}
.frc-scene{overflow:clip}

/* The engineering model has its own stable interaction area. */
.model-open .depth-interaction{z-index:7;inset:auto;left:var(--model-left);top:var(--model-top);width:var(--model-width);height:var(--model-height);touch-action:none;user-select:none;-webkit-user-select:none}
.model-open .depth-interaction:after{content:"拖动旋转 360° · 悬停展开总成";position:absolute;left:50%;bottom:8%;transform:translateX(-50%);white-space:nowrap;color:#d7c7b2b3;font-size:11px;letter-spacing:.1em;pointer-events:none}
.model-open .depth-interaction[data-assembly-name]:not([data-assembly-name=""]):before{content:attr(data-assembly-name);position:absolute;left:50%;bottom:calc(8% + 25px);transform:translateX(-50%);color:#f1dec1;font-size:13px;white-space:nowrap;pointer-events:none}
.model-open .depth-interaction.is-dragging{cursor:grabbing}
.model-open .stage-vignette{background:linear-gradient(90deg,#17090eed 0%,#17090e99 28%,transparent 55%)}
.model-open .scene-copy{max-width:39vw}
.model-open #connect h2{font-size:clamp(38px,min(4.7vw,9dvh),82px)}
#about-frc .frc-scene:first-child{padding-right:3vw}
#about-frc .frc-scene:first-child .frc-panel-body{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:3vw}
#about-frc .frc-scene:first-child h2{font-size:clamp(34px,min(4.25vw,8.5dvh),74px)}
/* Films unfold as their screen enters the viewport. */
.feature-film{--film-edge:1;transform:rotateY(-12deg) rotateX(4deg) scale(.87);background:#0b0709;box-shadow:calc(8px * var(--film-edge)) calc(3px * var(--film-edge)) 0 -1px #2d111a,calc(9px * var(--film-edge)) calc(4px * var(--film-edge)) 0 #dbbd8a3b,0 30px 90px #0006;border-color:#dbbd8a45}
.feature-film:before,.feature-film:after{z-index:2;opacity:var(--film-edge)}
.feature-film:focus-visible{outline:2px solid var(--gold);outline-offset:6px}
.frc-film{display:block;width:100%;height:100%;object-fit:contain;aspect-ratio:16/9;background:#0b0709}
.film-status{display:none;position:absolute;inset:20% 12% auto;text-align:center;color:var(--paper);font-size:14px;text-shadow:0 1px 6px #000}
.has-error .film-status{display:block}
.film-controls{position:absolute;inset:auto 0 0;z-index:3;display:flex;align-items:center;gap:12px;padding:30px 18px 8px;background:linear-gradient(transparent,#080608c9 55%,#080608e6);opacity:0;transform:translateY(6px);pointer-events:none;transition:opacity .2s,transform .2s}
.feature-film:focus-visible .film-controls,.feature-film:has(:focus-visible) .film-controls,.feature-film.is-touch-controls .film-controls,.feature-film.is-seeking .film-controls{opacity:1;transform:none;pointer-events:auto}
@media(hover:hover){.feature-film:hover .film-controls{opacity:1;transform:none;pointer-events:auto}}
.film-controls button{flex:0 0 44px;width:44px;height:44px;display:grid;place-items:center;background:transparent;color:#fff;border:0;border-radius:50%;cursor:pointer;padding:11px}
.film-controls button:hover{background:#ffffff1c}.film-controls button:focus-visible,.film-seek:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.film-controls svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.sound-on,.pause-icon,.is-playing .play-icon{display:none}.film-sound[aria-pressed=true] .sound-on,.is-playing .pause-icon{display:block}.film-sound[aria-pressed=true] .sound-muted{display:none}
.film-time{font:10px/1.4 "Sora",sans-serif;font-variant-numeric:tabular-nums;color:#ede7e0;white-space:nowrap}
.film-seek{--played:0%;appearance:none;-webkit-appearance:none;flex:1;min-width:20px;height:44px;margin:0;background:transparent;cursor:pointer;touch-action:none}
.film-seek::-webkit-slider-runnable-track{height:3px;border-radius:3px;background:linear-gradient(to right,#dbbd8a var(--played),#ffffff4d var(--played))}
.film-seek::-moz-range-track{height:3px;border-radius:3px;background:#ffffff4d}.film-seek::-moz-range-progress{height:3px;background:#dbbd8a}
.film-seek::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:11px;height:11px;border:0;border-radius:50%;background:#f3dfbe;margin-top:-4px;box-shadow:0 0 0 3px #dbbd8a24}
.film-seek::-moz-range-thumb{width:11px;height:11px;border:0;border-radius:50%;background:#f3dfbe}
.film-seek:disabled{opacity:.45;cursor:default}
.film-play{position:absolute;z-index:4;left:50%;top:50%;transform:translate(-50%,-50%);min-height:44px;padding:13px 24px;border:1px solid #dbbd8a80;border-radius:30px;background:#17090edd;color:var(--paper);cursor:pointer}.film-play[hidden]{display:none}
@media(max-width:600px){.film-controls{gap:4px;padding:22px 5px 2px}.film-time{font-size:8px}.film-controls button{flex-basis:40px;width:40px;padding:10px}.film-seek{margin-inline:4px}}
@media(prefers-reduced-motion:reduce){.feature-film{transform:none!important}.film-controls{transition:none}}
@media(max-width:600px){.model-open .depth-interaction:after{bottom:0;font-size:10px}.model-open .depth-interaction[data-assembly-name]:not([data-assembly-name=""]):before{bottom:22px}.model-open .scene-copy{top:calc(var(--screen-height)*.61);max-width:88vw}.model-open #connect h2{font-size:clamp(30px,9.3vw,46px)}.model-open .stage-vignette{background:linear-gradient(0deg,#17090e 0%,#17090e 30%,transparent 65%)}#about-frc .frc-scene:first-child{padding-right:var(--gutter)}#about-frc .frc-scene:first-child .frc-panel-body{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto;gap:22px}#about-frc .frc-scene:first-child h2{font-size:clamp(28px,min(8.5vw,5.9dvh),46px)}#about-frc .frc-scene:first-child .film-stage{width:100%}}

/* Keep the complete word together and give the films the same visual weight. */
.keep-word{white-space:nowrap}
:is(#frc-season,#frc-roles,#frc-growth){padding-right:3vw}
:is(#frc-season,#frc-roles,#frc-growth) .frc-panel-body{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:3vw}
:is(#frc-roles,#frc-growth) .chapter-title{font-size:clamp(30px,min(3.7vw,8.1dvh),64px)}
@media(max-width:600px){:is(#frc-season,#frc-roles,#frc-growth){padding-right:var(--gutter)}:is(#frc-season,#frc-roles,#frc-growth) .frc-panel-body{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto;gap:22px}:is(#frc-roles,#frc-growth) .chapter-title{font-size:clamp(27px,min(8.2vw,5.9dvh),44px)}:is(#frc-season,#frc-roles,#frc-growth) .film-stage{width:100%}}

/* A clear next step at the end of the FRC story. */
.journey-end{gap:24px;align-items:center;padding-top:22px;min-height:76px}
.journey-end p{font-size:clamp(22px,2.1vw,34px);line-height:1.4;color:#ecdbce;max-width:none;letter-spacing:.025em}
.journey-end p em{font-style:normal;color:var(--gold)}
.journey-join{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;flex-shrink:0;min-height:46px;padding:12px 20px;border:1px solid #d8b7828c;color:#efd8b1;font-size:14px;text-decoration:none;transition:background .2s,border-color .2s}
.journey-join:hover{background:#d8b78214;border-color:#d8b782}
.journey-join:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
@media(max-width:760px){.journey-end{margin-right:7vw;gap:15px;padding-top:15px;min-height:88px}.journey-end p{font-size:20px;max-width:12em}.journey-end p em{display:block}.journey-join{font-size:12px;padding:10px 13px;gap:18px;min-height:44px}}
@media(max-width:390px){.journey-end p{font-size:18px}.journey-end{gap:10px}.journey-join{gap:12px;padding-inline:11px}}

/* 2026-09-30: remove container letterboxing without stretching source footage.
   Original sources differ from 16:9 by 0.7–1.8%; keep the bottom/subtitles intact. */
.feature-film .frc-film{object-fit:cover;object-position:50% 100%}
.film-fullscreen[hidden]{display:none}
.film-fullscreen .fullscreen-collapse{display:none}
.film-fullscreen[aria-pressed=true] .fullscreen-expand{display:none}
.film-fullscreen[aria-pressed=true] .fullscreen-collapse{display:block}
.has-fullscreen-message .film-status{display:block;z-index:4}
.feature-film:fullscreen{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;border:0;border-radius:0;aspect-ratio:auto;transform:none!important;box-shadow:none;background:#000}
.feature-film:-webkit-full-screen{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;border:0;border-radius:0;aspect-ratio:auto;transform:none!important;box-shadow:none;background:#000}
.feature-film.is-fullscreen:before,.feature-film.is-fullscreen:after{display:none}
/* Retain the cropped 16:9 frame inside screens of any shape. */
.feature-film.is-fullscreen .frc-film{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(100vw,177.777778dvh);height:min(100dvh,56.25vw);aspect-ratio:16/9}
.feature-film.is-fullscreen .film-controls{padding:42px max(18px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left))}
.feature-film.is-fullscreen .film-time{font-size:12px}

/* Mobile chapters retain the desktop's full-image narrative in the page flow. */
.mobile-scene-photo,.scene-photo-credit{display:none}
@media(max-width:760px){
 html{scroll-snap-type:none;scroll-padding-top:var(--head-safe);overflow-anchor:auto}
 .stage,.depth-interaction{display:none}
 html:not([data-nav-section="frc"]) .immersive-home .fx-header:not(.is-menu-open){background:linear-gradient(180deg,#10090fdb,#10090f70 70%,transparent);border-bottom:0}
 html[data-nav-section="frc"] .immersive-home .fx-header:not(.is-menu-open){background:#17090e;border-bottom:1px solid #dbbd8a1a}
 .chapter,.chapter:last-child,.is-enhanced .chapter{position:relative;isolation:isolate;height:auto;min-height:100svh;max-height:none;padding:calc(var(--head-safe) + 24px) max(24px,6vw) max(40px,calc(env(safe-area-inset-bottom,0px) + 24px));display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;scroll-snap-align:none;scroll-snap-stop:normal;scroll-margin-top:0;overflow:clip}
 .mobile-scene-photo,.chapter:first-child .mobile-scene-photo{display:block;position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;overflow:hidden;background:#17090e;z-index:-2}
 .mobile-scene-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#10090f18 5%,#10090f05 38%,#10090f26 57%,#10090fb8 78%,#17090ef5 100%);pointer-events:none}
 .mobile-scene-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% center}
 .mobile-scene-photo picture{display:block;width:100%;height:100%}
 #idea .mobile-scene-photo picture{height:92%}
 #build .mobile-scene-photo img{object-position:50% center}
 #connect .mobile-scene-photo img{object-position:50% center}
 #compete .mobile-scene-photo img{object-position:50% center}
 .scene-photo-credit{display:block;position:absolute;bottom:16px;left:max(24px,6vw);right:24px;font-size:10px;line-height:1.5;color:#ded5cf;z-index:2;text-shadow:0 1px 4px #000}
 #compete.chapter{justify-content:flex-start;padding-top:calc(var(--head-safe) + 48px)}
 #compete .mobile-scene-photo:after{background:linear-gradient(180deg,#10090fe0 0%,#10090fb3 24%,#10090f15 50%,#10090f05 78%,#17090e80 100%)}
 .chapter .scene-copy,.is-enhanced .chapter .scene-copy{position:relative;inset:auto;display:block;max-width:none;width:100%;padding:0;overflow:visible;max-height:none;transform:none!important;opacity:1!important;pointer-events:auto;will-change:auto;text-shadow:0 2px 24px #0004}
 .scene-copy h1,.scene-copy h2{font-size:clamp(34px,9.4vw,52px);line-height:1.28;letter-spacing:-.045em;font-weight:450}
 .scene-copy h1 br:nth-child(2){display:block}
 .scene-copy .cutaway-toggle{margin:24px 0 0;min-height:48px;font-size:14px;padding:10px 0;display:flex;width:100%;justify-content:space-between;text-align:left;border-top:1px solid #dbbd8a60;border-bottom:0}
 .cutaway-toggle:after{content:'＋';font-size:22px;margin-left:12px}.cutaway-toggle[aria-pressed=true]:after{content:'−'}
 .frc-scene,.showcase{height:auto;min-height:0;max-height:none;scroll-snap-align:none;scroll-snap-stop:normal}
 .frc-scene,#about-frc .frc-scene:first-child,:is(#frc-season,#frc-roles,#frc-growth){padding:38px 20px 42px;overflow:visible}
 .frc-scene+.frc-scene:before{inset:0 20px auto;height:1px;background:#dbbd8a2b}
 .frc-panel-body,#about-frc .frc-scene:first-child .frc-panel-body,:is(#frc-season,#frc-roles,#frc-growth) .frc-panel-body{height:auto;display:flex;flex-direction:column;gap:24px;align-items:stretch;opacity:1!important;transform:none!important;will-change:auto}
 .frc-copy{height:auto;max-height:none;max-width:none;overflow:visible;padding:0}
 .frc-copy h2,.chapter-title,#about-frc .frc-scene:first-child h2,:is(#frc-roles,#frc-growth) .chapter-title{font-size:clamp(29px,8vw,44px);line-height:1.35;letter-spacing:-.04em}
 .frc-copy .section-lead{font-size:17px;line-height:1.7;margin:24px 0 16px;color:#e5d4c4}
 .frc-copy p:not(.kicker):not(.section-lead){font-size:15px;line-height:1.9;margin:14px 0 0;color:#cbbab5}
 .film-stage,#about-frc .frc-scene:first-child .film-stage,:is(#frc-season,#frc-roles,#frc-growth) .film-stage{width:100%;perspective:none}
 .film-stage:after{display:none}
 .feature-film{transform:none!important;aspect-ratio:auto;border:1px solid #dbbd8a35;box-shadow:none;border-radius:4px}
 .feature-film:before,.feature-film:after{display:none}
 .feature-film .frc-film{height:auto;aspect-ratio:16/9}
 .film-controls{position:relative;inset:auto;opacity:1;transform:none;pointer-events:auto;min-height:52px;padding:4px;gap:2px;background:#25141b}
 .film-controls button{width:44px;height:44px;flex-basis:44px;padding:11px}
 .film-time{font-size:12px}.film-seek{margin-inline:5px;min-width:24px}
 .feature-film.is-fullscreen .film-controls{position:absolute;inset:auto 0 0}
 .showcase{padding:38px 20px 44px;overflow:hidden}
 .showcase-inner{display:flex;flex-direction:column;align-items:stretch;height:auto;gap:24px}
 .showcase-heading{max-width:none;max-height:none;overflow:visible;padding:0}
 .showcase h2{font-size:clamp(29px,8vw,44px);line-height:1.35}
 .showcase .section-lead{font-size:15px;line-height:1.85;margin:20px 0 0}
 .gallery-controls{gap:12px;margin-top:20px}
 .gallery-controls button{width:46px;height:46px;font-size:20px}
 .gallery-space{height:auto;margin-inline:-20px;perspective:none}
 .showcase .showcase-track{padding:0 20px 12px;gap:12px;mask-image:none;perspective:none;max-height:none;scroll-padding-inline:20px;scroll-snap-type:x mandatory;touch-action:pan-x pan-y}
 .showcase .showcase-track .team-moment{flex:0 0 calc(100% - 20px);transform:none;opacity:1;will-change:auto}
 .team-moment .photo-slot{aspect-ratio:4/3;height:auto;max-height:none;transform:none;box-shadow:none}
 .journey-end{margin:8px 0 0;min-height:0;display:block;padding-top:28px}
 .journey-end p{font-size:23px;line-height:1.5;max-width:none}
 .journey-end p em{display:block}
 .journey-join{display:flex;margin-top:24px;width:100%;min-height:50px;font-size:15px;padding-inline:18px}
 .model-open .stage{display:block;z-index:6;background:transparent;opacity:1!important}
 .model-open .stage .photographic-world,.model-open .stage .stage-vignette,.model-open .stage .cutaway-shade{display:none}
 .model-open .depth-interaction{display:block;z-index:7;background:transparent;touch-action:none}
 .model-open #connect .mobile-scene-photo img{opacity:.08}
 .model-open #connect .mobile-scene-photo:after{opacity:0}
 .model-open #connect .scene-copy{z-index:8}
 .model-open .depth-interaction:after{content:'拖动旋转 · 轻触展开总成';bottom:12px;font-size:12px;letter-spacing:0;background:#17090ecc;padding:7px 12px;border-radius:20px}
 .model-open .depth-interaction[data-assembly-name]:not([data-assembly-name=""]):before{bottom:52px;font-size:14px}
 .model-open #connect h2{font-size:clamp(32px,9vw,52px)}
}
@media(max-width:760px) and (min-aspect-ratio:4/3){
 .mobile-scene-photo img,#build .mobile-scene-photo img,#connect .mobile-scene-photo img,#compete .mobile-scene-photo img{object-position:50% center}
 .scene-copy h1,.scene-copy h2{font-size:clamp(34px,5.4vw,42px)}
 #compete.chapter{justify-content:flex-end;padding-top:calc(var(--head-safe) + 24px)}
 #compete .mobile-scene-photo:after{background:linear-gradient(180deg,#10090f18 5%,#10090f05 38%,#10090f26 57%,#10090fb8 78%,#17090ef5 100%)}
}
