:root{--night-earth: #16120e;--olive-hide: #3a3b26;--clay: #a0623a;--dusk: #e08a4a;--fossil: #e6dcc6;--dust: #8e7d68;--font-display: "Young Serif", "Iowan Old Style", Georgia, serif;--font-text: "Recursive", ui-sans-serif, system-ui, sans-serif;--t-xs: .8125rem;--t-sm: 1.0625rem;--t-md: 1.3125rem;--t-lg: 1.6875rem;--t-xl: 2.0625rem;--t-hero: clamp(2.6rem, 7.5vw, 5.4rem);--gutter: clamp(16px, 5vw, 64px);--measure: 34ch;--line: color-mix(in srgb, var(--fossil) 16%, transparent);--ease: cubic-bezier(.22, .61, .36, 1)}*,*:before,*:after{box-sizing:border-box}html{background:var(--night-earth);color:var(--fossil);-webkit-text-size-adjust:100%}body{margin:0;background:var(--night-earth);font-family:var(--font-text);font-size:var(--t-sm);line-height:1.55;font-variation-settings:"CASL" 0,"MONO" 0;overflow-x:hidden}img,video{display:block;max-width:100%;height:auto}h1,h2,h3{font-family:var(--font-display);font-weight:400;line-height:1.05;margin:0;letter-spacing:-.01em}p{margin:0}:focus-visible{outline:2px solid var(--clay);outline-offset:3px}.specimen,.num{font-size:var(--t-xs);font-variation-settings:"CASL" .6,"MONO" 1;color:var(--dust);letter-spacing:.01em}.stage{position:fixed;inset:0;z-index:0;pointer-events:none}.stage canvas{display:block}.specimen-label{font-family:var(--font-text);font-size:12px;font-variation-settings:"CASL" .6,"MONO" 1;color:var(--fossil);white-space:nowrap;padding:3px 7px 3px 10px;border-left:1px solid var(--dusk);background:color-mix(in srgb,var(--night-earth) 70%,transparent);transform:translate(14px,-50%);transition:opacity .4s var(--ease)}.loader{position:fixed;left:var(--gutter);bottom:28px;z-index:5;width:min(260px,60vw);transition:opacity .8s var(--ease) .3s,visibility 0s linear 1.2s}.loader[data-done=true]{opacity:0;visibility:hidden}.loader-bar{margin-top:8px;height:1px;background:var(--line)}.loader-bar>div{height:100%;background:var(--fossil);transform-origin:left;transition:transform .2s linear}.topbar{position:fixed;inset:0 0 auto;z-index:6;display:flex;justify-content:space-between;align-items:center;padding:18px var(--gutter);pointer-events:none}.topbar button{pointer-events:auto;background:none;border:0;color:var(--fossil);cursor:pointer;font:inherit;padding:6px 0}.brand{font-family:var(--font-display)!important;font-size:var(--t-sm)!important}.sound{display:inline-flex;align-items:center;gap:8px;font-size:var(--t-xs)!important;font-variation-settings:"CASL" .6,"MONO" 1;color:var(--dust)!important}.sound[aria-pressed=true]{color:var(--fossil)!important}main{position:relative;z-index:1}.sec{position:relative}.sticky{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;padding:0 var(--gutter)}.panel{position:absolute;max-width:var(--measure)}.panel--left{left:var(--gutter);top:50%;transform:translateY(-50%)}.panel--low{top:auto;bottom:14vh;transform:none}.panel h2{font-size:var(--t-xl);margin-bottom:14px}.panel p{color:color-mix(in srgb,var(--fossil) 88%,transparent);text-shadow:0 1px 18px rgba(10,7,5,.9)}.panel h2{text-shadow:0 2px 24px rgba(10,7,5,.85)}.hero{position:absolute;left:var(--gutter);right:var(--gutter);bottom:12vh;max-width:40rem;opacity:calc(1 - var(--p, 0) * 1.6)}.hero h1{font-size:var(--t-hero);margin:10px 0 18px;text-shadow:0 2px 30px rgba(10,7,5,.8)}.hero .lede{font-size:var(--t-md);max-width:30ch;color:color-mix(in srgb,var(--fossil) 90%,transparent);text-shadow:0 1px 18px rgba(10,7,5,.9)}.hero .cue{margin-top:40px;font-size:var(--t-xs);font-variation-settings:"CASL" 1,"MONO" 0,"slnt" -10;color:var(--dust)}.hero .btn{margin-top:22px}.hero-still{position:absolute;inset:0;display:grid;place-items:center;opacity:.7}.hero-still img,.hero-still video{width:100%;height:100%;object-fit:cover}.stage-copy{position:absolute;top:0;left:0;width:var(--measure);max-width:calc(100vw - 2 * var(--gutter));transform:translateY(-50%);opacity:0;visibility:hidden;transition:opacity .6s var(--ease),visibility 0s linear .6s}.stage-copy[data-active=true]{opacity:1;visibility:visible;transition:opacity .6s var(--ease) .15s,visibility 0s}.xray{position:absolute;left:var(--gutter);right:var(--gutter);bottom:7vh;max-width:520px;margin:0 auto}.xray label{display:block;font-family:var(--font-display);font-size:var(--t-sm);margin-bottom:8px;text-align:center}.xray-row{display:flex;align-items:center;gap:14px}.xray-row span{font-size:var(--t-xs);font-variation-settings:"CASL" .6,"MONO" 1;color:var(--dust)}input[type=range]{flex:1;appearance:none;height:32px;background:transparent;cursor:ew-resize;touch-action:pan-y}input[type=range]::-webkit-slider-runnable-track{height:1px;background:var(--fossil);opacity:.6}input[type=range]::-moz-range-track{height:1px;background:var(--fossil);opacity:.6}input[type=range]::-webkit-slider-thumb{appearance:none;width:14px;height:26px;margin-top:-13px;border-radius:2px;background:var(--clay);border:1px solid var(--fossil)}input[type=range]::-moz-range-thumb{width:14px;height:26px;border-radius:2px;background:var(--clay);border:1px solid var(--fossil)}.btn{display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px;font:inherit;font-size:var(--t-sm);color:var(--fossil);background:color-mix(in srgb,var(--night-earth) 55%,transparent);border:1px solid color-mix(in srgb,var(--fossil) 40%,transparent);border-radius:3px;padding:11px 18px;cursor:pointer;backdrop-filter:blur(6px);transition:border-color .2s,background .2s}.btn:hover{border-color:var(--clay)}.btn:disabled{opacity:.6;cursor:progress}.btn small{font-size:var(--t-xs);color:var(--dust);font-variation-settings:"CASL" .6,"MONO" 1}.btn--hold{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:none;width:100%;padding:16px 18px}.btn--hold:active{background:color-mix(in srgb,var(--clay) 35%,var(--night-earth));border-color:var(--clay)}.game{position:absolute;right:var(--gutter);bottom:9vh;width:min(340px,calc(100vw - 2 * var(--gutter)));padding:18px;border-top:1px solid var(--line);background:linear-gradient(to bottom,color-mix(in srgb,var(--night-earth) 72%,transparent),color-mix(in srgb,var(--night-earth) 40%,transparent))}.game h3{font-size:var(--t-md);margin-bottom:14px}.game-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}.game-stats>div{display:flex;flex-direction:column}.game-stats .num{color:var(--fossil);font-size:var(--t-sm)}.game-time{height:1px;background:var(--line);margin-bottom:14px}.game-time>div{height:100%;background:var(--dusk);transform-origin:left;transform:scaleX(0)}.game-result{margin-bottom:14px;font-size:var(--t-sm)}.ar{margin-top:22px}.note{margin-top:8px;font-size:var(--t-xs);color:var(--dust)}.sec--behind{background:var(--night-earth);border-top:1px solid var(--line)}.behind{max-width:1180px;margin:0 auto;padding:16vh var(--gutter) 10vh;display:grid;gap:56px}.behind-head h2{font-size:clamp(2.2rem,5vw,3.6rem);margin-bottom:10px}.g{margin:0}.g img{width:100%;background:#0f0c09}.g figcaption{margin-top:10px}.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:28px 40px}.step h3{font-size:var(--t-md);margin-bottom:8px}.step p{color:color-mix(in srgb,var(--fossil) 82%,transparent)}.g-pair{display:grid;grid-template-columns:5fr 7fr;gap:28px;align-items:end}.credits{border-top:1px solid var(--line);padding-top:28px;display:grid;gap:18px}.contact ul{list-style:none;padding:0;margin:10px 0 0;display:flex;flex-wrap:wrap;gap:8px 24px}.contact a{color:var(--fossil);text-decoration-color:var(--clay);text-underline-offset:4px}@media(max-width:720px){.panel--left,.panel--low{left:var(--gutter);right:var(--gutter);top:auto;bottom:8vh;transform:none;max-width:none}.sec--anatomy .panel--left{bottom:22vh}.stage-copy{position:absolute;top:auto;bottom:0;width:100%;max-width:none;transform:none}.sticky:before{content:"";position:absolute;inset:auto 0 0;height:55%;background:linear-gradient(to top,rgba(22,18,14,.92),transparent);pointer-events:none}.panel h2{font-size:var(--t-lg)}.panel p{font-size:.97rem}.xray{bottom:4vh}.sec--walk .panel--left{top:76px;bottom:auto}.sec--walk .panel--left p{display:none}.game{left:var(--gutter);right:var(--gutter);width:auto;bottom:4vh;padding:14px 0 0;background:none}.g-pair{grid-template-columns:1fr}.behind{gap:40px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important}}
