:root{--wall: #1b1823;--wall-lit: #2e2a3a;--wall-side: #15131c;--wall-far: #0e0c14;--wood: #241b12;--wood-lit: #3d2f1f;--wood-line: #3a2c1e;--gilt-deep: #5c451c;--gilt-shadow: #8a6b2c;--gilt-mid: #b8933f;--gilt-light: #d8b863;--gilt-spec: #f2dfa0;--lamp: #ffe9bd}.room3d{position:relative;isolation:isolate;background:var(--wall-far);overflow:clip}.room3d__shell{position:sticky;inset-block-start:0;block-size:100svh;margin-block-end:-100svh;perspective:62rem;perspective-origin:50% 44%;pointer-events:none;z-index:0}.room3d__surface{position:absolute;transform-style:preserve-3d}.room3d__back{inset:0;background:radial-gradient(46% 34% at 50% 26%,color-mix(in oklab,var(--wall-lit) 86%,var(--lamp)) 0%,var(--wall-lit) 24%,var(--wall) 48%,color-mix(in oklab,var(--wall) 62%,#000) 78%,#0b0a11 100%)}.room3d__side{inset-block:-14%;inline-size:34rem;background:linear-gradient(to right,var(--wall-far) 0%,var(--wall-side) 62%,color-mix(in oklab,var(--wall-side) 70%,var(--lamp)) 100%)}.room3d__side--start{inset-inline-start:0;transform:rotateY(64deg);transform-origin:left center}.room3d__side--end{inset-inline-end:0;transform:rotateY(-64deg);transform-origin:right center;background:linear-gradient(to left,var(--wall-far) 0%,var(--wall-side) 62%,color-mix(in oklab,var(--wall-side) 70%,var(--lamp)) 100%)}.room3d__floor{inset-inline:-30%;inset-block-end:0;block-size:26%;transform:rotateX(80deg);transform-origin:bottom center;background:radial-gradient(50% 80% at 50% 0%,color-mix(in oklab,var(--wood-lit) 82%,var(--lamp)) 0%,var(--wood) 34%,color-mix(in oklab,var(--wood) 60%,#000) 78%),repeating-linear-gradient(to right,var(--wood-line) 0 2px,transparent 2px 6.5rem);background-blend-mode:multiply,normal;mask-image:linear-gradient(to bottom,#000,#00000040)}.room3d__ceiling{inset-inline:-30%;inset-block-start:0;block-size:22%;transform:rotateX(-78deg);transform-origin:top center;background:linear-gradient(to top,var(--wall-far),#100e17)}.room3d__skirting{position:absolute;inset-inline:0;inset-block-end:26%;block-size:1px;opacity:.5;background:linear-gradient(to right,transparent,color-mix(in oklab,var(--gilt-deep) 60%,transparent) 30%,color-mix(in oklab,var(--gilt-mid) 40%,transparent) 50%,color-mix(in oklab,var(--gilt-deep) 60%,transparent) 70%,transparent)}.bays{position:relative;z-index:1;list-style:none;margin:0;padding:0}.bay{--lit: .35;position:relative;min-block-size:100svh;display:grid;align-content:center;justify-items:center;padding-block:clamp(2rem,6vh,4rem);padding-inline:1.25rem}@supports (animation-timeline: view()){@media(prefers-reduced-motion:no-preference){.bay{animation:bay-light linear both;animation-duration:auto;animation-timeline:view();animation-range:entry 20% exit 80%}}}@keyframes bay-light{0%{--lit: .12}42%,58%{--lit: 1}to{--lit: .12}}@property --lit{syntax: "<number>"; inherits: true; initial-value: .35;}.lamp{position:relative;inline-size:min(100%,34rem);block-size:clamp(1rem,2.5vh,1.75rem);display:flex;justify-content:center;pointer-events:none}.lamp__housing{inline-size:clamp(2.25rem,5vw,3rem);block-size:100%;background:linear-gradient(to bottom,color-mix(in oklab,var(--gilt-shadow) 80%,#000),var(--gilt-deep));clip-path:polygon(22% 0,78% 0,100% 100%,0 100%);border-radius:2px 2px 0 0}.lamp__housing:after{content:"";position:absolute;inset-block-start:100%;inset-inline:0;margin-inline:auto;inline-size:60%;block-size:3px;background:color-mix(in oklab,var(--lamp) calc(30% + var(--lit) * 70%),transparent);filter:blur(1px)}.lamp__cone,.lamp__spill{position:absolute;inset-block-start:100%;inset-inline:0;margin-inline:auto;pointer-events:none}.lamp__cone{inline-size:min(130%,34rem);block-size:clamp(14rem,38vh,26rem);background:linear-gradient(to bottom,color-mix(in oklab,var(--lamp) calc(10% + var(--lit) * 26%),transparent) 0%,color-mix(in oklab,var(--lamp) calc(3% + var(--lit) * 10%),transparent) 42%,transparent 80%);clip-path:polygon(43% 0,57% 0,96% 100%,4% 100%);mask-image:linear-gradient(to right,transparent,#000 18%,#000 82%,transparent);filter:blur(20px)}.lamp__spill{inline-size:min(190%,52rem);block-size:clamp(20rem,54vh,38rem);background:radial-gradient(58% 74% at 50% 0%,color-mix(in oklab,var(--lamp) calc(6% + var(--lit) * 20%),transparent) 0%,transparent 72%);filter:blur(22px)}.gilt{position:relative;z-index:2;display:block;inline-size:min(100%,30rem);padding:clamp(.75rem,2.2vw,1.375rem);text-decoration:none;border-radius:3px;background:linear-gradient(142deg,var(--gilt-shadow) 0%,var(--gilt-mid) 18%,var(--gilt-spec) 32%,var(--gilt-light) 44%,var(--gilt-mid) 60%,var(--gilt-deep) 78%,var(--gilt-shadow) 100%);box-shadow:0 0 0 1px color-mix(in oklab,var(--gilt-deep) 80%,#000),inset 0 1px color-mix(in oklab,var(--gilt-spec) 70%,transparent),inset 0 -1px color-mix(in oklab,var(--gilt-deep) 80%,#000),0 calc(.5rem + var(--lit) * 1rem) calc(1.25rem + var(--lit) * 2rem) calc(var(--lit) * -.5rem) rgb(0 0 0 / calc(.34 + var(--lit) * .28)),0 2px 4px #00000080;filter:brightness(calc(.62 + var(--lit) * .38))}.gilt:before{content:"";position:absolute;inset:2px;border-radius:2px;pointer-events:none;background:radial-gradient(ellipse 14% 11% at 0% 0%,var(--gilt-spec) 0%,transparent 70%),radial-gradient(ellipse 14% 11% at 100% 0%,var(--gilt-spec) 0%,transparent 70%),radial-gradient(ellipse 14% 11% at 0% 100%,var(--gilt-spec) 0%,transparent 70%),radial-gradient(ellipse 14% 11% at 100% 100%,var(--gilt-spec) 0%,transparent 70%),radial-gradient(ellipse 11% 9% at 50% 0%,var(--gilt-light) 0%,transparent 72%),radial-gradient(ellipse 11% 9% at 50% 100%,var(--gilt-light) 0%,transparent 72%),radial-gradient(ellipse 30% 4% at 50% 0%,color-mix(in oklab,var(--gilt-spec) 22%,transparent),transparent 70%),radial-gradient(ellipse 30% 4% at 50% 100%,color-mix(in oklab,var(--gilt-spec) 22%,transparent),transparent 70%);opacity:calc(.28 + var(--lit) * .5);mix-blend-mode:screen}.gilt:after{content:"";position:absolute;inset:calc(clamp(.75rem,2.2vw,1.375rem) - 3px);border-radius:1px;pointer-events:none;box-shadow:inset 0 2px 4px #0000008c,inset 0 -1px color-mix(in oklab,var(--gilt-spec) 40%,transparent)}.gilt__fillet{display:block;padding:clamp(.25rem,.8vw,.5rem);background:linear-gradient(160deg,var(--gilt-deep),color-mix(in oklab,var(--gilt-shadow) 70%,#000));box-shadow:inset 0 1px 2px #0009,0 1px color-mix(in oklab,var(--gilt-spec) 50%,transparent)}.gilt__mount{display:block;padding:clamp(.5rem,1.6vw,1rem);background:linear-gradient(170deg,#e8e3d8,#d6d0c4);filter:brightness(calc(.7 + var(--lit) * .3))}.gilt__window{display:block;overflow:hidden;background:#14121b;box-shadow:inset 0 0 0 1px #00000080,inset 0 2px 8px #0006}.gilt__window img{display:block;inline-size:100%;block-size:min(40svh,21rem);object-fit:cover;filter:brightness(calc(.5 + var(--lit) * .5)) saturate(calc(.72 + var(--lit) * .28))}.gilt:hover,.gilt:focus-visible{filter:brightness(calc(.72 + var(--lit) * .38))}.wall-caption{position:relative;z-index:1;margin-block-start:clamp(1rem,2.5vh,1.5rem);margin-block-end:clamp(2rem,8vh,6rem);text-align:center;display:grid;gap:.375rem;max-inline-size:min(100%,32rem);opacity:calc(.5 + var(--lit) * .5)}.wall-caption__accession{margin:0;color:var(--gilt-light)}.wall-caption__title{margin:0;color:#f2f0f7}.wall-caption__meta,.wall-caption__summary{margin:0;color:#c7c3d4}.wall-caption__summary{max-inline-size:56ch;margin-inline:auto}.wall-caption__link{justify-self:center;margin-block-start:.5rem}.bay--text{min-block-size:auto;padding-block:clamp(4rem,14vh,9rem)}.wall-panel{position:relative;z-index:1;opacity:calc(.55 + var(--lit) * .45);inline-size:min(100%,46rem);display:grid;gap:1rem;padding:clamp(1.5rem,4vw,2.5rem);background:color-mix(in oklab,#1d1a26 88%,transparent);border:1px solid color-mix(in oklab,var(--gilt-deep) 70%,transparent);border-radius:3px;box-shadow:0 1.5rem 3rem -1rem #0009}.wall-panel__kicker{margin:0;color:var(--gilt-light)}.wall-panel__title{margin:0;color:#f2f0f7}.wall-panel p:not(.wall-panel__kicker){margin:0;color:#c7c3d4;max-inline-size:68ch}.wall-panel__note{border-block-start:1px solid color-mix(in oklab,var(--gilt-deep) 50%,transparent);padding-block-start:.875rem}@media(max-width:48rem){.room3d__shell{position:static;block-size:auto;margin-block-end:0;perspective:none}.room3d__side,.room3d__floor,.room3d__ceiling,.room3d__skirting{display:none}.room3d__back{position:fixed;inset:0}.bay{min-block-size:auto;padding-block:clamp(3rem,9vh,5rem)}}@media(prefers-reduced-motion:reduce){.bay{--lit: .85;animation:none}}
