/* Intentionally isolated from the standard Mnemosyne stylesheet. */
:root{color-scheme:dark;font-family:'Instrument Sans',sans-serif;background:#080807;color:#d6d2c9}
*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible{outline:1px solid #e8d9b9;outline-offset:7px}button{border:0;background:none}button[hidden]{display:none}
.exhibition{position:relative;isolation:isolate;width:100%;height:100svh;min-height:0;overflow:hidden;--light-x:-1000px;--light-y:-1000px;--beam:220px;--ambient:.75;--light-strength:0}
.exhibition__scene{user-select:none;-webkit-user-select:none;position:absolute;inset:0;background:#48463f url('../exhibition/wall.webp') center/cover no-repeat}
.exhibition__heading{position:absolute;top:12%;left:0;width:100%;text-align:center;color:#979995;font-family:'Instrument Sans',sans-serif;font-weight:400}
.exhibition__heading p{font:italic 500 clamp(24px,2.3vw,34px)/1.15 'Cormorant Garamond',Georgia,serif;margin:0 0 10px;letter-spacing:.035em;color:#b4ad9e}
.exhibition__heading h1{font:700 clamp(42px,4.1vw,68px)/1.18 'Instrument Sans',sans-serif;letter-spacing:.10em;margin:0}
.artifact{position:absolute;display:block;transform:translate(-50%,-50%);text-decoration:none;height:32%;width:24%;outline:none}
.artifact__image,.artifact__shadow{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none}
.artifact__image{z-index:1}.artifact__shadow{filter:brightness(0) blur(var(--shadow-softness,6px));opacity:.92;transform:translate(var(--shadow-x,5px),var(--shadow-y,8px));transform-origin:center;will-change:transform}
.artifact--home{left:20%;top:44%;height:34%;width:24%}.artifact--explore{left:49%;top:46%;height:32%;width:27%}.artifact--articles{left:79%;top:44%;height:29%;width:30%}
.artifact--objects{left:24%;top:76%;height:29%;width:27%}.artifact--kids{left:54%;top:77%;height:35%;width:24%}.artifact--about{left:82%;top:75%;height:35%;width:22%}
.artifact__label{position:absolute;top:calc(100% + 20px);left:50%;transform:translateX(-50%);color:#eee4d1;font:500 12px/1.4 'Instrument Sans',sans-serif;letter-spacing:.18em;opacity:0;transition:opacity .23s;white-space:nowrap;z-index:2}
.artifact:hover .artifact__label,.artifact:focus-visible .artifact__label{opacity:1}.artifact:focus-visible{outline:none}.artifact:focus-visible .artifact__label{text-decoration:underline;text-underline-offset:6px}
.exhibition__darkness,.exhibition__warmth{display:none;position:absolute;inset:0;pointer-events:none;z-index:3}
.exhibition.is-ready .exhibition__darkness{display:block;background:radial-gradient(circle var(--beam) at var(--light-x) var(--light-y),rgba(0,0,0,calc(var(--ambient)*(1 - var(--light-strength)*.985))) 0%,rgba(0,0,0,calc(var(--ambient)*(1 - var(--light-strength)*.90))) var(--hotspot,34%),rgba(0,0,0,calc(var(--ambient)*(1 - var(--light-strength)*.54))) 60%,rgba(0,0,0,calc(var(--ambient)*(1 - var(--light-strength)*.12))) 87%,rgba(0,0,0,var(--ambient)) 115%)}
.exhibition.is-ready .exhibition__warmth{display:block;background:radial-gradient(circle var(--beam) at var(--light-x) var(--light-y),rgba(var(--warmth-rgb,255,155,70),.16) 0%,rgba(var(--warmth-rgb,255,155,70),.075) 50%,transparent 110%);opacity:var(--light-strength)}
.exhibition__controls{position:absolute;right:30px;top:28px;z-index:5;display:flex;gap:28px;align-items:center;font-size:13px;letter-spacing:.045em;line-height:1.5;color:#d1cec5}.exhibition__controls a{text-decoration:none}.exhibition__controls button{padding:0;min-width:68px;text-align:left}.exhibition__controls a:hover,.exhibition__controls button:hover{text-decoration:underline;text-underline-offset:5px;color:#fff}
.exhibition__hint{position:absolute;z-index:4;left:50%;top:53%;transform:translate(-50%,-50%);font-size:12px;text-align:center;color:#c3bcae;line-height:1.9;transition:opacity .5s;pointer-events:none;white-space:nowrap}.exhibition__hint span{font-size:11px;color:#9b968c}.exhibition.has-explored .exhibition__hint{opacity:0}
.exhibition__credits{position:absolute;z-index:5;left:28px;bottom:8px;font-size:11px;color:#a4a39c;padding:5px 0;text-align:left}.exhibition__credits:hover{color:#e5e1d5}.exhibition__status{position:absolute;right:30px;bottom:24px;z-index:5;font-size:12px;max-width:350px;color:#cbc3b4}
.exhibition__sources{color:#dad6cd;background:#1c1c19;border:1px solid #555246;padding:28px;max-height:75svh;width:min(520px,calc(100vw - 48px));margin:auto auto 65px 28px;box-shadow:0 20px 80px #0009;font-size:12px;line-height:1.7;z-index:10}.exhibition__sources::backdrop{background:#0007}.sources__header{display:flex;align-items:center;justify-content:space-between;gap:20px}.sources__header h2{font:500 23px 'Instrument Sans',sans-serif;margin:0}.sources__header button{font-size:12px;padding:8px}.exhibition__sources ul{list-style:none;padding:0;margin:24px 0}.exhibition__sources li{margin:0 0 17px}.exhibition__sources li span{display:block;font-size:10px;letter-spacing:.12em;color:#b6aa91}.exhibition__sources li a{font:400 15px/1.5 'Instrument Sans',sans-serif;text-decoration:none}.exhibition__sources a:hover{text-decoration:underline}.exhibition__sources small{display:block;color:#a7a49c;font-size:10px;margin-top:4px}.sources__music{border-top:1px solid #454239;padding-top:15px}
.exhibition__noscript{position:fixed;left:20px;bottom:50px;background:#111;padding:15px;font-size:12px;z-index:6}
.exhibition.is-reduced .exhibition__darkness{background:#0004}.exhibition.is-reduced .exhibition__warmth{display:none}.exhibition.is-reduced .artifact__label{opacity:1}.exhibition.is-reduced .artifact__shadow{will-change:auto}.exhibition.is-reduced .exhibition__hint{display:none}
@media(max-aspect-ratio:6/5){.exhibition__heading{top:15%}.artifact--home{left:20%}.artifact--articles{left:80%}.artifact--objects{left:20%}.artifact--kids{left:50%}.artifact--about{left:80%}}
@media(max-height:680px){.exhibition__heading{top:13%}.exhibition__heading h1{font-size:clamp(40px,4.1vw,55px)}.exhibition__heading p{font-size:18px}.artifact__label{font-size:11px;top:calc(100% + 16px)}.exhibition__credits{bottom:8px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}.artifact__label{opacity:1}}
/* No JavaScript: legible navigation. Touch/mobile JavaScript visits return home. */
@media(max-width:1023px),(hover:none),(pointer:coarse){.exhibition{min-height:700px}.exhibition__heading h1{font-size:clamp(30px,6vw,60px)}.exhibition__credits{max-width:70%;font-size:10px}.exhibition__controls{right:20px;gap:15px}.artifact__label{font-size:11px}}

/* Pigment and a restrained, cursor-following sheen share the wall's texture. */
.exhibition__heading h1{color:#aaa69b;background-image:radial-gradient(circle 150px at calc(var(--light-x) - var(--title-left,0px)) calc(var(--light-y) - var(--title-top,0px)),rgba(255,232,178,calc(var(--light-strength)*.72)),transparent 100%),linear-gradient(#aaa69baa,#aaa69baa),url('../exhibition/wall.webp');background-size:auto,auto,100vw auto;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.artifact{--object-scale:1}
.artifact__image{transform:scale(var(--object-scale));transition:transform .3s ease}
.artifact__shadow{transform:translate(var(--shadow-x,5px),var(--shadow-y,8px)) scale(var(--object-scale));transition:scale .3s ease}
.artifact:hover,.artifact:focus-visible{--object-scale:1}
@media(min-width:1024px){
 .exhibition__heading{top:10%}
 .artifact--home{left:14%;top:44%;height:29%;width:20%}
 .artifact--explore{left:38%;top:44%;height:29%;width:20%}
 .artifact--articles{left:62%;top:44%;height:25%;width:23%}
 .artifact--objects{left:86%;top:44%;height:29%;width:19%}
 .artifact--kids{left:36%;top:77%;height:25%;width:20%}
 .artifact--about{left:65%;top:77%;height:25%;width:20%}
 .exhibition__hint{top:64%}
}
@media(prefers-reduced-motion:reduce){.artifact{--object-scale:1!important}}

/* Compact desktop windows get real row spacing, not overlapping absolute rows. */
@media(max-width:1023px){
 .exhibition{height:max(100svh,1050px);min-height:1050px}
 .exhibition__heading{top:85px;padding:0 18px}
 .exhibition__heading h1{font-size:clamp(28px,6vw,54px);letter-spacing:.065em}
 .exhibition__heading p{font-size:clamp(21px,4vw,29px)}
 .artifact--home{left:26%;top:33%;width:32%;height:19%}
 .artifact--explore{left:74%;top:33%;width:32%;height:19%}
 .artifact--articles{left:26%;top:58%;width:35%;height:18%}
 .artifact--objects{left:74%;top:58%;width:32%;height:19%}
 .artifact--kids{left:26%;top:83%;width:32%;height:19%}
 .artifact--about{left:74%;top:83%;width:30%;height:19%}
 .exhibition__hint{top:21%;font-size:11px;white-space:normal;width:90%}
 .exhibition__credits{position:fixed;bottom:10px;left:14px;max-width:65%;font-size:9px}
 .artifact__label{top:calc(100% + 16px);font-size:11px}
}
.artifact__label{pointer-events:none}
.artifact:hover,.artifact:focus-visible{z-index:2}
.exhibition-note{position:fixed;z-index:8;width:230px;pointer-events:none;color:#e3d1aa;font:500 21px/1.13 'Caveat',cursive;transform:rotate(var(--note-tilt,-4deg));transform-origin:center;padding:10px 13px;background:radial-gradient(ellipse,#191712d9,transparent 75%);text-shadow:none}
.exhibition-note[hidden]{display:none}
.exhibition-note p{margin:0 0 6px}.exhibition-note p:first-child{font-size:24px}.exhibition-note p:last-child{font-size:19px}
.exhibition-note .ink{display:inline-block;clip-path:inset(0 100% 0 0);animation:write-ink .13s linear forwards;animation-delay:var(--ink-delay)}
.exhibition-note .word{display:inline-block;white-space:nowrap}
@keyframes write-ink{to{clip-path:inset(0)}}
@media(prefers-reduced-motion:reduce){.exhibition-note .ink{animation:none;clip-path:none}}
/* In a very narrow desktop pane, alternate objects to leave a writing margin. */
@media(max-width:680px){
 .exhibition{height:1850px;min-height:1850px}
 .artifact{width:34%;height:200px}
 .artifact--home{left:26%;top:350px}
 .artifact--explore{left:74%;top:620px}
 .artifact--articles{left:26%;top:890px}
 .artifact--objects{left:74%;top:1160px}
 .artifact--kids{left:26%;top:1430px}
 .artifact--about{left:74%;top:1700px}
 .exhibition__hint{top:210px}
}
.note-accessible{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
/* A loose perimeter composition leaves a quiet centre for the changing title. */
.exhibition__heading p{font:500 clamp(27px,2.8vw,42px)/1.25 'Caveat',cursive;letter-spacing:.015em}
.artifact__label{display:none!important}
.exhibition__controls{right:200px;top:28px}
@media(min-width:1024px){
 .exhibition__heading{top:42%;left:23%;width:54%;pointer-events:none}
 .exhibition__heading h1{font-size:clamp(35px,3.8vw,64px);letter-spacing:.075em;white-space:nowrap;min-height:1.2em}
 .artifact{transform:translate(-50%,-50%) rotate(var(--object-tilt,0deg))}
 .artifact--home{left:12%;top:23%;width:18%;height:32%;--object-tilt:-12deg}
 .artifact--articles{left:51%;top:20%;width:32%;height:28%;--object-tilt:8deg}
 .artifact--kids{left:89%;top:28%;width:15%;height:36%;--object-tilt:-14deg}
 .artifact--explore{left:14%;top:76%;width:19%;height:31%;--object-tilt:-8deg}
 .artifact--objects{left:51%;top:81%;width:22%;height:25%;--object-tilt:8deg}
 .artifact--about{left:88%;top:78%;width:17%;height:30%;--object-tilt:12deg}
 .exhibition__hint{top:59%}
}
/* Give cursive ascenders, descenders and overhanging strokes breathing room. */
.exhibition-note{line-height:1.32;padding:15px 16px}
.exhibition-note p{margin:0 0 8px}
.exhibition-note .ink{clip-path:inset(-.4em 100% -.4em -.4em)}
@keyframes write-ink{to{clip-path:inset(-.4em)}}
@media(prefers-reduced-motion:reduce){.exhibition-note .ink{clip-path:none}}
@media(max-width:680px){.exhibition__controls{right:175px;left:16px;top:28px;font-size:11px}.exhibition__heading p{font-size:30px}}

/* Oversized edge-cropped objects, with a clear central navigation area. */
@media(min-width:1024px){
 .artifact--home{left:8%;top:13%;width:29%;height:61%}
 .artifact--articles{left:51%;top:5%;width:42%;height:48%}
 .artifact--kids{left:98%;top:23%;width:32%;height:74%}
 .artifact--explore{left:9%;top:90%;width:29%;height:58%}
 .artifact--objects{left:51%;top:102%;width:32%;height:49%}
 .artifact--about{left:96%;top:94%;width:29%;height:62%}
 .exhibition__hint{top:66%}
}
.exhibition__heading .exhibition__instruction{font:400 13px/1.5 'Instrument Sans',sans-serif;letter-spacing:.045em;color:#b7b0a0;margin:18px 0 0}
.exhibition-note__destination{font:600 12px/1.5 'Instrument Sans',sans-serif;letter-spacing:.16em;color:#e6ddcc;margin:0 0 12px}
.exhibition-note p:first-of-type{font-size:24px}
.artifact__image{transform:none;transition:none}
@media(max-width:1023px){.exhibition__hint{display:none}}
/* Quiet permanent pencil directions live beneath the shared flashlight overlay. */
.exhibition-wayfinding{position:absolute;inset:0;pointer-events:none;color:#b8aa8a}
.exhibition-wayfinding__arrows{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.exhibition-wayfinding__arrows>path{fill:none;stroke:currentColor;stroke-width:1.1;stroke-linecap:round;marker-end:url(#pencil-arrow);vector-effect:non-scaling-stroke}
#pencil-arrow path{fill:none;stroke:currentColor;stroke-width:1.1;stroke-linejoin:round}
.exhibition-wayfinding__label{position:absolute;font:500 clamp(23px,2.1vw,33px)/1.2 'Caveat',cursive;transform:rotate(-7deg)}
.wayfinding--home{left:22%;top:32%}.wayfinding--articles{left:62%;top:27%;transform:rotate(5deg)}
.wayfinding--kids{left:78%;top:36%;transform:rotate(7deg)}.wayfinding--explore{left:23%;top:75%}
.wayfinding--objects{left:63%;top:76%;transform:rotate(5deg)}.wayfinding--about{left:74%;top:75%}
.exhibition-navigate{position:fixed;z-index:8;pointer-events:none;font:500 13px/1.4 'Instrument Sans',sans-serif;letter-spacing:.035em;color:#e7dac0;max-width:210px;padding:6px 9px;background:#171612a6;border-radius:2px}
.exhibition-navigate[hidden]{display:none}
@media(min-width:1024px){
 .exhibition__heading{left:25%;width:50%}
 .artifact--home{left:6%;top:10%;width:33%;height:68%}
 .artifact--articles{left:51%;top:3%;width:48%;height:55%}
 .artifact--kids{left:94%;top:23%;width:32%;height:74%}
 .artifact--explore{left:7%;top:94%;width:33%;height:65%}
 .artifact--objects{left:51%;top:106%;width:37%;height:57%}
 .artifact--about{left:98%;top:97%;width:34%;height:70%}
 .exhibition__controls{left:25%;right:auto;top:32px;font-size:12px}
}
@media(max-width:1023px){
 .exhibition-wayfinding__arrows{display:none}
 .exhibition-wayfinding__label{font-size:25px}
 .wayfinding--home{left:14%;top:45%}.wayfinding--explore{left:68%;top:45%}
 .wayfinding--articles{left:12%;top:70%}.wayfinding--objects{left:68%;top:70%}
 .wayfinding--kids{left:18%;top:95%}.wayfinding--about{left:69%;top:95%}
}
@media(max-width:680px){
 .wayfinding--home{left:17%;top:465px}.wayfinding--explore{left:68%;top:735px}
 .wayfinding--articles{left:16%;top:1005px}.wayfinding--objects{left:68%;top:1275px}
 .wayfinding--kids{left:18%;top:1545px}.wayfinding--about{left:69%;top:1815px}
}
.compact-pencil-arrow{display:none}
@media(max-width:1023px){.compact-pencil-arrow{display:block;position:absolute;left:5px;bottom:100%;width:65px;height:40px;fill:none;stroke:currentColor;stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round}}
/* Refinements: inward scale, muted pencil marks and a clear control rail. */
.exhibition-wayfinding{color:#827967}
@media(min-width:1024px){
 .artifact--home{left:9%;top:14%;width:35%;height:72%}
 .artifact--articles{left:50%;top:6%;width:51%;height:59%}
 .artifact--explore{left:10%;top:91%;width:35%;height:69%}
 .artifact--objects{left:50%;top:102%;width:40%;height:61%}
 .artifact--about{left:94%;top:93%;width:36%;height:74%}
 .exhibition__scene{clip-path:inset(68px 0 0)}
 .exhibition__controls{left:25%;top:23px;right:auto}
 .wayfinding--home{left:28%;top:38%}
 .wayfinding--articles{left:66%;top:34%}
 .wayfinding--explore{left:29%;top:71%}
 .wayfinding--objects{left:65%;top:73%}
 .wayfinding--about{left:71%;top:71%}
}
.exhibition{background:#48463f url('../exhibition/wall.webp') center/cover no-repeat}
.exhibition-wayfinding__arrows>path{stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
#pencil-arrow path{stroke-width:1.25;stroke-linecap:round}
@media(max-width:1023px){.compact-pencil-arrow{stroke-width:1.5}}
/* Floating controls; preserve the uninterrupted wall and object edges. */
.exhibition__scene{clip-path:none!important}
.exhibition__controls a{display:block;padding:9px 12px;border:1px solid #bfb9a544;border-radius:8px;background:#201e19ed;font:500 12px/1.3 'Instrument Sans',sans-serif;text-decoration:none}
.exhibition__controls a:hover{background:#302c22;text-decoration:none}
.exhibition-note{font-size:19px;line-height:1.25;padding:12px 14px}
.exhibition-note p:first-of-type{font-size:22px}.exhibition-note p:last-child{font-size:18px}
/* Fully hide unrevealed glyphs: clipped cursive overhangs caused the stray dots. */
.exhibition-note .ink{opacity:0;clip-path:inset(-.4em 100% -.4em -.4em);animation:write-clean .13s linear forwards;animation-delay:var(--ink-delay)}
@keyframes write-clean{0%{opacity:0;clip-path:inset(-.4em 100% -.4em -.4em)}1%{opacity:1}100%{opacity:1;clip-path:inset(-.4em)}}
@media(prefers-reduced-motion:reduce){.exhibition-note .ink{opacity:1;animation:none;clip-path:none}}
@media(min-width:1024px){.exhibition__controls{top:15px}.wayfinding--objects{left:60%;top:74%}.wayfinding--about{left:76%;top:68%}}
.exhibition{overflow:clip}
@media(min-width:1024px){.exhibition__controls{left:20%}.exhibition__controls a{font-size:11px}}
@media(min-width:1024px){
 .artifact--objects{top:98%}
 .wayfinding--objects{top:70%}
 .artifact--explore{width:39%;height:76%}
 .artifact--about{width:40%;height:81%}
}

/* Unadorned handwritten wayfinding, separated from the object silhouettes. */
@media(min-width:1024px){
 .wayfinding--home{left:26%;top:39%}
 .wayfinding--articles{left:65%;top:34%}
 .wayfinding--kids{left:78%;top:39%}
 .wayfinding--explore{left:27%;top:74%}
 .wayfinding--objects{left:65%;top:72%}
 .wayfinding--about{left:76%;top:68%}
}
/* Text sits directly on the illuminated wall without a dark backing. */
.exhibition-note,.exhibition-navigate{background:none}
@media(min-width:1024px){
 .wayfinding--home{left:21%;top:37%}
 .wayfinding--articles{left:60%;top:30%}
 .wayfinding--kids{left:82%;top:43%}
 .wayfinding--explore{left:22%;top:76%}
 .wayfinding--objects{left:61%;top:75%}
 .wayfinding--about{left:81%;top:69%}
}
@media(min-width:1024px){
 .wayfinding--about{left:79%}
 .wayfinding--home{left:19.5%;top:35.5%}
}
@media(min-width:681px) and (max-width:1023px){
 .wayfinding--home{left:12.5%;top:calc(45% - 15px)}
 .wayfinding--about{left:67%}
}
@media(max-width:680px){
 .wayfinding--home{left:15.5%;top:450px}
 .wayfinding--about{left:67%}
}
@media(min-width:1024px){
 .wayfinding--about{left:76.5%}
 .wayfinding--home{left:18%;top:34.5%}
}
@media(min-width:681px) and (max-width:1023px){
 .wayfinding--about{left:64.5%}
 .wayfinding--home{left:11%;top:calc(45% - 23px)}
}
@media(max-width:680px){
 .wayfinding--about{left:64.5%}
 .wayfinding--home{left:14%;top:442px}
}
/* Positions matched to the annotated October 20 reference. */
@media(min-width:1024px){
 .wayfinding--articles{left:49.5%;top:28.5%}
 .wayfinding--explore{left:15.5%;top:72%}
}

.exhibition-page{transition:opacity .45s ease}.exhibition-page.room-leaving{opacity:0}
@media(prefers-reduced-motion:reduce){.exhibition-page{transition:none}}
