/* Quiet exhibition motion; original images and architectural language retained. */
:root{--ease:cubic-bezier(.22,1,.36,1)}
html{scroll-padding-top:100px}body{line-height:1.5}button{font:inherit;color:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,img:focus-visible{outline:2px solid #bc6b50;outline-offset:6px}
.nav{top:0;left:0;right:0;padding:18px 3vw;align-items:center;mix-blend-mode:normal;transition:background .4s,border-color .4s;line-height:1.3;font-size:12px;border-bottom:1px solid transparent}
.nav.scrolled,.nav.menu-open{background:rgba(23,23,20,.94);backdrop-filter:blur(16px);border-color:#ffffff21}.nav a{padding:10px 0;position:relative}.nav .right a:after{content:'';position:absolute;left:0;bottom:2px;width:100%;height:1px;background:#d99c83;transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}.nav .right a:hover:after,.nav a[aria-current]:after{transform:scaleX(1)}.menu-toggle{display:none;pointer-events:auto;background:none;border:0;padding:10px}
.hero-meta{font-size:16px;width:min(320px,25vw)}.hero h1{line-height:.88}.hero h1 span{animation:title-enter 1.4s var(--ease) both}.hero h1 span:nth-child(2){animation-delay:.16s}.hero-kicker{animation:title-enter 1.2s .25s var(--ease) both}@keyframes title-enter{from{opacity:0;transform:translateY(55px);clip-path:inset(100% 0 0 0)}to{opacity:1;transform:none;clip-path:inset(0)}}
.section-head p,.sticky-label .small{font-size:16px;line-height:1.65;max-width:360px}.cap{font-size:12px;line-height:1.5}.stage p{font-size:16px;line-height:1.65;color:#bbb7ad}.stage b{font-size:13px}.band-dark .sticky-label .tag{color:#b7b1a6}.section-head h2,.sticky-label .big,.quote-band h3{line-height:.96}.section-head h2{max-width:100%}.quote-band .sub{line-height:1.7}.footer{font-size:12px}.scroll-index{font-size:12px;left:3vw;bottom:16px;max-width:70vw}.figure,.frame{will-change:auto}
.reveal{opacity:1;transform:none}.motion .reveal:not(.on){opacity:0;transform:translateY(38px)}.motion .reveal{transition:opacity 1s var(--ease),transform 1.15s var(--ease);transition-delay:var(--delay,0ms)}
.inspect-image{cursor:zoom-in;transition:filter .5s var(--ease),transform .8s var(--ease)}.inspect-image:hover{filter:contrast(1.04)}.image-stack .frame:hover img{transform:scale(1.025)}.figure,.frame{position:relative}.zoom-hint{position:absolute;right:12px;top:12px;pointer-events:none;background:#171714e8;color:white;border:1px solid #ffffff45;border-radius:50%;height:42px;width:42px;display:grid;place-items:center;font-size:20px;opacity:0;transform:translateY(7px);transition:.35s var(--ease)}.figure:hover>.zoom-hint,.frame:hover>.zoom-hint,.figure:focus-within>.zoom-hint,.frame:focus-within>.zoom-hint{opacity:1;transform:none}
.timeline{border-color:#55534b}.stage{position:relative;border-color:#55534b;transition:background .4s;padding-top:28px!important}.stage:before{content:'';position:absolute;top:-1px;left:0;right:0;height:2px;background:#c89277;transform:scaleX(0);transform-origin:left;transition:transform .65s var(--ease)}.stage:hover:before,.stage:focus-visible:before{transform:scaleX(1)}.stage:hover{background:#ffffff05}
.passage{background:#f2efe7;min-height:0;overflow:visible;padding:110px 3vw 0}.passage-heading{max-width:var(--max);margin:0 auto 64px;display:grid;grid-template-columns:1fr 3fr;gap:24px}.passage-heading .no{font-size:12px;letter-spacing:.12em;padding-top:9px;text-transform:uppercase}.passage-heading h2{font-size:clamp(44px,6.5vw,112px);line-height:1;letter-spacing:-.06em;margin:0}.passage-heading h2 span{color:var(--accent)}.passage-heading>p{grid-column:2;font-size:18px;line-height:1.65;margin:8px 0 0;color:#57534b}
.passage-layout{max-width:var(--max);margin:auto;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:5vw;align-items:start}.site-drawing{margin:0;position:sticky;top:100px}.map-window{aspect-ratio:980/1088;overflow:hidden;border:1px solid #b8b2a6;background:#ded9cf}.passage .map-window img{width:150.51%;max-width:none;height:auto;min-height:0;object-fit:initial;filter:none}.site-drawing figcaption{display:flex;justify-content:space-between;gap:20px;font-size:12px;line-height:1.5;letter-spacing:.05em;text-transform:uppercase;padding:16px 0;border-bottom:1px solid var(--line)}.site-drawing figcaption span:last-child{color:var(--accent)}.site-facts{display:grid;grid-template-columns:repeat(3,1fr);padding:24px 0;gap:12px}.site-facts span{display:block;font-size:12px;color:#625d54}.site-facts strong{display:block;font-size:clamp(16px,1.6vw,25px);font-weight:400;margin-top:5px;white-space:nowrap}
.passage-intro{font-size:clamp(18px,1.6vw,24px);line-height:1.65;margin:0 0 36px;letter-spacing:-.02em}.journey details{border-top:1px solid var(--line);position:relative}.journey details:last-child{border-bottom:1px solid var(--line)}.journey details:before{content:'';height:2px;position:absolute;top:-1px;left:0;width:100%;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease)}.journey details[open]:before{transform:scaleX(1)}.journey summary{display:flex;align-items:center;gap:22px;list-style:none;cursor:pointer;padding:25px 0}.journey summary::-webkit-details-marker{display:none}.journey summary>span{font-size:12px;letter-spacing:.1em;color:var(--accent)}.journey h3{font-size:clamp(20px,2vw,30px);font-weight:400;letter-spacing:-.035em;margin:0;line-height:1.2}.journey i{font-style:normal;font-size:24px;margin-left:auto;font-weight:300;transition:transform .4s}.journey details[open] i{transform:rotate(45deg)}.journey-body{padding:0 0 24px 38px}.journey-body p{font-size:17px;line-height:1.75;color:#4a463f;margin:0;max-width:50ch}.journey details[open] .journey-body{animation:reading-in .5s var(--ease)}@keyframes reading-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.reading-note{font-size:12px;color:#6e6a61;margin-top:20px}
.closing-statement{border-top:1px solid var(--line);max-width:var(--max);margin:90px auto 0;padding:65px 0 90px}.closing-statement>span{font-size:12px;text-transform:uppercase;letter-spacing:.15em}.closing-statement p{font-size:clamp(36px,6.5vw,110px);line-height:1.06;letter-spacing:-.055em;margin:32px 0 40px}.closing-statement a{display:inline-block;font-size:14px;border-bottom:1px solid var(--ink);padding:6px 0;transition:color .3s}.closing-statement a:hover{color:var(--accent)}
.image-viewer{width:100vw;max-width:none;height:100dvh;max-height:none;border:0;padding:0;margin:0;background:#171714;color:#eee9df;overflow:hidden}.image-viewer[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;animation:viewer-in .3s var(--ease)}.image-viewer::backdrop{background:#171714e8}@keyframes viewer-in{from{opacity:0}to{opacity:1}}.viewer-top,.viewer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 3vw;z-index:1}.viewer-top{border-bottom:1px solid #ffffff26}.viewer-top span{font-size:12px;letter-spacing:.1em}.image-viewer button{border:1px solid #ffffff45;background:transparent;min-width:44px;min-height:44px;padding:8px 14px;font-size:14px;transition:background .2s}.image-viewer button:hover{background:#ffffff1c}.viewer-viewport{overflow:auto;overscroll-behavior:contain;background:#11110f;position:relative;touch-action:pan-x pan-y;cursor:grab}.viewer-viewport.dragging{cursor:grabbing;user-select:none}.viewer-viewport img{max-width:none;object-fit:contain;display:block;margin:auto;user-select:none}.viewer-bottom{border-top:1px solid #ffffff26}.viewer-bottom p{font-size:14px;margin:0;max-width:60ch}.viewer-controls{display:flex;gap:6px;flex-shrink:0}body.viewer-open{overflow:hidden}
@media(min-width:1500px){.site-drawing{max-width:760px}}
@media(max-width:900px){.nav{padding:10px 5vw}.nav .right{display:none}.menu-toggle{display:flex;gap:12px;font-size:12px}.nav.menu-open .right{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:0;padding:14px 5vw 24px;background:#171714}.nav .right a{font-size:20px;padding:14px 0}.hero{min-height:560px}.hero h1{font-size:18vw;line-height:.94}.hero-title{bottom:9vw;left:5vw}.hero-index{font-size:12px}.passage{padding:80px 5vw 0}.passage-heading{grid-template-columns:1fr;gap:18px;margin-bottom:40px}.passage-heading>p{grid-column:1;font-size:17px}.passage-heading h2{font-size:clamp(38px,7.5vw,68px)}.passage-layout{grid-template-columns:1fr;gap:36px}.site-drawing{position:relative;top:auto}.passage-intro{font-size:20px}.journey h3{font-size:24px}.journey-body{padding-left:36px}.closing-statement{margin-top:55px;padding:40px 0 65px}.closing-statement p{font-size:8vw}.section-head p{max-width:52ch}.sticky-label .small{max-width:52ch}.section-head h2{line-height:1}.quote-band h3{font-size:11vw;line-height:1}.hero-meta{display:none}.viewer-bottom{flex-direction:column;align-items:flex-start;padding:12px 5vw}.viewer-bottom p{max-height:4.5em;overflow:auto}.viewer-controls{width:100%;justify-content:space-between}.viewer-top{padding:10px 5vw}.site-facts strong{font-size:19px}.zoom-hint{opacity:1;transform:none;height:34px;width:34px}.tilt{transform:none!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion .reveal:not(.on){opacity:1;transform:none}.tilt{transform:none!important}}
