/* A restrained evolution of the source's dark hardware studies. */
:root{--bg:#070a08;--blue:#8db99c}.header{height:88px;background:#080d0aed}.header .brand{font-size:23px;letter-spacing:-.9px}.brand-mark{font-size:34px;transform:skewY(-12deg);color:#a7c9b3}.brand-small{letter-spacing:1.5px;font-size:12px}.header nav{gap:22px}.hero{height:calc(100svh - 88px);min-height:760px;max-height:1100px;background:radial-gradient(ellipse at 72% 50%,#29423190,transparent 55%),#070a08;isolation:isolate}.hero-visual{opacity:.42;animation:none;background-size:cover}.hero-content{padding-top:128px;max-width:760px}.hero h1{font-size:clamp(58px,5.2vw,82px);line-height:1.1}.hero-description{font-size:18px;color:#b5c4ba}.hero h1>span{color:#a7c3b0}.hero-watermark{font-size:clamp(100px,19.9vw,330px);bottom:12px;left:4%;letter-spacing:-.085em;color:#a0baa818;white-space:nowrap;z-index:0;line-height:.85}.hero-watermark span{color:#82b29230}.hero-corner{top:27px;right:5%;font:12px/1.8 monospace;color:#a1bcaa;letter-spacing:1.5px}.hero-note{font-size:12px;letter-spacing:.3px;color:#8a9c91}.identity-note{font-size:13px;color:#8a9c91;margin-top:28px}.hero-note{margin-top:4px}.motion-master{position:absolute;z-index:4;right:5%;bottom:42px;background:#0d1510c9}.hero-scene{position:absolute!important;right:-4%;top:6%;width:64%;height:77%;z-index:1;pointer-events:none}.scene-surface{position:relative;overflow:hidden;min-width:0;isolation:isolate}.scene-surface canvas{display:block;width:100%;height:100%;opacity:0;transition:opacity .8s}.scene-surface.scene-ready canvas{opacity:1}.hero:has(.scene-ready) .hero-visual{opacity:.09}.scene-surface:focus-visible{outline:1px solid #a8c9b3;outline-offset:-8px}.ambient-code{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;opacity:.17;font:11px/1.2 monospace;color:#70917b}.ambient-code span{position:absolute;white-space:nowrap}.hero-grid{z-index:0;background-size:100px 100px;opacity:.5}.scene-fallback{position:absolute;inset:0;display:grid;place-items:center;color:#809487;font-size:13px}.scene-fallback img{max-width:100%;opacity:.5}.architecture{position:relative;padding-top:100px}.architecture-visual{position:relative;border-block:1px solid #304336;background:radial-gradient(ellipse at 50% 56%,#36574140,transparent 65%),#090e0b;margin-bottom:35px}.architecture-scene{height:480px}.visual-caption{position:absolute;left:24px;right:24px;bottom:24px;display:flex;justify-content:space-between;gap:20px;font:12px/1.6 monospace;color:#95b19e;letter-spacing:1px;pointer-events:none}.layer-switch{position:absolute;top:22px;left:24px;display:flex;gap:6px;z-index:2}.layer-switch button,.scene-render-modes button{padding:8px 12px;background:#0d130fbb;border:1px solid #334539;color:#a9b9af;font:13px/1.4 var(--font);min-height:36px}.layer-switch button[aria-pressed=true],.scene-render-modes button[aria-pressed=true]{color:#e9f2ec;border-color:#99c1a7;background:#223528}.architecture-grid p,.execution-grid p{font-size:16px}.architecture-grid article{transition:background .3s,padding .3s}.architecture-grid article.layer-active{background:linear-gradient(90deg,#304e3a42,transparent);padding-right:14px}.showcase-section{background:radial-gradient(ellipse at 75% 50%,#23372a50,transparent 55%),#060907;min-height:700px}.showcase-copy{padding-bottom:50px}.showcase-copy h2{min-height:0;margin:30px 0 25px;font-size:clamp(40px,4.6vw,68px)}.model-stage{position:relative;min-height:660px;background:none}.showcase-scene{height:100%;min-height:660px;cursor:grab;touch-action:pan-y}.showcase-scene.dragging{cursor:grabbing}.scene-render-modes{position:absolute;right:24px;top:26px;display:flex;gap:6px}.viewer-status{left:30px;bottom:30px;right:30px;color:#8fab99}.showcase-tabs button,.subtle-button{font-size:14px;min-height:38px}.showcase-copy .motion-controls{display:flex;gap:10px}.model-stage:before,.model-stage:after{content:'';position:absolute;z-index:1;width:38px;height:38px;pointer-events:none;border-color:#60826b;border-style:solid;opacity:.5}.model-stage:before{top:25px;left:25px;border-width:1px 0 0 1px}.model-stage:after{right:25px;bottom:65px;border-width:0 1px 1px 0}.execution{max-width:1600px;background:linear-gradient(180deg,#0a0f0c,#050806);padding-block:85px}.execution-grid{gap:24px}.execution-grid article{position:relative;padding:22px 20px 28px;background:linear-gradient(140deg,#1a271f66,transparent);border-top:1px solid #3d5646;overflow:hidden;min-width:0}.execution-grid h3{font-size:34px;margin-top:20px}.execution-grid p{min-height:160px;color:#a2b4a8}.phase-number{font-size:14px;color:#83a38e;position:relative;top:auto;left:auto;letter-spacing:1px}.phase-label{font-size:12px;letter-spacing:1px}.phase-scene{height:225px;margin:0 -15px;background:radial-gradient(ellipse,#395c452a,transparent 68%)}.execution-grid code{font-size:12px;overflow-wrap:anywhere}.execution-grid article:after{content:'';position:absolute;top:0;left:0;height:1px;width:30%;background:#b5d2bf;box-shadow:0 0 18px #8cb99b;animation:phase-trace 5s ease-in-out infinite;animation-play-state:paused}.execution-grid article:nth-child(2):after{animation-delay:-1.7s}.execution-grid article:nth-child(3):after{animation-delay:-3.4s}.execution.is-visible article:after{animation-play-state:running}@keyframes phase-trace{0%,100%{transform:translateX(-110%);opacity:0}30%,70%{opacity:1}90%{transform:translateX(450%);opacity:0}}.design-section{padding-top:100px;padding-bottom:100px}.design-stage{display:grid;grid-template-columns:1.1fr 1fr;gap:5%;align-items:start;position:relative}.design-topics{min-width:0}.design-detail{display:block;padding:0 10px 25px 43px}.design-detail .design-metrics{margin-top:12px;padding:10px 0}.design-detail>div+div{margin-top:25px}.design-detail .design-metrics dd{font-size:22px}.design-topic>summary{gap:20px}.design-topic>summary strong{font-size:23px}.design-tag{display:none}.particle-stage{height:570px;position:sticky;top:130px;overflow:hidden;background:radial-gradient(ellipse at center,#24382b3b,transparent 65%)}#morph-field{width:100%;height:100%;display:block}.particle-stage .visual-caption{left:0;right:0;bottom:15px;font-size:11px}.terrain-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1;opacity:.48}.network-section{background:#090f0b}.network-steps{background:#090f0bb8;padding:25px;border:1px solid #26352b}.network-title{align-self:center}.ascii-interlude{position:relative;height:480px;max-width:1600px;margin:0 auto 70px;background:#040705;overflow:hidden;border-block:1px solid #233329}#ascii-film{width:100%;height:100%;display:block;opacity:.72}#source-film{display:none}.film-caption{position:absolute;bottom:26px;left:5%;right:5%;display:flex;justify-content:space-between;gap:20px;font:12px/1.6 monospace;color:#b3c4b9}.film-play{position:absolute;left:5%;top:30px;background:#131b16}.ascii-interlude:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#040705 0%,transparent 30%,transparent 75%,#040705),linear-gradient(90deg,#040705,transparent 20%,transparent 80%,#040705)}.film-caption,.film-play{z-index:2}.footer-top>.brand{font-size:36px}.page-intro{position:relative;background:radial-gradient(ellipse at 85% 0%,#375a4327,transparent 55%)}body.motion-paused *,body.motion-paused *:before,body.motion-paused *:after{animation-play-state:paused!important}.visual-error{font:13px/1.7 var(--font);color:#99ada0;padding:25px}.film-unavailable{position:absolute;top:40%;width:100%;text-align:center;color:#8d9f93;font-size:14px}
@media(min-width:1600px){.hero-content{padding-left:8%}.hero-scene{right:0;width:62%}}
@media(max-width:1050px){.hero-content{max-width:650px}.hero h1{font-size:64px}.hero-scene{right:-15%;width:77%;opacity:.7}.hero-content{z-index:2}.hero-content:before{content:'';position:absolute;inset:40px 5% 140px -10%;z-index:-1;background:linear-gradient(90deg,#080d0ae8,transparent);pointer-events:none}.design-stage{gap:3%}.particle-stage{height:480px}.design-detail{padding-left:0}.design-topic>summary strong{font-size:22px}.execution-grid{gap:14px}.execution-grid article{padding-inline:14px}.execution-grid p{min-height:205px}.header .brand-small{display:none}}
@media(max-width:900px){.header{height:76px}.hero{min-height:820px}.showcase-section{grid-template-columns:1fr}.showcase-copy{padding-top:55px}.model-stage,.showcase-scene{height:520px;min-height:520px}.showcase-copy>p{max-width:620px}.design-stage{grid-template-columns:1fr}.particle-stage{position:relative;top:auto;grid-row:1;height:380px;margin-top:-15px}.design-detail{display:grid;grid-template-columns:1fr 1fr;gap:30px}.design-detail>div+div{margin-top:0}.architecture-scene{height:420px}.execution-grid{grid-template-columns:1fr}.execution-grid article{padding:25px;min-height:270px}.execution-grid article h3,.execution-grid article p,.execution-grid article>code,.execution-grid article .phase-label{position:relative;z-index:1;max-width:53%}.execution-grid p{min-height:0}.phase-scene{position:absolute;right:0;top:0;width:50%;height:100%;opacity:.8}.ascii-interlude{height:400px}.network-steps{padding:20px}}
@media(max-width:600px){.header .brand{font-size:19px;gap:6px}.header .brand-mark{font-size:28px;width:20px}.header-cta{font-size:12px;padding:8px;margin-right:12px}.header-cta span{margin-left:7px}.hero{height:940px;min-height:0}.hero-content{padding:90px 6% 0;max-width:none}.hero h1{font-size:clamp(45px,10.9vw,65px)}.hero-description{font-size:16px;max-width:100%}.hero-actions{margin-top:25px;flex-wrap:wrap}.hero .hero-note{font-size:12px;max-width:300px}.hero-scene{width:116%;height:380px;top:auto;bottom:82px;right:-8%;opacity:1}.hero-content:before{display:none}.hero-watermark{font-size:19.7vw;bottom:63px;left:4%}.hero-corner{top:22px;font-size:11px}.motion-master{bottom:20px;right:6%;font-size:12px;padding:7px 10px}.scroll-hint{bottom:23px;font-size:12px;gap:16px}.identity-note{font-size:12px;margin-top:21px}.hero-visual{background-position:center bottom;background-size:auto 450px}.architecture{padding-top:65px}.architecture-scene{height:340px}.layer-switch{left:12px;top:14px;right:12px;gap:4px;flex-wrap:wrap}.layer-switch button{font-size:12px;padding:7px}.visual-caption{left:15px;right:15px;bottom:16px;font-size:10px;gap:10px}.visual-caption>span:last-child{max-width:45%;text-align:right}.model-stage,.showcase-scene{min-height:400px;height:400px}.showcase-copy{padding:50px 6% 0}.showcase-copy h2{font-size:46px}.showcase-copy>p{padding:0}.scene-render-modes{right:16px;top:18px}.scene-render-modes button{font-size:12px}.viewer-status{left:20px;font-size:12px;bottom:18px}.execution{padding-block:60px}.execution-grid article{padding:22px;min-height:440px}.execution-grid article h3,.execution-grid article p,.execution-grid article>code,.execution-grid article .phase-label{max-width:100%}.phase-scene{position:relative;right:auto;top:auto;height:195px;width:auto;margin:0 -15px;opacity:1}.execution-grid article h3{margin-top:3px}.execution-grid p{font-size:16px;min-height:0}.phase-number{position:absolute;top:20px;left:22px;font-size:13px}.design-section{padding-block:60px}.particle-stage{height:320px}.design-detail{display:block;padding:0 0 25px}.design-detail>div+div{margin-top:22px}.design-topic>summary{gap:14px}.design-topic>summary strong{font-size:22px}.particle-stage .visual-caption{font-size:10px}.ascii-interlude{height:300px;margin-bottom:35px}.film-caption{font-size:10px}.film-caption span:last-child{max-width:40%;text-align:right}.network-steps{padding:20px 16px}.scene-data{max-width:none}}
@media(prefers-reduced-motion:reduce){.scene-surface canvas{transition:none}.execution-grid article:after{animation:none}}
/* The global control stays reachable throughout the visual studies. */
.motion-master{position:fixed;right:74px;bottom:20px;z-index:35;background:#0c140fed;border-color:#3f5245;backdrop-filter:blur(10px)}
@media(max-width:600px){.motion-master{right:62px;bottom:14px;font-size:12px;padding:7px 11px}}
.particle-choices{display:none}@media(max-width:900px){.particle-choices{position:absolute;top:0;left:0;right:0;display:flex;flex-wrap:wrap;justify-content:center;gap:6px;z-index:2}.particle-choices button{font:14px/1.3 var(--font);padding:8px 10px;min-height:36px;color:#a5bbac;border:1px solid #2f3f34;background:#0d140f}.particle-choices button[aria-pressed=true]{border-color:#89b598;background:#233629;color:#e7f1eb}.particle-stage{height:420px;padding-top:75px}.particle-stage canvas{height:calc(100% - 30px)}}
/* Scroll-led chapters: typography in the dark, material studies on a soft white stage. */
.scroll-showcase{display:block;max-width:1600px;margin:auto;padding:85px 5% 40px;background:#060807;min-height:0}
.showcase-intro{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #343835;padding-top:24px;margin-bottom:48px;gap:24px}
.showcase-intro p{font-size:14px;color:#a2aaa5}
.scroll-story{position:relative;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr);gap:7%;align-items:start}
.story-copy{grid-column:1;grid-row:1;min-width:0}
.story-step{min-height:calc(100svh - 120px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:80px 0;border-top:1px solid #292d2a;scroll-margin-top:130px}
.story-step:first-child{border-top:0}
.story-step .chapter-number,.architecture-chapters .story-step>span{font:12px/1.5 monospace;letter-spacing:1.5px;color:#98aa9f;margin-bottom:32px}
.story-step h2,.story-step h3{font-size:clamp(34px,4.3vw,64px);line-height:1.06;letter-spacing:-.045em;font-weight:500;margin:0 0 28px;color:#f0f2f1}
.story-step>p{font-size:17px;line-height:1.8;color:#a6aea9;max-width:440px;margin:0 0 24px}
.story-step>p.chapter-intro{font-size:21px;line-height:1.4;color:#e7eae8;margin-bottom:18px}
.story-step .scene-data{width:100%;margin:28px 0 0;font-size:13px}
.story-step .scene-data p,.story-step .scene-data small{font-size:12px}
.story-visual{grid-column:2;grid-row:1;position:sticky;top:128px;height:calc(100svh - 175px);min-height:420px;max-height:800px;margin:0;background:radial-gradient(ellipse at 50% 40%,#fafaf8,#e1e2de);border:0;overflow:hidden;color:#2c322e;isolation:isolate}
.story-visual:before{content:'';position:absolute;inset:16% 10% 20%;border:1px solid #4e5a5213;border-radius:50%;width:auto;height:auto;z-index:-1;opacity:1}
.story-visual:after{content:'';position:absolute;width:56%;height:5%;left:22%;bottom:21%;background:#3b473f40;filter:blur(22px);border:0;border-radius:50%;z-index:-1;opacity:.4}
.story-visual .scene-surface{position:absolute;inset:50px 0 54px;width:100%;height:auto;min-height:0;max-height:none;z-index:1}
.story-visual .scene-surface.scene-loading canvas{opacity:0;transition:opacity .18s}
.story-visual .scene-surface canvas{transition:opacity .45s}
.studio-heading,.studio-footer{position:absolute;left:24px;right:24px;display:flex;justify-content:space-between;align-items:center;gap:18px;z-index:2;font:10px/1.5 monospace;letter-spacing:1.1px;color:#5b6860}
.studio-heading{top:24px}.studio-footer{bottom:23px;letter-spacing:.4px}
.story-count{white-space:nowrap;color:#29302b}.studio-reset{font:11px/1.4 var(--font);color:#3f4c43;border:0;background:none;padding:8px 0;white-space:nowrap}
.story-progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:#ced2cf;z-index:2}.story-progress i{display:block;width:25%;height:100%;background:#70a883;transition:width .35s}
.architecture-story{margin-bottom:45px}.architecture-chapters{display:block}.architecture-chapters article{background:none;transition:none}.architecture-chapters h3{font-size:clamp(34px,3.5vw,54px)}
@media(max-width:900px){
 .scroll-story{display:grid;grid-template-columns:1fr;gap:0}
 .story-visual{grid-column:1;grid-row:1;top:88px;height:42svh;min-height:240px;max-height:420px;z-index:4;box-shadow:0 12px 28px #05080670}
 .story-copy{grid-column:1;grid-row:1;padding-top:42svh}
 .story-step{min-height:85svh;padding:55px 2% 70px;justify-content:center}
 .story-step h2,.story-step h3{font-size:clamp(34px,6vw,50px);max-width:620px}
 .story-step>p{max-width:600px;font-size:16px}
 .story-step .chapter-number,.architecture-chapters .story-step>span{margin-bottom:20px}
 .story-visual .scene-surface{inset:34px 0 35px}
 .studio-heading{top:15px}.studio-footer{bottom:12px}.studio-heading,.studio-footer{left:18px;right:18px;font-size:9px}
 .scroll-showcase{padding:55px 6% 20px}.showcase-intro{align-items:flex-start;flex-direction:column;gap:8px;margin-bottom:28px}.showcase-intro p{margin:0}
}
@media(prefers-reduced-motion:reduce){.story-progress i,.story-visual .scene-surface canvas{transition:none}}
.scroll-showcase{overflow:visible}

.hero-visual{display:none}.hero:has(.hero-scene[data-model="strata"]){background:radial-gradient(ellipse at 76% 45%,#1f2c2470,transparent 53%),#060907}.hero .hero-scene{top:3%;height:83%;width:61%;right:-2%}.ambient-code{opacity:.08}
@media(max-width:900px){.story-step{justify-content:flex-start;padding-top:150px;padding-bottom:70px}.story-step .chapter-number{margin-bottom:14px}}
@media(max-width:600px){.hero .hero-scene{top:auto;bottom:65px;height:370px;width:100%;right:0}}

/* Copper / charcoal material studies, with warm editorial portrait tones. */
.story-visual{background:radial-gradient(ellipse at 50% 43%,#30251c 0%,#171511 58%,#0d0e0d 100%);color:#ead9bf}
.story-visual:before{border-color:#bd885b20}.story-visual:after{background:#000;opacity:.7}
.studio-heading,.studio-footer{color:#bfa689}.story-count{color:#f0dfc6}.studio-reset{color:#dcc4a3}
.story-progress{background:#403126}.story-progress i{background:#cf985a}
.story-visual .scene-surface:focus-visible{outline-color:#d7a673}
.amber-portrait{background:#0c0b09;border-color:#443322;height:480px}
#ascii-portrait{width:100%;height:100%;display:block}
.amber-portrait .film-caption{color:#c4ab88}
.amber-portrait:after{background:linear-gradient(0deg,#0c0b09,transparent 22%,transparent 90%,#0c0b09),linear-gradient(90deg,#0c0b09,transparent 10%,transparent 90%,#0c0b09)}
@media(max-width:600px){.amber-portrait{height:350px}.amber-portrait .film-caption{font-size:9px}}
body.route-open>:not(.route-shell):not(script){display:none!important}.route-shell{position:fixed;inset:0;z-index:1000;background:#070a08}.route-frame{display:block;width:100%;height:100%;border:0;background:#070a08}.route-message{margin:15vh auto;padding:32px;max-width:500px;color:#dde5e0;text-align:center}.route-message a,.route-message button{color:#cfaa7e;background:none;border:1px solid #74604b;padding:10px 18px}
/* Graphite / silver / jade. Full-height scenes follow native scrolling. */
:root{--bg:#080b0a;--surface:#101612;--line:#b8d2c01f;--muted:#a1aca5;--text:#edf0ec;--blue:#a2c6b0}
body,.header,.mobile-nav,.route-shell,.route-frame{background:#080b0a}.brand-mark,.text-link,.footer-bottom a{color:#a2c6b0}.button-primary{background:#a2c6b0;color:#101a14}.button-primary:hover{background:#c0d8ca}.button:focus-visible,a:focus-visible,summary:focus-visible{outline-color:#b9dbca}::selection{background:#a2c6b0;color:#080b0a}
.hero:has(.hero-scene[data-model="strata"]){background:radial-gradient(ellipse at 72% 50%,#203b2e55,transparent 56%),#080b0a}.hero h1>span,.muted-heading{color:#9aafa1}.hero-watermark,.hero-watermark span{color:#a1c3af0e}.ambient-code{color:#91aa9b}.hero-grid{opacity:.18}.hero-content:before{background:linear-gradient(90deg,#080b0ad9,transparent)}
.story-visual{background:transparent;color:#dce6df}.story-visual:before,.story-visual:after{display:none}.studio-heading,.studio-footer,.studio-reset{color:#92a79a}.story-count{color:#d1ded6}.story-progress{background:#82968822}.story-progress i{background:#91b8a1}.story-visual .scene-surface:focus-visible{outline-color:#a1c8b1}
.scroll-showcase,.execution,.network-section{background:#080b0a}.network-steps{background:#101912c9;border-color:var(--line)}.particle-stage{background:none}.motion-master,.back-top{background:#101813dd;color:#afc0b5;border-color:#73937e55}.scene-fallback{color:#a6b9ad}.page-intro{background:radial-gradient(ellipse at 85% 0%,#25473520,transparent 55%)}
.amber-portrait{background:#080b0a;border-color:var(--line)}.amber-portrait .film-caption{color:#b6c5bc}.amber-portrait:after{background:linear-gradient(0deg,#080b0a,transparent 12%,transparent 91%,#080b0a),linear-gradient(90deg,#080b0a,transparent 10%,transparent 90%,#080b0a)}
html:has(.cinematic-home){scroll-snap-type:y proximity;scroll-padding-top:0}.cinematic-home .hero{min-height:620px;height:calc(100svh - 88px);max-height:none}.cinematic-home .hero-content{padding-top:clamp(90px,19svh,210px);max-width:850px}.cinematic-home .hero h1{font-size:clamp(54px,6.8vw,108px);font-weight:500;letter-spacing:-.065em}.cinematic-home .hero-description{max-width:390px;line-height:1.6;font-size:17px}.cinematic-home .hero-actions{align-items:center;gap:30px}.cinematic-home .hero-corner{display:none}.cinematic-home .hero .hero-scene{right:-5%;width:67%;height:90%;top:0}
.cinematic-home .architecture,.cinematic-home .scroll-showcase{max-width:none;padding:0 5%;margin:0;background:#080b0a}.cinematic-home .architecture-story{margin:0}.cinematic-home .scroll-story{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:0}.cinematic-home .story-step{height:100svh;min-height:620px;padding:90px 0;scroll-snap-align:start;scroll-margin-top:0;border:0;justify-content:center}.cinematic-home .story-step h2,.cinematic-home .story-step h3{font-size:clamp(48px,6vw,96px);font-weight:500;max-width:580px;margin-bottom:25px}.cinematic-home .story-step>p{max-width:330px;font-size:18px;line-height:1.6;margin-bottom:30px}.cinematic-home .story-step .chapter-intro{font-size:21px}.cinematic-home .story-step>span{color:#8aa995}.cinematic-home .story-visual{top:0;height:100svh;min-height:620px;max-height:none;overflow:visible}.cinematic-home .story-visual .scene-surface{inset:8% -5% 9% -12%;width:auto}.cinematic-home .studio-heading{top:50px}.cinematic-home .studio-footer{bottom:50px}.cinematic-home .studio-heading,.cinematic-home .studio-footer{left:0;right:0}.cinematic-home .story-progress{left:0;right:0;bottom:35px;height:1px}
.cinema-design{display:grid;grid-template-columns:1fr 1.3fr;padding:0 5%;position:relative}.design-scroll-copy{grid-area:1/1}.design-scroll-step{height:100svh;min-height:620px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;scroll-snap-align:start}.design-scroll-step h2{font-size:clamp(50px,6.5vw,100px);font-weight:500;letter-spacing:-.06em;margin:35px 0 20px}.design-scroll-step p{color:#a5b5ab;margin:0 0 30px;font-size:18px}.cinema-design .particle-stage{grid-area:1/2;position:sticky;top:0;height:100svh;min-height:620px;padding:0}.cinema-design .visual-caption{bottom:50px}
.cinema-panel{position:relative;min-height:100svh;max-width:1600px;margin:auto;padding:80px 5%;display:flex;flex-direction:column;justify-content:center;scroll-snap-align:start;overflow:hidden;isolation:isolate}.cinema-panel h2{font-size:clamp(72px,10vw,155px);line-height:1.02;letter-spacing:-.065em;font-weight:500;margin:45px 0}.cinema-panel h2>span{color:#91a89a}.panel-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;max-width:850px}.panel-bottom p{color:#9baaa0}.modality-orbit{position:absolute;width:50vw;height:50vw;right:-10%;top:15%;z-index:-1;transform:rotate(-25deg)}.modality-orbit i{position:absolute;inset:0;border:1px solid #8db69e38;border-radius:50%;animation:orbit-breathe 10s ease-in-out infinite}.modality-orbit i:nth-child(2){inset:12%;animation-delay:-3s}.modality-orbit i:nth-child(3){inset:24%;animation-delay:-6s}@keyframes orbit-breathe{50%{transform:scale(.88) rotate(35deg);border-radius:35% 50% 40% 50%}}
.cinematic-home .amber-portrait{height:100svh;min-height:550px;max-width:none;margin:0;scroll-snap-align:start}.cinematic-home .film-caption{bottom:50px}.access-panel h2{font-size:clamp(64px,8vw,120px)}.access-links{display:grid;grid-template-columns:1fr 1fr;gap:0 50px;max-width:950px}.access-links a{display:flex;justify-content:space-between;padding:20px 0;border-bottom:1px solid var(--line);font-size:20px}.access-links a:hover{color:#a2c6b0}
@media(max-width:900px){.cinematic-home .hero{height:calc(100svh - 76px);min-height:720px}.cinematic-home .hero h1{font-size:clamp(53px,8vw,80px)}.cinematic-home .hero-content{padding-top:95px}.cinematic-home .scroll-story{display:grid;grid-template-columns:1fr}.cinematic-home .story-visual{grid-area:1/1;top:0;height:53svh;min-height:300px;max-height:520px;background:#080b0a;overflow:hidden;z-index:4;box-shadow:none}.cinematic-home .story-copy{grid-area:1/1;padding-top:0}.cinematic-home .story-step{height:100svh;min-height:680px;padding:55svh 0 40px;justify-content:flex-start}.cinematic-home .story-step h2,.cinematic-home .story-step h3{font-size:clamp(44px,7vw,64px);margin-bottom:16px;max-width:100%}.cinematic-home .story-step>span{margin-bottom:15px}.cinematic-home .story-step>p{font-size:16px;margin-bottom:18px;max-width:90%}.cinematic-home .story-visual .scene-surface{inset:30px -3% 20px;width:auto}.cinematic-home .studio-heading{top:20px}.cinematic-home .studio-footer{bottom:12px;font-size:9px}.cinematic-home .story-progress{bottom:0}.cinema-design{grid-template-columns:1fr}.cinema-design .particle-stage{grid-area:1/1;height:52svh;min-height:300px;max-height:520px;background:#080b0a;z-index:3}.design-scroll-copy{grid-area:1/1}.design-scroll-step{height:100svh;min-height:680px;padding-top:54svh;justify-content:flex-start}.design-scroll-step h2{font-size:clamp(45px,8vw,72px);margin:20px 0 18px}.design-scroll-step p{font-size:16px}.cinema-design .visual-caption{bottom:10px}.cinema-panel{padding:55px 6%;min-height:100svh}.cinema-panel h2{font-size:clamp(67px,12vw,115px)}.cinematic-home .hero .hero-scene{width:100%;right:-15%;height:55%;top:auto;bottom:0;opacity:.85}.cinematic-home .hero-actions{gap:20px}.cinematic-home .hero-watermark{bottom:35px}.cinematic-home .hero .scroll-hint{bottom:25px}.cinematic-home .amber-portrait{min-height:600px}.cinematic-home .film-caption{bottom:60px}.panel-bottom{align-items:flex-start;flex-direction:column;gap:5px}.access-links{grid-template-columns:1fr;gap:0}.access-links a{font-size:18px;padding:15px 0}.modality-orbit{width:95vw;height:95vw;right:-30%;top:25%}}
@media(prefers-reduced-motion:reduce){html:has(.cinematic-home){scroll-snap-type:none}.modality-orbit i{animation:none}}

.cinematic-home .ambient-code{display:none}.cinematic-home .studio-heading{top:120px}.cinematic-home .scroll-hint{display:none}.cinematic-home .hero-watermark{opacity:.45}
@media(max-width:900px){.cinematic-home .studio-heading{top:92px}.cinematic-home .story-visual .scene-surface{inset:95px -3% 20px}.cinematic-home .hero-content{position:relative;z-index:2}}
@media(min-width:901px){.cinematic-home .hero h1{font-size:clamp(54px,6vw,96px)}.cinematic-home .film-caption{bottom:85px}.cinematic-home .studio-footer{bottom:75px}}
/* Continuous art direction: one pinned composition, no forced page snapping. */
html:has(.kinetic-home){scroll-snap-type:none;scroll-padding-top:88px}.kinetic-home{background:#050909}.kinetic-home canvas{display:block;width:100%;height:100%}.kinetic-opening{height:calc(100svh - 88px);min-height:630px;position:relative;overflow:hidden;isolation:isolate}.opening-meta{position:absolute;top:24px;left:5%;right:5%;display:flex;justify-content:space-between;font:12px/1.4 monospace;letter-spacing:.15em;color:#8bab9d}.kinetic-opening h1{position:absolute;inset:12% 0 auto;margin:0;text-align:center;font-size:clamp(90px,19.6vw,350px);letter-spacing:-.08em;font-weight:500;line-height:1;z-index:1;pointer-events:none}.kinetic-opening h1 span{color:#719c88}.opening-sculpture{position:absolute;inset:16% 9% -13%;z-index:2;background:radial-gradient(ellipse at 50% 50%,#18372c24,transparent 62%);pointer-events:none}.opening-scroll{position:absolute;bottom:30px;left:5%;font:12px/1.4 monospace;letter-spacing:.1em;color:#b7c9bf;z-index:3}.opening-scroll span{margin-left:30px}
.flow-sequence{position:relative;height:340svh;background:radial-gradient(ellipse at 64% 50%,#143b2924,transparent 62%),#050909}.flow-viewport{position:sticky;top:0;height:100svh;min-height:550px;overflow:hidden;isolation:isolate}.flow-art{position:absolute;inset:0 0 0 10%;z-index:0}.flow-titles{position:absolute;inset:0;pointer-events:none;z-index:1}.flow-title{position:absolute;left:5%;bottom:16%;opacity:0;visibility:hidden;will-change:transform,opacity}.flow-title:first-child{opacity:1;visibility:visible}.flow-title>span{display:block;font:12px/1.5 monospace;letter-spacing:.15em;color:#7caa94;margin-bottom:24px}.flow-title h2{font-size:clamp(50px,7.6vw,115px);font-weight:500;line-height:.99;letter-spacing:-.06em;margin:0;max-width:600px}.flow-title h2 em{font-style:normal;color:#91ab9d}.flow-index{position:absolute;bottom:45px;left:5%;right:5%;display:flex;align-items:center;gap:28px;font:12px/1 monospace;letter-spacing:.12em;color:#91a99c}.flow-track{flex:1;height:1px;background:#9bbb9e25}.flow-track i{display:block;height:100%;width:25%;background:#acd6bd}.flow-index>span:last-child{margin-right:160px}.kinetic-type{height:82svh;min-height:520px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:35px;position:relative;text-align:center;padding:50px 5%;background:radial-gradient(ellipse at 50% 80%,#16423722,transparent 64%)}.kinetic-type h2{font-size:clamp(65px,10vw,150px);line-height:1.05;font-weight:500;letter-spacing:-.065em}.kinetic-type h2 span{color:#80998b}.kinetic-type>a{font-size:15px;color:#bdd4c6;border-bottom:1px solid #a7c4b747;padding-bottom:8px}.kinetic-home .amber-portrait{height:85svh;min-height:520px;border:0;margin:0;background:#050909}.kinetic-home .film-caption{bottom:30px;font-size:11px;right:18%}.kinetic-end{min-height:65svh;display:flex;flex-direction:column;justify-content:center;padding:65px 5% 95px;gap:45px}.kinetic-end h2{font-size:clamp(72px,18.5vw,290px);font-weight:500;letter-spacing:-.08em;line-height:1}.end-links{display:flex;gap:50px;flex-wrap:wrap;font-size:16px;color:#afc6b8}body:has(.kinetic-home)>footer{padding-top:25px;padding-bottom:20px}body:has(.kinetic-home)>footer .footer-top{display:none}body:has(.kinetic-home)>footer .footer-bottom{margin-top:0;border:0}body:has(.kinetic-home)>footer .footer-bottom>span:nth-child(2){display:none}body:has(.kinetic-home) .header-cta{display:none}body:has(.kinetic-home) .header{border-color:#aecab116;background:#050909dc;backdrop-filter:blur(15px)}body:has(.kinetic-home) .header .brand-small{display:none}body:has(.kinetic-home) .header nav{gap:28px}.motion-master{font-size:12px;min-height:30px;padding:3px 8px;bottom:15px;opacity:.65}.motion-master:hover,.motion-master:focus-visible{opacity:1}
[data-compute-art]{overflow:hidden}[data-compute-art] canvas{opacity:0;transition:opacity .5s}[data-compute-art].art-ready canvas{opacity:1}
@media(max-width:800px){.kinetic-opening{height:calc(100svh - 76px);min-height:560px}.kinetic-opening h1{top:18%;font-size:20vw}.opening-sculpture{inset:26% -18% -3%}.opening-meta{font-size:10px}.opening-scroll{bottom:35px;font-size:11px}.flow-sequence{height:320svh}.flow-viewport{min-height:600px}.flow-art{inset:5% -13% 18%}.flow-title{bottom:15%;left:6%}.flow-title h2{font-size:clamp(46px,11vw,80px);max-width:95%}.flow-title>span{font-size:11px;margin-bottom:18px}.flow-index{bottom:65px;left:6%;right:6%;gap:16px;font-size:10px}.flow-index>span:last-child{margin-right:0}.kinetic-type{min-height:480px;height:75svh}.kinetic-type h2{font-size:clamp(48px,10.5vw,84px)}.kinetic-type .eyebrow{font-size:11px}.kinetic-home .amber-portrait{height:80svh;min-height:530px}.kinetic-home .film-caption{font-size:9px;bottom:60px;left:6%;right:6%;gap:15px}.kinetic-home .film-caption>span:last-child{max-width:45%}.kinetic-end{min-height:55svh;padding:50px 6% 90px;gap:35px}.end-links{display:grid;grid-template-columns:1fr 1fr;gap:23px;font-size:14px}.kinetic-end h2{font-size:18.4vw}.kinetic-home .eyebrow{letter-spacing:.1em}}
@media(prefers-reduced-motion:reduce){[data-compute-art] canvas{transition:none}}
.study-surface{position:relative;overflow:hidden}.study-surface canvas{width:100%;height:100%;display:block}.story-visual .study-surface{position:absolute;inset:50px 0 54px;width:100%;height:auto;min-height:0}.study-surface.hero-scene{position:absolute!important}.study-surface.phase-scene{height:225px}

html:has(.kinetic-home){scroll-padding-top:0}.flow-title p{font-size:14px;line-height:1.5;margin:22px 0 0;color:#96aea0;letter-spacing:.02em}.kinetic-home .flow-title{bottom:17%}@media(max-width:800px){.flow-title p{font-size:12px;max-width:300px;margin-top:16px}.kinetic-home .flow-title{bottom:16%}}
/* One complete scene per viewport; models never overlap during transitions. */
html:has(.kinetic-home){scroll-snap-type:y proximity}.flow-sequence,.application-sequence{height:400svh;position:relative}.scene-stops{position:absolute;inset:0;pointer-events:none}.scene-stops>i{display:block;height:100svh;scroll-snap-align:start;scroll-snap-stop:normal}.flow-title{transition:none!important}.application-sequence{--scene-accent:#85c9b4;background:#050909}.application-viewport{position:sticky;top:0;height:100svh;min-height:600px;overflow:hidden;isolation:isolate}.application-copy{position:absolute;inset:0;z-index:2;pointer-events:none}.application-copy .story-step{position:absolute;left:5%;top:28%;height:auto;min-height:0;max-width:37%;padding:0;border:0;opacity:0;visibility:hidden;pointer-events:auto;display:block}.application-copy .story-step:first-child{visibility:visible;opacity:1}.application-copy .story-step h2{font-size:clamp(42px,5.8vw,90px);font-weight:500;letter-spacing:-.055em;line-height:1.05;color:var(--scene-accent);margin:20px 0 26px}.application-label{font:12px/1.5 monospace;letter-spacing:.13em;color:#9fb5a9}.application-note{max-width:410px;border-top:1px solid color-mix(in srgb,var(--scene-accent) 40%,transparent);padding:23px 0 0}.application-note>span{font:11px/1.4 monospace;letter-spacing:.15em;color:var(--scene-accent)}.application-note p{font-size:16px;color:#b9c4bf;line-height:1.75;margin:20px 0}.application-note a,.application-note small{font-size:13px;color:var(--scene-accent)}.application-art.scene-surface{position:absolute;inset:8% -2% 5% 39%;height:auto;min-height:0;width:auto;z-index:1;cursor:grab}.application-art.scene-loading canvas{opacity:0;transition:none}.application-art.scene-ready:not(.scene-loading) canvas{opacity:1;transition:none}.application-edges{position:absolute;left:3%;right:3%;top:115px;bottom:70px;border:0;pointer-events:none}.application-edges:before,.application-edges:after{content:'';position:absolute;width:58px;height:58px;border-color:var(--scene-accent);opacity:.4}.application-edges:before{left:0;top:0;border-style:solid;border-width:1px 0 0 1px}.application-edges:after{right:0;bottom:0;border-style:solid;border-width:0 1px 1px 0}.application-footer{position:absolute;bottom:40px;left:5%;right:5%;display:flex;gap:25px;justify-content:space-between;font:11px/1.5 monospace;color:#95aa9e}.application-footer #viewer-status{color:#738c80}.application-footer .story-count{margin-right:145px}.application-viewport>.story-progress{left:5%;right:5%;bottom:25px;height:1px}.application-viewport>.story-progress i{background:var(--scene-accent)}
.shannon-portrait{position:relative;margin:0;height:calc(100svh - 88px);min-height:460px;overflow:hidden;background:#050909;isolation:isolate;scroll-snap-align:start}.shannon-portrait img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}.portrait-scan{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 43%,#9afce010 49%,#d5fff91a 50%,#9afce008 52%,transparent 59%);background-size:100% 220%;mix-blend-mode:screen;animation:portrait-signal 13s linear infinite}.portrait-mobile-name{display:none}@keyframes portrait-signal{from{background-position:0 150%}to{background-position:0 -150%}}
@media(max-width:800px){.flow-sequence,.application-sequence{height:400svh}.application-art.scene-surface{inset:70px -8% 42%;min-height:0}.application-copy .story-step{top:58%;left:6%;right:6%;max-width:none;padding:0;height:auto;min-height:0}.application-copy .story-step h2{font-size:clamp(38px,10vw,60px);margin:9px 0 12px}.application-label{font-size:10px}.application-note{padding-top:12px;max-width:none}.application-note p{font-size:14px;line-height:1.5;margin:10px 0}.application-note>span{font-size:10px}.application-note a,.application-note small{font-size:12px}.application-edges{top:92px;bottom:65px;left:5%;right:5%}.application-edges:before,.application-edges:after{width:25px;height:25px}.application-footer{bottom:50px;left:6%;right:6%;font-size:9px}.application-footer #viewer-status{display:none}.application-footer .story-count{margin-right:0}.application-viewport>.story-progress{bottom:40px}.shannon-portrait{height:auto;min-height:0;aspect-ratio:1.2;display:flex;justify-content:center;align-items:center}.shannon-portrait img{width:190%;height:auto;max-width:none;flex-shrink:0}.portrait-mobile-name{display:block;position:absolute;bottom:16px;left:6%;font:10px/1.5 monospace;color:#8cac9c}}
@media(prefers-reduced-motion:reduce){html:has(.kinetic-home){scroll-snap-type:none}.portrait-scan{animation:none;display:none}}

/* Full-height character composition with a live signal field and integrated identity. */
.shannon-portrait{height:100svh;min-height:620px;padding-top:88px;box-sizing:border-box;scroll-margin-top:0}
.shannon-portrait img{height:100%;width:100%;object-fit:contain}
.portrait-signals{position:absolute;top:88px;left:0;width:100%;height:calc(100% - 88px);pointer-events:none}
.portrait-brand{position:absolute;left:4%;top:22%;font:500 clamp(30px,4.2vw,76px)/1 monospace;letter-spacing:-.07em;color:#c9e8df;z-index:2;margin:0;pointer-events:none}
.shannon-portrait.signals-ready .portrait-brand{opacity:0}
@media(max-width:800px){.shannon-portrait{height:100svh;min-height:620px;aspect-ratio:auto;padding-top:76px;display:block}.shannon-portrait img{position:absolute;top:25%;left:50%;transform:translateX(-50%);width:190%;height:auto;max-width:none}.portrait-signals{top:76px;height:calc(100% - 76px)}.portrait-brand{top:16%;left:6%;font-size:12vw;letter-spacing:-.07em}.portrait-mobile-name{bottom:12%;z-index:2}.portrait-scan{top:76px}}

/* Include the opening scene in native scroll snapping, so the first snap is the page top. */
.kinetic-opening{scroll-snap-align:start;scroll-margin-top:88px}@media(max-width:900px){.kinetic-opening{scroll-margin-top:76px}}

/* Precision studies: opaque surfaces, clear silhouettes, restrained motion. */
.application-sequence{--scene-accent:#a9cabe;background:#050909}
.application-viewport{background:radial-gradient(ellipse at 73% 48%,#27463835,transparent 56%)}
.application-sculpture{position:absolute;inset:8% -3% 7% 34%;z-index:1;overflow:hidden;pointer-events:none}
.application-sculpture canvas{display:block;width:100%;height:100%}
.application-copy .story-step{top:30%;max-width:31%}
.application-copy .story-step h2{color:#e0e9e2;font-size:clamp(40px,5vw,78px);font-weight:400;letter-spacing:-.06em;margin:20px 0 35px}
.application-label{color:#6f9684}.application-note{border-color:#87ad9940;padding-top:22px}
.application-note p{color:#99aaa2;font-size:15px;line-height:1.7;max-width:330px}
.application-note>span{font-size:10px;color:#96bfa9;letter-spacing:.12em}
.application-note a,.application-note small{color:#b4cdbf}.application-edges{display:none}
.application-footer{border-top:1px solid #719c8826;padding-top:18px;bottom:38px;color:#93b5a4}
.application-motion-label{font-size:10px;letter-spacing:.17em;color:#577266}
.application-viewport>.story-progress{bottom:22px;background:#57726622}
@media(max-width:800px){.application-sculpture{inset:78px -9% 39%}.application-copy .story-step{top:59%;left:6%;right:6%;max-width:none}.application-copy .story-step h2{font-size:42px;margin:10px 0 18px}.application-note{padding-top:13px}.application-note p{font-size:14px;line-height:1.5;margin:10px 0;max-width:340px}.application-motion-label{display:none}.application-footer{bottom:51px;padding-top:12px}.application-viewport>.story-progress{bottom:38px}}
