/* Hallmark · macrostructure: Workbench · tone: technical-austere · anchor hue: signal-lime
 * pre-emit critique: P5 H4 E4 S5 R5 V5 */
*,*::before,*::after{box-sizing:border-box}
*{margin:0}
html{scroll-behavior:smooth;overflow-x:clip}
body{min-height:100svh;overflow-x:clip;background:var(--room-bg);color:var(--room-ink);font-family:var(--font-display);font-size:var(--text-base);line-height:1.55;-webkit-font-smoothing:antialiased}
body[data-room]{padding-top:var(--header-h)}
img,svg,canvas,video{display:block;max-width:100%}
[hidden]{display:none!important}
a{color:inherit;text-decoration:none}
button,input{font:inherit;color:inherit}
button{border:0;background:none;cursor:pointer}
::selection{background:var(--room-accent);color:var(--room-bg)}
:focus-visible{outline:2px solid var(--room-accent);outline-offset:4px}
.eyebrow{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--soft)}
.eyebrow::before{content:"[";color:var(--room-accent);margin-right:.65em}
.eyebrow::after{content:"]";color:var(--room-accent);margin-left:.65em}
.room-title{font-size:var(--text-hero);font-weight:760;font-variation-settings:"wdth" 82;letter-spacing:-.045em;line-height:.82;overflow-wrap:anywhere;min-width:0}
.exhibit-note{max-width:56ch;font-size:var(--text-md);line-height:1.55;color:color-mix(in srgb,var(--room-ink) 84%,var(--room-bg))}
.s4-header{position:fixed;z-index:1000;inset:0 0 auto;height:var(--header-h);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 clamp(1rem,3vw,3rem);background:color-mix(in srgb,var(--room-bg) 91%,transparent);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase}
.s4-wordmark{justify-self:start;font-family:var(--font-display);font-size:.9rem;font-weight:750;letter-spacing:-.01em}
.s4-wordmark::before{content:"●";color:var(--room-accent);font-size:.65em;margin-right:.75em}
.s4-room-label{justify-self:center;color:var(--soft)}
.s4-room-label em{font-style:normal;color:var(--room-accent)}
.s4-index-link{justify-self:end;position:relative}
.s4-index-link::after{content:"";position:absolute;left:0;right:100%;bottom:-.35rem;height:1px;background:var(--room-accent);transition:right .25s var(--ease-page)}
.s4-index-link:hover::after,.s4-index-link:focus-visible::after{right:0}
.s4-footer{margin-top:var(--space-10);border-top:1px solid var(--line)}
.s4-footer a{display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:var(--space-6);padding:clamp(2rem,7vw,6rem) clamp(1rem,4vw,4rem);transition:background .35s var(--ease-page),color .35s var(--ease-page)}
.s4-footer a:hover,.s4-footer a:focus-visible{background:var(--room-accent);color:var(--room-bg)}
.s4-footer-kicker{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase}
.s4-footer-title{font-size:var(--text-2xl);font-weight:760;letter-spacing:-.045em;line-height:.85}
.s4-arrow{font-size:var(--text-xl);transition:transform .35s var(--ease-page)}
.s4-footer a:hover .s4-arrow{transform:translateX(.4em)}
@media(max-width:680px){
  .s4-header{grid-template-columns:1fr auto;padding-inline:1rem}
  .s4-room-label{display:none}
  .s4-footer a{grid-template-columns:1fr auto;align-items:center}
  .s4-footer-kicker{grid-column:1/-1}
  .s4-footer-title{font-size:clamp(2.3rem,14vw,4.5rem)}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
