@font-face{font-family:Studio;src:url('assets/studio.ttf') format('truetype');font-display:swap;font-weight:100 900}*{box-sizing:border-box} :root{--bg:#080b10;--fg:#f4f1e9;--muted:#a4a8ae;--accent:#d4ef97;--line:rgba(244,241,233,.17)}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--fg);font-family:Studio,Arial,sans-serif}body{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:6px}button{border:0}#world,.vignette,.grain{position:fixed;inset:0;width:100%;height:100%}#world{display:block;touch-action:none}.vignette{pointer-events:none;background:linear-gradient(90deg,rgba(8,11,16,.65),transparent 66%),linear-gradient(0deg,rgba(8,11,16,.95),transparent 22%,transparent 78%,rgba(8,11,16,.45))}.grain{pointer-events:none;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.5' filter='url(%23n)'/%3E%3C/svg%3E")}header{position:fixed;top:0;left:0;right:0;z-index:10;display:flex;align-items:center;gap:50px;padding:30px 4.2vw}.brand{font-size:34px;letter-spacing:-2px;font-weight:700;line-height:1}.brand span{font-weight:300}.brand i{font-size:13px;vertical-align:top;letter-spacing:0;font-style:normal;margin-left:4px}.header-caption{font-size:10px;line-height:1.5;letter-spacing:1.4px;color:var(--muted)}.header-actions{display:flex;align-items:center;gap:35px;margin-left:auto}.text-button{background:none;font-size:14px}.menu-mark{font-size:24px;vertical-align:middle;margin-left:12px}.contact-button{border:1px solid var(--line);padding:13px 18px;border-radius:40px;background:rgba(8,11,16,.2);font-size:14px}.contact-button span{margin-left:25px;color:var(--accent)}.contact-button:hover{border-color:var(--accent)}#experience{position:fixed;inset:0;pointer-events:none}.chapter-meta{position:absolute;top:130px;left:4.2vw;right:4.2vw;display:flex;align-items:center;gap:18px;font-size:10px;letter-spacing:2px;color:var(--muted)}.chapter-meta>span:last-child{margin-left:auto}.meta-rule{width:60px;height:1px;background:var(--line)}#story{position:absolute;left:8.2vw;top:50%;transform:translateY(-43%);width:min(49vw,770px);transition:opacity .22s,filter .22s;pointer-events:none}#story.changing{opacity:0;filter:blur(8px)}.eyebrow{font-size:11px;letter-spacing:2.1px;line-height:1.7;font-weight:400;color:var(--accent);margin:0 0 24px}h1{font-size:clamp(60px,7.5vw,132px);font-weight:400;line-height:.98;letter-spacing:-.064em;margin:0 0 30px;text-wrap:balance}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.065em}h1 em{color:var(--accent)}.intro{max-width:420px;color:#b9bbc1;font-size:16px;line-height:1.7;margin:0 0 26px}.primary{pointer-events:auto;display:inline-flex;align-items:center;gap:35px;background:var(--fg);color:#101319;border-radius:3px;padding:16px 19px;font-size:14px;transition:background .2s,transform .2s}.primary:hover{background:var(--accent);transform:translateY(-3px)}.button-arrow{font-size:22px;line-height:14px}.story-foot{font-size:9px;letter-spacing:1.6px;color:var(--muted);margin-top:25px;line-height:1.7}.artifact-label{position:absolute;right:7vw;bottom:24vh;display:flex;align-items:flex-start;gap:20px;font-size:10px;letter-spacing:1.6px}.cross{font-size:25px;color:var(--accent);font-weight:200;line-height:.7}.artifact-label small{display:block;margin-top:9px;color:var(--muted);font-size:11px;letter-spacing:0}.object-controls{position:absolute;right:7vw;bottom:17vh;display:flex;gap:8px;pointer-events:auto}.object-controls button{background:rgba(15,21,28,.5);border:1px solid var(--line);backdrop-filter:blur(12px);padding:10px 13px;border-radius:30px;font-size:11px;color:var(--muted)}.object-controls button:hover,.object-controls button[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}.scene-notice{position:absolute;right:7vw;top:155px;max-width:250px;font-size:12px;color:var(--muted);line-height:1.5}footer{position:fixed;z-index:10;bottom:32px;left:4.2vw;right:4.2vw;display:flex;align-items:center;justify-content:space-between;gap:20px}.journey-hint{display:flex;align-items:center;gap:14px;font-size:9px;letter-spacing:1.5px;width:190px}.journey-hint small{display:block;font-size:10px;letter-spacing:0;color:var(--muted);margin-top:6px}.scroll-track{width:17px;height:30px;border:1px solid #646b73;border-radius:12px;display:flex;justify-content:center;padding-top:6px}.scroll-track i{height:6px;width:2px;background:var(--accent);animation:scroll 2.5s infinite}@keyframes scroll{0%,100%{transform:translateY(0);opacity:.3}50%{transform:translateY(9px);opacity:1}}.chapter-nav{display:flex;align-items:center;gap:3px}.chapter-nav button{position:relative;background:none;width:44px;height:44px;font-size:10px;color:#888f99;border-radius:50%;transition:color .2s}.chapter-nav button:before{content:'';position:absolute;inset:3px;border:1px solid transparent;border-radius:50%;transition:border-color .2s}.chapter-nav button[aria-current=true]{color:var(--accent)}.chapter-nav button[aria-current=true]:before{border-color:var(--accent)}.chapter-nav button:hover{color:var(--fg)}.chapter-nav button:after{content:attr(data-label);position:absolute;bottom:54px;left:50%;transform:translateX(-50%);opacity:0;white-space:nowrap;font-size:11px;pointer-events:none}.chapter-nav button:hover:after{opacity:1}.settings{display:flex;align-items:center;gap:16px;justify-content:flex-end;width:190px}.settings button{background:none;display:flex;align-items:center;gap:10px;min-width:35px;min-height:40px;font-size:9px;letter-spacing:1px}.settings #motion{font-size:18px}.sound-bars{display:flex;align-items:center;gap:3px;height:18px}.sound-bars i{height:4px;width:2px;background:#b1b5bc}.sound-bars i:nth-child(2){height:12px}.sound-bars i:nth-child(3){height:8px}#sound[aria-pressed=true] i{background:var(--accent);animation:sound 1s ease-in-out infinite alternate}#sound[aria-pressed=true] i:nth-child(2){animation-delay:-.4s}#sound[aria-pressed=true] i:nth-child(3){animation-delay:-.7s}@keyframes sound{to{height:16px}}.progress-line{position:fixed;bottom:0;left:0;right:0;height:2px;background:var(--line)}.progress-line div{height:100%;width:0;background:var(--accent)}dialog{position:fixed;inset:0;margin:auto;max-height:90dvh;width:min(1000px,92vw);max-width:none;border:1px solid #303840;background:#11171d;color:var(--fg);padding:40px 50px;overflow-y:auto;box-shadow:0 35px 150px #0009}dialog::backdrop{background:rgba(3,7,12,.78);backdrop-filter:blur(16px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:30px}.dialog-top .eyebrow{margin:0}.close{background:none;font-size:32px;line-height:1;width:40px;height:40px;color:var(--muted)}.close:hover{color:var(--fg)}dialog h2{font-size:clamp(36px,5vw,72px);line-height:1.05;font-weight:400;letter-spacing:-.045em;margin:0 0 28px}dialog h2 em{color:var(--accent)}.detail-lead{font-size:18px;line-height:1.7;color:#b9c2cb;max-width:760px;margin-bottom:30px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:25px 0}.detail-grid article{border-top:1px solid var(--line);padding:22px 0}.detail-grid article .num{font-size:11px;color:var(--accent);letter-spacing:2px}h3{font-size:23px;line-height:1.25;font-weight:400;letter-spacing:-.02em;margin:14px 0}dialog p{color:#b2bdc7;font-size:15px;line-height:1.7}dialog .tag-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:15px}.tag-list span{border:1px solid var(--line);border-radius:20px;padding:6px 10px;font-size:11px;color:#c3cbd3}.external{display:inline-flex;align-items:center;gap:30px;border-bottom:1px solid var(--accent);padding:12px 0;color:var(--accent);font-size:14px}.external:hover{color:var(--fg)}.note{font-size:12px!important;color:#8997a3!important}.team-card{display:grid;grid-template-columns:125px 1fr;gap:25px;padding:30px 0;border-top:1px solid var(--line)}.team-card img{width:125px;height:160px;object-fit:cover;filter:grayscale(1);border-radius:2px}.team-card h3{margin:0 0 6px;font-size:30px}.team-card .eyebrow{font-size:9px;margin-bottom:14px}.metric{font-size:48px!important;color:var(--fg)!important;letter-spacing:-.06em;line-height:1.1!important;margin:12px 0!important}.lab-link{display:grid;grid-template-columns:36px 1fr 25px;gap:15px;align-items:center;border-top:1px solid var(--line);padding:18px 0}.lab-link>span:first-child{font-size:12px;color:var(--accent)}.lab-link h3{font-size:21px;margin:0 0 4px}.lab-link p{font-size:13px;margin:0}.lab-link:hover h3{color:var(--accent)}.pulse-demo{background:#080d12;padding:24px;border:1px solid var(--line);margin:24px 0}.pulse-top{display:flex;justify-content:space-between;align-items:center;gap:20px}.pulse-top strong{font-size:52px;letter-spacing:-3px;font-weight:400;color:var(--accent)}.pulse-top small{font-size:13px;color:#93a0ab;letter-spacing:0}.scan-track{height:3px;background:#29333b;margin:20px 0}.scan-track span{display:block;height:100%;background:var(--accent);width:0;transition:width .15s}.pulse-results{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pulse-results div{font-size:13px;line-height:1.6;border-top:1px solid var(--line);padding-top:12px}.pulse-results span{display:block;color:var(--accent);font-size:10px;letter-spacing:1px}.pulse-results .warn{color:#ffa77c}.contact-links{display:flex;gap:28px;flex-wrap:wrap}.process-list{counter-reset:step}.process-list article{display:grid;grid-template-columns:50px 1fr;gap:12px;padding:18px 0;border-top:1px solid var(--line)}.process-list article:before{counter-increment:step;content:'0' counter(step);font-size:12px;color:var(--accent);padding-top:17px}.process-list h3{margin:10px 0}.process-list p{margin:8px 0}#indexLinks{display:grid;grid-template-columns:1fr 1fr;column-gap:40px}#indexLinks button{display:flex;align-items:center;gap:25px;padding:18px 0;background:none;border-top:1px solid var(--line);text-align:left;font-size:22px}#indexLinks button span{font-size:11px;color:var(--muted)}#indexLinks button i{margin-left:auto;font-size:17px;font-style:normal;color:var(--accent)}#indexLinks button:hover{color:var(--accent)}.index-bottom{font-size:9px;letter-spacing:2px;margin:35px 0 0}.noscript{position:fixed;inset:0;padding:15vw;background:#080b10;z-index:99}.orbiting #story{opacity:.08;pointer-events:none}.orbiting #story button{pointer-events:none}.orbiting .artifact-label{opacity:0}body.paused *,body.reduced *{animation:none!important}.fallback #world{background:#0b1218 url('assets/studio-poster.webp') center/cover no-repeat;filter:brightness(.78) saturate(.9)}.fallback .scene-notice{max-width:min(320px,88vw);padding:14px 16px;background:rgba(9,19,28,.78);border-left:2px solid var(--accent);color:var(--fg);font-size:12px;line-height:1.55;backdrop-filter:blur(10px)}.fallback .journey-hint{width:auto}.fallback .object-controls{display:none}.fallback .artifact-label{display:none}
@media(min-width:1700px){#story{left:10vw}.intro{font-size:18px;max-width:460px}.artifact-label{right:12vw}.object-controls{right:12vw}}
@media(max-height:750px) and (min-width:761px){.chapter-meta{top:105px}h1{font-size:min(7vw,90px);margin-bottom:18px}.eyebrow{margin-bottom:15px}.intro{font-size:14px;margin-bottom:18px}.story-foot{margin-top:18px}#story{transform:translateY(-40%)}.artifact-label{bottom:24vh}}
@media(max-width:1000px){header{gap:25px}.header-caption{display:none}#story{left:6vw;width:55vw}.artifact-label{right:5vw;max-width:34vw}.settings{width:auto}.journey-hint{width:auto}.chapter-nav{gap:0}.chapter-nav button{width:35px}}
@media(max-width:760px){header{padding:24px 6vw}.brand{font-size:29px}.header-actions{gap:18px}.text-button{font-size:12px}.menu-mark{margin-left:5px}.contact-button{font-size:12px;padding:10px 12px}.contact-button span{margin-left:12px}.chapter-meta{top:90px;left:6vw;right:6vw;font-size:8px;letter-spacing:1px}.meta-rule{width:25px}#story{left:7vw;top:auto;bottom:145px;transform:none;width:85vw}h1{font-size:clamp(47px,10.8vw,78px);max-width:580px;margin-bottom:17px;line-height:.96}.eyebrow{font-size:9px;margin-bottom:15px;letter-spacing:1.3px}.intro{font-size:13px;line-height:1.6;max-width:330px;margin-bottom:17px}.intro br{display:none}.primary{padding:13px 16px;font-size:12px}.story-foot{display:none}.vignette{background:linear-gradient(0deg,#080b10 5%,rgba(8,11,16,.75) 36%,transparent 70%,rgba(8,11,16,.3))}.artifact-label{display:none}.object-controls{top:145px;bottom:auto;right:6vw;flex-direction:column;align-items:flex-end}.object-controls button{font-size:10px;padding:9px 11px;min-height:36px}.scene-notice{top:112px;right:6vw;font-size:10px;max-width:80vw}footer{left:5vw;right:5vw;bottom:26px;flex-wrap:wrap;gap:4px}.chapter-nav{order:-1;width:100%;justify-content:space-between;margin-bottom:12px}.chapter-nav button{width:35px;height:35px}.chapter-nav button:after{display:none}.journey-hint{font-size:8px;gap:8px}.scroll-track{height:22px;width:13px}.journey-hint small{display:none}.settings{gap:10px}.settings button{min-height:25px}.settings #motion{font-size:15px}dialog{width:94vw;padding:23px;max-height:93dvh}.detail-grid{grid-template-columns:1fr;gap:0}dialog h2{font-size:41px}.detail-lead{font-size:16px}.team-card{grid-template-columns:82px 1fr;gap:18px}.team-card img{width:82px;height:120px}.team-card h3{font-size:26px}.pulse-results{grid-template-columns:1fr}.pulse-demo{padding:17px}#indexLinks{grid-template-columns:1fr}#indexLinks button{font-size:21px;padding:14px 0}.lab-link h3{font-size:18px}.lab-link p{font-size:12px}}
@media(max-height:670px) and (max-width:760px){#story{bottom:130px}h1{font-size:44px}.intro{font-size:12px;max-width:300px;margin-bottom:12px}.eyebrow{margin-bottom:10px}.object-controls{top:120px}.chapter-meta{top:83px}.scene-notice{top:105px}.primary{padding:10px 14px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

@media(max-height:500px){.chapter-meta{display:none}#story{top:95px;bottom:85px;transform:none;overflow-y:auto;pointer-events:auto;width:60vw;padding-right:10px}h1{font-size:45px}.intro{font-size:12px}footer{bottom:14px}.story-foot{display:none}.object-controls{top:110px;bottom:auto}.artifact-label{display:none}header{padding-top:18px;padding-bottom:18px}}

/* The architecture occupies the screen. The interface is a small visitor guide. */
.vignette{background:linear-gradient(0deg,rgba(8,11,16,.86),transparent 33%,transparent 84%,rgba(8,11,16,.72))}.grain{opacity:.02}.artifact-label{display:none}.object-controls #orbit,.object-controls #explode{display:none}#story{top:auto;bottom:116px;left:4.2vw;transform:none;width:330px;padding:20px 22px;background:rgba(9,19,28,.7);border-left:2px solid var(--accent);backdrop-filter:blur(10px)}h1{font-size:38px;letter-spacing:-.04em;line-height:1.04;margin-bottom:13px}.intro{font-size:13px;line-height:1.6;margin-bottom:17px}.eyebrow{font-size:9px;letter-spacing:1.3px;margin-bottom:14px}.story-foot{display:none}.primary{padding:12px 16px;font-size:12px}.object-controls{bottom:125px;right:4.2vw}.object-controls #exitRoom{font-size:14px;padding:15px 21px;background:#15232e;color:#f4f1e9;border-color:#d2c0a0}.object-controls #exitRoom[hidden]{display:none}.scene-notice{top:160px}.chapter-meta{top:110px}.scene-notice:empty{display:none}.inside-room #story{border-color:var(--accent)}
@media(max-width:760px){#story{left:5vw;bottom:139px;width:65vw;max-width:310px;padding:13px 16px}h1{font-size:28px}.intro{font-size:11px;line-height:1.5;margin-bottom:12px}.eyebrow{font-size:8px;margin-bottom:10px}.primary{font-size:11px;padding:10px 12px}.chapter-meta{top:87px}.object-controls{top:120px;bottom:auto;right:5vw}.object-controls #exitRoom{font-size:12px;padding:11px 14px}.journey-hint{font-size:7px}.scene-notice{top:123px;font-size:11px}}@media(max-height:500px){#story{top:auto;bottom:85px;max-height:55vh;width:280px;overflow:auto}h1{font-size:28px}.intro{display:none}.object-controls{top:95px;bottom:auto}}
