*{box-sizing:border-box}html,body{margin:0;background:#030405;color:#eee;font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif}a{color:inherit;text-decoration:none}header{position:fixed;z-index:10;top:0;left:0;width:100%;height:74px;padding:0 5%;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(#030405d9,transparent)}header>a{font-size:23px;font-weight:650;letter-spacing:-1px}header>a span{font-weight:300;margin-left:4px}nav{display:flex;gap:30px;font-size:12px;color:#aaa}.journey{height:650svh}.scene{height:100svh;position:sticky;top:0;overflow:hidden}canvas{display:block;width:100%;height:100%}.title{position:absolute;top:17%;left:7%;pointer-events:none}.title p{font-size:10px;letter-spacing:.2em;color:#7e8993}.title h1{font-size:clamp(42px,7vw,110px);letter-spacing:-.065em;font-weight:600;line-height:1.05;margin:16px 0;color:#f2f3f5;text-shadow:0 2px 30px #000}.readout{position:absolute;right:6%;top:19%;display:flex;flex-direction:column;align-items:flex-end;pointer-events:none}.readout>span{font-size:clamp(40px,6vw,88px);font-weight:250;letter-spacing:-.06em;font-variant-numeric:tabular-nums}.readout small{font-size:9px;letter-spacing:.2em;color:#7e8993}.bottom{position:absolute;bottom:95px;left:6%;right:6%;display:flex;align-items:center;gap:35px;color:#9aa0a7;font-size:10px}.bottom>span{white-space:nowrap}.track{height:1px;background:#ffffff25;flex:1}.track i{display:block;height:1px;background:#e5ebf2;width:var(--progress,0%)}.controls{position:fixed;bottom:25px;left:6%;right:6%;z-index:15;display:flex;gap:10px;align-items:center}.controls button,summary{font:11px inherit;color:#bbc4ce;background:#0b0e12c9;backdrop-filter:blur(16px);border:1px solid #ffffff25;border-radius:24px;padding:11px 17px;cursor:pointer}.controls button{font-family:inherit;font-size:11px}details{margin-left:auto;font-size:11px}summary{list-style:none}details[open]{position:absolute;right:0;bottom:0;width:min(410px,100%);border:1px solid #ffffff25;border-radius:18px;background:#10141a;padding:18px;line-height:1.7}details[open] summary{background:none;border:0;padding:0;color:#fff}details p{color:#9da8b4}details a{color:#c4dcf3}#status{position:absolute;left:50%;top:52%;transform:translate(-50%,-50%);color:#888;font-size:13px}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #d3e9ff;outline-offset:4px}@media(max-width:650px){header{height:64px}header>a{font-size:20px}nav{gap:18px;font-size:10px}.title{top:15%;left:6%}.title h1{font-size:48px}.readout{top:17%}.readout>span{font-size:45px}.bottom{gap:15px;bottom:88px;font-size:8px}.controls{bottom:22px}.title p{font-size:9px}.journey{height:550svh}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(max-width:650px){.title h1{font-size:38px}.readout>span{font-size:32px}.readout{top:18%}.controls button,summary{white-space:nowrap;padding:10px 13px}.title p{font-size:8px}}
.title h1{font-size:clamp(34px,5.5vw,82px);max-width:12ch}.title #concept{font-size:12px;letter-spacing:.025em;color:#a9b7c8}.title{top:13%}.readout{top:14%}details[open]{max-height:70svh;overflow:auto}@media(max-width:650px){.title h1{font-size:32px;max-width:10ch}.title #concept{font-size:10px}.title{top:13%}.readout{top:14%}.readout>span{font-size:28px}}
.journey{position:relative}.scene .controls{position:absolute}.title [data-part="concept"]{font-size:12px;letter-spacing:.025em;color:#a9b7c8}[data-part="status"]{position:absolute;left:50%;top:52%;transform:translate(-50%,-50%);color:#888;font-size:13px}.next-chapter{font-size:12px;color:#e8c67d;white-space:nowrap}.next-chapter[hidden]{display:none}@media(max-width:650px){.title [data-part="concept"]{font-size:10px}.next-chapter{position:absolute;bottom:55px;left:0}}
[data-guest="true"] .title [data-part="concept"]{color:#e9bd6b}
.structure-reveal{position:absolute;inset:0;background:#000;z-index:3;opacity:var(--reveal,0);display:flex;flex-direction:column;align-items:center;padding:90px 5% 105px;pointer-events:auto;transform:translateY(calc((1 - var(--reveal,0))*25px))}.structure-reveal[aria-hidden="true"]{pointer-events:none;visibility:hidden}.reveal-heading{text-align:center}.reveal-heading p{font-size:10px;letter-spacing:.22em;color:#8b99a9;margin:0 0 10px}.reveal-heading h2{font-size:clamp(30px,4.6vw,66px);letter-spacing:-.055em;margin:0 0 8px;line-height:1}.reveal-heading>span{font-size:11px;color:#929da8}.resolved-pair{display:grid;grid-template-columns:1fr 1fr;gap:3vw;width:100%;flex:1;min-height:0;max-width:1400px}.resolved-pair figure{margin:0;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.resolved-pair img{width:100%;height:calc(100% - 24px);min-height:0;object-fit:contain}.resolved-pair figcaption{font-size:11px;color:#b7c2cc;line-height:24px}.explore-resolved{font-size:12px;color:#e9bd6b;margin-top:12px}.scene:has(.structure-reveal)>.title,.scene:has(.structure-reveal)>.readout{opacity:calc(1 - var(--reveal,0))}.scene:has(.structure-reveal)>.controls,.scene:has(.structure-reveal)>.bottom{z-index:5}.xray-flash{position:absolute;inset:0;z-index:8;pointer-events:none;opacity:0;background:radial-gradient(ellipse at center,#d4eaff99,transparent 70%);display:grid;place-items:center}.xray-flash i{position:absolute;left:0;right:0;top:50%;height:2px;background:#fff;box-shadow:0 0 25px 8px #91c9ff,0 0 90px 20px #b6dfff}.xray-flash span{font-size:11px;letter-spacing:.3em;color:white;transform:translateY(-40px)}.xray-flash.fire{animation:xray-shot 750ms ease-out both}@keyframes xray-shot{0%{opacity:0}18%{opacity:.8}100%{opacity:0}}@media(max-width:650px){.structure-reveal{padding:85px 5% 108px}.resolved-pair{grid-template-columns:1fr;grid-template-rows:1fr 1fr;gap:7px}.reveal-heading h2{font-size:32px}.reveal-heading p{font-size:8px;margin-bottom:8px}.resolved-pair figcaption{font-size:10px;line-height:18px}.resolved-pair img{height:calc(100% - 18px)}.explore-resolved{margin-top:8px;font-size:11px}}@media(prefers-reduced-motion:reduce){.xray-flash.fire{animation:none}.structure-reveal{transform:none}}
.creation-backdrop{position:absolute;inset:0;pointer-events:none;opacity:var(--creation,1);overflow:hidden;background:#030405}.creation-backdrop img{width:100%;height:100%;object-fit:cover;object-position:40% 50%;filter:saturate(.55) brightness(.55);transform:scale(calc(1.03 + (1 - var(--creation,1))*.06))}.creation-backdrop::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#030405c9 0%,#03040542 32%,#03040535 58%,#030405f5 100%),radial-gradient(ellipse at 50% 52%,transparent 15%,#03040570 100%)}[data-creation] canvas{position:relative}[data-creation] .title,[data-creation] .readout,[data-creation] .bottom,[data-creation] .controls{z-index:2}[data-creation] .title p{color:#bbc1c6}[data-creation] .title h1{text-shadow:0 3px 26px #000}@media(max-width:650px){.creation-backdrop img{object-position:36% 50%;filter:saturate(.45) brightness(.6)}}@media(prefers-reduced-motion:reduce){.creation-backdrop img{transform:none}}
.molecule-facts{display:flex;justify-content:center;gap:45px;margin-top:16px}.molecule-facts>span{display:flex;flex-direction:column;gap:4px}.molecule-facts strong{font-size:clamp(23px,2.5vw,34px);font-weight:400;letter-spacing:-.045em;color:#f0cf8b}.molecule-facts small{font-size:9px;letter-spacing:.04em;color:#a3adb8}.floating-digitonin img{animation:digitonin-breathe 6s ease-in-out infinite;animation-play-state:paused;transform-origin:center}.structure-reveal[aria-hidden="false"] .floating-digitonin img{animation-play-state:running}.resolved-links{display:flex;align-items:center;gap:22px;margin-top:12px}.resolved-links>a{font-size:10px;color:#98a4b1}.resolved-links .explore-resolved{font-size:12px;color:#e9bd6b;margin:0}@keyframes digitonin-breathe{0%,100%{transform:translateY(4px) scale(1)}50%{transform:translateY(-7px) scale(1.045)}}@media(max-width:650px){.molecule-facts{gap:30px;margin-top:10px}.molecule-facts strong{font-size:23px}.molecule-facts small{font-size:8px}.resolved-links{margin-top:8px;gap:15px}}@media(prefers-reduced-motion:reduce){.floating-digitonin img{animation:none!important;transform:none!important}}
/* Narrative pacing: a brief bridge, a longer molecular reveal. */
.journey[data-creation]{height:480svh}#guest-assembly{height:310svh}#digitonin-assembly{height:740svh}.readout{display:none}.title h1{max-width:15ch}.title [data-part="concept"]{max-width:36ch;line-height:1.5}.title>p:first-child{font-size:9px;letter-spacing:.18em}.scene .next-chapter{position:absolute;left:0;bottom:57px;font-size:12px}.bottom{bottom:112px}.resolved-pair img{max-height:100%}@media(max-width:650px){.journey[data-creation]{height:440svh}#guest-assembly{height:280svh}#digitonin-assembly{height:700svh}.title h1{font-size:34px;max-width:14ch}.title>p:first-child{font-size:8px;letter-spacing:.13em}.scene .next-chapter{bottom:55px;font-size:11px}.bottom{bottom:108px}.structure-reveal{padding-bottom:125px}}
.scene:has(.structure-reveal)>.bottom{opacity:calc(1 - var(--reveal,0))}
/* Match the closing frame to the same restrained, left-aligned story. */
.structure-reveal{background:#030405;align-items:stretch;padding:13svh 7% 115px}.reveal-heading{text-align:left}.reveal-heading h2{font-size:clamp(34px,5.5vw,82px);font-weight:600;letter-spacing:-.065em}.reveal-heading p{font-size:9px;letter-spacing:.18em;color:#8b99a9}.molecule-facts{justify-content:flex-start;gap:35px;margin-top:14px}.molecule-facts strong{font-size:24px}.resolved-pair{gap:4vw;grid-template-columns:1.15fr 1fr}.floating-digitonin{order:-1}.resolved-molecule{width:100%;height:calc(100% - 24px);object-fit:contain;animation:digitonin-breathe 6s ease-in-out infinite;animation-play-state:paused}.structure-reveal[aria-hidden="false"] .resolved-molecule{animation-play-state:running}.resolved-links{justify-content:flex-start}.resolved-pair figure{overflow:hidden}@media(max-width:650px){.structure-reveal{padding:13svh 6% 116px}.reveal-heading h2{font-size:34px}.reveal-heading p{font-size:8px}.molecule-facts{gap:28px;margin-top:10px}.molecule-facts strong{font-size:22px}.resolved-pair{grid-template-columns:1fr;grid-template-rows:1fr 1fr;gap:4px}.resolved-molecule{height:calc(100% - 18px)}}@media(prefers-reduced-motion:reduce){.resolved-molecule{animation:none!important}}
.closeup-digitonin{order:-1}.closeup-viewport{width:100%;flex:1;min-height:0;position:relative;overflow:hidden}.resolved-pair .closeup-viewport img,.resolved-pair .closeup-viewport canvas{width:100%;height:100%;max-height:none;object-fit:contain;animation:none!important;transform-origin:center}.resolved-pair .closeup-viewport canvas{transform:none!important}.tour-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:8px}.tour-label{font-size:11px;color:#b8c5d0}.motion-toggle{background:transparent;border:1px solid #ffffff30;color:#c6d0da;border-radius:20px;font-size:10px;padding:7px 12px;cursor:pointer}.structure-reveal{padding-bottom:105px}.resolved-links{margin-top:9px}@media(max-width:650px){.structure-reveal{padding-top:85px;padding-bottom:106px}.molecule-facts strong{font-size:20px}.resolved-pair{margin-top:10px}.tour-controls{margin-top:6px}.tour-label{font-size:9px}.motion-toggle{font-size:9px;padding:5px 9px}.resolved-links>a,.resolved-links .explore-resolved{font-size:10px}}
#digitonin-assembly{height:960svh}.scroll-closeup{font-size:10px;color:#98a4b1}@media(max-width:650px){#digitonin-assembly{height:900svh}.scroll-closeup{font-size:9px}}
.gallery-header{height:auto;min-height:80px;padding:18px 5%;gap:18px 30px;flex-wrap:wrap;background:linear-gradient(#030405ed,#030405ad,transparent)}.gallery-header .gallery-brand{font-family:Georgia,serif;font-size:21px;font-weight:400;letter-spacing:-.6px;white-space:nowrap}.gallery-header .gallery-brand span{color:#b4a17b;font-weight:400}.gallery-header nav{flex-wrap:wrap;gap:10px 24px;font-family:Georgia,serif;font-size:15px;color:#a7a39b}.gallery-header nav a{padding:6px 0}.gallery-header nav a:hover,.gallery-header nav [aria-current]{color:#e9e5dc}.gallery-header nav [aria-current]{border-bottom:1px solid #b4a17b}@media(max-width:1100px){.gallery-header{justify-content:center;padding:12px 4%;gap:4px 20px}.gallery-header nav{justify-content:center;font-size:14px;gap:4px 18px}}@media(max-width:650px){.gallery-header .gallery-brand{font-size:18px}.gallery-header nav{font-size:12px;gap:2px 13px}.gallery-header{padding:9px 14px}.structure-reveal{padding-top:125px}.title{top:19%}}
