:root{color-scheme:dark;--paper:#f0e7d6;--gold:#c5a971;--ink:#17212d;--muted:#b9c5cb}
*{box-sizing:border-box}body{margin:0;background:#101a24;color:var(--paper);font:15px/1.55 system-ui,sans-serif}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;border:1px solid #526373;background:#213241;padding:9px 13px;border-radius:4px;cursor:pointer;min-height:44px}button:hover,button[aria-pressed=true]{border-color:var(--gold);background:#354d5f}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:3px solid #9de2dd;outline-offset:3px}button:disabled{opacity:.5;cursor:default}[hidden]{display:none!important}
.hub-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px max(20px,calc((100% - 1280px)/2));border-bottom:1px solid #32404c}.hub-header>a{text-decoration:none;letter-spacing:.08em;font-size:13px}.hub-languages{display:flex;gap:7px}.hub-languages a{text-decoration:none;padding:5px 9px;border:1px solid transparent}.hub-languages [aria-current=page]{border-color:var(--gold)}main{max-width:1280px;margin:auto;padding:0 24px}.hub-intro{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:34px 0 27px}.hub-eyebrow{color:var(--gold);font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin:0 0 8px}h1,h2{font-family:Georgia,serif;font-weight:400;line-height:1.15;margin:0}h1{font-size:clamp(30px,4vw,52px)}h1 em{font-weight:400;font-style:italic}p{margin:10px 0}.hub-intro p:not(.hub-eyebrow){color:var(--muted)}.hub-edition{text-align:end;font-size:12px;letter-spacing:.16em;color:var(--gold)}.hub-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding-bottom:12px}#hub-zones,.hub-tools{display:flex;flex-wrap:wrap;gap:7px}#hub-zones button{font-size:12px;border-inline-start:3px solid var(--zone)}.hub-tools button{font-size:12px}#hub-vr{background:#d4bb87;color:#17212d}
#hub-stage{position:relative;height:clamp(460px,66vh,780px);overflow:hidden;border:1px solid #586877;border-radius:5px;background:#273442}#hub-canvas{display:block;width:100%;height:100%;touch-action:none}#hub-status{position:absolute;top:12px;inset-inline-start:14px;background:#17212dcc;max-width:calc(100% - 28px);padding:6px 12px;border-radius:3px;font-size:12px;pointer-events:none}.hub-movement{position:absolute;bottom:14px;inset-inline-start:14px;display:grid;grid-template-columns:repeat(5,44px);gap:5px;direction:ltr}.hub-movement [data-move=forward]{grid-column:3}.hub-movement [data-turn=left]{grid-column:1;grid-row:2}.hub-movement [data-move=left]{grid-column:2;grid-row:2}.hub-movement [data-move=backward]{grid-column:3;grid-row:2}.hub-movement [data-move=right]{grid-column:4;grid-row:2}.hub-movement [data-turn=right]{grid-column:5;grid-row:2}.hub-movement button{padding:4px;background:#17212dc9;font-size:21px;touch-action:none}
#hub-panel{position:absolute;inset-inline-end:16px;top:52px;width:min(350px,calc(100% - 32px));max-height:calc(100% - 70px);overflow:auto;background:#142231e8;border:1px solid #b69c68;border-radius:6px;padding:20px;backdrop-filter:blur(7px);box-shadow:0 12px 35px #0005}#hub-panel h2{font-size:27px}#hub-panel-description{font-size:14px;white-space:pre-line}#hub-media-status{font-size:12px;color:#d4bc8c;min-height:18px}#hub-detail{display:block;max-width:100%;max-height:240px;width:auto;height:auto;margin:12px auto;object-fit:contain}#hub-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}#hub-actions button{font-size:12px}#hub-actions button:last-child{grid-column:1/-1}#hub-actions button[data-action=museum]{grid-column:1/-1}.hub-controls{color:var(--muted);font-size:12px}.hub-collection{margin:32px 0}#hub-works{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:24px}.hub-artist-list{border-top:3px solid var(--zone);padding-top:12px}.hub-artist-list h3{font:22px Georgia,serif;margin:0 0 12px}.hub-artist-list small{display:block;color:var(--muted);margin-top:14px}.hub-work-link{display:block;text-align:start;width:100%;margin:7px 0;background:transparent;border-color:#354552}.hub-work-link span{display:block;color:var(--gold);font-size:10px;letter-spacing:.1em}footer{display:flex;gap:20px;justify-content:space-between;padding:22px 0 30px;border-top:1px solid #32404c;font-size:12px;color:var(--muted)}
#hub-stage:fullscreen{height:100vh;width:100vw;border:0;border-radius:0}#hub-stage[data-xr=true] #hub-panel,#hub-stage[data-xr=true] .hub-movement{display:none}html[dir=rtl]{direction:rtl}html[dir=rtl] .hub-eyebrow{letter-spacing:0}
#hub-guide-panel{position:absolute;inset-inline-end:16px;top:52px;width:min(330px,calc(100% - 32px));max-height:calc(100% - 70px);overflow:auto;background:#142231d9;border:1px solid #b69c68;border-radius:6px;padding:17px;backdrop-filter:blur(6px);box-shadow:0 12px 35px #0005}#hub-guide-panel h2{font:25px Georgia,serif;margin:0 0 9px}#hub-guide-panel p{font-size:13px}#hub-guide-panel .hub-guide-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}#hub-guide-panel button{font-size:12px}#hub-guide-panel button:last-child{grid-column:1/-1}.hub-guide-call{margin-top:10px;width:100%;border:2px solid #dbbc75;background:var(--guide-color,#234552);color:#fff3d7;font-weight:600;box-shadow:inset 0 0 0 2px #f2dfa955}.hub-guide-call[aria-pressed=true]{background:#44353a;color:#fff3d7}.hub-guide-call:hover{filter:brightness(1.18) saturate(1.06);border-color:#f2dfa9}.hub-guide-call[aria-pressed=true]:hover{background:#624349}.hub-guide-qa{position:absolute;top:10px;inset-inline-start:10px;width:210px;max-height:calc(100% - 20px);overflow:auto;background:#152431ed;border:1px solid #c5a971;padding:12px;z-index:5}.hub-guide-qa label{display:block;font-size:11px;margin:8px 0}.hub-guide-qa output{float:inline-end}.hub-guide-qa input{display:block;width:100%}#hub-stage[data-xr=true] #hub-guide-panel,#hub-stage[data-xr=true] .hub-guide-qa{display:none}
#hub-guide-panel{left:16px;right:auto}.hub-guide-qa{top:auto;bottom:10px;left:10px;right:auto}
/* Desktop: keep navigation visible while giving the room the remaining viewport. */
@media(min-width:701px){
  .hub-header{padding:4px 16px;gap:12px;min-height:42px}
  .hub-header>a{font-size:12px;letter-spacing:.02em}
  .hub-languages{gap:4px}.hub-languages a{padding:3px 8px;font-size:12px;min-height:32px;display:flex;align-items:center}
  main{max-width:none;padding:0 16px}
  .hub-experience{display:grid;grid-template-rows:auto auto minmax(320px,1fr);height:calc(100vh - 50px);height:calc(100dvh - 50px)}
  .hub-intro{padding:7px 0;gap:12px}
  .hub-intro>div{display:flex;align-items:center;flex-wrap:wrap;gap:4px 16px}
  .hub-intro h1{order:-1;font-size:23px;line-height:1.2}
  .hub-intro .hub-eyebrow{margin:0;font-size:10px;letter-spacing:.08em}
  .hub-intro p:not(.hub-eyebrow),.hub-edition{display:none}
  .hub-toolbar{align-items:center;gap:6px 12px;padding-bottom:8px}
  #hub-zones,.hub-tools{gap:5px}
  .hub-toolbar button{min-height:34px;padding:5px 10px;line-height:1.35;font-size:12px}
  #hub-stage{height:100%;min-height:0}
  #hub-stage:fullscreen{height:100vh}
}
@media(min-width:701px) and (pointer:coarse){.hub-toolbar button{min-height:44px}.hub-languages a{min-height:36px}}
@media(max-width:700px){main{padding:0 12px}.hub-header{padding:12px}.hub-intro{padding:24px 0 18px}.hub-edition{display:none}.hub-intro p{font-size:13px}.hub-toolbar{gap:8px}#hub-zones{display:grid;grid-template-columns:1fr 1fr;width:100%}#hub-zones button{font-size:11px;padding:8px}.hub-tools{width:100%}.hub-tools button{flex:1;padding:7px;font-size:11px}#hub-stage{height:62svh;min-height:440px}#hub-panel{top:auto;bottom:10px;inset-inline-end:10px;width:calc(100% - 20px);max-height:72%;padding:14px}#hub-panel h2{font-size:23px}#hub-panel-description{font-size:13px}#hub-detail{max-height:180px}#hub-stage[data-panel=true] .hub-movement{display:none}#hub-works{grid-template-columns:1fr 1fr;gap:20px 12px}.hub-artist-list h3{font-size:19px}.hub-work-link{font-size:12px;padding:9px}footer{display:block}}
#hub-guide-panel{top:10px;bottom:auto;right:auto;inset-inline-end:auto;width:min(280px,calc(100% - 20px));max-height:calc(100% - 20px);padding:11px 12px;background:#142231b8;border-color:#d3b67c;border-radius:16px;backdrop-filter:none;box-shadow:0 5px 18px #0003}
#hub-guide-panel h2{font-size:20px;margin-bottom:6px}#hub-guide-panel p{font-size:12px;line-height:1.4;margin:6px 0 9px}#hub-guide-panel button{min-height:44px;padding:6px 8px;font-size:11px;background:#213241d9}#hub-guide-panel .hub-guide-actions{gap:5px}
#hub-guide-dock:empty{display:none}#hub-guide-dock #hub-guide-panel{position:relative;left:auto;top:auto;max-height:none;margin:10px auto}
#hub-panel{top:10px;bottom:auto;right:auto;inset-inline-end:auto;width:min(280px,calc(100% - 20px));max-height:calc(100% - 20px);padding:11px 12px;background:#142231b8;border-color:#d3b67c;border-radius:16px;backdrop-filter:none;box-shadow:0 5px 18px #0003}#hub-panel h2{font-size:20px}#hub-panel-artist{font-size:10px;margin:0 0 5px}#hub-panel-description{font-size:12px;line-height:1.4;margin:6px 0 9px}#hub-media-status{font-size:10px;min-height:0;margin:6px 0}#hub-actions{gap:5px}#hub-actions button,#hub-actions a{min-height:44px;padding:6px 8px;font-size:11px;background:#213241d9}#hub-actions button[data-action=museum]{grid-column:auto}#hub-detail{max-height:140px;margin:8px auto}#hub-actions a{display:flex;align-items:center;justify-content:center;color:#fff9ed;border:1px solid #ad9566;border-radius:4px;text-decoration:none;text-align:center}#hub-actions a:hover,#hub-actions a:focus-visible{background:#a5e6e0;color:#17212d;outline:2px solid #fff}#hub-artwork-dock:empty{display:none}#hub-artwork-dock #hub-panel{position:relative;left:auto;top:auto;max-height:none;margin:10px auto}
#hub-panel[data-placement=visitor]{max-height:calc(100% - 24px)}
#hub-guide-panel .hub-guide-actions a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:6px 8px;font-size:11px;background:#213241d9;color:#fff9ed;border:1px solid #ad9566;border-radius:4px;text-decoration:none;text-align:center}#hub-guide-panel .hub-guide-actions a:hover,#hub-guide-panel .hub-guide-actions a:focus-visible{background:#a5e6e0;color:#17212d;outline:2px solid #fff}
#hub-actions>*:last-child:nth-child(even){grid-column:auto}@media(min-width:701px) and (pointer:fine){#hub-actions button,#hub-actions a{min-height:34px;padding:3px 6px;font-size:10px}}
#hub-stage[data-panel=true] .hub-movement{display:grid}.hub-experience:fullscreen{display:grid;grid-template-rows:auto auto minmax(180px,1fr) auto auto;height:100vh;height:100dvh;width:100vw;overflow:auto;padding:8px;background:#101a24}.hub-experience:fullscreen #hub-stage{height:100%;min-height:180px}.hub-experience:fullscreen .hub-intro{padding:4px 0}.hub-experience:fullscreen .hub-intro h1{font-size:20px}.hub-experience:fullscreen .hub-intro p:not(.hub-eyebrow){display:none}.hub-experience:fullscreen .hub-toolbar{padding-bottom:6px}
