/* The scene travels with the document; the browser owns scrolling. */
.flow-site{--bg:#05090d;--flow-scene:max(760px,100svh);background:#05090d;color:#e9eff3}
.flow-site .nexus-universe{height:100%;position:fixed;inset:0;pointer-events:none}
.flow-site .cosmic-hero{height:var(--flow-scene);min-height:0;max-height:none;overflow:visible}
.flow-site .cosmic-hero:before,.flow-site .cosmic-hero:after{display:none}
.flow-site .nexus-title{top:50%;transform:translateY(-50%);margin-top:-12px}
.flow-site .nexus-title h1{font-size:clamp(48px,4.7vw,90px);letter-spacing:-.055em;line-height:1.1;max-width:62.5%}
.flow-site .nexus-title h1 em{font-style:normal;color:#fff}
.flow-site .nexus-title .micro{font-size:11px;letter-spacing:.11em;margin-bottom:30px}
.flow-site .nexus-title>p:not(.micro){max-width:min(520px,43vw);line-height:1.9;color:#9aaebb}
.flow-site .nexus-bottom{bottom:52px}
.flow-site .nexus-bottom>p{font-size:11px;color:#7793a5}
.flow-site .scene-hint{bottom:135px;font-size:10px;color:#627e90}
.flow-scene{position:relative;height:var(--flow-scene);display:flex;align-items:center;isolation:isolate}
.flow-copy{position:relative;z-index:1;margin-left:0;width:49%;max-width:650px}
.flow-scene .micro{margin:0 0 30px;color:#8fa8b9;letter-spacing:.11em;font-size:11px;line-height:1.6}
.flow-scene .micro span{font-family:Arial,sans-serif;font-size:10px;color:#547183;margin-right:19px}
.flow-chapter h2{font-size:clamp(42px,4.55vw,74px);font-weight:400;letter-spacing:-.057em;line-height:1.10;margin:0 0 34px}
.flow-description{font-size:17px;line-height:1.9;color:#96a9b7;max-width:406px;margin:0}
.flow-principle{display:flex;gap:16px;align-items:center;color:#c0d4e1;font-size:12px;line-height:1.8;margin-top:28px}
.flow-principle:before{content:'';width:19px;height:1px;background:#648ba2;flex-shrink:0}
.flow-right .flow-copy{margin-left:56.818%;width:43.182%}
.flow-right .flow-description{max-width:398px}
.flow-architecture .flow-copy{width:54.545%;max-width:720px}
.flow-architecture h2{font-size:clamp(42px,4.15vw,70px)}
.flow-detail{display:inline-block;color:#a6bfce;font-size:12px;margin-top:28px;padding-bottom:5px;border-bottom:1px solid #597d954d;transition:color .2s,border-color .2s}
.flow-detail:hover{color:#effaff;border-color:#c7e6f6}
.flow-conclusion{height:calc(var(--flow-scene)*.85);align-items:flex-start;justify-content:center;text-align:center}
.flow-conclusion .flow-copy{width:80vw;max-width:1100px;margin:0;padding-top:calc(var(--flow-scene)*.36)}
.flow-conclusion h2{font-size:clamp(45px,5.25vw,84px);font-weight:400;letter-spacing:-.057em;line-height:1.12;margin:0 0 27px}
.flow-conclusion .flow-description{font-size:15px;margin:0 auto;max-width:580px}
.flow-site .nexus-process{padding-top:70px;padding-bottom:130px}
.flow-site .nexus-responsibility{background:#091117;border-color:#8ab5ce1a}
.flow-site .nexus-contact{min-height:75svh}
.flow-site .cosmic-footer{background:#05090d}
.flow-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1750px){.flow-chapter h2{font-size:78px}.flow-chapter .flow-description{font-size:19px;max-width:440px}}
@media(max-width:1050px){.flow-site{--flow-scene:max(700px,100svh)}.flow-chapter h2{font-size:44px}.flow-description{font-size:15px}.flow-architecture h2{font-size:43px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
