/* Spatial research exhibit; visual geometry carries no measured EEG power. */
:root{--ice:#8fffe9;--violet:#bda6ff}
body{background-color:#04070b;background-image:radial-gradient(ellipse at 80% 0,#12343045,transparent 50%);overflow-x:hidden}
nav{position:sticky;top:0;z-index:20;background:#05090dde;backdrop-filter:blur(18px);padding:18px 5vw}
#reading-progress{position:fixed;z-index:30;left:0;top:0;height:2px;background:var(--ice);box-shadow:0 0 12px var(--ice);width:0;pointer-events:none}
header{box-sizing:border-box;min-height:calc(100svh - 60px);overflow:visible;padding:60px 0 90px;display:flex;align-items:center}
.hero-copy{width:48%;position:relative;z-index:2;pointer-events:none}.hero-copy a{pointer-events:auto}.hero-copy h1{font-size:clamp(60px,7vw,112px);max-width:600px}.hero-copy p{font-size:16px;max-width:510px}.hero-copy .eyebrow{font-size:10px}.hero-copy .muted{font-size:11px}
.scene{position:absolute;right:-6vw;top:10px;width:66%;height:calc(100% - 40px);z-index:1;background:radial-gradient(ellipse,#0e292b36 0,transparent 67%)}
#scalp-space{width:100%;height:100%;display:block;touch-action:pan-y;cursor:grab}#scalp-space:active{cursor:grabbing}
.scene-label{position:absolute;top:24px;right:9%;font:9px/1.8 'IBM Plex Mono',monospace;letter-spacing:.15em;color:#789b9c;text-align:right;pointer-events:none}.scene-label b{color:var(--ice);font-weight:400;display:block}
.scene-controls{position:absolute;right:10%;bottom:22px;max-width:390px;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.scene-controls button{color:#9fb7bc;background:#091315c9;border:1px solid #28413f;padding:10px 13px;font:10px 'IBM Plex Mono',monospace;cursor:pointer;min-height:40px}.scene-controls button[aria-pressed=true]{color:var(--ice);border-color:var(--ice);background:#123a32c9}.scene-controls button:hover{border-color:var(--ice)}
#scene-caption{font:10px/1.6 'IBM Plex Mono',monospace;color:#a0b7bf;margin:0;text-align:right;flex-basis:100%;min-height:34px}
.scroll-cue{position:absolute;bottom:20px;left:0;color:#82a1a7;font:10px 'IBM Plex Mono',monospace;text-decoration:none;letter-spacing:.18em}.scroll-cue span{color:var(--ice);margin-left:18px}
.evidence-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#213631;border:1px solid #213631;margin-bottom:60px}.evidence-strip a{background:#07100f;padding:24px;text-decoration:none}.evidence-strip b{display:block;font-weight:400;font-size:clamp(28px,3vw,45px);line-height:1.3;letter-spacing:-.05em}.evidence-strip span{color:#839eaa;font:9px/1.5 'IBM Plex Mono',monospace;text-transform:uppercase;letter-spacing:.08em}
main>section{padding:90px 0;scroll-margin-top:95px}main>section h2{max-width:820px;font-size:clamp(32px,5vw,68px);line-height:1.12}.card{background:linear-gradient(145deg,#101e20,#080d13);min-height:230px;transition:border-color .3s,transform .4s;transform-style:preserve-3d}.card h3{font-size:27px}.card p{font-size:16px}.grid{perspective:1200px;gap:14px;border:0;background:none}.card:hover{transform:translateY(-7px);box-shadow:0 12px 40px #0008}.card strong{font-size:24px;line-height:1.2}
figure{background:#0b1419;padding:20px;box-shadow:0 30px 100px #0007}.table{border:1px solid #26383d}.button{background:#101d20a8}#paper{background:radial-gradient(ellipse at 85% 50%,#37285150,transparent 65%)}
a:focus-visible,button:focus-visible,canvas:focus-visible{outline:2px solid var(--violet);outline-offset:5px}
@media(max-width:1000px){.hero-copy{width:52%}.scene{right:-10%;width:70%}.scene-controls{right:10%;max-width:280px}.scene-label{right:15%}}
@media(max-width:700px){nav{position:relative;gap:14px;padding:18px 5vw}header{display:block;padding:45px 0 65px;min-height:0}.hero-copy{width:100%}.hero-copy h1{font-size:clamp(62px,15vw,90px)}.hero-copy p{font-size:16px}.scene{position:relative;right:auto;top:auto;width:110%;margin-left:-5%;height:460px}.scene-label{top:12px;right:8%;font-size:8px}.scene-controls{bottom:0;right:8%;left:8%;max-width:none;justify-content:center}#scene-caption{text-align:center}.scroll-cue{bottom:10px}.evidence-strip{grid-template-columns:1fr 1fr;margin-bottom:20px}.evidence-strip a{padding:20px}.grid{grid-template-columns:1fr}.card{min-height:0}main>section{padding:55px 0}figure{padding:8px}}
@media(prefers-reduced-motion:reduce){.card,.card:hover{transition:none;transform:none}.scroll-reveal{transform:none!important;transition:none!important}}
@media print{nav,.scene,.scroll-cue,#reading-progress{display:none}header{min-height:0;padding:20px 0}.hero-copy{width:100%}body{background:white;color:black}}
