/* Cultural encounters become a personal collection. Native scrolling. */
body[data-page="home"] .site-header{position:sticky;top:0}
.spatial-hero{height:calc(100svh - var(--header));min-height:540px;position:relative;background:#fff}
.spatial-hero.scene-enhanced{height:calc(185svh - var(--header));min-height:900px}
.spatial-stage{position:sticky;top:var(--header);height:calc(100svh - var(--header));min-height:540px;overflow:clip;isolation:isolate;background:#fff}
.memory-space{--scene-perspective:1100px;position:absolute;inset:0;perspective:var(--scene-perspective);perspective-origin:50% 48%;transform-style:preserve-3d}
.memory-plane{position:absolute;top:48%;left:50%;margin:0;width:clamp(164px,21vw,330px);padding:12px 12px 0;background:#fff;border:1px solid #ededeb;box-shadow:0 3px 4px #00000005,0 20px 42px -15px #24272322;backface-visibility:hidden;transform:translate(-50%,-50%) translate3d(var(--x),var(--y),var(--z)) rotateY(var(--ry)) rotateZ(var(--rz));transform-origin:50% 50%;will-change:transform}
.plane-0{--x:-43vw;--y:40px;--z:70px;--ry:29deg;--rz:-2deg}
.plane-1{--x:43vw;--y:65px;--z:110px;--ry:-29deg;--rz:2deg}
.plane-2{--x:-28vw;--y:-150px;--z:-250px;--ry:28deg;--rz:0deg}
.plane-3{--x:28vw;--y:-160px;--z:-260px;--ry:-25deg;--rz:0deg}
.plane-picture{overflow:hidden;aspect-ratio:1;background:#f3f3ef}.plane-picture img{width:100%;height:100%;object-fit:cover}
.memory-plane figcaption{display:flex;justify-content:space-between;align-items:center;margin:0;padding:12px 1px;font:8px/1.4 var(--sans);letter-spacing:.09em;color:#555}
.spatial-ambient{position:absolute;inset:0;background:radial-gradient(ellipse 32% 12% at 50% 77%,#dadbd72e,transparent 100%);pointer-events:none}
.spatial-statement{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);text-align:center;width:540px;max-width:70%;z-index:3}
.spatial-eyebrow{font:9px/1.5 var(--sans);letter-spacing:.14em;margin-bottom:29px}
.spatial-statement h1{font:500 clamp(36px,3.5vw,54px)/1.65 var(--sans);letter-spacing:-.04em;font-feature-settings:"palt"}
.spatial-subline{font-size:12px;margin-top:28px;letter-spacing:.06em}
.spatial-resolution{position:absolute;left:50%;top:23%;transform:translate(-50%,-50%);width:80%;text-align:center;opacity:0;pointer-events:none;z-index:3}
.spatial-resolution>span{font:9px/1.4 var(--sans);letter-spacing:.13em}
.spatial-resolution>p{font:500 clamp(27px,2.8vw,42px)/1.65 var(--sans);letter-spacing:-.04em;margin-top:20px}
.spatial-bottom{position:absolute;bottom:28px;left:32px;right:32px;display:flex;justify-content:space-between;align-items:center;font:9px/1.5 var(--sans);letter-spacing:.04em;z-index:4;gap:25px}
.spatial-bottom>a{display:flex;align-items:center;gap:18px;min-height:44px}.spatial-bottom>a>span{font-size:20px}
.scene-track{position:absolute;right:24px;top:43%;height:110px;width:1px;background:#e3e3de;overflow:hidden}.scene-track>i{display:block;width:1px;height:100%;background:#222;transform:scaleY(.04);transform-origin:top}
@keyframes space-arrival{from{opacity:0}to{opacity:1}}
@keyframes space-camera{from{perspective:1400px;perspective-origin:50% 61%}to{perspective:var(--scene-perspective);perspective-origin:50% 48%}}
@keyframes space-copy-arrival{from{opacity:0;translate:0 9px}to{opacity:1;translate:0 0}}
html[data-entry="full"] .memory-space{animation:space-arrival 1300ms var(--ease) 1050ms both,space-camera 1800ms var(--ease) 1050ms both}
html[data-entry="full"] .spatial-statement h1{animation:space-copy-arrival 900ms var(--ease) 1310ms both}
html[data-entry="full"] .spatial-eyebrow,html[data-entry="full"] .spatial-subline{animation:space-copy-arrival 800ms var(--ease) 1430ms both}
html[data-entry="full"] .spatial-bottom{animation:space-copy-arrival 700ms var(--ease) 1500ms both}
html.motion-interrupted .spatial-stage *{animation:none!important}
html[data-scene-motion="off"] .spatial-stage *,html[data-scene-motion="off"] [data-tilt]{animation:none!important;transition:none!important}

.spatial-bottom[hidden]{display:none}
@media(max-width:1100px){.spatial-statement{max-width:54%}.spatial-statement h1{font-size:3.9vw}}
@media(max-width:760px){
 .spatial-hero{min-height:510px}.spatial-hero.scene-enhanced{height:calc(160svh - var(--header));min-height:820px}.spatial-stage{min-height:510px}
 .memory-space{--scene-perspective:900px}.memory-plane{width:39vw;max-width:220px;padding:7px 7px 0}.memory-plane figcaption{font-size:6px;padding:8px 0;letter-spacing:.04em}
 .plane-0{--x:-28vw;--y:-30vh;--z:20px;--ry:23deg;--rz:-3deg}.plane-1{--x:29vw;--y:23vh;--z:30px;--ry:-27deg;--rz:3deg}.plane-2{--x:29vw;--y:-35vh;--z:-220px;--ry:-28deg;--rz:2deg}.plane-3{--x:-30vw;--y:23vh;--z:-170px;--ry:24deg;--rz:-2deg}
 .spatial-statement{width:100%;max-width:87%;top:45%}.spatial-statement h1{font-size:clamp(27px,7.1vw,42px);line-height:1.75}.spatial-eyebrow{font-size:8px;letter-spacing:.1em;margin-bottom:18px}.spatial-subline{font-size:10px;letter-spacing:.04em;margin-top:19px}.spatial-eyebrow,.spatial-subline{display:none}
 .spatial-resolution{top:21%;width:90%}.spatial-resolution>span{font-size:7px;letter-spacing:.045em}.spatial-resolution>p{font-size:clamp(23px,6vw,34px);margin-top:16px}
 .spatial-bottom{bottom:24px;left:22px;right:22px;font-size:8px;justify-content:flex-end}.spatial-bottom>span{display:none}.spatial-bottom>a{gap:13px}.scene-track{right:12px;height:70px;top:44%}

}
@media(max-width:374px){.memory-plane{width:38vw}.spatial-statement h1{font-size:26px}}
@media(prefers-reduced-motion:reduce){.memory-plane{will-change:auto}}
@media print{.spatial-bottom,.scene-track{display:none!important}.spatial-hero,.spatial-hero.scene-enhanced{height:500px!important;min-height:0}.spatial-stage{position:relative;top:0;height:500px;min-height:0}.memory-plane{will-change:auto}}

/* Final destination: original LEGASEE screen with matching live thumbnail slots. */
.spatial-hero.scene-enhanced{height:calc(220svh - var(--header));min-height:1050px}
.spatial-stage{--stage-height:max(540px,calc(100svh - var(--header)))}
.memory-space{z-index:2;pointer-events:none}
.memory-plane{padding:var(--frame-pad,12px) var(--frame-pad,12px) 0;border:0;outline:1px solid rgb(225 225 220 / var(--frame-visibility,1));box-shadow:0 20px 42px -15px rgb(36 39 35 / calc(.14 * var(--frame-visibility,1)))}
.memory-plane figcaption{height:var(--caption-height,35px);padding:0 1px;overflow:hidden;opacity:var(--frame-visibility,1)}
.plane-picture{border-radius:var(--picture-radius,0)}
.archive-destination{position:absolute;left:72%;top:50%;width:min(314.218px,calc(var(--stage-height) * .38815166));height:auto;aspect-ratio:390/844;transform:translate(-50%,-50%);z-index:1;overflow:hidden;background:#0b0b0a;border-radius:5px;outline:1px solid #282828;box-shadow:0 30px 80px -30px #0003;opacity:1;container-type:inline-size;pointer-events:none}
.archive-screen{width:100%;height:100%;max-width:none}
.archive-slot{position:absolute;overflow:hidden;background:#0b0b0a;border-radius:1.54cqw}
.archive-slot>img{width:100%;height:100%;object-fit:cover;opacity:var(--record-visibility,1)}
.archive-slot>span{position:absolute;top:4.57%;left:4.57%;padding:2.3% 5.2%;border-radius:40px;background:#0b0f0edb;color:#fff;font:2.75cqw/1.4 var(--sans);white-space:nowrap;opacity:var(--record-visibility,1)}
.spatial-resolution{left:11%;top:33%;width:45%;transform:none;text-align:left;opacity:1}
.spatial-resolution>span{font-size:9px;color:#666}
.spatial-resolution>p{font-size:clamp(27px,2.85vw,44px);line-height:1.75;letter-spacing:-.04em;margin-top:26px}
.archive-note{font-size:13px;line-height:2.1;margin-top:24px;color:#5b5b5b}
.archive-action{position:absolute;left:11%;top:72%;z-index:4;width:245px}
.archive-action>a{display:flex;justify-content:space-between;align-items:center;min-height:52px;border-bottom:1px solid #222;font-size:12px;gap:36px}
.archive-action>a>span{font-size:21px;transition:transform 350ms var(--ease)}
.archive-action>a:hover>span{transform:translate(3px,-3px)}
.scene-enhanced .archive-destination,.scene-enhanced .spatial-resolution,.scene-enhanced .archive-action{opacity:0}
.spatial-hero:not(.scene-enhanced) .memory-space,.spatial-hero:not(.scene-enhanced) .scene-track,.spatial-hero:not(.scene-enhanced) .spatial-bottom{display:none}
.spatial-hero:not(.scene-enhanced) .spatial-statement{opacity:0;pointer-events:none}
@media(max-width:1100px) and (min-width:761px){.archive-destination{left:75%;width:min(314.218px,calc(var(--stage-height) * .36042654))}.spatial-resolution,.archive-action{left:7%}.spatial-resolution{width:48%}.spatial-resolution>p{font-size:30px}}
@media(max-width:760px){
 .spatial-hero.scene-enhanced{height:calc(205svh - var(--header));min-height:1000px}
 .memory-plane{padding:var(--frame-pad,7px) var(--frame-pad,7px) 0}.memory-plane figcaption{height:var(--caption-height,24px)}
 .spatial-stage{--stage-height:max(510px,calc(100svh - var(--header)))}
 .archive-destination{left:50%;top:57%;width:min(272.63px,calc(var(--stage-height) * .31421801));border-radius:4px}
 .spatial-resolution{left:5%;top:3.7%;width:90%;text-align:center}
 .spatial-resolution>span{font-size:7px;letter-spacing:.07em}
 .spatial-resolution>p{font-size:clamp(22px,5.9vw,29px);line-height:1.55;margin-top:12px}
 .archive-note{display:none}
 .archive-action{left:50%;top:auto;bottom:1%;transform:translateX(-50%);width:180px}
 .archive-action>a{min-height:40px;font-size:10px}.archive-action>a>span{font-size:18px}
}
@media(prefers-reduced-motion:reduce){.archive-action>a>span{transition:none}}
@media(min-width:761px) and (max-height:760px){.spatial-resolution{top:22%}.archive-note{font-size:12px;margin-top:18px}.archive-action{top:auto;bottom:8%}}
@media print{.archive-destination,.spatial-resolution,.archive-action{opacity:1!important}.memory-space,.spatial-statement{display:none!important}}

/* iPhone front: 416 × 870 body, 390 × 844 display at (13,13). */
.archive-destination{width:min(325.15px,calc(var(--stage-height) * .40165517));aspect-ratio:416/870;overflow:visible;background:none;border-radius:0;outline:0;box-shadow:none;container-type:normal}
.iphone-body{position:absolute;inset:.15% .72%;border-radius:15.12% / 7.14%;background:#08090b;box-shadow:1px 2px 2px #0003,7px 16px 24px -10px #0004,15px 38px 65px -22px #0003}
.iphone-frame{position:absolute;inset:0;z-index:3;width:100%;height:100%;max-width:none;pointer-events:none}
.iphone-display{position:absolute;left:3.125%;top:1.49425287%;width:93.75%;height:97.01149425%;border-radius:12.05128205% / 5.56872038%;overflow:hidden;background:#0b0b0a;container-type:inline-size;isolation:isolate}
.iphone-display .archive-screen{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}
.iphone-status{position:absolute;inset:0 0 auto;height:5.3%;z-index:2;background:#0c0c0c;color:#f4f4f4;font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",sans-serif;line-height:1}
.iphone-time{position:absolute;left:8.1%;top:42%;font-size:3.1cqw;font-weight:600;letter-spacing:-.04em;line-height:1}
.iphone-status-icons{position:absolute;right:7.5%;top:41%;width:14.8%;height:auto}
.iphone-island{position:absolute;top:1.36%;left:34.65%;width:30.7%;height:3.6%;border-radius:999px;background:#000;box-shadow:inset 0 0 0 .5px #111316;z-index:3}
.iphone-camera{position:absolute;right:8%;top:50%;width:7.6%;aspect-ratio:1;transform:translateY(-50%);border-radius:50%;background:radial-gradient(circle at 38% 33%,#1c2b3e 0,#0c1421 20%,#05090e 48%,#000 66%);box-shadow:0 0 0 .5px #070a0f}
@media(max-width:1100px) and (min-width:761px){.archive-destination{width:min(325.15px,calc(var(--stage-height) * .37296552))}}
@media(max-width:760px){.archive-destination{width:min(282.12px,calc(var(--stage-height) * .32514943))}.iphone-body{box-shadow:1px 2px 2px #0003,5px 10px 20px -9px #0004,10px 24px 38px -16px #0003}}
@media print{.iphone-body{box-shadow:none}}

/* Eight distinct cultural encounters, arranged around an open center. */
.spatial-hero.scene-enhanced{height:calc(260svh - var(--header));min-height:1150px}
.memory-plane{width:min(17vw,calc(var(--stage-height) * .30),250px);padding:var(--frame-pad,9px) var(--frame-pad,9px) 0}
.memory-plane figcaption{height:var(--caption-height,28px);font-size:8px;letter-spacing:.025em}
.memory-plane figcaption>span:first-child{font-size:9px;color:#333}.memory-plane figcaption>span:last-child{font-size:7px;color:#777}
.plane-0{--x:-38vw;--y:calc(var(--stage-height)*-.23);--z:35px;--ry:16deg;--rz:-3deg}
.plane-1{--x:37vw;--y:calc(var(--stage-height)*-.20);--z:30px;--ry:-16deg;--rz:3deg}
.plane-2{--x:-16vw;--y:calc(var(--stage-height)*-.34);--z:-150px;--ry:12deg;--rz:1deg}
.plane-3{--x:15vw;--y:calc(var(--stage-height)*-.34);--z:-140px;--ry:-12deg;--rz:-1deg}
.plane-4{--x:-38vw;--y:calc(var(--stage-height)*.25);--z:-40px;--ry:15deg;--rz:2deg}
.plane-5{--x:38vw;--y:calc(var(--stage-height)*.25);--z:-45px;--ry:-15deg;--rz:-2deg}
.plane-6{--x:-16vw;--y:calc(var(--stage-height)*.34);--z:-170px;--ry:12deg;--rz:-1deg}
.plane-7{--x:15vw;--y:calc(var(--stage-height)*.34);--z:-150px;--ry:-12deg;--rz:1deg}
.archive-grid-window{position:absolute;left:0;top:49.17061611%;width:100%;height:42.53554502%;background:#0c0c0c;overflow:hidden}
.archive-record-rail{position:absolute;inset:0;transform:translateY(-101.94986072%)}
.scene-enhanced .archive-record-rail{transform:translateY(0)}
.archive-slot{background:#0c0c0c}
@media(max-width:760px){
 .spatial-hero.scene-enhanced{height:calc(245svh - var(--header));min-height:1100px}
 .memory-plane{width:min(30vw,calc(var(--stage-height)*.185));max-width:none;padding:var(--frame-pad,6px) var(--frame-pad,6px) 0}
 .memory-plane figcaption{height:var(--caption-height,19px)}.memory-plane figcaption>span:first-child{font-size:7px}.memory-plane figcaption>span:last-child{font-size:5px;letter-spacing:0}
 .plane-0{--x:-27.5vw;--y:calc(var(--stage-height)*-.36);--z:5px;--ry:12deg;--rz:-2deg}
 .plane-1{--x:27.5vw;--y:calc(var(--stage-height)*-.36);--z:5px;--ry:-12deg;--rz:2deg}
 .plane-2{--x:-29vw;--y:calc(var(--stage-height)*-.20);--z:-90px;--ry:12deg;--rz:1deg}
 .plane-3{--x:29vw;--y:calc(var(--stage-height)*-.20);--z:-90px;--ry:-12deg;--rz:-1deg}
 .plane-4{--x:-29vw;--y:calc(var(--stage-height)*.22);--z:-70px;--ry:12deg;--rz:-1deg}
 .plane-5{--x:29vw;--y:calc(var(--stage-height)*.22);--z:-70px;--ry:-12deg;--rz:1deg}
 .plane-6{--x:-27.5vw;--y:calc(var(--stage-height)*.42);--z:-100px;--ry:10deg;--rz:2deg}
 .plane-7{--x:27.5vw;--y:calc(var(--stage-height)*.42);--z:-100px;--ry:-10deg;--rz:-2deg}
 .spatial-statement h1{font-size:clamp(25px,6.8vw,39px)}
}

/* v13: an edge-to-edge gallery contracts into one personal record. */
.memory-space{perspective:none;transform-style:flat}
.memory-plane{top:50%;width:25%;max-width:none;padding:0;border:0;outline:0;box-shadow:none;background:transparent;transform:translate(-50%,-50%);backface-visibility:visible}
.plane-picture{aspect-ratio:var(--picture-aspect,1.28);border-radius:var(--picture-radius,0)}
.memory-plane figcaption{position:absolute;inset:auto 0 0;display:flex;align-items:flex-end;justify-content:space-between;height:38px;padding:0 10px 9px;margin:0;background:linear-gradient(transparent,#0006);opacity:var(--frame-visibility,1);pointer-events:none}
.memory-plane figcaption>span:first-child{color:#fff;font-size:10px;font-weight:400;letter-spacing:.04em}
.memory-plane figcaption>span:last-child{color:#ffffffe0;font-size:7px;letter-spacing:.08em}
.spatial-ambient{display:none}
.spatial-statement{top:50%;max-width:90%;width:760px;z-index:4;color:#fff;text-shadow:0 2px 24px #0005}
.spatial-statement h1{font-size:clamp(36px,4.2vw,64px);line-height:1.4;letter-spacing:-.05em}
.spatial-eyebrow{font-size:8px;letter-spacing:.15em;margin-bottom:10px}
.spatial-subline{font-size:10px;letter-spacing:.045em;margin-top:10px}
.spatial-bottom{bottom:18px;left:28px;right:28px;font-size:8px;color:#fff;text-shadow:0 1px 10px #0008}
.scene-track{right:9px;z-index:4;background:#fff5;mix-blend-mode:difference}.scene-track>i{background:#fff}
.scene-enhanced .spatial-stage::after{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;background:radial-gradient(ellipse 64% 40% at 50% 50%,#0008,transparent),linear-gradient(transparent 75%,#0004);opacity:var(--gallery-intro,1)}
.memory-plane figcaption{display:none}
html[data-entry="full"] .memory-space{animation:space-arrival 1000ms var(--ease) 1050ms both}
@media(max-width:760px){
 .memory-plane{width:50%;padding:0}
 .plane-picture{aspect-ratio:var(--picture-aspect,1.25)}
 .memory-plane figcaption{height:29px;padding:0 7px 6px}
 .memory-plane figcaption>span:first-child{font-size:8px}
 .memory-plane figcaption>span:last-child{font-size:6px;letter-spacing:.01em}
 .spatial-statement{top:50%;max-width:94%;width:100%}
 .spatial-statement h1{font-size:clamp(29px,8vw,44px);line-height:1.5}
 .spatial-eyebrow,.spatial-subline{display:none}
 .spatial-bottom{bottom:14px;left:20px;right:20px}
 .scene-track{right:8px}
}
@media(min-width:761px) and (max-height:760px){.spatial-eyebrow,.spatial-subline{display:none}}
