@charset "UTF-8";
:root{color-scheme:dark;--bg:#081416;--panel:#102225;--ink:#f0e7d6;--muted:#a9b5ae;--gold:#d4b57d;--line:#c8ab6d3b;--serif:'Palatino Linotype',Palatino,Georgia,serif;font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--ink)}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}button,a,input,select{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit;border:0}button:disabled{cursor:wait;opacity:.6}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid #f5d89f;outline-offset:5px}button,select,a{touch-action:manipulation}#stage{position:fixed;inset:0;background:radial-gradient(ellipse at 70% 36%,#24413a 0,#0a181c 60%)}#stage canvas{display:block;width:100%;height:100%;touch-action:none;outline-offset:-5px}.vignette{position:fixed;inset:0;background:linear-gradient(90deg,#041012ed 0,#041012bc 28%,#04101220 62%),linear-gradient(0deg,#040d12c7,transparent 25%,transparent 80%,#040d1270);pointer-events:none;transition:opacity .6s}.masthead{position:fixed;z-index:10;left:0;right:0;top:0;display:flex;align-items:center;justify-content:space-between;padding:25px 3.5vw;gap:20px;background:linear-gradient(#061214ba,transparent)}.brand{display:flex;gap:12px;align-items:center;font-family:var(--serif);font-size:24px;letter-spacing:-.6px}.brand-mark{width:35px;height:39px;display:grid;place-items:center;font-size:30px;border:1px solid #d4b57d77;color:var(--gold)}.brand small{display:block;font:8px Arial,sans-serif;letter-spacing:3.2px;margin-top:5px;color:var(--muted)}.signature{font-family:var(--serif);font-size:16px;font-style:italic;color:#d4c3a7}.signature strong{font-weight:400;color:#efe0c6}.top-actions{display:flex;align-items:center;gap:10px}.quiet-button,.icon-button{border:1px solid var(--line);background:#08141686;backdrop-filter:blur(8px);border-radius:5px;padding:11px 17px;font-size:12px;letter-spacing:.5px}.quiet-button:hover,.icon-button:hover{border-color:var(--gold);background:#23362dcc}.icon-button{width:42px;height:42px;padding:0;font:23px var(--serif)}.top-actions .quiet-button span{font-size:18px;margin-right:8px}.intro{position:fixed;z-index:3;left:8vw;top:50%;width:min(570px,50vw);transform:translateY(-45%);transition:opacity .4s,transform .6s}.eyebrow{font-size:9px;letter-spacing:3px;font-weight:500;color:var(--gold);line-height:1.8}.eyebrow>span{display:inline-block;width:28px;height:1px;background:var(--gold);vertical-align:middle;margin-right:9px}h1{font:clamp(62px,6.6vw,115px)/.91 var(--serif);letter-spacing:-5px;margin:27px 0 24px;font-weight:400}h1 em{color:#dfc38f;font-weight:400}.artist{font:16px var(--serif);color:#b9c3b9;margin:0 0 24px}.artist span{font-size:22px;font-style:italic;color:var(--ink);padding-left:5px}.invitation{font:15px/1.8 Arial,sans-serif;color:#cad1c8;letter-spacing:.15px}.entrance-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin:30px 0 23px}.gold-button{background:#d6bb87;color:#18211b;border:1px solid #efdab0;padding:15px 23px;border-radius:3px;font-size:12px;font-weight:600;letter-spacing:.6px;box-shadow:0 3px 25px #070f1240;min-height:44px}.gold-button:hover{background:#ecd6ab}.text-button{background:transparent;border-bottom:1px solid #b8a16a77;padding:9px 0;color:#e5d5b9;font-size:12px}.text-button span{padding-left:10px}.collection-note{font-size:10px;letter-spacing:1.8px;color:#b7c5ba}#load-message{font-size:11px;color:#8daca0;max-width:400px;line-height:1.5;min-height:18px}.entrance-footer{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:25px 3.5vw;z-index:3;font-size:9px;letter-spacing:2px;color:#9baea4}.entrance-footer a{font-size:11px;letter-spacing:.4px;color:#cbbb9c}.entrance-footer a span{margin-left:12px}.visit-hud{position:fixed;inset:0;pointer-events:none;z-index:5}.visit-hud button,.visit-hud nav{pointer-events:auto}.room-nav{position:absolute;top:104px;left:50%;transform:translateX(-50%);display:flex;border:1px solid var(--line);background:#081416b8;backdrop-filter:blur(12px);border-radius:6px;overflow:hidden}.room-nav button{display:flex;align-items:center;gap:10px;background:transparent;padding:12px 18px;font-size:10px;color:#b6bdae;white-space:nowrap;border-right:1px solid var(--line)}.room-nav button:last-child{border:0}.room-nav button[aria-current=true]{background:#d4b57d24;color:#f0d8ac}.room-nav b{font:16px var(--serif);font-weight:400;color:var(--gold)}.room-caption{position:absolute;bottom:85px;left:3.5vw;text-shadow:0 2px 12px #000}.room-caption .eyebrow{font-size:8px;margin:0}.room-caption h2{font:27px var(--serif);font-weight:400;margin:8px 0;color:#e1d2b6}.room-caption p{font-size:10px;color:#b1bcb0;letter-spacing:1px;margin:0}.desktop-hint{position:absolute;bottom:20px;left:3.5vw;font-size:10px;color:#c5cfc4;text-shadow:0 1px 6px #000;letter-spacing:.3px}.desktop-hint kbd{font:9px Arial,sans-serif;border:1px solid #9eaa9966;border-radius:3px;padding:4px;margin:0 4px}.aim{position:absolute;left:50%;top:50%;width:8px;height:8px;border:1px solid #f4d79a77;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 15px #000}.aim i{display:block;width:2px;height:2px;margin:2px;background:#f3d8a1}.work-prompt{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);text-align:center;max-width:45vw;padding:9px 16px;background:#0613169e;border-radius:8px;font-size:11px;color:#dfd3bc;backdrop-filter:blur(8px)}.work-prompt>span{display:block;line-height:1.6}.work-prompt button{margin-top:7px;background:transparent;color:#f7dfac;border-top:1px solid #d4b57d44;padding:8px 10px 0;font-size:11px;white-space:nowrap}.fullscreen{position:absolute;right:3.5vw;bottom:24px}.walk-pad{position:absolute;right:3.5vw;bottom:90px;display:grid;grid-template-columns:44px 44px 44px;grid-template-rows:44px 44px;gap:5px;opacity:.72}.walk-pad button{border:1px solid #cfb68455;background:#0c252ab8;color:#e5cf9f;border-radius:5px;font-size:21px;user-select:none;touch-action:none}.walk-pad button:first-child{grid-column:2}.walk-pad button:nth-child(2){grid-column:1;grid-row:2}.walk-pad button:nth-child(3){grid-column:2;grid-row:2}.walk-pad button:nth-child(4){grid-column:3;grid-row:2}.walk-pad button:active,.walk-pad button.pressed{background:#d6bb8780;color:#fff}.walk-pad:hover{opacity:1}body[data-view=visit] .intro,body[data-view=visit] .entrance-footer{opacity:0;pointer-events:none;visibility:hidden}body[data-view=visit] .vignette{opacity:.3}body[data-view=catalog] .intro{opacity:0;pointer-events:none}dialog{color:var(--ink);background:#0b1b1e;border:1px solid #d4b57d55;border-radius:8px;padding:28px;width:min(1260px,94vw);max-height:90dvh;box-shadow:0 30px 100px #0009}dialog::backdrop{background:#02090bd6;backdrop-filter:blur(10px)}dialog[open]{animation:appear .22s ease}.dialog-top{position:sticky;top:-28px;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0 15px;background:#0b1b1ef5;z-index:2;border-bottom:1px solid var(--line)}.dialog-top .eyebrow{margin:0 0 6px}.dialog-top h2{font:35px var(--serif);font-weight:400;margin:0}.close-button{background:transparent;border:1px solid var(--line);width:43px;height:43px;min-width:43px;font:29px Arial;border-radius:50%;color:#ead7b0}.close-button:hover{background:#d4b57d22}.catalog-tools{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:20px 0;color:var(--muted);font-size:12px}.catalog-tools label{display:flex;align-items:center;gap:10px}select{font:12px Arial;padding:10px;background:#11292c;border:1px solid var(--line);border-radius:5px;color:#e6dbc7;max-width:230px}.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 23px}.catalog-card{display:block;text-align:left;background:transparent;padding:0;color:#e6d8be}.catalog-card figure{margin:0}.catalog-card .thumb-wrap{height:180px;display:flex;align-items:center;justify-content:center;background:#081215;border:5px double #a78951;box-shadow:0 8px 16px #0005;padding:6px;transition:transform .2s}.catalog-card:hover .thumb-wrap{transform:translateY(-4px);border-color:#e5c88b}.catalog-card img{max-width:100%;max-height:100%;object-fit:contain}.catalog-card figcaption{font:18px/1.3 var(--serif);margin:15px 0 6px}.catalog-card small{font:8px Arial;letter-spacing:1.5px;text-transform:uppercase;color:#879f95}#art-dialog{width:min(1500px,97vw);padding:16px;overflow:auto;max-height:97dvh;background:#071315}.art-close{position:fixed;right:max(3vw,calc((100vw - 1500px)/2 + 28px));top:3dvh;z-index:3;background:#081416d9;backdrop-filter:blur(8px)}.art-image-area{min-height:180px;height:72dvh;display:flex;align-items:center;justify-content:center;background:#040c0e;padding:9px}.art-image-area img{max-width:100%;max-height:100%;object-fit:contain;display:block;box-shadow:0 0 50px #0004}.art-caption{padding:22px 12px 12px;display:flex;justify-content:space-between;align-items:center;gap:25px}.art-caption .eyebrow{margin:0 0 5px;font-size:8px}.art-caption h2{font:30px/1.2 var(--serif);font-weight:400;margin:0}.art-source{font-size:11px;color:#91a99c;margin:9px 0 0}.art-controls{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.art-controls .quiet-button{font-size:18px;padding:8px 15px}.art-controls>span{font-size:10px;min-width:45px;text-align:center;color:var(--muted)}.art-controls .gold-button{font-size:10px;padding:12px 16px}#help-dialog{max-width:650px}#help-dialog>p{font-size:14px;line-height:1.9;color:#c1cdbf}body.no-3d #stage{background:linear-gradient(90deg,#071315f5,#07131588),url('images/opera-096-detail.jpg') center/cover no-repeat}body.no-3d .vignette{opacity:.6}.no-script{position:fixed;z-index:20;bottom:10px;left:10px;background:var(--panel);padding:20px}#art-error{color:#cdb38b;font-size:13px}@keyframes appear{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}[hidden]{display:none!important}
@media(max-width:1000px){.signature{display:none}.intro{left:6vw;width:60vw}h1{font-size:86px}.room-caption h2{font-size:23px}.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.desktop-hint{max-width:42vw;line-height:1.8}.walk-pad{bottom:85px}.room-nav{top:94px}.art-caption{align-items:flex-start}.art-controls{min-width:200px}}
@media(max-width:650px){.masthead{padding:18px 20px}.brand{font-size:20px}.brand-mark{width:29px;height:33px;font-size:26px}.brand small{font-size:7px;letter-spacing:2px}.top-actions{gap:7px}.top-actions .quiet-button{font-size:10px;padding:10px 11px}.top-actions .quiet-button span{margin-right:3px}.top-actions .icon-button{width:35px;height:35px;font-size:20px}.intro{top:48%;left:24px;width:calc(100vw - 48px);transform:translateY(-40%)}h1{font-size:76px;letter-spacing:-4px;margin:23px 0}.artist{font-size:14px;margin-bottom:22px}.artist span{font-size:20px}.invitation{font-size:13px}.entrance-actions{gap:19px;margin:24px 0 20px}.gold-button{font-size:11px;padding:14px 18px}.text-button{font-size:11px}.intro>.eyebrow{font-size:8px;letter-spacing:2.5px}.vignette{background:linear-gradient(90deg,#041012d9,#04101250),linear-gradient(0deg,#041012d9,transparent 90%)}.entrance-footer{padding:18px 24px}.entrance-footer>span{font-size:7px;letter-spacing:1.4px;max-width:50%;line-height:1.8}.entrance-footer a{font-size:10px}.room-nav{top:85px;width:calc(100vw - 40px);justify-content:stretch}.room-nav button{flex:1;justify-content:center;padding:10px 8px;gap:7px;font-size:9px}.room-nav b{font-size:14px}.room-caption{bottom:95px;left:20px;max-width:53vw}.room-caption h2{font-size:23px;line-height:1.1}.room-caption .eyebrow{letter-spacing:2px}.room-caption p{font-size:8px}.desktop-hint{display:none}.walk-pad{right:17px;bottom:42px;gap:5px;opacity:.9;grid-template-columns:43px 43px 43px;grid-template-rows:43px 43px}.work-prompt{bottom:22px;left:20px;transform:none;text-align:left;max-width:52vw;padding:8px 12px;font-size:10px}.work-prompt button{font-size:10px;padding:6px 0 0}.fullscreen{display:none}.aim{width:6px;height:6px}.aim i{display:none}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 16px}dialog{padding:18px;width:95vw}.dialog-top{top:-18px;padding:15px 0}.dialog-top h2{font-size:27px}.dialog-top .eyebrow{font-size:7px;letter-spacing:2px}.close-button{width:37px;height:37px;min-width:37px;font-size:25px}.catalog-card .thumb-wrap{height:130px;padding:4px}.catalog-card figcaption{font-size:17px;margin-top:12px}.catalog-card small{font-size:7px;letter-spacing:1px}.catalog-tools{font-size:10px;gap:10px;align-items:flex-start}.catalog-tools select{font-size:10px;max-width:160px}.catalog-tools label{gap:5px}.catalog-tools p{margin-top:9px}.art-image-area{height:62dvh;padding:4px}.art-caption{padding:18px 5px 6px;display:block}.art-caption h2{font-size:25px}.art-controls{justify-content:flex-start;margin-top:18px;gap:11px}.art-close{right:5vw;top:3dvh}.art-controls .gold-button{margin-left:auto}#help-dialog>p{font-size:13px}}
@media(max-height:620px) and (min-width:650px){.intro{top:50%;transform:translateY(-44%)}h1{font-size:60px;margin:13px 0}.artist{margin-bottom:12px}.invitation{font-size:12px}.entrance-actions{margin:15px 0 10px}.collection-note{margin-bottom:3px}.entrance-footer{padding:15px 3.5vw}.intro>.eyebrow{margin:0}.room-nav{top:84px}.masthead{padding-top:18px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

@media(max-width:650px){.masthead{gap:8px}.room-nav button{padding:10px 9px}.room-nav button:not(:last-child) span{display:none}.room-nav button:last-child span{font-size:9px}}

img.brand-mark{object-fit:contain;border:0;background:transparent;width:44px;height:44px}
.gallery-share{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.gallery-share a{color:inherit}body[data-view="visit"] .gallery-share{display:none}
.center-reticle{display:none;pointer-events:none;position:fixed;z-index:5;left:50%;top:50%;width:7px;height:7px;border:1px solid #ead6aa;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 3px #000}body.mouse-centered[data-view="visit"] .center-reticle{display:block}
