/* Archive and exhibition deliberately have independent layout systems. */
.archive .editorial-gallery{grid-auto-flow:row;align-items:start;row-gap:100px}
.archive .work-meta{font-size:14px;color:#666;line-height:1.5}
.archive .work-caption h3{font-size:20px;font-weight:400}
.exhibition{overflow:hidden;padding:38px 0 22px;background:#fafaf8}
.exhibition-heading{padding:0 5vw;position:relative;z-index:1}
.exhibition-heading h1{font-size:clamp(30px,4vw,60px);font-weight:400;letter-spacing:-.04em;margin:8px 0 20px}
.exhibition-heading .filters{margin:0;padding-bottom:14px}
.exhibition-room{position:relative;height:clamp(460px,61vh,720px);overflow:hidden;touch-action:pan-y;outline-offset:-4px}
.exhibition-wall{position:absolute;inset:0 0 19%;background:linear-gradient(180deg,#fafaf8,#f3f3ef)}
.exhibition-floor{position:absolute;inset:81% 0 0;border-top:1px solid #dcdcd6;background:linear-gradient(#e7e7e1,#f2f2ec)}
.exhibition-track{position:absolute;inset:0;will-change:transform;transition:transform 650ms cubic-bezier(.16,1,.3,1)}
.exhibit{position:absolute;top:0;height:100%;width:360px;transition:opacity 220ms;}
.exhibit[hidden]{display:none}
.exhibit-object{position:absolute;display:block;left:50%;transform:translateX(-50%);bottom:28%;width:100%;height:65%;}
.exhibit-object img{display:block;width:100%;height:100%;object-fit:contain;image-rendering:auto}
.exhibit-object.documentary{max-width:360px}
.exhibit-label{position:absolute;top:84%;left:0;width:100%;text-align:center;line-height:1.45}
.exhibit-label h2{font-size:17px;font-weight:400;margin:0 0 4px}
.exhibit-label p,.exhibit-label small{font-size:11px;margin:0;color:#6b6b65}
.exhibit-plinth{display:none;position:absolute;left:50%;transform:translateX(-50%);bottom:19%;background:linear-gradient(90deg,#e1e1dc,#fff 20%,#f9f9f6 90%,#d5d5cf);box-shadow:14px 8px 18px #00000012}
.exhibit[data-mount="pedestal"] .exhibit-plinth{display:block}
.exhibit .mounted{z-index:1;filter:drop-shadow(5px 5px 4px #00000014)}
.exhibit .mounted[data-frame="black"]{border:4px solid #222}
.exhibit .mounted[data-frame="white"]{border:4px solid #fff}
.exhibit .mounted[data-frame="wood"]{border:4px solid #97755b}
.exhibition-controls{display:flex;align-items:center;justify-content:center;gap:28px;padding:10px 20px 0}
.exhibition-controls button{border:0;background:transparent;font:inherit;font-size:26px;min-width:48px;min-height:48px;cursor:pointer}
.exhibition-controls button:disabled{opacity:.2;cursor:default}
.exhibition-status{font-size:12px;min-width:100px;text-align:center}
.exhibition-empty{position:absolute;inset:35% 10% auto;text-align:center}
@media(max-width:700px){.exhibition{padding-top:28px}.exhibition-room{height:clamp(430px,62svh,650px)}.exhibit-label h2{font-size:15px}.exhibit-label p{font-size:10px}.exhibit-label small{font-size:10px}.archive .editorial-gallery{row-gap:52px}.archive .work-card.layout-small{width:80%;justify-self:end}.archive .work-card.layout-medium{width:92%;justify-self:start}.archive .work-caption h3{font-size:18px}}
@media(prefers-reduced-motion:reduce){.exhibition-track,.exhibit{transition:none}}
/* Spatial exhibition, iteration 2. Archive selectors above remain unchanged. */
.exhibition{--navbar-height:96px;--floor-fraction:.24;position:relative;height:calc(100vh - var(--navbar-height));height:calc(100dvh - var(--navbar-height));padding:0;min-height:0;background:#f7f7f3;isolation:isolate}
.exhibition-room{position:absolute;inset:0;height:100%;touch-action:pan-y}
.exhibition-wall{inset:0 0 calc(var(--floor-fraction)*100%);background:linear-gradient(180deg,#fafaf7 0%,#f5f5f1 94%,#eeeee8 100%)}
.exhibition-floor{inset:calc((1 - var(--floor-fraction))*100%) 0 0;background:linear-gradient(180deg,#e6e6df,#eeeee8);border-top:1px solid #d8d8d0}
.exhibition-heading{position:absolute;top:24px;left:4vw;right:4vw;padding:0;z-index:3;display:flex;align-items:baseline;gap:36px;pointer-events:none}
.exhibition-heading h1{font-size:15px;letter-spacing:0;margin:0;font-weight:400;white-space:nowrap}
.exhibition-heading .filters{pointer-events:auto;border:0;padding:0;gap:24px;font-size:12px}
.exhibition-heading .filters button{font-size:12px;padding:6px 0}
.exhibition-track{transition:transform 900ms cubic-bezier(.22,.75,.18,1)}
.exhibit-label{display:none}
.exhibit-object{z-index:2;max-width:none;min-width:44px;min-height:44px}
.exhibit-object.mounted{min-width:0;min-height:0;filter:drop-shadow(2px 3px 3px #00000012)}
.exhibit-object.mount-pending{border:1px dashed #b7b7ab70;outline-offset:8px}
.exhibit-object.mount-pending::after{content:'+';position:absolute;inset:0;display:grid;place-items:center;color:#97978b;font:18px Arial}
.exhibit-object.documentary{opacity:.65}
.exhibit-plinth{bottom:calc(var(--floor-fraction)*100%);background:none;box-shadow:none;overflow:visible;pointer-events:none}
.exhibit-plinth::after{content:'';position:absolute;bottom:-8px;left:-12%;width:145%;height:18px;background:#71716224;filter:blur(10px);transform:skewX(-25deg);z-index:-1}
.plinth-front{position:absolute;inset:0;background:linear-gradient(100deg,#fdfdfa,#f9f9f5);border:1px solid #d5d5c922}
.plinth-top{position:absolute;left:0;right:0;top:calc(-1*var(--plinth-depth));height:var(--plinth-depth);background:#fffffc;transform:skewX(-38deg);transform-origin:bottom left}
.plinth-side{position:absolute;left:100%;top:0;bottom:0;width:var(--plinth-depth);background:#e5e5df;transform:skewY(-52deg);transform-origin:top left}
.exhibition-caption{position:absolute;z-index:3;bottom:30px;left:4vw;max-width:calc(100% - 240px);line-height:1.5}
.exhibition-active-title{font-size:16px;text-decoration:none;color:inherit}
.exhibition-active-title:hover{text-decoration:underline;text-underline-offset:4px}
.exhibition-active-meta{font-size:12px;color:#62625c;margin:3px 0}
.exhibition-pending{font-size:11px;color:#72726b}
.exhibition-controls{position:absolute;right:4vw;bottom:24px;z-index:3;padding:0;gap:12px}
.exhibition-status{min-width:48px;font-variant-numeric:tabular-nums}
@media(max-width:700px){.exhibition{padding:0;--navbar-height:76px;height:calc(100svh - var(--navbar-height))}.exhibition-room{height:100%}.exhibition-heading{top:20px;display:block}.exhibition-heading h1{font-size:13px;margin-bottom:10px}.exhibition-heading .filters{gap:22px}.exhibition-caption{bottom:80px;max-width:90%}.exhibition-active-title{font-size:15px}.exhibition-controls{bottom:16px;right:4vw}.exhibition-pending{font-size:10px}}
@media(max-height:500px){.exhibition-heading{top:10px}.exhibition-caption{bottom:12px}.exhibition-controls{bottom:6px}.exhibition-active-meta,.exhibition-pending{font-size:10px}}
@media(prefers-reduced-motion:reduce){.exhibition-track{transition:none}}

/* Material study: exclusively the owner's supplied wall, oak and plinth references.
   Geometry, archive styles and camera behavior are intentionally unchanged. */
.exhibition-wall{background:linear-gradient(180deg,#fcfcfa 0%,#f7f7f4 85%,#f0f0ec 100%);overflow:hidden}
.exhibition-wall::before{content:'';position:absolute;inset:0;background:url('/assets/exhibition-materials/white-wall.avif') repeat;background-size:626px 418px;opacity:.16;mix-blend-mode:multiply;pointer-events:none}
.exhibition-floor{background:#d7c4a8;border-top:1px solid #494840;overflow:hidden;isolation:isolate}
.exhibition-floor::before{content:'';position:absolute;top:0;left:0;width:100%;height:320%;background:url('/assets/exhibition-materials/oak-reference.jpg') no-repeat;background-size:100% 100%;transform:perspective(600px) rotateX(52deg);transform-origin:50% 0;filter:saturate(.42) brightness(1.22);opacity:.55;pointer-events:none}
.exhibition-floor::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#413b3012 0,transparent 12%,#fffdf724 100%);box-shadow:inset 0 2px 2px #23231e0d;pointer-events:none}
.exhibition .plinth-front{background:linear-gradient(100deg,#fbfbfa,#f3f3f1);border:1px solid #deded733}
.exhibition .plinth-top{background:linear-gradient(160deg,#fefefd,#fafaf8)}
.exhibition .plinth-side{background:linear-gradient(90deg,#dddedb,#e5e6e2)}
.exhibition .exhibit-plinth::after{bottom:-7px;left:-10%;width:136%;height:14px;background:#5149382b;filter:blur(9px);transform:skewX(-20deg)}
.exhibition .exhibit-plinth::before{content:'';position:absolute;bottom:-2px;left:0;width:100%;height:3px;background:#4b443127;filter:blur(2px)}
.exhibition .exhibition-active-title,.exhibition .exhibition-controls{color:#252721}
.exhibition .exhibition-active-meta{color:#44463f}
.exhibition .exhibition-pending{color:#4f5149}
.exhibition .exhibit .mounted[data-frame="wood"]{border-color:#c3a77d}
/* Camera-coherent surfaces and projected pedestal faces. */
.exhibition .exhibition-track{transition:none}
.exhibition .exhibition-wall::before{background-position:var(--wall-camera-x,0px) 0}
.exhibition .exhibition-floor{border-top-width:2px;background-color:#d9c7ac}
.exhibition .exhibition-floor::before{left:-50%;width:200%;background-repeat:repeat;background-size:640px 480px;background-position:var(--floor-camera-x,0px) 0;transform:perspective(900px) rotateX(48deg);opacity:.38;filter:saturate(.40) brightness(1.24);mask-image:linear-gradient(180deg,#0009,#000);}
.exhibition .plinth-top{transform:none;top:calc(-1*var(--plinth-depth));height:var(--plinth-depth);background:#fcfcfa}
.exhibition .plinth-side{transform:none;top:calc(-1*var(--plinth-depth));bottom:0;width:0;background:linear-gradient(90deg,#dedfdb,#e5e6e1)}
.exhibition .exhibit[data-mount="pedestal"] .exhibit-object{transform:translateX(calc(-50% + var(--object-shift,0px)))}
.exhibition .exhibit-plinth{isolation:isolate}
.exhibition .exhibit-plinth::after{z-index:-1;bottom:-9px;left:-22%;width:158%;height:20px;background:#62513a26;filter:blur(9px);transform:skewX(-12deg)}
.exhibition .exhibit-plinth::before{bottom:-2px;height:4px;background:#49423540;filter:blur(2px)}
/* Alternating mirrored copies meet at matching image edges: no hard tile seams. */
.exhibition .exhibition-floor::before{display:none}
.exhibition .floor-material{position:absolute;inset:0 0 auto;height:320%;transform:perspective(900px) rotateX(48deg);transform-origin:50% 0;filter:saturate(.40) brightness(1.24);opacity:.38;pointer-events:none}
.exhibition .floor-grain{display:flex;position:absolute;inset:0 auto 0 0;height:100%;will-change:transform}
.exhibition .floor-grain span{display:block;flex:0 0 640px;width:640px;height:100%;background:url('/assets/exhibition-materials/oak-reference.jpg') center/100% 100% no-repeat}
.exhibition .floor-grain span:nth-child(even){transform:scaleX(-1)}
/* Whole-scene framing: interface stays outside the camera transform. */
.exhibition .exhibition-scene{position:absolute;inset:0;transform-origin:50% 50%;will-change:transform}
.exhibition .exhibition-wall{top:-150%;left:-150%;right:-150%}
.exhibition .exhibition-floor{left:-150%;right:-150%;bottom:-150%}
.exhibition .floor-material{height:650px;opacity:.32;filter:saturate(.38) brightness(1.26)}
.exhibition .floor-grain span{flex-basis:640px;background-size:100% 100%}
.exhibition .exhibition-wall::before{opacity:.11}
.exhibition .plinth-front{background:linear-gradient(105deg,#fafaf7,#f1f2ef);border-color:#ddddda22}
.exhibition .plinth-front::after{content:'';position:absolute;inset:0;background:url('/assets/exhibition-materials/white-wall.avif') center/626px 418px;opacity:.035;mix-blend-mode:multiply}
.exhibition .exhibit-plinth::before{height:3px;filter:blur(1.5px);background:#4c453538}
/* One broad upper-left light: short contact shadows and soft casts to the right. */
.exhibition{--shadow-contact:#45413738;--shadow-cast:#514b4021;--wall-shadow:#34332d1c}
.exhibition .exhibit-plinth::before{z-index:3;bottom:-2px;left:1%;width:98%;height:3px;background:var(--shadow-contact);filter:blur(1.6px);border-radius:45%}
.exhibition .exhibit-plinth::after{z-index:-1;left:8%;bottom:calc(-1 * var(--cast-length));width:118%;height:var(--cast-length);background:linear-gradient(180deg,#514b402b,var(--shadow-cast) 50%,transparent);border-radius:10% 35% 65% 45%;transform:skewX(34deg);transform-origin:top left;filter:blur(7px)}
.exhibition .plinth-front{background:linear-gradient(110deg,#fafaf7,#f0f1ed)}
.exhibition .plinth-side{background:linear-gradient(100deg,#dedfda,#e5e6e0)}
.exhibition .exhibit[data-mount="wall"] .mounted{filter:drop-shadow(var(--art-shadow-x,2px) var(--art-shadow-y,3px) var(--art-shadow-blur,2px) rgb(52 51 45 / var(--art-shadow-opacity,.22)))}
.exhibition .exhibit[data-mount="pedestal"] .mounted{filter:none}
.exhibition .artwork-cast-shadow{position:absolute;display:block;left:50%;bottom:50%;background:#454238;opacity:var(--art-shadow-opacity,.24);mask-repeat:no-repeat;mask-size:contain;mask-position:center bottom;transform:translate(calc(-42% + var(--art-shadow-x,0px)),var(--art-shadow-y,0px)) skewX(-30deg) scale(var(--art-shadow-scale,1)) scaleY(.20);transform-origin:center bottom;filter:blur(var(--art-shadow-blur,2.5px));pointer-events:none}
.exhibition .has-installation-shadow .plinth-top::after{content:'';position:absolute;left:50%;top:45%;width:var(--art-contact-width);height:3px;transform:translateX(-50%);background:var(--shadow-contact);border-radius:50%;filter:blur(1.5px);pointer-events:none}
/* Stronger shadow density, unchanged feathering and camera geometry. */
.exhibition{--shadow-contact:#45413759;--shadow-cast:#514b4036;--wall-shadow:#34332d2b}
.exhibition .exhibit-plinth::after{background:linear-gradient(180deg,#514b4042,var(--shadow-cast) 50%,transparent)}
.exhibition .plinth-side{background:linear-gradient(100deg,#d7d9d3,#e0e2da)}
.exhibition .artwork-cast-shadow{opacity:var(--art-shadow-opacity,.24)}
.exhibition-side-hint{position:absolute;top:48%;z-index:2;pointer-events:none;opacity:0;transition:opacity 160ms ease;color:#404039;font:300 48px/1 Arial,sans-serif;transform:translateY(-50%);user-select:none}
.exhibition-side-hint.side-previous{left:5%}
.exhibition-side-hint.side-next{right:5%}
@media(hover:hover) and (pointer:fine){.exhibition-room[data-side-hover="previous"],.exhibition-room[data-side-hover="next"]{cursor:pointer}.exhibition-room[data-side-hover="previous"] .side-previous,.exhibition-room[data-side-hover="next"] .side-next{opacity:.75}}
@media(prefers-reduced-motion:reduce){.exhibition-side-hint{transition:none}}
/* Museographic polish: tonal volume without outlines; fixed hairline chevrons. */
.exhibition .exhibition-wall{background:linear-gradient(180deg,#f8f8f5 0%,#f1f2ee 85%,#eaece6 100%)}
.exhibition .plinth-front{background:linear-gradient(105deg,#fdfdf9,#f6f7f2);border:0;box-shadow:inset -1px 0 #c9cdc029}
.exhibition .plinth-top{background:linear-gradient(110deg,#ffffff,#f8f9f5)}
.exhibition .plinth-side{background:linear-gradient(100deg,#d1d5cc,#dde1d7)}
.exhibition{--shadow-contact:#403b3280;--shadow-cast:#514b4052;--wall-shadow:#34332d38}
.exhibition .exhibit-plinth::before{height:4px;bottom:-2px;filter:blur(1.6px)}
.exhibition .exhibit-plinth::after{width:135%;height:calc(var(--cast-length)*1.25);bottom:calc(var(--cast-length)*-1.25);background:linear-gradient(180deg,#4943375c,var(--shadow-cast) 48%,transparent);filter:blur(9px)}
.exhibition .artwork-cast-shadow{opacity:var(--art-shadow-opacity,.24)}
.exhibition .exhibition-side-hint{top:var(--side-hint-y,48%);width:16px;height:28px;font-size:0;color:#55574f;opacity:0;transition:opacity 180ms ease;transform:translate(-50%,-50%)}
.exhibition .exhibition-side-hint.side-previous{left:42px;right:auto}
.exhibition .exhibition-side-hint.side-next{left:auto;right:42px;transform:translate(50%,-50%)}
.exhibition .exhibition-side-hint::before{content:'';position:absolute;top:6px;left:2px;width:14px;height:14px;border:solid currentColor;border-width:0 1px 1px 0;transform:rotate(135deg)}
.exhibition .exhibition-side-hint.side-next::before{left:0;transform:rotate(-45deg)}
@media(hover:hover) and (pointer:fine){.exhibition .exhibition-room[data-side-navigable="true"]{cursor:pointer}.exhibition .exhibition-room[data-side-hover="previous"] .side-previous,.exhibition .exhibition-room[data-side-hover="next"] .side-next{opacity:.65}}
@media(prefers-reduced-motion:reduce){.exhibition .exhibition-side-hint{transition:none}}
/* Keep both floor shadows below the clean front edge; no blur can climb the face. */
.exhibition .exhibit-plinth::before{top:100%;bottom:auto;left:1%;height:4px;z-index:-1;clip-path:inset(0 -12px -12px -12px);border-radius:0 0 50% 50%;background:linear-gradient(180deg,var(--shadow-contact),transparent)}
.exhibition .exhibit-plinth::after{top:100%;bottom:auto;clip-path:inset(0 -100px -100px -100px)}
/* One floor footprint shared by front and perspective side; opaque faces occlude it. */
.exhibition .exhibit-plinth::before,.exhibition .exhibit-plinth::after{content:none}
.exhibition .pedestal-floor-shadow{position:absolute;left:0;top:100%;width:1px;height:1px;overflow:visible;z-index:-1;pointer-events:none}
.exhibition .pedestal-shadow-projection{fill:#514839;opacity:.24}
.exhibition .pedestal-shadow-contact{fill:#403b32;stroke:#403b32;stroke-width:3px;stroke-linejoin:round;opacity:.34}
/* Per-artwork installation controls, isolated from the archive. */
.exhibition .exhibit-object.mounted{box-sizing:border-box;border:var(--mount-border,0px) solid var(--mount-color,#b88a58)!important;padding:var(--mount-mat,0px);transform-origin:50% 100%;transform:translateX(calc(-50% + var(--object-shift,0px))) perspective(1000px) rotateY(var(--photo-angle,0deg)) scaleX(var(--photo-compression,1))!important}
.exhibition .exhibit-object.mounted.is-front-facing{transform:translateX(calc(-50% + var(--object-shift,0px)))!important}
.exhibition .exhibit[data-mount="wall"] .mounted{background:var(--mount-background,transparent);transform-origin:center}
.exhibition .exhibit[data-mount="wall"] .mounted::before{content:'';position:absolute;top:calc(-1*var(--mount-border,0px));bottom:calc(-1*var(--mount-border,0px));left:var(--frame-side-left,100%);width:var(--frame-side-width,0px);background:var(--mount-color,#b88a58);filter:brightness(.78);z-index:-1;pointer-events:none}
.exhibition .exhibit[data-mount="floor"] .mounted{filter:drop-shadow(var(--art-shadow-x,2px) var(--art-shadow-y,4px) var(--art-shadow-blur,3px) rgb(64 59 50 / var(--art-shadow-opacity,.27)))}
.exhibition .table-leg{display:none}
.exhibition .exhibit[data-mount="table"] .exhibit-plinth{display:block}
.exhibition .exhibit[data-mount="table"] .plinth-front{height:var(--table-board);bottom:auto;z-index:2}
.exhibition .exhibit[data-mount="table"] .plinth-side{bottom:auto;height:calc(var(--table-board) + var(--plinth-depth));z-index:2}
.exhibition .exhibit[data-mount="table"] .plinth-top{z-index:3}
.exhibition .exhibit[data-mount="table"] .table-leg{display:block;position:absolute;bottom:0;height:calc(100% - var(--table-board));width:var(--table-leg);background:linear-gradient(90deg,#d1d5cc,#f6f7f2);box-shadow:2px 2px 3px #403b3222;z-index:1}
.exhibition .exhibit[data-mount="table"] .leg-back-left,.exhibition .exhibit[data-mount="table"] .leg-back-right{filter:brightness(.9);z-index:0}
.exhibition .exhibit[data-mount="table"] .pedestal-shadow-contact{opacity:0}
.exhibition .exhibit[data-mount="table"] .table-leg::after{content:'';position:absolute;top:100%;left:-2px;width:calc(100% + 4px);height:3px;background:#403b3266;filter:blur(1.5px)}
.exhibition .exhibit[data-mount="table"] .pedestal-shadow-projection{opacity:.12}
.exhibition .exhibit[data-mount="table"] .mounted{filter:none}
.exhibition .exhibit[data-mount="table"][data-finish="wood"] .plinth-top,.exhibition .exhibit[data-mount="table"][data-finish="wood"] .plinth-front,.exhibition .exhibit[data-mount="table"][data-finish="wood"] .plinth-side,.exhibition .exhibit[data-mount="table"][data-finish="wood"] .table-leg{background:#bc9467 url('/assets/exhibition-materials/oak-reference.jpg') center/300px}
.exhibition .exhibit[data-mount="table"][data-finish="wood"] .plinth-side{filter:brightness(.85)}
.exhibition .exhibit[data-mount="table"][data-finish="black"] .plinth-top,.exhibition .exhibit[data-mount="table"][data-finish="black"] .plinth-front,.exhibition .exhibit[data-mount="table"][data-finish="black"] .plinth-side,.exhibition .exhibit[data-mount="table"][data-finish="black"] .table-leg{background:linear-gradient(100deg,#383a36,#262824)}
/* Solid display tables: square legs, a continuous apron and pale wood. */
.exhibition .exhibit[data-mount="table"] .table-leg{box-shadow:none;background:linear-gradient(90deg,#dce0d7,#f6f7f2)}
.exhibition .exhibit[data-mount="table"] .table-leg::before{content:'';position:absolute;top:0;bottom:0;left:var(--leg-side-left,100%);width:var(--leg-side-width,0px);background:inherit;filter:brightness(.83)}
.exhibition .exhibit[data-mount="table"][data-finish="wood"] .plinth-top{background:linear-gradient(#ead6aeaa,#ead6aeaa),url('/assets/exhibition-materials/oak-reference.jpg') center/600px 360px}
.exhibition .exhibit[data-mount="table"][data-finish="wood"] .plinth-front,.exhibition .exhibit[data-mount="table"][data-finish="wood"] .plinth-side{background:linear-gradient(#dbbc83bb,#dbbc83bb),url('/assets/exhibition-materials/oak-reference.jpg') center/600px 400px}
.exhibition .exhibit[data-mount="table"][data-finish="wood"] .table-leg{background:linear-gradient(90deg,#c6a46eaa,#dfc594bb),url('/assets/exhibition-materials/oak-reference.jpg') center/120px 600px}
/* Leg fronts and sides share the tabletop depth vector, including their foot positions. */
.exhibition .exhibit[data-mount="table"] .table-leg{background:none!important;filter:none}
.exhibition .exhibit[data-mount="table"] .table-leg::before{content:none}
.exhibition .exhibit[data-mount="table"] .table-leg-front,.exhibition .exhibit[data-mount="table"] .table-leg-side{position:absolute;inset:0;display:block;background:linear-gradient(90deg,#e7e9e2,#f6f7f2)}
.exhibition .exhibit[data-mount="table"] .table-leg-side{filter:brightness(.85)}
.exhibition .exhibit[data-mount="table"][data-finish="wood"] .table-leg-front,.exhibition .exhibit[data-mount="table"][data-finish="wood"] .table-leg-side{background:linear-gradient(90deg,#c6a46eaa,#dfc594bb),url('/assets/exhibition-materials/oak-reference.jpg') center/120px 600px}
.exhibition .exhibit[data-mount="table"][data-finish="black"] .table-leg-front,.exhibition .exhibit[data-mount="table"][data-finish="black"] .table-leg-side{background:linear-gradient(100deg,#383a36,#262824)}
.exhibition .exhibit[data-mount="table"] .table-leg::after{left:var(--foot-front-x);width:var(--foot-width);height:2px}
/* Coplanar apron and leg fronts share one finish; shade only distinct side faces. */
.exhibition .exhibit[data-mount="table"][data-finish="white"] .plinth-front,
.exhibition .exhibit[data-mount="table"][data-finish="white"] .table-leg-front{background:#f6f7f2;box-shadow:none;filter:none}
.exhibition .exhibit[data-mount="table"][data-finish="white"] .plinth-side,
.exhibition .exhibit[data-mount="table"][data-finish="white"] .table-leg-side{background:#dce0d5;filter:none}
.exhibition .exhibit[data-mount="table"] .plinth-front::after{content:none}
.exhibition .exhibit[data-mount="table"][data-finish="black"] .plinth-front,
.exhibition .exhibit[data-mount="table"][data-finish="black"] .table-leg-front{background:#30322f;box-shadow:none;filter:none}
.exhibition .exhibit[data-mount="table"][data-finish="black"] .plinth-side,
.exhibition .exhibit[data-mount="table"][data-finish="black"] .table-leg-side{background:#282a26;filter:none}
.exhibition .exhibit:is([data-mount="pedestal"],[data-mount="table"],[data-mount="floor"]) .mounted img{object-position:center bottom}
.exhibition .has-installation-shadow .plinth-top::after{left:var(--contact-x,50%);top:var(--contact-y,50%);transform:translate(-50%,-50%)}
.exhibition .artwork-cast-shadow{left:var(--contact-x,50%);bottom:calc(100% - var(--contact-y,50%))}
@media(max-width:700px){.exhibition .exhibition-scene{will-change:auto}}
.exhibition .exhibit-visitor{position:absolute;width:auto;transform:translateX(-50%);transform-origin:center bottom;pointer-events:none;isolation:isolate}
.exhibition .exhibit-visitor[hidden]{display:none}
.exhibition .visitor-image{position:relative;z-index:2;width:auto;height:100%;max-width:none;object-fit:contain;object-position:center bottom;filter:drop-shadow(1px 2px 2px #25251f1a)}
.exhibition .visitor-shadow{position:absolute;z-index:1;left:50%;bottom:0;width:100%;height:100%;max-width:none;object-fit:contain;object-position:center bottom;transform-origin:center bottom;pointer-events:none}
.exhibition .exhibit-visitor[data-layer="back"]{z-index:1}.exhibition .exhibit-visitor[data-layer="front"]{z-index:4}
@media(prefers-reduced-motion:reduce){.exhibition .exhibit-visitor{transition:none}}
