/* V16 · A unified museum title and domain signature. */
:root{--cinema-ink:#000;--cinema-paper:#d7ddd9}
html{scroll-behavior:smooth}body,main{background:#000}main{overflow:visible}
header.museum-header{position:absolute;inset:0 0 auto;z-index:10;padding:28px 38px;justify-content:space-between}.museum-domain{font:normal 400 15px/1.5 "Museum Serif",serif;letter-spacing:.085em;color:#cbd2cd;padding:12px 0}.museum-wordmark,.header-private{display:none!important}.museum-header .menu-button{font-size:0;width:44px;height:44px;padding:12px;border:0;background:none}.menu-lines{display:flex;flex-direction:column;gap:6px;align-items:flex-end}.menu-lines:before,.menu-lines:after{content:"";height:1px;background:#c8d2cb;display:block;width:22px;transition:width .3s}.menu-lines:after{width:14px}.menu-button:hover .menu-lines:after{width:22px}
.cinema{height:350svh;min-height:2100px;position:relative;--camera-scale:2.45;--camera-x:18vw;--camera-y:74svh;--title-opacity:1;--verse-opacity:0;--arrival-opacity:0;--curtain:0;--progress:0;--beam-x:0px;--beam-y:0px}
.cinema-stage{position:sticky;top:0;width:100%;height:100svh;height:100dvh;min-height:560px;overflow:clip;isolation:isolate;background:#000}
.cinema-camera{position:absolute;inset:var(--camera-top,8%) var(--camera-side,12%);transform:translate3d(var(--camera-x),var(--camera-y),0) scale(var(--camera-scale));transform-origin:50% 50%;will-change:transform;opacity:var(--photo-opacity,1);filter:brightness(.68) saturate(.7)}
.cinema-photograph{display:block;width:100%;height:100%;overflow:hidden}
.cinema-shade{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,#000000b0 0%,#00000038 27%,transparent 59%),linear-gradient(180deg,#000 0%,#00000000 28%,transparent 72%,#000000c9 100%)}
.cinema-light{position:absolute;z-index:1;inset:-10%;pointer-events:none;background:linear-gradient(115deg,transparent 28%,#b7d4e419 42%,#dce8e81c 46%,transparent 61%);mix-blend-mode:screen;mask-image:linear-gradient(180deg,transparent 30%,black 52%,black 76%,transparent 97%);transform:translate3d(var(--beam-x),var(--beam-y),0);opacity:.65;will-change:transform}
.cinema-title{position:absolute;z-index:3;left:8.5%;top:19%;opacity:var(--title-opacity);transform:translateY(var(--title-y,0px));pointer-events:none}.cinema-title h1{font:normal 400 clamp(36px,4.2vw,64px)/1.45 var(--serif);letter-spacing:.14em;color:#dee3df;white-space:nowrap;text-shadow:0 3px 30px #0003}
.cinema-verse{position:absolute;z-index:3;left:10%;top:47%;opacity:var(--verse-opacity);transform:translateY(var(--verse-y,24px));pointer-events:none}.cinema-verse p{font:normal clamp(27px,3.15vw,54px)/1.6 var(--serif);letter-spacing:.24em;color:var(--cinema-paper)}
.cinema-depth{position:absolute;z-index:4;inset:0;pointer-events:none;opacity:var(--depth-opacity,0);overflow:hidden;background:radial-gradient(ellipse at 50% 48%,#12232370,transparent 66%)}
.depth-haze{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 48%,#b7d5d310,transparent 34%);opacity:var(--haze-opacity,0)}
.depth-space{position:absolute;inset:0;perspective:900px;perspective-origin:50% 48%;transform-style:preserve-3d}
.depth-frame{position:absolute;inset:9% 16%;border:1px solid #bed5ce38;border-radius:1px;box-shadow:inset 0 0 40px #a4c1b108,0 0 26px #bddfd00b;will-change:transform,opacity;backface-visibility:hidden;background:linear-gradient(90deg,#b4d6c708,transparent 5%,transparent 95%,#b4d6c708)}
.depth-frame:after{content:"";position:absolute;inset:10px;border-left:1px solid #d5e4d91a;border-right:1px solid #d5e4d91a}

.cinema-arrival{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:40px;opacity:var(--arrival-opacity);transform:translateY(var(--arrival-y,24px)) scale(var(--arrival-scale,.64));pointer-events:none}.cinema-arrival p{font:normal clamp(30px,4.2vw,64px)/1.6 var(--serif);letter-spacing:.38em;color:#d6dcd6;padding-left:.38em}.cinema-arrival a{display:flex;align-items:center;gap:30px;font:12px var(--serif);letter-spacing:.2em;min-height:44px;padding:5px 8px;pointer-events:auto}.cinema-arrival a span{font:19px "Museum Serif";transition:transform .3s}.cinema-arrival a:hover span{transform:translate(3px,-3px)}
.cinema-scroll{position:absolute;z-index:6;bottom:4.5%;left:50%;padding:12px 24px 0;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:12px;white-space:nowrap;color:#c6d0c7;min-width:200px;text-shadow:0 2px 12px #000;background:radial-gradient(ellipse,#0005,transparent 70%)}.guide-count{font:9px/1.2 "Museum Serif",serif;letter-spacing:.2em;color:#a0b3a5}.guide-copy{font:11px/1.5 var(--serif);letter-spacing:.2em}.guide-line{position:relative;display:block;width:1px;height:32px;background:linear-gradient(transparent,#d5ded2);transform-origin:top;animation:cinemaScroll 2.7s ease-in-out infinite}.guide-line:after{content:"";position:absolute;bottom:1px;width:5px;height:5px;border-bottom:1px solid #d5ded2;border-right:1px solid #d5ded2;transform:translateX(-2px) rotate(45deg)}.cinema-scroll:hover .guide-copy{color:#fff}

.cinema-progress{position:absolute;z-index:6;bottom:0;left:0;right:0;height:1px;background:#d2dcce0a}.cinema-progress i{display:block;height:100%;background:#b0c4bd66;transform:scaleX(var(--progress));transform-origin:left}
.cinema-pause{position:absolute;z-index:7;bottom:5%;right:3%;width:44px;height:44px;border:0;background:none;color:#d0d7d077;font:11px "Museum Serif";cursor:pointer}.cinema-pause:hover{color:#d0d7d0}
.cinema-end{height:15svh;min-height:110px;display:grid;place-items:center;background:#000;color:#879790;font:11px var(--serif);letter-spacing:.28em}
.collection-progress{display:none}body.in-collection .collection-progress{display:grid}.exhibit,footer{background:#000}.access-gate{background:#000!important}.access-card h2{color:#d9dfd8}#access-form button{background:#c4cbbf!important;border-color:#c4cbbf!important}
#menu{width:min(420px,90vw);background:#080c0d;border-color:#c5d3c12e}#menu::backdrop{background:#010305d9;backdrop-filter:blur(16px)}#menu nav{padding:40px 20px;gap:16px}#menu nav a{font:26px var(--serif);letter-spacing:.14em;padding:18px 0}#menu nav a:hover{color:#aac4b8}
@keyframes cinemaScroll{0%,100%{transform:scaleY(.75);opacity:.4}50%{transform:scaleY(1);opacity:1}}
.cinema-paused .guide-line{animation-play-state:paused}
@media(max-width:700px),(orientation:portrait){header.museum-header{padding:17px 17px}.cinema{height:330svh;min-height:1950px;--camera-scale:3.5;--camera-x:28vw;--camera-y:37svh}.cinema-stage{min-height:540px}.cinema-camera{inset:var(--camera-top,15%) var(--camera-side,5%);filter:brightness(.72) saturate(.75)}.cinema-title{left:0;right:0;text-align:center;top:20%}.cinema-title h1{font-size:clamp(27px,7.8vw,42px);letter-spacing:.1em;padding-left:.1em}.museum-domain{font-size:13px}.depth-frame{inset:14% 9%}.cinema-verse{left:0;right:0;text-align:center;top:21%}.cinema-verse p{font-size:28px;letter-spacing:.2em}.cinema-shade{background:linear-gradient(180deg,#000 0%,#000000c0 20%,#00000033 42%,transparent 62%,#000000b3 100%)}.cinema-arrival p{font-size:35px;letter-spacing:.28em}.cinema-arrival{gap:35px}.cinema-pause{right:4%;bottom:4%}.cinema-scroll{bottom:4%}.cinema-end{height:12svh}.cinema-light{mask-image:linear-gradient(transparent 25%,black 47%,black 80%,transparent)}}
@media(prefers-reduced-motion:reduce),(max-height:500px){html{scroll-behavior:auto}.cinema{height:100svh;min-height:650px}.cinema-stage{position:relative;height:100%;min-height:650px}.cinema-camera{transform:none!important;opacity:1!important}.cinema-title{opacity:1!important;top:13%;left:0;right:0;text-align:center}.cinema-title h1{font-size:27px}.cinema-arrival{opacity:1!important;transform:none!important;justify-content:flex-end;padding-bottom:35px;pointer-events:auto}.cinema-arrival p,.cinema-verse,.cinema-depth,.cinema-light,.cinema-scroll,.cinema-pause{display:none}.cinema-camera{inset:22% 12% 17%}}

/* V18 · A fuller object frame and a viewport-sized viewing room. */
.cinema-view-trigger{position:absolute;z-index:7;bottom:8%;left:8.5%;display:flex;align-items:center;gap:14px;min-height:44px;padding:8px 0;border:0;border-bottom:1px solid #c9d8c644;background:transparent;color:#c9d8c6;font:13px var(--serif);letter-spacing:.1em;opacity:var(--inspect-opacity,0);pointer-events:none}.cinema-view-trigger:not([inert]){pointer-events:auto}.cinema-view-trigger span{font-size:22px}
#cinema-viewer{position:fixed;inset:0;margin:0;width:100vw;max-width:none;height:100dvh;max-height:none;padding:20px 32px;border:0;background:#000;overflow:clip;color:#d7ddd9}
#cinema-viewer[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:12px}
.cinema-viewer-head,.cinema-viewer-foot{display:flex;align-items:center;justify-content:space-between;gap:16px}.cinema-viewer-head h2{font:normal 19px/1.5 var(--serif);letter-spacing:.13em}
#cinema-viewer button{float:none;width:auto;min-width:44px;min-height:44px;padding:8px 14px;border:1px solid #b4c7b433;background:none;cursor:pointer}.cinema-viewer-foot{font:12px var(--serif);color:#aabcaa}.cinema-viewer-zoom{font:13px var(--serif)}
.cinema-viewer-canvas{overflow:auto;min-height:0;min-width:0;overscroll-behavior:contain;touch-action:pan-x pan-y;outline-offset:-2px}.cinema-viewer-art{height:100%;width:100%}.cinema-viewer-art svg{display:block;width:100%;height:100%;overflow:hidden}.cinema-viewer-canvas.is-zoomed .cinema-viewer-art{width:180%;height:180%}
@media(max-width:700px),(orientation:portrait){.cinema-verse{top:18%}.cinema-view-trigger{left:50%;bottom:18%;transform:translateX(-50%);font-size:12px;white-space:nowrap}#cinema-viewer{padding:16px 12px;padding-bottom:max(16px,env(safe-area-inset-bottom))}.cinema-viewer-head h2{font-size:16px}.cinema-viewer-foot{font-size:11px}}
@media(prefers-reduced-motion:reduce),(max-height:500px){.cinema-view-trigger{opacity:1;left:8%;bottom:5%;transform:none}.cinema-camera{inset:22% 12% 17%!important}}
