/* One visit in 1949: warm photographs, cream paper and a compact interactive atlas. */
:root{--ink:#292219;--forest:#211b15;--forest-light:#342a20;--paper:#f2eadc;--warm:#e9dec9;--gold:#d1ae73;--gold-dark:#8e6637;--line:#513c282b;--muted:#776b5b;--header:74px}
/* Scrollbars follow the surface they belong to; the page rail stays dark. */
html{--scrollbar-track:var(--forest);--scrollbar-thumb:#aa8b58;--scrollbar-hover:var(--gold);background:var(--forest)}
body{--scrollbar-track:#e4d8c4;--scrollbar-thumb:#967343;--scrollbar-hover:var(--gold-dark)}
.dark,dialog,.film-stage,.interior-stage{--scrollbar-track:var(--forest);--scrollbar-thumb:#aa8b58;--scrollbar-hover:var(--gold)}
.ticket-dialog,.reference-dialog{--scrollbar-track:#e4d8c4;--scrollbar-thumb:#967343;--scrollbar-hover:var(--gold-dark)}
*,.document-strip{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}
*::-webkit-scrollbar{width:10px;height:10px}
*::-webkit-scrollbar-track,*::-webkit-scrollbar-corner{background:var(--scrollbar-track)}
*::-webkit-scrollbar-thumb{min-height:40px;border:2px solid var(--scrollbar-track);border-radius:10px;background:var(--scrollbar-thumb)}
*::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-hover)}
@media(forced-colors:active){*,.document-strip{scrollbar-color:auto}}
body{background:var(--paper)}
html{scroll-padding-top:0}
.chapter{scroll-margin-top:calc(var(--header) + 18px)}
.hero-track,.chapter:has(> .film-track){scroll-margin-top:0}
.reduced-motion .chapter:has(> .film-track){scroll-margin-top:calc(var(--header) + 18px)}
.paper,.warm{background-image:radial-gradient(ellipse at 20% 0,#fff8ec80,transparent 65%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.035' filter='url(%23n)'/%3E%3C/svg%3E")}
.dark{background-color:var(--forest)}
dialog::backdrop{background:#1b150fdf}
.image-stage{background:#211b15}
.scroll-progress{right:auto;width:100vw;background:var(--forest)}
.site-header{top:0;right:auto;width:100vw;min-width:0;background:var(--forest);border-bottom-color:#ead8b425;backdrop-filter:none;-webkit-backdrop-filter:none}
.brand>img{width:44px;height:44px;filter:none;object-fit:contain}
.site-footer .brand>img{display:none}
.reading p,.two-columns p{color:#5b5145}
.dark .reading p,.dark .guide-page>p,.dark .document-thumb small,.dark .document-thumb>span{color:#e5d9c4ba}
.dark .lead{color:var(--paper)}
.source-note,.figure-caption{color:#79684f}
.dark .figure-caption,.scene-credit{color:#e2d1b9}
.chapter .section-wrap{padding-top:95px;padding-bottom:100px}
.chapter-label{letter-spacing:.16em}
.hero-shade{background:linear-gradient(90deg,#211b15 0%,#211b15ed 27%,#211b1590 49%,transparent 77%),linear-gradient(0deg,#211b15ee,transparent 55%)}
.hero-world{background:#211b15}
.hero-world img{filter:brightness(.86) saturate(.68);object-position:50% 60%}
.hero-copy{top:25%;width:60%}
.hero-copy h1{font-size:clamp(70px,7.5vw,122px)}
.hero-intro{color:#eee2cccf;font:18px/1.6 var(--sans)}
.hero-coordinates{color:#e5d3b4}
.hero-bottom{bottom:30px}
.hero-figure-caption.scene-credit{bottom:93px;max-width:700px;font-size:10px;line-height:1.6}
.hero-after>p:last-child{font-size:clamp(70px,8vw,122px)}
.context-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:8%;margin-bottom:55px}
.context-heading>p{max-width:390px;font:18px/1.65 var(--serif);color:#75624b}
.panel-original-text{column-count:2;column-gap:7%;font:16px/1.9 var(--sans);color:#53483c}
.panel-original-text p{margin-bottom:24px;break-inside:avoid}
.context-bottom{display:flex;justify-content:space-between;gap:30px;align-items:center;border-top:1px solid var(--line);margin-top:30px;padding-top:28px}
.context-bottom>span{font-size:11px;color:var(--muted);max-width:430px}
.context-documents{border-top:1px solid var(--line);margin-top:35px;padding-top:22px}
.context-documents>summary{cursor:pointer;display:flex;justify-content:space-between;font-size:13px;list-style:none}
.context-documents>summary::-webkit-details-marker{display:none}
.context-photograph{display:grid;grid-template-columns:230px 1fr;gap:35px;align-items:center;padding:40px 0}
.context-photograph p{font-size:13px;max-width:400px}
.context-photograph .archive-figure{max-width:230px}
.context-documents .time-chapter .section-wrap{padding:55px;width:100%}
.context-documents .time-heading h2{font-size:50px}
.context-documents .time-world{height:auto;min-height:190px;margin:30px 0}
.context-documents .time-card{position:relative;bottom:auto;right:auto;max-width:650px;width:100%;background:#352c22;padding:25px 30px}
.context-documents .time-orbit,.context-documents .time-people{display:none}
.context-documents .time-heading>p{color:#ddcbae99}
.arrival-document{display:grid;grid-template-columns:330px 1fr;gap:10%;align-items:center;max-width:1100px}
.arrival-photograph{margin:0;min-width:0}
.arrival-document .threshold-photo{height:auto;max-height:none;border:8px solid #e7dcc7}
.arrival-document .threshold-photo img{display:block;height:auto;object-fit:contain}
.arrival-document .threshold-photo::after{display:none}
.arrival-photograph .figure-caption{position:static;margin:14px 0 0;padding:0;background:none;font:var(--caption-copy)/1.65 var(--sans);letter-spacing:0;color:#79684f}
.arrival-document .reading{max-width:540px}
.arrival-document .source-note{margin-top:25px}
.arrival-document .button{margin-top:26px}
.film-track{height:210svh;min-height:1400px;background:#211b15}
.film-stage{position:sticky;top:0;height:100svh;min-height:100svh;isolation:isolate;overflow:hidden;color:var(--paper)}
.film-visual{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(var(--scene-scale,1.02)) translateY(var(--scene-y,0%));transform-origin:50% 65%;filter:saturate(.72);z-index:-3;will-change:transform}
.film-shadow{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#1e1812d9 0%,#1e1812a8 26%,#1e18122e 64%,transparent),linear-gradient(0deg,#1e1812ee 0%,transparent 38%,#1e18122b 80%)}
.film-border{position:absolute;inset:calc(var(--header) + 22px) 26px 84px;border:1px solid #dfc9a02a;pointer-events:none;opacity:calc(1 - var(--scene,0));clip-path:inset(var(--frame-inset,0%))}
.film-heading{position:absolute;top:27%;left:var(--gutter);width:56%;max-width:760px;opacity:var(--heading-opacity,1);transform:translateY(var(--heading-y,0px))}
.film-heading .eyebrow{color:var(--gold);display:block;margin-bottom:27px}
.film-heading h2{font-size:clamp(64px,7.7vw,118px);line-height:1.05;color:var(--paper)}
.film-heading h2 em{color:var(--gold)}
.film-heading>p{font-size:17px;line-height:1.7;max-width:340px;color:#f2e7d2b8;margin-top:28px}
.film-reading{position:absolute;left:var(--gutter);right:var(--gutter);top:27%;width:min(620px,65%);opacity:var(--reading-opacity,0);transform:translateY(var(--reading-y,45px));pointer-events:none}
.film-reading{max-height:none;overflow:visible;overscroll-behavior:auto;padding-bottom:6px}
.film-stage[data-scene-act="lectura"] .film-reading{pointer-events:auto}
.film-cue{position:absolute;left:var(--gutter);right:var(--gutter);bottom:180px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.15em;color:#dfc9a799}
.scene-credit{position:absolute;left:var(--gutter);right:var(--gutter);bottom:96px;margin:0;max-width:850px;font:11px/1.65 var(--sans);text-align:left}
.traveller-quote blockquote{border:0;padding:0;margin:0;font:italic 36px/1.4 var(--serif);letter-spacing:-.02em;color:var(--paper)}
.traveller-quote cite{display:block;color:var(--gold);font:12px/1.7 var(--sans);text-transform:none;letter-spacing:0;margin-top:25px}
.traveller-quote cite em{font-style:italic}
.quote-tools{display:flex;align-items:center;gap:22px;margin-top:24px;font:10px/1.6 var(--sans)}
.quote-tools button{border-bottom:1px solid #d4ba8f88;padding:6px 0;color:var(--paper);font:11px/1.6 var(--sans)}
.translation-label{color:#dac8a799}
.quote-reference{margin-top:16px;font:10px/1.6 var(--sans);color:#dfd1b6b3;max-width:550px}
.quote-reference summary{cursor:pointer;list-style:none;text-decoration:underline;text-underline-offset:4px}
.quote-reference p{font:11px/1.55 var(--sans);margin-top:12px;background:#1f1912e8;padding:10px 15px}
.arrival-film .film-visual,.girola-film .film-visual,.altar-film .film-visual{width:66%;left:34%;object-fit:contain;object-position:70% 50%}
.arrival-film .film-shadow,.girola-film .film-shadow,.altar-film .film-shadow{background:linear-gradient(90deg,#211b15 0%,#211b15e8 23%,#211b1570 42%,transparent 67%),linear-gradient(0deg,#211b15ee 0%,transparent 37%)}
.arrival-film .film-reading,.girola-film .film-reading,.altar-film .film-reading{width:40%;max-width:570px}
.ticket-film .film-stage{background:radial-gradient(ellipse at 50% 65%,#715d3d70,transparent 62%),#201a14}
.ticket-film .film-visual{height:44%;top:43%;left:4%;width:92%;object-fit:contain;z-index:-1;filter:saturate(.6);transform:scale(calc(.95 + var(--scene,0)*.11)) translateY(calc(var(--scene,0)*-35px))}
.ticket-film .film-heading{top:16%;width:46%}
.ticket-film .film-heading h2{font-size:clamp(56px,5.5vw,84px)}
.ticket-film .film-heading>p{margin-top:20px}
.ticket-film .film-reading{left:56%;top:19%;width:37%;max-width:530px}
.ticket-film .traveller-quote blockquote{font-size:27px}
.purchase-controls{position:absolute;left:var(--gutter);top:55%;width:310px;display:flex;align-items:flex-start;flex-wrap:wrap;gap:14px;z-index:4}
.purchase-controls>.button{background:var(--gold);color:var(--forest)}
.purchase-controls .text-link{font-size:12px;color:var(--paper)}
.purchase-note,#purchase-status{display:block;font:10px/1.5 var(--sans);color:#d8c5a1;width:100%}
#purchase-status{color:var(--gold)}
.original-ticket-link{margin-top:20px;color:var(--paper)!important;font-size:11px}
.ticket-collected .ticket-film .film-visual{animation:receive-ticket 1.3s cubic-bezier(.16,1,.3,1) both}
@keyframes receive-ticket{0%{translate:-7vw 0;scale:.94}100%{translate:0 0;scale:1}}
.ticket-table{background:#e9dfcb;border-color:#a2885c36}
.atlas-chapter .map-intro>p{color:#78654d}
.plan-map{background:transparent;box-shadow:none;overflow:visible}
.plan-map>img{filter:drop-shadow(0 10px 9px #5b41281b)}
.map-gateway{background:#e9dec9e8;color:#724a31;border:0}
.map-key{color:#705b41;font-size:10px}
.map-key .text-link{color:#765c38}
.map-layout{grid-template-columns:1.35fr .8fr;gap:8%;align-items:start}
.zone-panel{padding-top:30px}
.atlas-chapter .map-intro{margin-bottom:36px}
.atlas-chapter .map-intro h2{font-size:70px}
.atlas-chapter .section-wrap{padding-top:65px}
.atlas-chapter .chapter-label{margin-bottom:32px}
.zone-detail h3{color:var(--ink);font-size:38px}
.zone-detail p{color:#766450;font-size:14px}
.zone-tabs{margin-top:15px;margin-bottom:22px;padding-bottom:16px;border-color:var(--line)}
.zone-tabs button{color:#8c7659}
.zone-tabs button.selected{color:var(--ink)}
.zone-tabs button.selected:after{bottom:-17px}
.zone-stops{color:#766450;margin-top:15px}
.zone-stops li{color:#705c40;border-color:#957e563b}
.zone-detail h3{margin-top:12px;margin-bottom:17px}
.zone-detail .button{margin-top:22px}
.zone-detail>.eyebrow{color:#826138;font-size:9px}
.atlas-stop-image{position:relative}
.atlas-stop-image img{height:165px;width:100%;object-fit:cover;filter:saturate(.65)}
.atlas-stop-image>span{display:block;font:10px/1.6 var(--sans);color:#806d55;padding:12px 0}
.interior-stage>img{filter:brightness(.8) saturate(.75)}
.interior-shade{background:linear-gradient(0deg,#211b15f2,transparent 42%),linear-gradient(90deg,#211b1560,transparent)}
.interior-kicker{display:block;position:absolute;top:calc(var(--header) + 40px);left:var(--gutter);color:var(--gold)}
.interior-words{inset:0;display:grid;place-items:center;text-align:center;font:clamp(70px,9.5vw,145px)/1.05 var(--serif)}
.interior-words>span{position:absolute;margin:0!important;padding:0 6vw;color:var(--paper)}
.interior-cue{display:none}
.floor-steps{opacity:.25;bottom:195px}
.interior-traveller{position:absolute;left:var(--gutter);top:26%;max-width:550px;opacity:var(--quote-opacity,0);pointer-events:none}
.interior-traveller .traveller-quote blockquote{font-size:54px}
.interior-stage[style*="--quote-opacity: 1"] .interior-traveller{pointer-events:auto}
.guide-chapter .guide-page{background:#32271c;border-color:#d1ae732b;color:var(--paper)}
.guide-photo #lens-caption{color:#e2ceb0}
.guide-page .lens-copy{color:#ead7b8}
.comparison-captions p{color:#e2d1b9}
.tour-exit .closing-image{opacity:.24;filter:saturate(.6)}
.tour-exit .closing-shade{background:linear-gradient(0deg,#211b15f5,#211b15b3)}
.tour-exit>.section-wrap>p:not(.scene-credit):not(.figure-caption){max-width:650px;margin:auto;line-height:1.8;font-size:14px}
.tour-exit .closing-photo-credit{position:relative;margin-top:40px!important;max-width:750px;color:#c5b08b;font-size:10px!important}
.exit-reading{margin:55px auto 0;max-width:640px}
.exit-reading .traveller-quote blockquote{font-size:28px}
.exit-reading .quote-tools{justify-content:center}
.exit-reading .quote-reference{margin-left:auto;margin-right:auto}
.tourist-icon{background:var(--warm)}
.tourist-icon #salida-title{margin-bottom:55px}
.tourist-icon .souvenir-layout{gap:8%;align-items:start}
.tourist-icon .visitor-gallery{min-width:0}
.tourist-icon .souvenir-photo{margin-top:20px}
.tourist-icon .visitor-controls{margin-top:42px}
.tourist-icon .visitor-instruction,.tourist-icon .decade-description{font:var(--body-copy)/1.78 var(--sans)}
.tourist-icon .decade-description{min-height:100px;color:var(--gold-dark);margin:24px 0}
.tourist-icon .reading a{text-decoration:underline;text-underline-offset:3px}
.exit-document{max-width:230px;margin-top:30px}
.source-library .sources-grid{grid-template-columns:repeat(2,1fr)}
.journey-bar{background:#241d15f5;border-color:#d7bc833b;box-shadow:0 10px 40px #24180a24}
.journey-map-thumbnail{width:36px;height:36px;object-fit:contain}
.journey-dots a{border-color:#d1ae7355;color:#d5bc91}
.journey-dots .current,.journey-dots .visited{background:#c6a36a33;color:var(--gold)}
.digital-ticket{background:#eadfc9;border-color:#9c7c484d}
.ticket-facsimile{width:100%;max-height:180px;object-fit:contain;margin-bottom:20px;filter:sepia(.15)}
.digital-ticket>img.ticket-facsimile{width:100%;height:125px;opacity:1;margin-bottom:18px}
.digital-ticket>.source-note{font:11px/1.6 var(--sans);margin-bottom:16px}
@media(min-width:1500px){.scene-credit{max-width:1000px}.film-heading{top:28%}}
@media(max-width:900px){
 .context-heading{grid-template-columns:1fr;gap:30px}.context-heading>p{max-width:600px}
 .arrival-document{grid-template-columns:250px 1fr;gap:6%}
 .film-heading h2{font-size:78px}.film-reading{top:25%}.traveller-quote blockquote{font-size:30px}
 .arrival-film .film-reading,.girola-film .film-reading,.altar-film .film-reading{width:47%}
 .ticket-film .film-heading h2{font-size:56px}.ticket-film .film-reading{top:21%}.ticket-film .traveller-quote blockquote{font-size:23px}
 .map-layout{grid-template-columns:1.2fr 1fr;gap:5%}.atlas-stop-image img{height:170px}.zone-detail h3{font-size:30px}
 .scene-credit{font-size:10px;max-width:760px}
}
@media(max-width:600px){
 :root{--header:64px;--gutter:6vw}
 .brand>img{width:34px;height:34px}
 .hero-stage{min-height:100svh}.hero-copy{top:22%;width:88%}.hero-copy h1{font-size:clamp(55px,15vw,84px)}.hero-intro{font-size:14px}.title-small{font-size:25px;max-width:285px}
 .hero-world{width:100%;opacity:.68}.hero-world img{object-position:70% 50%}.hero-shade{background:linear-gradient(90deg,#211b15c2,#211b1565),linear-gradient(0deg,#211b15,transparent 68%)}
 .motion-ready:not(.reduced-motion) .hero-world{width:100%}
 .hero-figure-caption.scene-credit{bottom:100px;font-size:9px;max-width:none}.hero-coordinates{font-size:6px}.hero-coordinates>span:last-child{display:none}.hero-bottom{bottom:30px;font-size:6px}
 .hero-after{top:38%;width:85%}.hero-after>p:last-child{font-size:66px}
 .chapter .section-wrap{padding-top:65px;padding-bottom:70px}
 .context-heading{margin-bottom:35px}.context-heading h2{font-size:52px}.context-heading>p{font-size:16px}.panel-original-text{column-count:1;font-size:14px;line-height:1.8}.panel-original-text p{margin-bottom:23px}
 .context-bottom{display:block}.context-bottom>span{display:block;font-size:10px;margin-bottom:22px}.context-bottom .button{width:100%}.context-documents>summary{font-size:12px;gap:20px}
 .context-photograph{grid-template-columns:1fr;gap:20px}.context-photograph .archive-figure{max-width:220px;margin:auto}
 .context-documents .time-chapter .section-wrap{padding:30px 20px}.context-documents .time-heading h2{font-size:36px}.context-documents .time-heading>p{font-size:15px}.context-documents .timeline{grid-template-columns:repeat(3,1fr)}
 .arrival-document{grid-template-columns:1fr;gap:35px}.arrival-photograph{max-width:260px;width:100%;margin:auto}.arrival-document .threshold-photo{max-width:260px;margin:auto;max-height:none}
 .film-track{height:190svh;min-height:1250px}.film-stage{min-height:100svh}
 .film-heading{top:23%;width:88%;max-width:none}.film-heading h2{font-size:clamp(54px,15vw,82px)}.film-heading .eyebrow{font-size:8px;margin-bottom:24px}.film-heading>p{font-size:14px;max-width:260px;margin-top:24px}
 .film-border{inset:calc(var(--header) + 15px) 15px 83px}
 .arrival-film .film-visual,.girola-film .film-visual,.altar-film .film-visual{width:100%;left:0;object-fit:cover;object-position:60% 50%}
 .film-shadow,.arrival-film .film-shadow,.girola-film .film-shadow,.altar-film .film-shadow{background:linear-gradient(90deg,#211b15c9,#211b1550),linear-gradient(0deg,#211b15ee,transparent 57%)}
 .film-reading,.arrival-film .film-reading,.girola-film .film-reading,.altar-film .film-reading{top:24%;width:88%;max-width:none}
 .traveller-quote blockquote{font-size:29px;line-height:1.45}.traveller-quote cite{font-size:10px;line-height:1.6;margin-top:22px}.quote-tools{margin-top:18px;gap:18px;font-size:9px}.quote-tools button{font-size:10px}.quote-reference{font-size:9px;margin-top:15px}.quote-reference p{font-size:10px}
 .scene-credit{font-size:9px;line-height:1.55;bottom:84px;max-width:none}.film-cue{bottom:177px;font-size:6px}.film-cue>span:first-child{display:none}
 .ticket-film .film-heading{top:17%;width:88%}.ticket-film .film-heading h2{font-size:52px}.ticket-film .film-heading>p{font-size:13px;margin-top:18px}.original-ticket-link{font-size:9px;margin-top:14px}
 .ticket-film .film-visual{top:45%;height:26%;width:116%;left:-8%}
 .purchase-controls{top:auto;bottom:215px;width:88%;justify-content:center;align-items:center;text-align:center;gap:10px}.purchase-controls>.button{padding:14px 18px;min-height:48px}.purchase-controls .text-link{font-size:10px}.purchase-note,#purchase-status{font-size:9px}
 .ticket-film .film-reading{top:17%;left:var(--gutter);width:88%}.ticket-film .traveller-quote blockquote{font-size:26px}
 .ticket-film .scene-credit{font-size:8px}
 .map-layout{grid-template-columns:1fr;gap:32px}.zone-panel{padding-top:0}.atlas-stop-image img{height:185px}.atlas-stop-image>span{font-size:10px}.zone-detail h3{font-size:36px}.zone-detail p{font-size:14px}.map-gateway{font-size:6px}
 .interior-stage{min-height:100svh}.interior-stage>img{object-position:35% 50%}.interior-words{font-size:clamp(56px,16vw,86px)}.interior-kicker{top:calc(var(--header) + 35px);font-size:7px}.floor-steps{bottom:190px;width:65%}
 .interior-traveller{top:29%;left:var(--gutter);right:var(--gutter)}.interior-traveller .traveller-quote blockquote{font-size:38px}.interior-stage .scene-credit{bottom:87px;font-size:9px}
 .tower-art{height:430px}.tower-postcard{width:46%;left:38%}.tower-memory{width:67%}
 .tour-exit .section-wrap{padding-top:70px}.tour-exit h2{font-size:52px}.tour-exit>.section-wrap>p:not(.scene-credit):not(.figure-caption){font-size:13px}.exit-reading{margin-top:40px}.exit-reading .traveller-quote blockquote{font-size:23px}
 .journey-map-thumbnail{width:23px;height:25px}.journey-bar>button{gap:8px}.journey-bar strong{max-width:103px}.journey-dots a{width:18px;height:18px;font-size:8px}.journey-dots{gap:4px}.journey-bar>button>span{font-size:5px}
 .source-library .sources-grid{grid-template-columns:1fr}
}
@media(max-width:360px){.hero-copy h1{font-size:54px}.hero-copy{top:21%}.title-small{font-size:22px}.film-heading h2{font-size:52px}.film-reading .traveller-quote blockquote{font-size:25px}.ticket-film .traveller-quote blockquote{font-size:23px}.scene-credit{font-size:8px}.journey-map-thumbnail{width:19px}.journey-bar strong{max-width:88px}.journey-next{font-size:6px}.panel-original-text{font-size:13px}}
/* The same content is available without pinned scenes or motion. */
.reduced-motion .film-track{height:auto;min-height:0}
.reduced-motion .film-stage{position:relative;height:auto;min-height:0;padding:0 0 35px;overflow:hidden}
.reduced-motion .film-visual{position:relative;inset:auto;width:100%;height:60svh;min-height:320px;object-fit:contain;transform:none;z-index:0;filter:saturate(.72)}
.reduced-motion .film-shadow,.reduced-motion .film-border,.reduced-motion .film-cue{display:none}
.reduced-motion .film-heading,.reduced-motion .film-reading{position:relative;inset:auto;width:auto;max-width:900px;margin:35px var(--gutter) 0;opacity:1;transform:none;pointer-events:auto}
.reduced-motion .film-reading{max-height:none;overflow:visible}
.reduced-motion .film-heading h2{font-size:clamp(50px,5.5vw,80px)}
.reduced-motion .scene-credit:not(.hero-figure-caption){position:relative;inset:auto;max-width:900px;margin:32px var(--gutter) 0}
.reduced-motion .purchase-controls{position:relative;inset:auto;margin:30px var(--gutter);text-align:left;justify-content:flex-start}
.reduced-motion .ticket-film .film-visual{height:48svh;min-height:250px}
.reduced-motion .interior-traveller{position:relative;inset:auto;padding:40px var(--gutter) 150px;opacity:1;pointer-events:auto}
.reduced-motion .interior-words{position:relative;padding:90px 0 30px;display:block}
.reduced-motion .interior-words>span{position:relative;display:block;opacity:1;transform:none;font-size:48px;margin:20px 0!important}
.reduced-motion .interior-stage{height:auto;min-height:800px}
.reduced-motion .interior-stage>.scene-credit{position:absolute;bottom:85px;left:var(--gutter);right:var(--gutter);margin:0;font-size:10px}
@media print{.film-track{display:none!important}.panel-original-text{column-count:1}.context-documents:not([open]){display:none}.traveller-quote{color:#222!important}}
/* Presentation → context → preparation → a single visit. */
.hero-track.presentation-only,.motion-ready:not(.reduced-motion) .hero-track.presentation-only{height:100svh;min-height:720px}
.presentation-only .hero-stage{position:relative;height:100%;min-height:720px}
.motion-ready:not(.reduced-motion) .presentation-only .hero-copy{opacity:1;transform:none}
.presentation-only .hero-world,.motion-ready:not(.reduced-motion) .presentation-only .hero-world{inset:var(--header) 0 0;width:100%;height:auto;opacity:1}
.presentation-only .hero-world img{object-position:50% 42%;filter:sepia(.24) brightness(.78);transform:scale(var(--photo-scale,1.02))}
.presentation-only .hero-copy{top:25%}
.presentation-only .hero-coordinates{top:calc(var(--header) + 26px)}
.presentation-credits{color:var(--paper);background:var(--forest);border-top:1px solid #d1ae7333;scroll-margin-top:var(--header)}
.presentation-credits .section-wrap{padding:35px 0 38px;display:grid;grid-template-columns:1.4fr 1fr;gap:7%}
.credit-role{display:block;font:9px/1.6 var(--sans);letter-spacing:.15em;color:var(--gold);margin-bottom:17px}
.credit-people{display:flex;gap:32px}
.credit-person{text-align:left;font:18px/1.35 var(--serif);color:var(--paper);max-width:260px}
.credit-person>span{display:inline-block;margin-left:8px;color:var(--gold);font:19px var(--sans)}
.credit-person small{display:block;font:9px/1.7 var(--sans);color:#ddcbae99;margin-top:7px}
.credit-committee a{display:block;font:12px/1.7 var(--sans);color:#f2e7d2c9;padding:2px 0}
.credit-person:hover,.credit-committee a:hover{color:var(--gold)}
/* Ficha del comisariado: un modal pequeño con los perfiles y sus iconos. */
.curator-dialog{max-width:420px;width:calc(100% - 40px);padding:30px 30px 25px;background:var(--paper);color:var(--ink);overscroll-behavior:contain;border:1px solid #aa88524d;max-height:88svh}
.curator-dialog .dialog-x{position:sticky;float:right;top:9px;z-index:5;height:34px;width:34px;margin:9px 9px -43px 0;border:1px solid var(--line);background:#fffffff5;font-size:26px;color:var(--gold-dark)}
.curator-dialog .dialog-x:hover{color:var(--gold-dark)}
.curator-role{font:9px/1.65 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.12em;color:var(--gold-dark);text-transform:uppercase;display:block;margin:0 0 7px}
.curator-dialog h2{font:750 23px/1.2 var(--sans);line-height:1.2;letter-spacing:-.03em;margin:0;color:var(--ink);max-width:320px}
.curator-links{display:grid;grid-template-columns:1fr;gap:1px;margin-top:18px;border-top:1px solid var(--line);padding-top:13px}
.curator-link{font-family:var(--sans);display:flex;align-items:center;gap:12px;font-size:13px;line-height:1.4;color:var(--ink);text-decoration:none;padding:8px 9px;border-radius:3px}
.curator-link svg,.curator-link img{height:18px;width:18px;flex:none}
.curator-link svg.icon-stroke{fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.curator-link svg.icon-fill{fill:currentColor}
.curator-link img{object-fit:contain}
.curator-link span{flex:1}
.curator-link i{font-style:normal;font-size:11px;color:var(--gold-dark)}
.curator-link:hover,.curator-link:focus-visible{background:#eadfc9;color:var(--gold-dark)}
.curator-link:hover i,.curator-link:focus-visible i{color:var(--gold-dark)}
@media(max-width:600px){.curator-dialog{width:calc(100% - 22px);padding:26px 20px 22px}.curator-dialog h2{font-size:20px}.curator-link{gap:10px;font-size:12.5px;padding:8px 6px}}

.curator-link svg.arrow-icon{display:inline-block;width:1em;height:1em;flex:none;vertical-align:-.1em}
.reading h3,.guide-page>h3{font:27px/1.3 var(--serif);margin:36px 0 20px}
.reading h3:first-child{margin-top:0}
.guide-sheet{padding:24px 22px 18px;background:#dfc9a6 url('assets/scenes/papel-guia.webp') center/100% 100%;box-shadow:0 16px 45px #40302122;position:relative}
.guide-sheet .plan-map{mix-blend-mode:multiply}
.plan-map>img{filter:none;mix-blend-mode:multiply}
.plan-overlay{mix-blend-mode:multiply}
.map-gateway{background:#e7d5b5e0}
.guide-sheet .map-key{flex-wrap:wrap;gap:9px 16px}
.guide-sheet .source-note{font-size:10px;margin-top:16px}
.map-intro{position:relative;flex-wrap:wrap}
.map-intro #unfold-map{align-self:end;white-space:nowrap;color:var(--gold-dark);font-size:12px;padding:15px 0}
.dialog-map-layout>#dialog-map{background:#ead8b7 url('assets/scenes/papel-guia.webp') center/100% 100%;padding:20px;isolation:isolate}
.dialog-map-layout>#dialog-map .plan-overlay{inset:20px;width:calc(100% - 40px);height:calc(100% - 40px)}
.dialog-map-layout>#dialog-map .plan-pin{transform:translate(-50%,-50%)}
.visit-preparation{display:grid;grid-template-columns:1.3fr 1fr;gap:10%;align-items:center;margin-top:65px;padding-top:45px;border-top:1px solid var(--line)}
.guide-book{display:flex;gap:30px;align-items:center;perspective:1300px;min-height:240px}
.book-cover{position:relative;display:block;flex:0 0 150px;max-width:150px;transition:transform .8s cubic-bezier(.16,1,.3,1);transform-origin:left center;box-shadow:10px 10px 30px #33241028;border-left:4px solid #95774c;background:var(--paper)}
.book-cover img{width:100%;height:auto;display:block}
.book-action{display:block;font:11px var(--sans);padding:12px;color:var(--ink)}
.book-cover:hover{transform:rotateY(-18deg)}
.book-open .book-cover{transform:rotateY(-25deg);flex-basis:130px}
.guide-pages{max-width:350px;animation:open-guide .7s both}
.guide-pages h3,.preparation-action h3{font:32px/1.2 var(--serif);margin:16px 0}
.guide-pages p,.preparation-action p{font:13px/1.7 var(--sans);color:#75644f}
.guide-pages .figure-caption{font-size:10px;margin-top:20px}
.preparation-action>.button{margin-top:25px}
@keyframes open-guide{from{opacity:0;transform:translateX(-20px) rotateY(-15deg)}to{opacity:1;transform:none}}
#map-dialog[open] .dialog-map-layout{animation:open-guide .65s both}
.arrival-film .film-visual{width:100%;left:0;object-fit:cover;object-position:65% 56%;filter:brightness(.63) saturate(.62)}
.ticket-attendant{position:absolute;bottom:0;right:2%;height:88%;width:auto;max-width:60%;object-fit:contain;object-position:bottom;z-index:-1;filter:saturate(.7);transform:translateY(calc((1 - var(--scene,0))*30px));transition:opacity .7s,translate .8s}
.arrival-film .film-shadow{background:linear-gradient(90deg,#211b15ed 0%,#211b15be 32%,#211b1510 75%),linear-gradient(0deg,#211b15 2%,transparent 45%)}
.arrival-film .film-heading{width:45%;top:22%}
.arrival-film .film-reading{width:56%;top:24%}
.arrival-film .film-heading h2{font-size:clamp(60px,7.2vw,102px)}
.attendant-action{position:absolute;left:var(--gutter);bottom:205px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;z-index:3}
.attendant-action>span{font-size:10px;color:#dfcfb7}
.ticket-handed .ticket-attendant{translate:15vw 0;opacity:0}
.ticket-film .film-stage{background:radial-gradient(ellipse at 50% 48%,#735c3f55,transparent 65%),#201a14}
.ticket-film .film-visual{top:24%;left:0;width:100%;height:auto;max-width:none;object-fit:contain;transform-origin:50% 31%;transform:scale(calc(.94 + var(--scene,0)*.43));z-index:-1;filter:saturate(.72)}
.ticket-film .film-shadow{background:linear-gradient(0deg,#201a14 0%,transparent 25%);pointer-events:none}
.ticket-film .film-heading{top:17%;width:40%}
.ticket-film .film-heading h2{font-size:clamp(50px,5.5vw,80px)}
.ticket-film .film-heading>p{font-size:14px;max-width:280px}
.ticket-film .film-reading{left:var(--gutter);top:15%;width:88%;max-width:900px;text-align:center}
.ticket-film .traveller-quote blockquote{font-size:clamp(22px,2.2vw,30px)}
.ticket-film .traveller-quote cite{margin-top:15px;font-size:11px}
.purchase-controls{top:auto;bottom:185px;left:50%;transform:translateX(-50%);width:auto;max-width:90%;align-items:center;justify-content:center;text-align:center;gap:18px 25px}
.purchase-controls>.button{padding:16px 24px;font-size:13px;white-space:nowrap}
.purchase-controls .text-link{font-size:12px;white-space:nowrap}
.purchase-note,#purchase-status{font-size:9px}
.ticket-collected .ticket-film .film-visual{animation:receive-ticket 1s cubic-bezier(.16,1,.3,1) both}
@keyframes receive-ticket{from{opacity:0;translate:0 90px}to{opacity:1;translate:0 0}}
.retablo-inspection{display:grid;grid-template-columns:1fr 1.2fr;gap:45px 8%;align-items:center;border-top:1px solid var(--line);padding-top:50px;margin-top:50px}
.inspection-heading h3{font:42px/1.2 var(--serif);margin:18px 0}
.inspection-heading p{font:14px/1.8 var(--sans);color:#75644f;max-width:330px}
.retablo-inspection figure{margin:0;grid-row:span 2}
.retablo-detail{height:440px;overflow:hidden;background:var(--forest);--detail-scale:1}
.retablo-detail img{width:100%;height:100%;object-fit:cover;object-position:center 30%;transform:scale(var(--detail-scale));transform-origin:50% 35%;transition:transform .16s}
.retablo-inspection .figure-caption{font-size:10px;margin-top:14px}
.detail-control{font-size:12px;color:#75644f;align-self:start}
.detail-control output{float:right;font-variant-numeric:tabular-nums}
.detail-control input{display:block;width:100%;margin-top:18px;accent-color:var(--gold-dark)}
#sound-toggle[data-sound="off"]{opacity:.65}
#sound-toggle[data-sound="on"]::after{content:'';display:inline-block;width:4px;height:4px;background:var(--gold);border-radius:50%;margin-left:5px;box-shadow:0 0 7px var(--gold)}
.footer-columns{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:6%;padding:45px 0}
.footer-columns p{font:12px/1.9 var(--sans);color:#ded0b6a8;margin-top:16px}
.footer-columns .text-link{font-size:11px;color:var(--gold)}
.footer-columns small{font-size:10px;letter-spacing:.03em}
.reduced-motion .presentation-only .hero-stage{height:100svh;min-height:720px}
.reduced-motion .ticket-attendant{position:relative;height:65svh;max-width:100%;margin:0 auto;right:auto;bottom:auto;display:block;transform:none;z-index:0}
.reduced-motion .attendant-action{position:relative;inset:auto;margin:30px var(--gutter) 0}
.reduced-motion .ticket-film .film-visual{top:auto;left:auto;height:auto;min-height:0;transform:none;position:relative;width:100%}
.reduced-motion .ticket-film .film-reading{position:relative;inset:auto;text-align:left;width:auto;max-height:none}
.reduced-motion .purchase-controls{transform:none;max-width:none;width:auto;position:relative;inset:auto;margin:30px var(--gutter)}
@media(max-width:1000px){
 .presentation-credits .section-wrap{grid-template-columns:1fr 1fr;gap:5%}.credit-people{display:block}.credit-person{display:block;margin-bottom:16px;font-size:17px}
 .visit-preparation{grid-template-columns:1.3fr 1fr;gap:6%}.guide-book{gap:20px}.book-cover{flex-basis:110px;max-width:110px}.guide-pages h3,.preparation-action h3{font-size:26px}
 .ticket-attendant{right:0;max-width:65%;height:82%}.arrival-film .film-heading h2{font-size:75px}.attendant-action{bottom:215px}
 .ticket-film .film-visual{top:32%}.ticket-film .film-heading{top:15%}.ticket-film .film-heading h2{font-size:55px}.ticket-film .film-reading{top:16%}
 .retablo-detail{height:360px}.inspection-heading h3{font-size:35px}
}
@media(max-width:600px){
 .hero-track.presentation-only,.motion-ready:not(.reduced-motion) .hero-track.presentation-only{min-height:650px}
 .presentation-only .hero-stage,.reduced-motion .presentation-only .hero-stage{min-height:650px}
 .motion-ready:not(.reduced-motion) .presentation-only .hero-world{width:100%}
 .presentation-only .hero-copy{top:24%}.presentation-only .hero-intro{font-size:13px;line-height:1.8}.presentation-only .hero-copy h1{font-size:clamp(52px,14vw,70px)}
 .presentation-only .hero-figure-caption.scene-credit{bottom:95px;font-size:9px}
 .presentation-credits .section-wrap{grid-template-columns:1fr;gap:22px;padding:28px 0}.credit-people{display:flex;gap:20px}.credit-person{font-size:16px;flex:1;margin:0}.credit-person small{font-size:8px}.credit-committee a{font-size:11px}
 .guide-sheet{padding:16px 12px 14px}.map-intro #unfold-map{padding-top:4px;align-self:auto}.map-gateway{font-size:6px}
 .visit-preparation{grid-template-columns:1fr;gap:35px;margin-top:40px;padding-top:35px}.guide-book{gap:25px;min-height:160px;align-items:start}.book-cover{flex-basis:100px;max-width:100px}.book-open .book-cover{flex-basis:80px;min-width:80px}.guide-pages h3{font-size:23px}.guide-pages p{font-size:12px}.preparation-action h3{font-size:30px}
 .arrival-film .film-heading{top:17%;width:80%;z-index:1}.arrival-film .film-heading h2{font-size:clamp(48px,13vw,70px)}.arrival-film .film-heading>p{font-size:12px;max-width:230px;margin-top:15px}
 .ticket-attendant{height:64%;max-width:100%;right:-5%;bottom:20%}.arrival-film .film-reading{width:88%;top:20%;z-index:1}.arrival-film .traveller-quote blockquote{font-size:24px}.arrival-film .traveller-quote cite{font-size:9px;margin-top:16px}
 .attendant-action{bottom:225px;left:var(--gutter);right:var(--gutter);align-items:center;text-align:center}.attendant-action .button{min-height:44px;padding:14px 20px;font-size:12px}.attendant-action>span{font-size:9px}
 .arrival-film .film-shadow{background:linear-gradient(90deg,#211b15db,#211b1522),linear-gradient(0deg,#211b15 0%,transparent 48%)}
 .arrival-film .film-cue{display:none}
 .ticket-film .film-visual{width:100%;left:0;top:42%;height:auto;transform:scale(calc(.95 + var(--scene,0)*.65));transform-origin:50% 30%}
 .ticket-film .film-heading{top:16%;width:88%}.ticket-film .film-heading h2{font-size:47px}.ticket-film .film-heading>p{font-size:13px;max-width:260px}
 .ticket-film .film-reading{top:16%;width:88%;left:var(--gutter)}.ticket-film .traveller-quote blockquote{font-size:23px;line-height:1.4}.ticket-film .traveller-quote cite{font-size:9px;line-height:1.6;margin-top:14px}
 .purchase-controls{left:6%;right:6%;width:auto;transform:none;max-width:none;bottom:185px;gap:12px 15px}.purchase-controls>.button{font-size:11px;padding:12px 17px;min-height:44px}.purchase-controls .text-link{font-size:11px}
 .ticket-film .film-cue{display:none}.purchase-note,#purchase-status{font-size:9px}
 .retablo-inspection{grid-template-columns:1fr;gap:25px;padding-top:35px;margin-top:35px}.retablo-inspection figure{grid-row:auto}.inspection-heading h3{font-size:35px}.inspection-heading p{font-size:13px}.retablo-detail{height:360px}.detail-control{grid-row:3}
 .reading h3,.guide-page>h3{font-size:25px;margin:30px 0 17px}
 .footer-columns{grid-template-columns:1fr;gap:28px;padding:35px 0}.footer-columns p{font-size:11px;margin-top:12px}
 .reduced-motion .ticket-attendant{height:58svh;max-width:100%;right:auto;bottom:auto}.reduced-motion .arrival-film .film-heading,.reduced-motion .arrival-film .film-reading{position:relative;inset:auto;width:auto;margin:30px var(--gutter);max-height:none}
 .reduced-motion .attendant-action{position:relative;inset:auto;margin:25px var(--gutter);align-items:flex-start}
 .reduced-motion .ticket-film .film-heading,.reduced-motion .ticket-film .film-reading{position:relative;inset:auto;width:auto;max-height:none;text-align:left}
 .reduced-motion .ticket-film .film-visual{position:relative;inset:auto;width:100%;transform:none;height:auto}
 .reduced-motion .purchase-controls{position:relative;inset:auto;margin:30px var(--gutter);justify-content:flex-start}
}
@media(prefers-reduced-motion:reduce){.book-cover,.ticket-attendant,.retablo-detail img{transition:none}.guide-pages,#map-dialog[open] .dialog-map-layout{animation:none}}
.dialog-map-layout>#dialog-map{padding:0}
.dialog-map-layout>#dialog-map .plan-overlay{inset:0;width:100%;height:100%}
.entry-gateway{left:26%;top:45.5%}
.exit-gateway{left:48%;bottom:.5%;transform:translateX(-50%)}
.map-intro{display:grid;grid-template-columns:1fr 1fr;gap:20px 8%}
.map-intro #unfold-map{grid-column:2;justify-self:start}
@media(max-width:600px){.map-intro{grid-template-columns:1fr;gap:20px}.map-intro #unfold-map{grid-column:1}.map-intro>p{margin:0}}
#sound-toggle[data-sound="on"]::after{display:none}
#sound-toggle[data-sound="on"] .status-dot{background:var(--gold);box-shadow:0 0 7px var(--gold)}
.book-caption{font-size:10px;line-height:1.6;color:#79684f;max-width:500px;margin-top:16px}
@media(max-width:600px){.book-caption{font-size:9px}}
.reduced-motion .book-cover,.reduced-motion .ticket-attendant,.reduced-motion .retablo-detail img{transition:none}
.reduced-motion .guide-pages,.reduced-motion #map-dialog[open] .dialog-map-layout,.reduced-motion .ticket-collected .film-visual{animation:none}
@media(max-width:600px){.scene-credit,.ticket-film .scene-credit{font-size:10px;line-height:1.55}.hero-figure-caption.scene-credit{font-size:10px}.purchase-note,#purchase-status{font-size:10px}}
/* Readable copy and opening-screen credits, following the reference exhibition. */
:root{--body-copy:clamp(18px,1.3vw,21px);--caption-copy:14px}
#umbral .section-wrap{max-width:1200px;padding-top:65px;padding-bottom:90px}
.prologue-emblem{display:flex;align-items:center;justify-content:center;gap:36px;margin:0 auto 48px;max-width:660px}
.prologue-emblem::before,.prologue-emblem::after{content:"";height:1px;flex:1;background:linear-gradient(90deg,transparent,var(--gold-dark)) ;opacity:.4}
.prologue-emblem::after{transform:rotate(180deg)}
.prologue-emblem img{display:block;width:220px;height:220px;object-fit:contain;flex-shrink:0}
.panel-original-text{column-count:2;column-gap:80px;column-rule:1px solid var(--line);max-width:none;margin:0 auto;font:var(--body-copy)/1.8 var(--sans);letter-spacing:-.012em;color:#463b2f;orphans:3;widows:3}
.panel-original-text p{margin:0 0 1.6em;break-inside:auto}
.panel-original-text p:last-child{margin-bottom:0}
@media(max-width:960px){
 .panel-original-text{column-count:1;column-rule:0;max-width:68ch}
 .prologue-emblem{margin-bottom:36px;max-width:520px;gap:24px}
 .prologue-emblem img{width:180px;height:180px}
}
@media(max-width:600px){
 .prologue-emblem{margin-bottom:28px;gap:18px}
 .prologue-emblem img{width:145px;height:145px}
}
@media print{.prologue-emblem{display:none}.panel-original-text{column-count:1;column-rule:0}}
#exhibition-view :is(.reading,.guide-page,.two-columns) p:not(.source-note):not(.figure-caption):not([data-caption]),.zone-detail p,.guide-pages p,.preparation-action p,.inspection-heading p,.archive-source-context{font:var(--body-copy)/1.78 var(--sans);letter-spacing:-.012em;max-width:65ch}
#exhibition-view .reading p.lead{font:var(--body-copy)/1.78 var(--sans)}
#exhibition-view .source-note,.figure-caption,.atlas-stop-image>span,.comparison-captions p{font:var(--caption-copy)/1.65 var(--sans);letter-spacing:0}
.dark .reading p,.dark .guide-page>p,.dark .lens-copy p{color:#e4d7c5}
#guia .guide-reading{grid-template-columns:1.2fr 1fr;align-items:start;gap:8%}
#guia .guide-page{background:none;border:0;padding:0;box-shadow:none}
#guia .guide-page>p{margin:28px 0 0}
#guia .guide-photo{position:sticky;top:calc(var(--header) + 30px);margin:0;padding:0;min-width:0}
.guide-photo-image{padding:8px;border:1px solid #d1ae7360}
#guia .guide-photo img{display:block;width:100%;height:auto;object-fit:contain;filter:sepia(.2) brightness(.75);transition:filter .5s}
#guia.lens-politics .guide-photo img{filter:sepia(.45) brightness(.45)}
#guia .guide-photo #lens-caption{display:block;margin-top:14px}
#guia .lens-controls{margin-top:30px;gap:14px;flex-wrap:wrap}
#guia .lens-controls button{font-size:15px;padding:12px 15px}
#guia .lens-copy{padding:0;border:0;background:none;margin-top:20px}
#guia .lens-copy p{margin-top:0}
.reading p+.source-note{margin-top:25px}
.film-heading>p{font-size:18px;line-height:1.65}
.traveller-quote cite,.ticket-film .traveller-quote cite{font-size:14px;line-height:1.6}
.scene-credit,.hero-figure-caption.scene-credit{font-size:13px;line-height:1.55}
.scene-credit{max-width:1050px}
.original-ticket-link,.purchase-controls .text-link{font-size:15px}
.purchase-controls>.button,.attendant-action>.button{font-size:16px}
#purchase-status.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;padding:0;clip:rect(0,0,0,0)}
.guide-sheet .source-note,.guide-pages .figure-caption,.retablo-inspection .figure-caption{font-size:13px}
.map-key,.zone-stops,.detail-control,.book-action{font-size:14px}
.document-strip{align-items:start;gap:26px;padding-top:28px;padding-bottom:22px}
.document-thumb{display:grid;grid-template-rows:190px minmax(3.3em,auto) auto;align-content:start;gap:12px;flex:0 0 clamp(220px,21vw,290px);padding:0;text-align:left}
.document-thumb img{height:190px;width:100%;object-fit:contain;object-position:center;background:#e6dac6;align-self:start;margin:0}
.document-thumb>span{font:16px/1.55 var(--sans);margin:0;align-self:start;display:block}
.document-thumb>small{font:14px/1.65 var(--sans);margin:0;display:block;align-self:start}
.dark .document-thumb img{background:#332b22}
.dark .document-thumb>span,.dark .document-thumb>small{color:#e4d7c5}
.archive-card h2{font-size:24px;line-height:1.3}
.archive-card>p{font-size:15px;line-height:1.65}
.archive-source-context{margin:25px 0 45px;max-width:78ch}
#archive-view #tiempo{margin:65px 0}
#archive-view #tiempo .section-wrap{width:100%;padding:55px}
#archive-view #tiempo .time-card p{font-size:17px;line-height:1.7}
.tour-exit>.section-wrap>p:not(.scene-credit):not(.figure-caption){font-size:var(--body-copy);line-height:1.78;max-width:65ch}
.site-footer{background:var(--forest);color:#f2eadc;border-top:1px solid #d1ae7355}
.site-footer .brand,.site-footer .text-link{color:#f2eadc}
.site-footer .eyebrow,.site-footer .footer-bottom{color:#d1ae73}
.footer-columns p{font-size:17px;line-height:1.8;color:#e4d7c5}
.footer-columns small{font-size:14px;color:#dfcaaa}
.footer-columns .text-link,.footer-bottom a,.footer-bottom button{font-size:14px;color:#e2c18b}
.journey-mini-sheet{display:flex;align-items:center;justify-content:center;background:#ead8b7 url('assets/scenes/papel-guia.webp') center/100% 100%;width:44px;height:52px;padding:4px;flex-shrink:0;box-shadow:0 1px 5px #0005;border-radius:1px}
.journey-mini-sheet .journey-map-thumbnail{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.journey-bar strong{font-size:14px}.journey-bar>button>span{font-size:10px}.journey-next{font-size:12px}
/**** The hero contains all opening credits and institutional marks. ****/
.hero-masthead{position:absolute;top:calc(var(--header) + 22px);left:var(--gutter);right:var(--gutter);display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:40px;align-items:start;z-index:5}
.hero-institutions{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px;padding:0;background:none;max-width:840px}
.hero-institutions .institution-group{min-width:0;grid-column:span 4}
.hero-institutions .institution-group:last-child{grid-column:span 2}
.hero-institutions .credit-role{color:var(--gold);font-size:11px;margin:0 0 9px}
.institution-logos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:18px}
.institution-logos img{width:100%;height:64px;object-fit:contain;object-position:left top;mix-blend-mode:normal;filter:brightness(0) invert(1);opacity:.88}
.institution-logos img[src*="confluencias"]{filter:grayscale(1) invert(1) brightness(1.55);opacity:.94}
.institution-logos.collaborators{grid-template-columns:repeat(2,minmax(0,1fr))}
.hero-masthead .presentation-credits{border:0;background:none;color:var(--paper);scroll-margin-top:var(--header)}
.hero-masthead .presentation-credits .section-wrap{width:100%;padding:0;display:block}
.hero-masthead .credit-role{font-size:11px;margin-bottom:8px}
.hero-masthead .credit-people{display:block}
.hero-masthead .credit-person{display:block;font:15px/1.4 var(--sans);max-width:none;margin:0 0 13px}
.hero-masthead .credit-person small{font-size:12px;color:#ddcbae;margin-top:3px}
.hero-masthead .credit-committee{margin-top:21px}
.hero-masthead .credit-committee a{font-size:14px;line-height:1.5;padding:3px 0;color:#f2eadc}
.presentation-only .hero-copy{top:34%;width:61%}
.presentation-only .hero-copy h1{font-size:clamp(64px,6.4vw,106px)}
.presentation-only .hero-intro{font-size:18px}
.presentation-only .hero-figure-caption{font-size:13px;max-width:760px}
.hero-masthead~.hero-copy{z-index:4}
@media(max-width:1100px) and (min-width:701px){
 .hero-masthead{grid-template-columns:minmax(0,1fr) 250px;gap:25px}
 .hero-institutions{gap:14px;padding:0}
 .hero-institutions .credit-role{font-size:10px;margin:0 0 8px}
 .institution-logos{gap:14px}.institution-logos img{height:48px}
 .hero-masthead .credit-person{font-size:14px}.hero-masthead .credit-committee a{font-size:13px}
 .presentation-only .hero-copy{top:42%;width:80%}.presentation-only .hero-copy h1{font-size:clamp(64px,7vw,80px)}
}
@media(max-width:900px) and (min-width:701px){
 .hero-institutions{grid-template-columns:repeat(3,minmax(0,1fr))}
 .hero-institutions .institution-group{grid-column:span 2}
 .hero-institutions .institution-group:last-child{grid-column:span 1}
 .institution-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px}
 .institution-logos.collaborators{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:700px){
 .hero-track.presentation-only,.presentation-only .hero-stage,.reduced-motion .presentation-only .hero-stage{height:100svh;min-height:650px}
 .hero-masthead{top:calc(var(--header) + 14px);display:flex;flex-direction:column;gap:15px;left:var(--gutter);right:var(--gutter)}
 .hero-institutions{padding:0;width:100%;max-width:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
 .hero-institutions .institution-group{grid-column:span 2}
 .hero-institutions .institution-group:last-child{grid-column:span 1}
 .hero-institutions .credit-role{font-size:9px;margin:0 0 5px}
 .institution-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px}.institution-logos img{height:42px}
 .institution-logos.collaborators{grid-template-columns:minmax(0,1fr)}
 .hero-masthead .presentation-credits{width:100%}
 .hero-masthead .presentation-credits .section-wrap{display:grid;grid-template-columns:1.05fr 1fr;gap:20px}
 .hero-masthead .credit-role{font-size:10px;line-height:1.4;margin-bottom:7px;letter-spacing:.06em}
 .hero-masthead .credit-person{font-size:13px;line-height:1.4;margin:0 0 7px}
 .hero-masthead .credit-person small{font-size:10px;margin-top:1px}
 .hero-masthead .credit-person small{display:none}
 .hero-masthead .credit-person>span{font-size:13px;margin-left:3px}
 .hero-masthead .credit-committee{margin:0}
 .hero-masthead .credit-committee a{font-size:12px;line-height:1.4;padding:0 0 6px}
 .presentation-only .hero-copy{top:max(350px,43%);width:88%}
 .presentation-only .hero-copy h1{font-size:clamp(47px,12.3vw,72px)}
 .presentation-only .hero-copy .title-small{font-size:clamp(22px,6vw,30px)}
 .presentation-only .hero-intro{font-size:16px;line-height:1.55;margin-top:22px}
 .presentation-only .hero-copy>.button{font-size:14px;margin-top:20px;min-height:45px;padding:12px 18px}
 .presentation-only .hero-figure-caption.scene-credit{font-size:12px;line-height:1.5;bottom:55px}
 .presentation-only .hero-bottom{bottom:20px;font-size:9px}
 #umbral .section-wrap{padding-top:55px;padding-bottom:55px}
 #guia .guide-reading{grid-template-columns:1fr;gap:35px}
 #guia .guide-photo{position:relative;top:auto;max-width:100%}
 #guia .lens-controls button{font-size:14px}
 #exhibition-view .source-note,.figure-caption,.atlas-stop-image>span,.comparison-captions p{font-size:13px}
 .scene-credit,.hero-figure-caption.scene-credit,.ticket-film .scene-credit,.interior-stage .scene-credit{font-size:12px;line-height:1.45;bottom:85px}
 .traveller-quote cite,.ticket-film .traveller-quote cite{font-size:13px;margin-top:16px}
 .film-heading>p,.ticket-film .film-heading>p{font-size:17px;line-height:1.6}
 .attendant-action{bottom:250px}
 .purchase-controls{bottom:210px;gap:12px}
 .purchase-controls>.button,.attendant-action>.button{font-size:15px}
 .purchase-controls .text-link,.original-ticket-link{font-size:14px}
 .document-thumb{flex-basis:230px;grid-template-rows:180px minmax(3.3em,auto) auto}
 .document-thumb img{height:180px}.document-thumb>span{font-size:16px}.document-thumb>small{font-size:14px}
 .footer-columns p{font-size:16px}.footer-columns small{font-size:14px}
 .journey-mini-sheet{width:32px;height:40px;padding:3px}
 .journey-bar strong{font-size:12px;max-width:107px}.journey-bar>button>span{font-size:8px}.journey-next{font-size:10px}
 .journey-dots a{font-size:10px;width:22px;height:22px}.journey-dots{gap:5px}
 #archive-view #tiempo .section-wrap{padding:30px 20px}
}
@media(max-width:360px){
 .hero-masthead .presentation-credits .section-wrap{gap:12px}
 .hero-masthead .credit-person{font-size:12px}.hero-masthead .credit-person small{font-size:9px}
 .hero-masthead .credit-committee a{font-size:11px}
 .hero-institutions{padding:0;gap:8px}.institution-logos{gap:6px 8px}.institution-logos img{height:38px}
 .presentation-only .hero-copy{top:330px}.presentation-only .hero-copy h1{font-size:45px}
 .presentation-only .hero-intro{font-size:15px;margin-top:17px}.presentation-only .hero-copy>.button{margin-top:15px}
 .presentation-only .hero-figure-caption.scene-credit{bottom:55px;font-size:11px}
 .journey-mini-sheet{width:26px;height:35px}.journey-dots{gap:3px}.journey-dots a{width:19px;height:19px;font-size:9px}
 .journey-bar{gap:10px}.journey-bar strong{font-size:11px;max-width:88px}.journey-next{font-size:9px}
}
/* Keep the opening copy, photograph credit and action in one visible composition. */
.presentation-only .hero-title-line{display:block}
.presentation-only .hero-copy>.button{font-size:15px}
.hero-institutions{background:none;isolation:isolate}
.institution-logos>a{display:block;min-width:0;line-height:0;text-decoration:none}
.institution-logos>a:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.institution-logos>a:hover img{opacity:1}
.presentation-only .hero-shade{background:linear-gradient(180deg,#211b15d9 8%,#211b1580 27%,transparent 50%),linear-gradient(90deg,#211b15 0%,#211b15e8 27%,#211b1590 49%,transparent 77%),linear-gradient(0deg,#211b15ee,transparent 55%)}
#guia .guide-photo .figure-caption{font:14px/1.65 var(--sans);letter-spacing:0;text-align:left}
@media(max-height:800px) and (min-width:701px){
 .presentation-only .hero-copy{top:33%;width:65%}
 .presentation-only .hero-copy h1{font-size:60px;line-height:1.05}
 .presentation-only .hero-copy .title-small{font-size:32px;margin-top:15px}
 .presentation-only .hero-copy .eyebrow{margin-bottom:20px}
 .presentation-only .hero-intro{font-size:17px;margin:18px 0 20px}
 .presentation-only .hero-copy>.button{font-size:14px;min-height:45px;padding:12px 18px}
 .presentation-only .hero-figure-caption.scene-credit{bottom:62px}
}
@media(max-width:700px){
 .presentation-only .hero-copy{top:330px}
 .presentation-only .hero-copy .eyebrow{display:none}
 .presentation-only .hero-intro{margin:18px 0 20px}
 .presentation-only .hero-copy>.button{margin-top:0}
 .presentation-only .hero-bottom>.image-origin{display:none}
}
@media(max-width:360px){
 .presentation-only .hero-copy{top:330px}
 .presentation-only .hero-copy h1{font-size:42px;line-height:1.07}
 .presentation-only .hero-copy .title-small{font-size:22px;margin-top:12px}
 .presentation-only .hero-intro{font-size:15px;margin:16px 0 16px;line-height:1.5}
 .presentation-only .hero-copy>.button{margin-top:0;min-height:43px;font-size:13px;padding:11px 16px}
 .presentation-only .hero-figure-caption.scene-credit{bottom:41px;font-size:11px;max-width:none;right:var(--gutter)}
 .presentation-only .hero-bottom{bottom:12px;font-size:8px}
 .presentation-only .hero-bottom .mouse{display:none}
}
/* Entry starts the visit and its audio from an explicit user gesture. */
.js.exhibition-locked #exhibition-view>:not(#inicio){display:none}
.js.exhibition-locked body[data-view="story"] :is(.site-footer,.journey-bar,.to-top){display:none}
.hero-start-action{position:absolute;left:50%;bottom:clamp(125px,20svh,220px);transform:translateX(-50%);z-index:6;display:flex;justify-content:center;width:max-content;max-width:calc(100% - 40px)}
.hero-start-action .button{font-size:15px;min-height:54px;padding:16px 28px;white-space:nowrap}
.intro-audio-controls{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px;margin:-12px auto 42px}
.intro-audio-button{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;padding:12px;border:1px solid #8e663755;border-radius:3px;color:var(--gold-dark);background:#fff8ec70}
.intro-audio-button:hover{border-color:var(--gold-dark);background:#fff8ec}
.intro-audio-button svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.intro-audio-button[hidden]{display:none}
.intro-audio-toggle .intro-icon-pause{fill:currentColor;stroke:none}
.intro-audio-toggle[aria-pressed="true"] .intro-icon-speaker,.intro-audio-toggle[aria-pressed="false"] .intro-icon-pause{display:none}
.intro-audio-toggle[aria-pressed="true"]{border-color:var(--gold-dark);background:#eadfc9}
#intro-audio-time{font:14px/1.5 var(--sans);font-variant-numeric:tabular-nums;color:var(--muted);margin-left:6px}
@media(max-width:700px){.hero-start-action .button{min-height:45px;font-size:14px;padding:12px 20px}.intro-audio-controls{margin:0 auto 30px;gap:10px 14px}.intro-audio-button{width:48px;height:48px;padding:12px}}
@media print{.intro-audio-controls,.hero-start-action{display:none!important}.js.exhibition-locked #exhibition-view>:not(#inicio){display:block}}
/* Space for the larger navigation preview and legible image credits. */
.film-stage>.scene-credit,.interior-stage>.scene-credit{bottom:116px}
.guide-cover .figure-caption,.flip-ticket .figure-caption{font:14px/1.65 var(--sans)}
.guide-cover small{font-size:14px;line-height:1.55}
.sources-grid p{font-size:18px;line-height:1.78;color:#5e5142}
.sources-grid .text-link{font-size:15px}
.archive-card .card-tag{font-size:12px;line-height:1.5;letter-spacing:.035em}
.digital-ticket>.source-note{font:14px/1.65 var(--sans)}
.digital-ticket small{font-size:13px;line-height:1.6}
.digital-ticket>.eyebrow{font-size:11px}
.map-controls>.text-link,.map-key .text-link{font-size:14px}
@media(max-width:700px){.film-stage>.scene-credit,.interior-stage>.scene-credit{bottom:100px}.guide-cover .figure-caption,.flip-ticket .figure-caption{font-size:13px}.guide-cover small{font-size:13px}}
.reduced-motion .film-stage>.scene-credit{bottom:auto}
.reduced-motion .interior-stage>.scene-credit{bottom:105px}
/* Photographic previews share a full frame; the viewer retains the whole document. */
.document-thumb img{object-fit:cover;object-position:50% 35%}
.document-thumb:has(img[src*="guia-"]) img{object-fit:contain;object-position:center top}

/* A source link sits beside its photograph, outside the enlargement button. */
.document-item{flex:0 0 clamp(220px,21vw,290px);min-width:0;scroll-snap-align:start}
.document-item .document-thumb{width:100%}
.municipal-source-link{display:block;width:fit-content;max-width:100%;margin-top:8px;padding:8px 0;font:14px/1.5 var(--sans);color:var(--gold-dark);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.municipal-source-link:hover{color:var(--ink)}
.municipal-source-link:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.dark .municipal-source-link,.image-dialog .municipal-source-link{color:var(--gold)}
.dark .municipal-source-link:hover,.image-dialog .municipal-source-link:hover{color:var(--paper)}
.archive-card>.municipal-source-link{margin-top:0;margin-bottom:12px}
@media(max-width:700px){.document-item{flex-basis:230px}.municipal-source-link{min-height:44px;display:flex;align-items:center;gap:5px}}

/* The plan introduces the route; the visitor collects a ticket before entering. */
#recorrido .map-intro{display:block;text-align:center;max-width:760px;margin:0 auto 28px}
#recorrido .map-intro h2{font-size:clamp(38px,5vw,64px)}
#recorrido .map-intro>p{font:var(--body-copy)/1.6 var(--sans);margin:18px auto 0}
#recorrido .map-layout{display:grid;grid-template-columns:48px minmax(0,620px);justify-content:center;align-items:start;gap:24px;max-width:692px;margin:0 auto}
#recorrido .zone-panel{display:contents;text-align:center}
#recorrido .zone-tabs{grid-column:1;grid-row:2;position:sticky;top:calc(var(--header) + 24px);display:flex;flex-direction:column;justify-content:flex-start;gap:12px;max-width:none;margin:80px 0 0;padding:0;border:0}
#recorrido .zone-tabs button{width:48px;min-width:48px;min-height:48px;padding:10px;font-size:25px;border:1px solid var(--zone-color,var(--gold-dark));border-radius:50%;color:var(--ink);background:#f2eadcbf}
#recorrido .zone-tabs button.selected{color:var(--paper);background:var(--ink);box-shadow:0 0 0 3px var(--warm),0 0 0 4px var(--zone-color,var(--gold-dark))}
#recorrido .zone-tabs button.selected:after{display:none}
#recorrido .zone-detail{grid-column:1/-1;grid-row:1;min-height:90px;display:flex;flex-direction:column;justify-content:center;text-align:center}
#recorrido .zone-detail>.eyebrow{font:12px/1.5 var(--sans);letter-spacing:.12em}
#recorrido .zone-detail h3{font:25px/1.35 var(--serif);margin:8px auto 0;max-width:36ch}
#recorrido .guide-sheet{grid-column:2;grid-row:2;width:100%;max-width:620px;margin:0;min-width:0}
#recorrido .map-key{justify-content:center;gap:12px 24px}
#recorrido .guide-sheet .source-note{text-align:center}
#recorrido .map-controls{grid-column:2;justify-content:center;flex-wrap:wrap;gap:14px 18px;margin:0;min-width:0}
#recorrido #route-play{margin-left:12px;font-size:14px}
#recorrido #unfold-map{font-size:14px;color:var(--gold-dark)}
#recorrido #zone-counter{font:13px/1.5 var(--sans)}
#recorrido #map-start{grid-column:2;justify-self:center;margin-top:8px}
.to-top{position:fixed;right:24px;bottom:calc(64px + env(safe-area-inset-bottom));z-index:85;width:44px;height:44px;display:grid;place-items:center;border:1px solid #d1ae7370;border-radius:3px;background:#f2eadcf2;color:#705332;box-shadow:0 4px 20px #211b1518;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .25s,transform .25s,visibility .25s,color .15s,border-color .15s}
html.scrolled .to-top{opacity:1;visibility:visible;transform:none}
.to-top:hover{color:var(--ink);border-color:var(--gold-dark)}
.to-top svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6}
body:has(#journey-bar:not([hidden])) .to-top{bottom:calc(110px + env(safe-area-inset-bottom))}
.reduced-motion .to-top{transition:none}
@media(max-width:600px){.to-top{right:15px;width:42px;height:42px}}
@media(prefers-reduced-motion:reduce){.to-top{transition:none}}
@media print{.to-top{display:none!important}}
@media(max-width:700px){
 #recorrido .map-layout{grid-template-columns:44px minmax(0,1fr);gap:18px 12px}
 #recorrido .zone-tabs{gap:10px;margin-top:20px}
 #recorrido .zone-tabs button{width:44px;min-width:44px;min-height:44px;padding:8px;font-size:23px}
 #recorrido .zone-detail h3{font-size:23px}
 #recorrido .guide-sheet{padding:16px 12px}
 #recorrido .map-controls{grid-column:1/-1;gap:14px}
 #recorrido #map-start{grid-column:1/-1}
 #recorrido #route-play{margin-left:0}
}

/* Las citas forman parte del desplazamiento de la exposición. */
@media(max-width:360px){.arrival-film .traveller-quote blockquote{font-size:22px}}
