@font-face{font-family:Inter;src:url(/3d-lab/tuna/fonts/inter-tight-400-800-latin.woff2?v=cd078966b4b3) format('woff2');font-weight:400 800;font-display:swap}
@font-face{font-family:Inter;src:url(/3d-lab/tuna/fonts/inter-tight-400-800-cyrillic.woff2?v=cd078966b4b3) format('woff2');font-weight:400 800;font-display:swap;unicode-range:U+0400-052F}
@font-face{font-family:Plex;src:url(/3d-lab/tuna/fonts/ibm-plex-mono-400-latin.woff2?v=cd078966b4b3) format('woff2');font-weight:400;font-display:swap}
:root{color-scheme:dark;--ink:#eff1e9;--muted:#acc6ca;--gold:#e3c67d;--line:rgba(201,228,226,.22);--pad:clamp(22px,3.8vw,72px)}
*{box-sizing:border-box}html,body{margin:0;background:#062633;color:var(--ink);font-family:Inter,Arial,sans-serif}body{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;border:0;cursor:pointer}button:disabled{cursor:default;opacity:.4}a{color:inherit;text-decoration:none}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,#gesture:focus-visible{outline:2px solid var(--gold);outline-offset:5px}button svg{display:block;pointer-events:none}.experience{position:relative;width:100%;height:100svh;min-height:540px;isolation:isolate;overflow:hidden}#world,.poster,.scrim,#gesture{position:absolute;inset:0}#world canvas{display:block;width:100%;height:100%}.poster{margin:0;background:#062633}.poster img{width:100%;height:100%;object-fit:cover}.ready .poster{visibility:hidden}.scrim{pointer-events:none;background:linear-gradient(90deg,rgba(2,22,30,.22),transparent 50%),linear-gradient(0deg,rgba(2,20,28,.75),transparent 25%,transparent 85%,rgba(2,18,25,.32))}#gesture{touch-action:none;cursor:grab;outline-offset:-8px}#gesture:active{cursor:grabbing}.interface{position:absolute;z-index:2;transition:opacity .4s,visibility .4s}.topbar{inset:29px var(--pad) auto;display:flex;align-items:center;justify-content:space-between;padding-bottom:25px;border-bottom:1px solid var(--line);gap:20px}.edition{font-size:9px;letter-spacing:2.6px;color:#bed1d1;margin-right:75px}.portfolio{font-size:12px;display:flex;align-items:center;gap:26px}.portfolio span{font-size:19px}.heading{top:clamp(132px,18vh,205px);left:var(--pad);pointer-events:none}.eyebrow{margin:0;font-size:9px;letter-spacing:2.3px;font-weight:500;display:flex;align-items:center;gap:12px}.small-line{width:29px;height:1px;background:var(--gold)}h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(58px,6.6vw,110px);font-weight:400;line-height:.96;letter-spacing:-5px;margin:26px 0 22px}h1 em{font-weight:400;color:#e2d7b6}h1 em,h2 em{font-family:Georgia,'Times New Roman',serif}.intro{font-size:12px;line-height:1.8;color:#c2d6d6;letter-spacing:.15px}.specimen{right:var(--pad);top:134px;display:flex;align-items:center;gap:13px}.species-dot{width:5px;height:5px;border-radius:50%;background:var(--gold)}.specimen>div{display:flex;flex-direction:column;gap:7px}.specimen div>span{font-size:8px;letter-spacing:1.8px}.specimen i{font-family:Georgia,serif;font-size:14px;color:#b4cbcd}.specimen button{background:transparent;border:1px solid var(--line);width:35px;height:35px;border-radius:50%;margin-left:10px;font-size:17px}.specimen button:hover{border-color:var(--gold);color:var(--gold)}.current{right:var(--pad);top:50%;display:flex;flex-direction:column;align-items:flex-end;gap:8px;pointer-events:none}.current svg{width:48px;stroke:var(--gold);stroke-width:.7;fill:none;margin-bottom:10px}.current>span{font-size:8px;letter-spacing:1.8px;color:#a9c6ca}.current strong{font-weight:400;font-size:12px}.scene-caption{bottom:168px;left:var(--pad);display:flex;align-items:center;gap:10px;font-size:9px;letter-spacing:1.1px;color:#c7dddb}.scene-caption>span:last-child{font-size:8px;letter-spacing:1.9px;color:#a2bec2}.live-dot{width:5px;height:5px;background:var(--gold);border-radius:50%;box-shadow:0 0 10px #e3c67d66}.caption-divider{opacity:.45;margin:0 4px}.deck{bottom:64px;left:var(--pad);right:var(--pad);height:76px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:30px}.view-switch{display:flex;align-items:center;gap:7px}.view-switch button{background:transparent;display:flex;align-items:center;gap:12px;padding:15px 22px;color:#b7cbcb;font-size:12px;border-radius:3px;transition:background .2s,color .2s}.view-switch button span{font-family:Plex,monospace;font-size:9px;opacity:.5}.view-switch button.active{background:#c9e0d613;color:#f1e8cd}.view-switch button.active span{opacity:1;color:var(--gold)}.view-switch button:hover{background:#c9e0d615;color:var(--ink)}.surge{display:flex;align-items:center;gap:12px;margin-left:auto;background:transparent;font-size:12px;min-width:163px;position:relative}.surge>svg{width:38px;height:38px;stroke:var(--gold);fill:none;stroke-width:1;transform:rotate(-90deg);margin-left:4px}.surge-track{opacity:.23}#surge-progress{stroke-dasharray:106.814;stroke-dashoffset:106.814}.surge-icon{color:var(--gold);font-size:24px}.surge:hover:not(:disabled){color:var(--gold)}.tools{display:flex;gap:8px;border-left:1px solid var(--line);padding-left:22px;margin-left:4px}.icon-button{width:42px;height:42px;border:1px solid transparent;background:transparent;border-radius:50%;display:grid;place-items:center}.icon-button:hover{border-color:var(--line);background:#c9e0d610}.icon-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.2;stroke-linejoin:round}.play-icon{display:none}[aria-pressed=true] .pause-icon{display:none}[aria-pressed=true] .play-icon{display:block}.underdeck{left:var(--pad);right:var(--pad);bottom:28px;display:flex;justify-content:space-between;align-items:center;font-size:9px;color:#9bb9bd;letter-spacing:.2px}.underdeck p{margin:0}.underdeck p span{margin:0 11px;opacity:.6}.underdeck>span{font-size:8px;letter-spacing:1.5px}#loading{position:absolute;left:50%;top:54%;transform:translate(-50%,-50%);font-size:11px;letter-spacing:1px;z-index:4}#loading span{display:block;width:100%;height:1px;background:var(--gold);margin-top:14px;transform-origin:left;animation:load 2s ease infinite}@keyframes load{0%{transform:scaleX(.1);opacity:.3}80%{transform:scaleX(1);opacity:1}100%{opacity:0}}.ready #loading,.failed #loading{display:none}#fallback,.no-script{position:absolute;bottom:192px;left:var(--pad);right:var(--pad);font-size:11px;color:var(--gold);z-index:3}.failed #gesture{pointer-events:none}.immersed .interface{opacity:0;visibility:hidden;pointer-events:none}#exit-immersive{position:absolute;right:var(--pad);bottom:30px;z-index:3;padding:13px 18px;background:#062633ba;border:1px solid var(--line);border-radius:3px;backdrop-filter:blur(12px);font-size:12px}#exit-immersive span{margin-left:20px}.immersed .scrim{opacity:.2}dialog{color:var(--ink);background:#0a2935;border:1px solid var(--line);width:min(580px,calc(100% - 32px));max-height:85svh;padding:48px;box-shadow:0 40px 100px #00141d88}dialog::backdrop{background:#011722aa;backdrop-filter:blur(12px)}.dialog-close{position:absolute;right:14px;top:10px;width:38px;height:38px;background:transparent;font-size:28px;font-weight:400}h2{font-family:Georgia,serif;font-size:49px;line-height:1.02;font-weight:400;letter-spacing:-1.7px;margin:28px 0}h2 em{color:var(--gold);font-weight:400}dialog p:not(.eyebrow){font-size:14px;line-height:1.75;color:#c0d2d2}dialog .source-note a{color:var(--gold)}dialog hr{border:0;border-top:1px solid var(--line);margin:29px 0}dialog h3{font-size:14px;font-weight:500}dialog .download{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);padding:17px 20px;font-size:13px;margin:25px 0}dialog .download:hover{border-color:var(--gold)}.download span{color:var(--gold);font-size:10px;font-family:Plex,monospace}dialog .dialog-help{font-size:11px!important;color:#92b0b5!important}.dialog-return{display:inline-block;margin-top:14px;font-size:12px;color:var(--gold)}
@media(min-width:1800px){.heading{top:21%}.specimen{top:155px}.scene-caption{bottom:180px}.deck{height:88px}.view-switch button{padding:18px 27px}}
@media(max-width:1100px){.edition{margin-right:0;font-size:8px;letter-spacing:1.5px}.view-switch button{padding:14px;gap:8px}.deck{gap:12px}.current{top:48%}.surge{min-width:145px}.heading h1{font-size:74px}.specimen div>span{font-size:7px}}
@media(max-width:760px){.edition{display:none}.topbar{top:23px;padding-bottom:19px}.heading{top:128px}h1,.heading h1{font-size:64px;letter-spacing:-3px;margin-top:20px}.intro{font-size:11px}.specimen{top:auto;bottom:214px;left:var(--pad);right:auto}.specimen div>span{font-size:7px}.specimen i{font-size:12px}.specimen button{width:31px;height:31px}.current{top:auto;bottom:215px}.current svg{display:none}.current strong{font-size:10px}.current>span{font-size:7px}.scene-caption{display:none}.deck{bottom:59px;height:129px;flex-wrap:wrap;justify-content:space-between;gap:0}.view-switch{width:100%;height:59px;justify-content:space-between;border-bottom:1px solid var(--line)}.view-switch button{padding:11px 14px;font-size:11px;gap:9px}.surge{margin-left:0;min-width:146px;height:58px;font-size:11px}.surge>svg{width:30px;height:30px}.tools{border:0;padding-left:0;margin-left:0;gap:7px}.icon-button{width:39px;height:39px}.underdeck{bottom:25px;justify-content:center}.underdeck>span{display:none}.underdeck p{font-size:8px}.underdeck p span{margin:0 6px}#fallback,.no-script{bottom:275px;font-size:10px}dialog{padding:35px 26px}dialog h2{font-size:43px}}
@media(max-width:420px){.portfolio{font-size:11px;gap:19px}.topbar{top:23px}.heading{top:113px}.heading h1{font-size:57px;letter-spacing:-2.7px}.eyebrow{font-size:7px;letter-spacing:1.8px;gap:9px}.small-line{width:19px}.intro{font-size:10px;line-height:1.6}.view-switch button{padding:10px 9px;font-size:10px;gap:7px}.view-switch button span{font-size:8px}.current>span{font-size:6px}.specimen{gap:9px}.specimen button{margin-left:3px;width:29px;height:29px}}
@media(max-height:660px) and (min-width:761px){.topbar{top:17px;padding-bottom:15px}.heading{top:110px}.heading h1{font-size:62px;margin:15px 0}.intro{font-size:10px}.specimen{top:112px}.deck{bottom:45px;height:64px}.underdeck{bottom:19px}.scene-caption{bottom:133px}}
.failed #world{display:none}
@media(max-width:760px){.scrim{background:linear-gradient(0deg,rgba(2,20,28,.89),rgba(2,20,28,.2) 30%,transparent 45%,transparent 82%,rgba(2,18,25,.24))}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

body{--scene-brand-surface:#0a3541}
