/* Light editorial shell. Dark, edge-free object stages are part of the imagery. */
:root{color-scheme:light;--paper:#fff;--ink:#20242a;--muted:#727b86;--line:#e4e7eb;--blue:#2675be}body{background:#fff;color:var(--ink)}header{background:#fffffff0;border-bottom:1px solid #eef0f2}.brand-name{color:#6e7782}.contact-nav{background:#202c3d}.research{background:#f6f7f9}.register-note{background:#f6f7f9}.chapter-nav{background:#fffffff0;border-color:#dce2ea;box-shadow:0 8px 28px #18233215}#chapter-links a[aria-current=true]{background:#293d58;color:white}.project-open:focus-visible,button:focus-visible,a:focus-visible,.scene-canvas:focus-visible{outline:2px solid #4e9de4;outline-offset:4px}
/* The opening scene is an assembly sequence, then a gentle scroll-led orbit. */
.hero{height:175svh}.hero-sticky{background:radial-gradient(ellipse at 50% 61%,#e9f0f6 0,#f7f9fc 34%,#fff 67%);min-height:570px}.hero-copy{top:4%;transform:translateY(calc(var(--hero-progress,0)*-35px));opacity:calc(1 - var(--hero-progress,0)*.85);z-index:3;pointer-events:none}.hero-copy h1{font-family:var(--mono);font-size:clamp(100px,12vw,180px);line-height:1;letter-spacing:-.12em;font-weight:700;color:#20242a}.hero-copy h1 span{font-size:.46em;vertical-align:top;display:inline-block;letter-spacing:-.04em;margin-top:.18em;margin-left:.12em;color:#5689b7}.hero-copy p{font-size:11px;letter-spacing:.02em;margin-top:8px;color:#727e8f}.hero-copy .circle-link{font-size:10px;margin-top:12px}.hero .eyebrow{top:23px;font-size:8px}.hero-art{inset:28% 9% 5%;height:auto;width:auto;transform:none;z-index:2}.hero-art canvas{width:100%;height:100%;display:block;opacity:0;transition:opacity 1s}.brain-ready .hero-art canvas{opacity:1}.label-human{top:49%;left:13%;color:#9a6d63}.label-machine{top:49%;bottom:auto;right:11%;color:#4886af}.label-human i{background:#bd9286}.label-machine i{background:#569ec6}.label-together{bottom:12%;left:0;right:0;justify-content:center;color:#9ba3ae;font-size:7px;letter-spacing:.18em}.art-controls{bottom:0;right:0;color:#7b8796}.art-controls button{background:white;border:1px solid #dce3eb;color:#57728d}.hero-foot{font-size:7px;color:#8793a1}.brain-fallback-art{font-size:130px;display:grid;place-items:center;height:100%;color:#7492b1}
/* Every project occupies one viewport while its story progresses beneath it. */
.project-card,.project-card:last-child:nth-child(odd){height:245svh;min-height:0;--scene-bg:#090d13;--scene-ink:#f2f5fa;--scene-sub:#9aa9bd;--detail-opacity:0;--detail-y:60px;--scene-blur:0px;--visual-opacity:1;--heading-opacity:1;--guide-opacity:1;background:var(--scene-bg)}
.project-card.interface-chapter{--scene-bg:#eef1f5;--scene-ink:#253447;--scene-sub:#75849a}.project-card.object-chapter{--scene-bg:#090d13}.project-stage-frame{min-height:570px;height:calc(100svh - 64px);background:var(--scene-bg);overflow:hidden}.project-heading{top:4.5%;opacity:var(--heading-opacity);transform:none}.project-kicker{font-size:8px;margin-bottom:12px}.project-card .project-heading h3,.project-card:last-child:nth-child(odd) h3{font-size:clamp(25px,3.1vw,44px);max-width:1000px;line-height:1.12}.project-heading .project-stage{font-size:9px;margin-top:9px}.project-visual{inset:19% 0 16%;overflow:visible;filter:blur(var(--scene-blur));opacity:var(--visual-opacity);transform:none;perspective:1600px}.object-chapter .project-visual{inset:16% 0 12%}.visual-object,.visual-object:not(:has(.webgl-host)){transform:none!important;opacity:1;filter:none!important}.scene-canvas{mask-image:radial-gradient(ellipse 85% 100% at 50% 45%,#000 55%,transparent 100%)}.scene-instructions{display:none}.reset-scene{top:12px;bottom:auto;right:4%;color:#9cacbe;background:#101a28a0;border-color:#ffffff18;padding:9px 13px;font-size:9px}.project-footer{bottom:67px;left:5%;right:5%;opacity:var(--guide-opacity)}.project-open,.project-card:last-child:nth-child(odd) .project-open{background:#ffffff16;color:#f3f6fb;border:1px solid #ffffff20;font-size:10px;padding:8px 8px 8px 14px;box-shadow:none}.project-open span{height:25px;width:25px;background:#c2dbfb;color:#213754;font-size:15px}.interface-chapter .project-open,.interface-chapter:last-child:nth-child(odd) .project-open{background:#fff;color:#34465d;border-color:#d9e1eb}.visual-caption{font-size:7px;max-width:270px;color:var(--scene-sub)}
.interaction-guide{position:absolute;bottom:70px;left:50%;transform:translateX(-50%);display:flex;gap:12px;align-items:center;justify-content:center;text-align:left;z-index:5;pointer-events:none;opacity:var(--guide-opacity);color:var(--scene-ink);white-space:nowrap}.interaction-guide b{font-weight:400;font-size:10px;display:block}.interaction-guide small{display:block;margin-top:7px;font-size:8px;color:var(--scene-sub)}.guide-pulse{width:7px;height:7px;border-radius:50%;background:#81baf0;box-shadow:0 0 0 0 #86bdf04d;animation:guide-pulse 2.3s ease-out infinite}.has-interacted .guide-pulse{animation:none;box-shadow:0 0 0 4px #86bdf016}.has-interacted .interaction-guide b{opacity:.6}@keyframes guide-pulse{0%{box-shadow:0 0 0 0 #86bdf066}75%,100%{box-shadow:0 0 0 12px #86bdf000}}.is-reading .project-footer,.is-reading .interaction-guide{pointer-events:none;visibility:hidden}
/* Scroll-revealed details live in the same chapter, over a frosted scene. */
.project-details{position:absolute;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;padding:28px 6% 74px;background:rgb(244 247 251 / calc(var(--detail-opacity)*.89));backdrop-filter:blur(var(--scene-blur));opacity:var(--detail-opacity);pointer-events:none}.is-reading .project-details{pointer-events:auto}.detail-sheet{width:min(960px,100%);max-height:100%;overflow-y:auto;overscroll-behavior:contain;padding:24px 30px 26px;transform:translateY(var(--detail-y));color:#263448;scrollbar-width:thin}.detail-top{display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:8px;color:#758397;letter-spacing:.06em;margin-bottom:19px}.detail-top button{font-size:9px;letter-spacing:0;border:1px solid #b8c4d4;border-radius:20px;padding:8px 13px;background:#ffffff70;color:#475d76}.project-card .project-details h3,.project-card:last-child:nth-child(odd) .project-details h3{font-size:clamp(25px,3vw,39px);line-height:1.1;margin:0;max-width:830px}.detail-stage{display:inline-block;font-size:8px;margin-top:14px;padding:6px 10px;background:#dfe7f1;color:#536b86;border-radius:20px}.project-card p.detail-question{font-size:clamp(15px,1.5vw,20px);line-height:1.5;max-width:870px;color:#34485f;margin:22px 0 24px;letter-spacing:-.025em}.detail-body{display:grid;grid-template-columns:1.3fr 1fr;gap:18px 36px}.detail-body h4{font-size:9px;letter-spacing:.07em;text-transform:uppercase;color:#6b7f98;margin:0 0 8px;font-weight:400}.project-card .detail-body p{font-size:11px;line-height:1.75;max-width:none;color:#56697e}.detail-limit{grid-column:1/-1;border-top:1px solid #c7d2df;padding-top:17px}.detail-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:23px;color:#5a7190;font-size:8px}.detail-bottom a{font-size:10px;color:#28659b}.detail-bottom span{font-size:7px;letter-spacing:.1em}.scene-progress{z-index:12}.scene-progress:after{background:#88a7cf}
/* Interface stage framing. */
.cabin-preview{transform:scale(.88)}.assistant-preview>.ui-window,.corpus-preview>.ui-window{transform:scale(.84) rotateY(-5deg) rotateX(2deg)}.ui-window{box-shadow:0 25px 55px #1c314528,4px 3px 0 #344050,5px 4px 0 #8d9ba9}.phone-device{box-shadow:5px 3px 0 #05080d,6px 4px 0 #606b7a,0 25px 40px #162b3b26}.interface-chapter .project-visual{display:flex;align-items:center;justify-content:center}.studio-concept{width:min(1120px,93%);margin:auto;position:relative;top:50%;transform:translateY(-50%) perspective(1600px) rotateX(3deg) rotateY(-3deg);border:1px solid #c1cbd8;background:#fff;border-radius:14px;box-shadow:0 35px 70px #253f5528,5px 5px 0 #d6dde7;overflow:hidden;color:#3b4a5f;font-family:var(--mono)}.studio-toolbar{height:46px;display:flex;align-items:center;gap:14px;padding:0 18px;background:linear-gradient(#fff,#f5f7fa);border-bottom:1px solid #e0e5ec;font-size:10px}.studio-app-mark{font-size:20px;font-weight:700;letter-spacing:-2px;color:#546b88}.studio-app-mark span{font-size:11px;vertical-align:top;letter-spacing:0}.studio-toolbar>b{font-size:10px;font-weight:400}.studio-demo-badge{font-size:6px;border:1px solid #c7d4e5;color:#6c86a5;border-radius:12px;padding:4px 7px}.studio-file{margin-left:auto;font-size:8px;color:#7b8b9f}.studio-workspace{display:grid;grid-template-columns:155px minmax(0,1fr) 165px}.studio-sidebar,.studio-inspector{background:#f6f8fa;padding:20px 15px;border-right:1px solid #e4e9ef;position:relative}.studio-label{font-size:7px;color:#8996a8;letter-spacing:.1em;display:block;margin-bottom:12px}.studio-sidebar>b{font-size:9px;font-weight:400;display:block;margin-bottom:28px}.recording{display:block;width:100%;text-align:left;font-size:8px;border-radius:7px;padding:10px 8px;margin-bottom:4px;color:#73849a}.recording.selected{background:#e5edf7;color:#3f638c}.recording i{width:5px;height:5px;background:#7da0c6;border-radius:50%;display:inline-block;margin-right:6px}.recording span{display:block;font-size:6px;padding:7px 0 0 12px;color:#95a3b5}.studio-sources{margin-top:25px}.studio-sources>span:not(.studio-label){display:block;font-size:6px;color:#8595a8;margin:10px 0}.studio-sources small{font-size:6px;color:#a5aebc}.source-status{font-size:5px;color:#769a93;position:absolute;bottom:16px;left:16px}.source-status i{display:inline-block;width:4px;height:4px;background:#8cb0a6;border-radius:50%;margin-right:5px}.studio-viewbar{height:44px;display:flex;align-items:center;justify-content:space-between;padding:0 15px;border-bottom:1px solid #e1e7ef}.studio-tabs{display:flex;gap:5px}.studio-tabs button{font-size:8px;padding:6px 11px;border-radius:6px;color:#8192a8}.studio-tabs button.selected{background:#e6edf6;color:#4e6b8f}.studio-viewbar>span{font-size:6px;color:#99a4b2}.studio-viewbar b{font-size:10px;margin-left:12px;font-weight:400}.studio-stimulus{position:relative;margin:14px;border-radius:6px;background:#142434;aspect-ratio:640/350;overflow:hidden;color:#9bb6c9;padding:22px 25px 27px}.stimulus-top{font-size:6px;display:flex;justify-content:space-between;letter-spacing:.07em;color:#8ca6bd}.stimulus-top span:last-child{font-size:5px;color:#55748b}.stimulus-top i{display:inline-block;width:4px;height:4px;background:#7eaa9c;border-radius:50%;margin-left:4px}.telemetry-ui{display:grid;grid-template-columns:1fr 1.4fr;gap:28px;margin-top:25px;height:75%}.telemetry-left{border:1px solid #4161764d;background:#20384b60;padding:16px;border-radius:5px}.telemetry-left>span{display:block;font-size:6px;color:#7a9bb4}.telemetry-left strong{font-weight:400;font-size:30px;color:#d1e3ed;margin-top:15px;display:block;letter-spacing:-.06em}.telemetry-left strong small{font-size:10px;margin-left:5px;color:#748fa5}.power-bars{height:55px;display:flex;gap:3px;align-items:flex-end;margin:5px 0 12px}.power-bars i{background:#7aaeb755;flex:1;border-radius:2px 2px 0 0}.telemetry-right{display:flex;flex-direction:column;gap:15px}.telemetry-right>div:first-child{border:1px solid #39596b55;padding:15px;border-radius:5px;flex:1}.telemetry-right>div:first-child>span{font-size:6px;color:#7893aa}.telemetry-right b{display:block;font-size:19px;font-weight:400;color:#aec9da;margin-top:10px}.telemetry-right svg{display:block;width:100%;height:45px;margin-top:10px}.telemetry-alert{padding:13px 10px;border:1px solid #b2986955;background:#a8874030;border-radius:5px;display:flex;align-items:center;gap:8px;font-size:7px;color:#d0b98c}.telemetry-alert small{display:block;font-size:4px;margin-top:5px;color:#aa956f}.telemetry-alert b{font-size:14px;margin:0 0 0 auto;color:#b6a073}.alert-mark{font-size:17px}.gaze-layer{position:absolute;inset:0;height:100%;width:100%;pointer-events:none}.heat-layer{opacity:0;transition:opacity .4s}.scan-layer{opacity:1;transition:opacity .4s}.show-heat .heat-layer{opacity:1}.show-heat .scan-layer{opacity:0}.stimulus-caption{position:absolute;left:25px;bottom:10px;font-size:5px;color:#738b9e}.studio-timeline{display:flex;gap:14px;padding:0 16px 16px;align-items:center}.studio-timeline>button{background:#edf2f7;border:1px solid #dce4ef;border-radius:50%;width:28px;height:28px;flex-shrink:0;font-size:10px;color:#6183a5}.timeline-controls{flex:1}.timeline-controls>div:first-child{display:flex;justify-content:space-between;align-items:center;font-size:6px;color:#8295aa}.timeline-controls output{color:#537fa9}.timeline-controls input{width:100%;height:10px;margin:9px 0 4px;accent-color:#7c9cbe;cursor:ew-resize}.event-track{display:flex;justify-content:space-between;font-size:5px;color:#9ca8b7}.studio-inspector{border-right:0;border-left:1px solid #e3e9f0}.studio-inspector>b{font-size:8px;font-weight:400;display:block}.aoi-preview{height:61px;border:1px solid #b2c5de;background:linear-gradient(135deg,#e7edf5,#d9e5f3);margin:14px 0;border-radius:4px;position:relative}.aoi-preview:after{content:'';position:absolute;inset:15px 22px;border:1px dashed #8eacce;background:#bbd1eb70}.studio-inspector>strong{font-size:8px;font-weight:400;display:block}.aoi-tag{font-size:5px;color:#7e97b3;margin-top:8px;display:block}.inspector-rule{height:1px;background:#e0e6ed;margin:22px 0}.studio-inspector p{font-size:7px;line-height:1.8;margin:10px 0;color:#75879a}.studio-inspector p i{font-style:normal;margin-right:6px;color:#8bac9f}.inspector-note{font-size:6px;line-height:1.7;color:#99a6b6;position:absolute;bottom:15px}.studio-statusbar{height:28px;border-top:1px solid #e0e7ef;padding:0 16px;display:flex;align-items:center;justify-content:space-between;font-size:6px;color:#8698ae;background:#fafbfd}.studio-statusbar b{font-weight:400}
/* Static reading keeps every project detail accessible with motion disabled. */
.motion-off .hero{height:auto}.motion-off .hero-copy{opacity:1;transform:none}.motion-off .project-card,.motion-off .project-card:last-child:nth-child(odd){height:auto;min-height:0}.motion-off .project-stage-frame{height:auto;min-height:0;padding-top:calc(100svh - 64px);overflow:visible}.motion-off .project-visual{top:140px;bottom:auto;height:calc(100svh - 270px);filter:none;opacity:1}.motion-off .project-heading{top:30px;opacity:1}.motion-off .project-footer{top:calc(100svh - 180px);bottom:auto;opacity:1}.motion-off .interaction-guide{top:calc(100svh - 180px);bottom:auto;opacity:1}.motion-off .project-details{position:relative;inset:auto;opacity:1;pointer-events:auto;display:block;background:#f2f5f9;backdrop-filter:none;padding:55px 6% 75px}.motion-off .detail-sheet{transform:none;margin:auto;max-height:none;overflow:visible}.motion-off .detail-top button{display:none}.motion-off .scene-progress{display:none}
@media(min-width:601px) and (max-height:800px){.assistant-preview>.ui-window,.corpus-preview>.ui-window{transform:scale(.73) rotateY(-4deg)}.cabin-preview{transform:scale(.82)}.studio-concept{width:min(900px,91%)}.studio-workspace{grid-template-columns:130px minmax(0,1fr) 140px}.studio-toolbar{height:38px}.studio-stimulus{margin:10px;padding:16px 20px 23px}.telemetry-ui{margin-top:18px;gap:18px}.telemetry-left{padding:12px}.telemetry-left strong{font-size:25px;margin-top:10px}.power-bars{height:40px;margin-top:0}.telemetry-right>div:first-child{padding:10px}.telemetry-right svg{height:30px;margin-top:5px}.telemetry-alert{padding:9px}.detail-sheet{padding-top:12px;padding-bottom:12px}.project-card p.detail-question{margin:17px 0;font-size:16px}.detail-body{gap:15px 30px}.project-card .detail-body p{font-size:10px}.detail-top{margin-bottom:15px}}
@media(max-width:900px){.interaction-guide{bottom:113px}.project-footer{bottom:65px}.studio-workspace{grid-template-columns:115px minmax(0,1fr)}.studio-inspector{display:none}.studio-file{font-size:6px}.hero-copy h1{font-size:130px}.hero-art{inset:30% 0 6%}.label-human{left:10%}.label-machine{right:8%}.detail-sheet{padding:20px 14px}.detail-body{gap:18px}.project-details{padding:25px 5% 76px}}
@media(max-width:600px){.hero{height:170svh}.hero-sticky{height:calc(100svh - 56px);min-height:620px}.hero .eyebrow{font-size:6px;top:22px}.hero-copy{top:9%}.hero-copy h1{font-size:122px;letter-spacing:-.12em}.hero-copy p{font-size:9px;padding:0;margin-top:15px}.hero-copy .circle-link{font-size:9px;margin-top:10px}.hero-art{inset:33% -6% 8%;transform:none}.label-human{left:10%;top:68%;font-size:6px}.label-machine{right:8%;top:68%;font-size:6px}.label-together{bottom:11%;font-size:5px}.art-controls{right:12%;bottom:0}.hero-foot{font-size:5px}.project-card,.project-card:last-child:nth-child(odd){height:235svh;min-height:0}.project-stage-frame{height:calc(100svh - 56px);min-height:610px}.project-heading{top:5%;left:6%;right:6%}.project-card .project-heading h3,.project-card:last-child:nth-child(odd) .project-heading h3{font-size:25px;line-height:1.17}.project-heading .project-stage{font-size:8px}.project-kicker{font-size:6px}.project-visual,.object-chapter .project-visual{inset:21% 0 22%}.reset-scene{top:0;bottom:auto;right:5%;font-size:7px;padding:6px 9px}.interaction-guide{bottom:120px;max-width:90%;width:max-content;white-space:normal;gap:10px}.interaction-guide b{font-size:8px;line-height:1.6;max-width:270px}.interaction-guide small{font-size:7px;margin-top:4px}.guide-pulse{flex-shrink:0;width:6px;height:6px}.project-footer{bottom:66px;left:6%;right:6%}.visual-caption{max-width:145px;font-size:6px}.project-open,.project-card:last-child:nth-child(odd) .project-open{font-size:8px;padding:7px 7px 7px 12px}.project-details{padding:15px 4% 74px;align-items:center}.detail-sheet{padding:10px 8px;max-height:100%;overflow:auto}.detail-top{font-size:6px;gap:8px;margin-bottom:17px}.detail-top button{font-size:7px;padding:7px 9px;white-space:nowrap}.project-card .project-details h3,.project-card:last-child:nth-child(odd) .project-details h3{font-size:25px}.detail-stage{font-size:7px;margin-top:12px}.project-card p.detail-question{font-size:13px;line-height:1.5;margin:17px 0}.detail-body{display:block}.detail-body>div{margin-bottom:15px}.detail-body h4{font-size:8px;margin-bottom:6px}.project-card .detail-body p{font-size:9px;line-height:1.7}.detail-limit{padding-top:13px}.detail-bottom{margin-top:17px;gap:9px}.detail-bottom a{font-size:8px}.detail-bottom span{font-size:5px}.studio-concept{width:94%;transform:translateY(-50%);border-radius:10px;box-shadow:0 15px 30px #253f5520,3px 3px 0 #d6dde7}.studio-toolbar{height:38px;padding:0 10px;gap:8px}.studio-app-mark{font-size:18px}.studio-toolbar>b{font-size:8px}.studio-demo-badge{font-size:4px;padding:4px;margin-left:auto}.studio-file{display:none}.studio-workspace{display:block}.studio-sidebar,.studio-inspector{display:none}.studio-viewbar{height:42px;padding:0 10px}.studio-tabs button{font-size:8px;padding:7px 10px}.studio-viewbar>span{font-size:5px}.studio-stimulus{margin:8px;padding:18px 12px 25px;aspect-ratio:1.25}.stimulus-top{font-size:5px}.stimulus-top span:last-child{font-size:4px}.telemetry-ui{gap:10px;margin-top:22px;height:75%;grid-template-columns:1fr 1.2fr}.telemetry-left{padding:10px}.telemetry-left>span{font-size:5px}.telemetry-left strong{font-size:25px;margin-top:18px}.power-bars{gap:2px;margin-top:15px}.telemetry-right>div:first-child{padding:10px}.telemetry-right>div:first-child>span{font-size:5px}.telemetry-right b{font-size:18px;margin-top:20px}.telemetry-right svg{height:30px}.telemetry-alert{font-size:5px;padding:10px 6px;gap:5px}.telemetry-alert small{font-size:3px;line-height:1.6}.stimulus-caption{left:13px;font-size:4px}.studio-timeline{padding:6px 12px 15px}.studio-statusbar{font-size:4px;padding:0 10px}.cabin-preview{transform:scale(.78);width:122%;margin-left:-11%}.assistant-preview>.ui-window,.corpus-preview>.ui-window{transform:scale(.92);width:98%}.assistant-chat{padding:15px}.assistant-chat h4{font-size:18px}.assistant-chat .concept-note{font-size:5px!important}.corpus-body{padding:17px 14px}.corpus-head h4{font-size:23px}.corpus-evidence{margin-top:14px}.corpus-table-row{padding:10px 5px}.motion-off .project-stage-frame{padding-top:calc(100svh - 56px)}.motion-off .project-visual{top:160px;height:calc(100svh - 360px)}.motion-off .interaction-guide{top:calc(100svh - 210px)}.motion-off .project-footer{top:calc(100svh - 155px)}.motion-off .project-details{padding:35px 5% 80px}}
@media(prefers-reduced-motion:reduce){.guide-pulse{animation:none}.hero-art canvas{transition:none}.hero-copy{transform:none;opacity:1}.hero{height:auto}.project-card,.project-card:last-child:nth-child(odd){height:auto}.project-details{scroll-behavior:auto}}
@media(min-width:601px){.studio-concept{width:min(1050px,92%,calc((100svh - 300px)*1.65))}.interaction-guide b{font-size:11px}.interaction-guide small{font-size:8px}}
.approach,.lab,.contact{min-height:calc(100svh - 64px)}
@media(max-width:600px){.approach,.lab,.contact{min-height:calc(100svh - 56px)}}
.motion-off .guide-pulse{animation:none}
