/* Spatial compositions: real project images, no additional WebGL context. */
body.spatial{--paper:#f1f2ee;--carbon:#101619;background:#101619;color:#eff0ea}
.spatial nav{background:#101619e8!important;border-bottom:1px solid #ffffff25;backdrop-filter:blur(15px)}
.spatial.exhibition.studio.experience-home .hero.spatial-home{height:500svh;min-height:0;padding:0;display:block;overflow:visible;background:#101619}
.spatial.studio.experience-home .hero>.spatial-pin{display:block!important}
.spatial-pin{position:sticky;top:0;height:100svh;overflow:hidden;isolation:isolate;background:#101619;color:#f4f5ee;perspective:1200px;--scene-accent:#ff773f}
.spatial-light{position:absolute;inset:-20%;background:radial-gradient(ellipse at 65% 60%,#75949740,transparent 45%),linear-gradient(115deg,transparent 42%,#ffffff08 42.2%,transparent 70%);transform:rotate(-10deg)}
.spatial-axis{position:absolute;width:130vw;height:130vw;left:-15vw;top:25vh;border:1px solid #a5b1ae35;border-radius:50%;transform:rotateX(72deg);box-shadow:0 0 0 8vw #9daaa906,0 0 0 16vw #9daaa908}
.spatial-heading{position:absolute;inset:125px 4vw auto;z-index:7;pointer-events:none;will-change:transform,opacity}
.spatial-heading>p:first-child{font:10px var(--mono);letter-spacing:.15em;margin:0 0 5vh}
.spatial-heading h1{font:400 clamp(65px,15.5vw,290px)/.79 var(--sans);letter-spacing:-.075em;margin:0}
.spatial-heading h1>span{display:block}.spatial-heading h1>span+span{margin-left:13vw;color:transparent;-webkit-text-stroke:1px #f0f3e9}
.spatial-dot{color:#e8804c;-webkit-text-stroke:0}.spatial-intent{white-space:pre-line;font:400 clamp(20px,2.4vw,44px)/1.15 var(--sans);letter-spacing:-.035em;margin-top:8vh}
.spatial-world{position:absolute;inset:0;perspective:1400px;transform-style:preserve-3d}
.spatial-plane{position:absolute;inset:0;display:block;transform-origin:center;overflow:hidden;will-change:transform,opacity;box-shadow:0 35px 100px #0009;background:#101619}
.spatial-plane img{height:100%;width:100%;object-fit:cover}.plane-label{position:absolute;bottom:25px;left:25px;font:12px var(--mono);color:white}
.spatial-plane::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#071015c9,transparent 65%)}
.spatial-project-copy{position:absolute;z-index:10;inset:auto 4vw 17vh;pointer-events:none;opacity:0}
.spatial-category{font:12px var(--mono);text-transform:uppercase;letter-spacing:.1em}.spatial-project-copy h2{font:400 clamp(70px,14vw,260px)/.94 var(--sans);letter-spacing:-.075em;margin:20px 0 25px}
.spatial-enter{font:12px var(--mono);padding:15px 0;border-bottom:1px solid #fff9;display:inline-block;color:white}
.spatial-floor{position:absolute;z-index:15;inset:auto 4vw 35px;display:flex;justify-content:space-between;gap:20px;font:9px var(--mono);letter-spacing:.08em}
.spatial-floor button{color:inherit;font:inherit;border:0;background:none;cursor:pointer}.spatial-index{position:absolute;right:4vw;top:110px;display:flex;gap:20px;z-index:15}
.spatial-index button{color:#fff9;background:none;border:0;border-top:1px solid #fff5;min-width:55px;text-align:left;font:10px var(--mono);padding:10px 0;cursor:pointer}.spatial-index button span{display:block}.spatial-index button span+span{margin-top:8px;font-size:8px}.spatial-index button[aria-pressed=true]{color:white;border-color:var(--scene-accent)}
.spatial-progress{position:absolute;bottom:0;left:0;width:100%;height:3px;transform-origin:left;background:var(--scene-accent);z-index:20}
.spatial .spatial-project-summary>.project-scene{display:none!important}.spatial-summary-link{display:flex;align-items:center;gap:5vw;padding:35px 4vw;color:#eff0ea;border-top:1px solid #ffffff35}.spatial-summary-link strong{font:400 clamp(35px,7vw,100px)/1 var(--sans);letter-spacing:-.06em;flex:1}.spatial-summary-link>span{font:14px var(--mono)}
.spatial .spatial-project-summary{padding:0!important;margin:0!important;background:#101619!important}.spatial .projects-intro{background:#101619!important;color:#eff0ea!important}.spatial .projects-title{color:inherit!important}.spatial .projects-intro-text{color:#aebbbb!important}.spatial .ex-project-detail{background:#101619;color:#e2e8e7}.spatial .ex-project-detail summary{border-color:#ffffff30}
.spatial-hero-shell{height:180svh;background:#101619}.spatial.exhibition.experience-detail .spatial-hero-shell>.cs-hero,.spatial.exhibition.experience-detail .spatial-hero-shell>.bh-hero{position:sticky;top:0;height:100svh;min-height:0;overflow:hidden;--hero-progress:0}
.spatial-hero-shell .cs-hero-bg,.spatial-hero-shell .bh-hero-bg{transform:scale(calc(1 + var(--hero-progress)*.18))!important;clip-path:inset(calc(var(--hero-progress)*8%) calc(var(--hero-progress)*4%))}
.spatial-hero-shell .cs-hero-title,.spatial-hero-shell .bh-hero-title{transform:translateX(calc(var(--hero-progress)*-18vw))!important;letter-spacing:calc(-.06em + var(--hero-progress)*.01em)!important}
.spatial .cs-brief,.spatial .bh-brief{background:#172126;color:#eef2ed}.spatial .cs-sec:not(.ex-process-archive),.spatial .bh-sec:not(.ex-process-archive){background:#131b20;--ink:#f0f2ec;--ink-2:#c9d0ce;--ink-3:#a2b4b4;color:#e9edeb}
.spatial .cs-ht,.spatial .bh-ht{color:inherit}.spatial .cs-ht em,.spatial .bh-ht em{color:#a7b5b3}.spatial .cs-inner p,.spatial .bh-inner p{color:inherit}
.spatial .ex-drawing.spatial-drawing{height:400svh;background:#eef0eb;--drawing-progress:0;color:#152026}
.spatial .spatial-drawing .ex-drawing-pin{height:100svh;position:sticky;top:0;overflow:hidden;perspective:1100px;background:radial-gradient(ellipse at 50% 55%,#fff 10%,#e0e5df 90%)}
.spatial .spatial-drawing header{position:absolute;top:100px;left:4vw;right:4vw;z-index:30;display:block;padding:0;pointer-events:none}
.spatial .spatial-drawing header h2{font-size:clamp(40px,6vw,95px);letter-spacing:-.065em;max-width:80%;line-height:.98;margin:20px 0}
.spatial .spatial-drawing header p{position:absolute;right:0;top:40px;max-width:230px;font-size:12px}
.spatial .spatial-sheet-wall{position:absolute;inset:0;width:100%;height:100%;padding:0;overflow:visible;transform:none!important;perspective:1000px}
.spatial .spatial-sheet-wall figure:nth-child(n){position:absolute;top:34%;left:19%;width:62%;margin:0;transform:translate3d(var(--sheet-x,0),var(--sheet-y,0),var(--sheet-depth,0)) rotateY(var(--sheet-turn,0)) rotateZ(calc(var(--sheet-turn,0)*-.35));will-change:transform;transition:none}
.spatial .spatial-sheet-wall .ex-sketch-open{height:46svh;min-height:0;background:white;box-shadow:0 25px 60px #13271c26;padding:15px;display:block}.spatial .spatial-sheet-wall img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.spatial .spatial-sheet-wall figcaption{margin-top:18px;color:#24302a}
.spatial .ex-drawing-nav{z-index:35}.spatial .ex-process-archive{background:#f1f2ee!important}
.spatial-next-shell{height:175svh}.spatial .spatial-next-shell .ex-next{position:sticky;top:0;height:100svh;min-height:0;--next-progress:0}
.spatial .spatial-next-shell .ex-next>img{clip-path:inset(calc((1 - var(--next-progress))*18%) calc((1 - var(--next-progress))*15%));transform:scale(calc(.9 + var(--next-progress)*.1)) rotate(calc((1 - var(--next-progress))*-5deg))}.spatial .spatial-next-shell .ex-next h2{transform:translateX(calc((1 - var(--next-progress))*15vw));font-size:17vw}
.spatial .spatial-volume-intro{background:#111b21;color:#eff4ef;min-height:75svh;display:flex;flex-direction:column;justify-content:center}.spatial-volume-intro h2{max-width:950px}.spatial-volume-story{height:245svh;background:#e9e9e4}.spatial-volume-pin{position:sticky;top:0;height:100svh;overflow:hidden}.spatial.exhibition .spatial-volume-pin .th3d{height:100svh;margin:0;transform-origin:center}
.spatial-volume-veil{position:absolute;inset:0;background:#eef0ea;color:#152025;z-index:40;overflow:hidden}.spatial-volume-veil>img{position:absolute;inset:15% 0 0 20%;height:75%;width:75%;object-fit:contain;mix-blend-mode:multiply}.spatial-volume-veil>div{position:absolute;top:110px;left:4vw;pointer-events:none}.spatial-volume-veil span{font:11px var(--mono)}.spatial-volume-veil strong{display:block;font:400 clamp(60px,10vw,160px)/.95 var(--sans);letter-spacing:-.065em;white-space:pre-line;margin-top:30px}.spatial-volume-veil button{position:absolute;bottom:40px;left:4vw;font:12px var(--mono);padding:15px 0;border:0;border-bottom:1px solid currentColor;background:none;color:inherit;cursor:pointer}
@media(max-width:1050px){.spatial-volume-story{height:auto}.spatial-volume-pin{height:auto;position:relative;overflow:visible}.spatial .spatial-volume-veil{display:none}.spatial.exhibition .spatial-volume-pin .th3d{height:auto;opacity:1!important;transform:none!important}.spatial .spatial-drawing header p{display:none}}
@media(max-width:760px){.spatial.exhibition.studio.experience-home .hero.spatial-home{height:420svh}.spatial-heading{top:170px;left:5vw;right:5vw}.spatial-heading h1{font-size:18vw}.spatial-heading h1>span+span{margin-left:0}.spatial-heading>p:first-child{font-size:8px;max-width:180px;margin-bottom:30px}.spatial-intent{font-size:25px;margin-top:30px}.spatial-index{top:88px;right:5vw;left:5vw;justify-content:flex-end}.spatial-index button{min-width:45px}.spatial-floor{bottom:24px;font-size:8px}.spatial-floor>span:last-child{display:none}.spatial-project-copy{bottom:18vh;left:5vw}.spatial-project-copy h2{font-size:18vw}.spatial-category{font-size:10px}.plane-label{display:none}.spatial-hero-shell{height:150svh}.spatial .ex-drawing.spatial-drawing{height:300svh}.spatial .spatial-drawing header{top:100px}.spatial .spatial-drawing header h2{font-size:12vw;max-width:95%}.spatial .spatial-sheet-wall figure:nth-child(n){width:90%;left:5%;top:38%}.spatial .spatial-sheet-wall .ex-sketch-open{height:36svh;padding:8px}.spatial .spatial-sheet-wall figcaption{font-size:9px}.spatial .spatial-volume-intro{min-height:65svh}.spatial-next-shell{height:140svh}.spatial .spatial-next-shell .ex-next h2{font-size:18vw}.spatial-summary-link{padding:30px 5vw}.spatial .ex-drawing-nav{bottom:35px}}
@media(prefers-reduced-motion:reduce){.spatial.exhibition.studio.experience-home .hero.spatial-home{height:auto}.spatial-pin{height:auto;padding-top:130px;overflow:hidden}.spatial-heading{position:relative;inset:auto;margin:0 5vw;transform:none!important;opacity:1!important}.spatial-index,.spatial-explore,.spatial-project-copy{display:none}.spatial-world{position:relative;display:grid;gap:25px;margin:50px 5vw 90px;perspective:none}.spatial-plane{position:relative;height:60svh;transform:none!important;opacity:1!important;filter:none!important;pointer-events:auto!important}.spatial-hero-shell,.spatial-next-shell{height:auto}.spatial .ex-drawing.spatial-drawing{height:auto}.spatial .spatial-drawing .ex-drawing-pin{position:relative;height:auto;padding:100px 5vw 80px}.spatial .spatial-drawing header{position:relative;inset:auto}.spatial .spatial-sheet-wall{position:relative;display:grid;gap:50px;height:auto}.spatial .spatial-sheet-wall figure:nth-child(n){position:relative;inset:auto;width:100%;transform:none!important;opacity:1!important;pointer-events:auto!important}.spatial-volume-story{height:auto}.spatial-volume-pin{height:auto;position:relative;overflow:visible}.spatial-volume-veil{display:none}.spatial.exhibition .spatial-volume-pin .th3d{height:auto;min-height:100svh;opacity:1!important;transform:none!important}}
.spatial-volume-story{height:330svh}.spatial-volume-guide{position:absolute;left:4vw;right:350px;bottom:30px;z-index:45;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px;background:#e9e9e4e8;color:#152025;font:11px var(--mono)}.spatial-volume-guide[hidden]{display:none}.spatial-volume-guide button{font:inherit;background:none;border:0;border-bottom:1px solid;color:inherit;padding:10px;cursor:pointer}.is-guided .th3d-panel{opacity:.25}.is-guided .th3d-bottom{visibility:hidden}@media(max-width:1050px),(prefers-reduced-motion:reduce){.spatial-volume-story{height:auto}.spatial-volume-guide{display:none}}
@media(min-width:1051px){.spatial.exhibition .spatial-volume-pin .th3d-panel{padding-top:95px}.spatial-volume-pin .th3d-top{top:95px}.spatial-volume-pin .th3d-title{top:135px}.is-guided .th3d-panel{visibility:hidden}}
.spatial .cs-bi .val,.spatial .bh-bi .val{color:#edf2ef}.spatial .cs-bi .lbl,.spatial .bh-bi .lbl{color:#adbfbd}.spatial .cs-sec:not(.ex-process-archive),.spatial .bh-sec:not(.ex-process-archive){background:#131b20!important}
