:root{--paper:#f7f5ef;--ink:#222723;--line:#d1d0c8;--red:#c93427;--blue:#315a73}*{box-sizing:border-box}body{margin:0;overflow:hidden;background:#deddd7;color:var(--ink);font:14px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,select,a,input{touch-action:manipulation}button,select{font:inherit;color:inherit;background:var(--paper);border:1px solid var(--line);min-height:44px;padding:10px;cursor:pointer;border-radius:0}button:hover,a:hover{color:var(--red)}button:focus-visible,select:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--red);outline-offset:3px}button:disabled{opacity:.4;cursor:wait}a{color:inherit}button svg,a svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;display:block}#gallery,canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none}.identity{position:absolute;left:28px;top:28px;background:var(--paper);padding:18px 22px;width:265px}.identity a{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:650;letter-spacing:.23em;font-size:12px}.identity a svg{width:16px;height:16px}.identity h1{font-size:19px;letter-spacing:.12em;font-weight:650;margin:13px 0 12px;line-height:1.1}.identity p{font-size:8px;letter-spacing:.17em;border-top:1px solid var(--line);padding-top:10px;margin:0}.utilities{position:absolute;top:28px;right:28px;display:flex;gap:8px}.utilities>button{width:44px;display:grid;place-items:center}.utilities #map-button{display:none}#info{position:absolute;right:28px;top:88px;width:min(390px,calc(100% - 40px));max-height:65dvh;overflow:auto;padding:26px;background:var(--paper);border:1px solid var(--line);z-index:4}#info h1{font-size:23px;line-height:1.3;margin:0 0 20px}#info p{font-size:13px;line-height:1.8}.small{font-size:12px;color:#676d67}.eyebrow{font-size:9px;letter-spacing:.18em}.location-panel{position:absolute;left:28px;bottom:28px;width:240px;background:var(--paper);padding:16px 18px}.location-panel .eyebrow{display:block;color:#686e68}.location-panel select{width:100%;padding:10px 0;font-size:14px;font-weight:550;border:0;border-bottom:1px solid var(--line);background:transparent}.location-panel>span:last-child{display:block;font-size:10px;color:#666e66;margin-top:10px}.transport{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);background:#242925;color:var(--paper);padding:12px 18px 7px;width:390px}#tour-progress{display:block;width:100%;height:12px;appearance:none;background:transparent;margin:0;cursor:pointer}#tour-progress::-webkit-slider-runnable-track{height:2px;background:#a0a49d}#tour-progress::-webkit-slider-thumb{appearance:none;width:7px;height:7px;margin-top:-2.5px;background:#ed6555;border-radius:50%}#tour-progress::-moz-range-track{height:2px;background:#a0a49d}#tour-progress::-moz-range-thumb{width:7px;height:7px;background:#ed6555;border:0;border-radius:50%}.transport-row{display:flex;align-items:center;justify-content:space-between;gap:6px}.transport button{background:transparent;color:var(--paper);border:0;display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;white-space:nowrap}.transport button:hover{color:#f18d80}.transport #tour{min-width:104px}.transport-row>span{font-size:10px;font-variant-numeric:tabular-nums;white-space:nowrap}#tour-icon svg{width:15px;height:15px}#floorplan{position:absolute;right:28px;bottom:28px;background:var(--paper);padding:15px;width:175px}.map-heading{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.12em}.north{color:var(--blue)}#map-svg{display:block;height:177px;width:100%;margin:8px 0}.map-floor{fill:#f7f5ef;stroke:var(--blue);stroke-width:.1}.map-wall{fill:none;stroke:var(--blue);stroke-width:.1}.map-dot{fill:#fff;stroke:var(--blue);stroke-width:.085;cursor:pointer}.map-dot.active{fill:var(--red);stroke:var(--red)}.map-hit{fill:transparent;cursor:pointer}.map-hit:focus{outline:none;stroke:var(--red);stroke-width:.08}.view-cone{fill:#c934271c}.camera-arrow{fill:var(--red);stroke:#fff;stroke-width:.05}.map-caption{font-size:9px;color:#6d736e}.walk{position:absolute;bottom:174px;left:28px;text-align:center;user-select:none}.walk button{width:36px;min-height:36px;padding:4px;background:#f7f5ef;border-color:#ddddd5;font-size:17px}.walk>button{margin-bottom:3px}.walk div{display:flex;gap:3px}#hint{position:absolute;top:32px;left:50%;transform:translateX(-50%);background:var(--paper);padding:8px 12px;font-size:10px;white-space:nowrap;transition:opacity .6s}body.exploring #hint{opacity:0;pointer-events:none}#loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:var(--paper);padding:24px;z-index:10}#loading[hidden],aside[hidden]{display:none}#loading strong{font-size:clamp(50px,8vw,96px);line-height:.93;letter-spacing:-.04em;margin:30px 0 20px}#loading a{font-size:12px;margin-top:26px}progress{width:220px;height:3px;accent-color:var(--red)}#xr-slot{display:flex}#xr-slot button{position:static!important;width:auto!important;background:var(--ink)!important;color:var(--paper)!important;opacity:1!important;padding:9px!important;border:0!important;border-radius:0!important;font:inherit!important}dialog{border:0;padding:28px;max-width:min(900px,94vw);max-height:94dvh;overflow:auto;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#131b20d9}dialog img{display:block;max-width:100%;max-height:65dvh;object-fit:contain;margin:auto}.art-caption{border-top:1px solid var(--line);margin-top:24px;padding-top:18px}.art-caption h2{font-size:24px;line-height:1.2;margin:7px 0}.art-caption p{margin:8px 0 16px;color:#5c655e}.art-caption a{font-size:12px}#close-art{position:sticky;top:0;float:right;font-size:26px;width:44px;padding:0;z-index:1}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}@media(max-width:1100px){#hint{top:158px}.transport{width:330px}.location-panel{width:210px}.transport #tour{min-width:90px}#floorplan{width:145px}#map-svg{height:152px}}@media(max-width:760px){.identity{top:16px;left:16px;width:min(205px,calc(100% - 128px));padding:13px 16px}.identity h1{font-size:14px;letter-spacing:.1em;margin:10px 0}.identity a{font-size:10px}.identity p{font-size:6px;letter-spacing:.1em;padding-top:7px}.utilities{top:16px;right:16px;gap:5px}.utilities #map-button{display:grid}.utilities #fullscreen{display:none}.utilities>button{width:40px;padding:9px;min-height:40px}.utilities svg{width:18px;height:18px}#info{top:120px;right:16px;max-height:calc(100dvh - 290px)}#hint{top:125px;max-width:90%;font-size:9px;white-space:normal;text-align:center;width:max-content}.location-panel{left:16px;bottom:calc(108px + env(safe-area-inset-bottom));width:calc(100% - 32px);padding:8px 12px;display:flex;align-items:center;gap:12px}.location-panel .eyebrow{font-size:8px;white-space:nowrap}.location-panel select{font-size:12px;min-height:36px;padding:4px;border:0}.location-panel>span:last-child{display:none}.transport{bottom:calc(16px + env(safe-area-inset-bottom));width:calc(100% - 32px);padding:12px 14px 9px}.transport button{min-height:44px}.walk{bottom:calc(185px + env(safe-area-inset-bottom));left:16px}.walk button{width:44px;min-height:44px}#floorplan{display:none;right:16px;bottom:calc(177px + env(safe-area-inset-bottom));width:145px;padding:12px}#floorplan.open{display:block}#map-svg{height:150px}.map-heading{font-size:7px}dialog{padding:16px;margin:auto auto 0;width:100%;max-width:100%;max-height:90dvh}dialog img{max-height:59dvh}.art-caption{margin-top:14px;padding-top:14px}.art-caption h2{font-size:22px}#xr-slot button{font-size:10px!important}}@media(max-height:520px){.identity{top:12px;padding:10px 15px}.identity p{display:none}.walk{display:none}#hint{display:none}#floorplan{display:none}.location-panel{bottom:16px;width:200px}.transport{bottom:16px;left:auto;right:16px;transform:none;width:320px}.utilities{top:12px}.location-panel>span:last-child{display:none}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

@media(max-width:360px){.identity h1{font-size:12px}.identity p{font-size:5.5px}}
