@font-face{font-family:Display;src:url('assets/fonts/Anton-Regular.ttf') format('truetype');font-display:swap;font-weight:100 900}*{box-sizing:border-box} :root{--paper:#f4efe6;--ink:#151512;--muted:#68655f}body{margin:0;background:var(--paper);color:var(--ink);font:12px 'Courier New',monospace;overflow:hidden}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:12px}button:focus-visible,main:focus-visible{outline:2px solid currentColor;outline-offset:3px}header{position:fixed;inset:0 0 auto;height:90px;padding:12px 32px;display:flex;align-items:center;justify-content:space-between;z-index:3;pointer-events:none}header>*{pointer-events:auto}header img{width:180px;display:block;filter:invert(1);mix-blend-mode:multiply}header>span{font-size:9px;letter-spacing:2px}#home{padding:0}#stage{position:fixed;inset:90px 0 80px;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none}#world{transform-origin:0 0;will-change:transform;position:absolute}.chapter{position:absolute;pointer-events:none}.chapter .eyebrow{font-size:15px;letter-spacing:2px;white-space:nowrap}.chapter h2{font-family:Display,Impact,'Arial Narrow',sans-serif;font-weight:900;font-size:420px;line-height:.95;letter-spacing:-12px;margin:20px 0;transform:scaleX(.68);transform-origin:left top;width:1400px}.art{position:absolute;padding:0;text-align:left;touch-action:none}.art img{width:100%;height:auto;display:block;pointer-events:none;-webkit-user-drag:none}.art .caption{display:flex;justify-content:space-between;gap:12px;margin-top:13px;font-size:12px;line-height:1.3}.art small{font:inherit;color:var(--muted)}footer{position:fixed;inset:auto 0 0;display:flex;align-items:center;justify-content:space-between;height:80px;padding:0 32px;z-index:3;background:var(--paper)}.arrows{display:flex;gap:12px}#progress{display:flex;gap:22px}#progress button{padding-inline:5px;opacity:.45}#progress .active{opacity:1;border-bottom:1px solid}.map #stage{cursor:grab}.map #stage:active{cursor:grabbing}#map-tools{position:fixed;right:35px;bottom:90px;background:var(--paper);border:1px solid #15151230;z-index:4}#map-tools button{min-width:40px}#hint{position:fixed;left:44px;bottom:96px;font-size:8px;letter-spacing:1.5px;pointer-events:none}.map #hint{display:none}dialog{border:0;color:var(--ink);background:var(--paper);max-width:none;max-height:none;margin:0;width:100vw;height:100dvh;padding:70px 40px}dialog::backdrop{background:#151512}.close{position:absolute;right:28px;top:20px;z-index:10}#index{background:#151512;color:var(--paper)}#index>p{letter-spacing:2px;font-size:10px}#chapters{margin:50px 0 35px}#chapters button{position:relative;display:flex;align-items:center;gap:35px;width:100%;border-top:1px solid #ffffff35;text-align:left;padding:12px 0;overflow:hidden}#chapters strong{font:clamp(50px,8vw,125px)/1 Display,Impact,sans-serif;letter-spacing:-3px;z-index:1}#chapters span{font-size:12px}#chapters img{position:absolute;right:10%;top:0;height:100%;width:190px;object-fit:cover;opacity:.4}#chapters button:hover img{opacity:1}#index small{font-size:10px;line-height:1.9;opacity:.6}#viewer[open]{display:grid;grid-template-columns:2fr 1fr;gap:5vw;align-items:center;padding:70px 6vw 40px}.view-photo{height:calc(100dvh - 110px);display:flex;align-items:center;justify-content:center}.view-photo img{max-width:100%;max-height:100%;object-fit:contain}#viewer h1{font:clamp(45px,6vw,95px)/.95 Display,Impact,sans-serif;text-transform:uppercase;letter-spacing:-2px;margin:25px 0}#viewer p{line-height:1.8;max-width:300px}#series{font-size:10px;text-transform:uppercase;letter-spacing:1px}.work-arrows{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #15151244;margin-top:40px}.work-arrows button{font-size:24px}.flight{position:fixed;z-index:20;pointer-events:none;object-fit:fill;transform-origin:0 0}.morph .view-photo,.morph section{visibility:hidden}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:700px){header{height:70px;padding:8px 18px}header img{width:145px}header>span{display:none}#stage{top:70px;bottom:85px}footer{height:85px;padding:0 10px;flex-wrap:wrap;gap:0}footer button{font-size:10px;min-height:44px}.arrows{gap:0}.arrows span{display:none}#progress{gap:10px}#mode{padding:10px}.chapter .eyebrow{font-size:11px}.chapter h2{font-size:150px;letter-spacing:-5px;width:700px;transform:scaleX(.8);margin:12px 0}.art .caption{font-size:10px;margin-top:9px}.art small{font-size:8px}#hint{bottom:76px;left:23px;font-size:7px}#map-tools{right:16px;bottom:93px}#index{padding:75px 22px}#chapters strong{font-size:54px;letter-spacing:-1px}#chapters button{gap:15px;padding:25px 0}#chapters img{right:0;width:90px}#viewer[open]{display:flex;flex-direction:column;gap:15px;padding:65px 22px 30px;overflow:auto}.view-photo{height:55dvh;width:100%;flex-shrink:0}#viewer section{width:100%}#viewer h1{font-size:48px;margin:12px 0}#viewer p{font-size:11px}#viewer .close{font-size:10px;right:12px}.work-arrows{margin-top:20px}#viewer p{max-width:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
#home{mix-blend-mode:multiply} .art:focus-visible{outline-offset:7px}
header{background:var(--paper)}

/* Production motion, focus and mobile viewport safeguards */
#viewer::backdrop{background:transparent}#viewer.morph{background:transparent}#viewer:not(.morph) section{animation:copy-in .3s ease both}.view-photo img{width:auto;height:auto}.skip{position:fixed;top:-100px;z-index:50;padding:12px;background:var(--ink);color:var(--paper)}.skip:focus{top:0}a{color:inherit}#stage{overscroll-behavior:none;-webkit-touch-callout:none}#stage *{user-select:none;-webkit-user-select:none;-webkit-user-drag:none}.image-error{background:#ded8ce}#share{padding-left:0;border-bottom:1px solid #15151233}#share-status{min-height:18px;font-size:10px}#viewer .close,#index .close{min-height:44px}.chapter h2{font-weight:400}header{padding-top:calc(12px + env(safe-area-inset-top))}footer{padding-bottom:env(safe-area-inset-bottom)}#index{overflow-y:auto}#index small{display:block;max-width:700px}.work-arrows button{min-width:48px;min-height:48px}#map-tools{box-shadow:0 3px 18px #15151208}.art img{background:#e4ded4}#viewer .view-photo{touch-action:pan-y}#stage:focus{outline:none}#stage:focus-visible{outline:2px solid #151512;outline-offset:-3px}
@keyframes copy-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:700px){header{height:calc(70px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top)}#stage{top:calc(70px + env(safe-area-inset-top));bottom:calc(85px + env(safe-area-inset-bottom))}footer{height:calc(85px + env(safe-area-inset-bottom))}#map-tools{bottom:calc(93px + env(safe-area-inset-bottom))}#hint{bottom:calc(76px + env(safe-area-inset-bottom))}#viewer[open]{padding-top:calc(65px + env(safe-area-inset-top));padding-bottom:calc(30px + env(safe-area-inset-bottom))}.chapter h2{font-size:145px;letter-spacing:-4px;transform:scaleX(.73)}#progress{gap:4px}#progress button{min-width:32px}header button{min-height:44px}#chapters strong{font-size:clamp(35px,10vw,54px)}#index small{font-size:10px}.view-photo{min-height:210px}}
@media(prefers-reduced-motion:reduce){#viewer:not(.morph) section{animation:none}}
@media(max-width:700px){.art .caption{font-size:calc(10px / var(--scene-scale,1));line-height:1.4}.art .caption small{display:none}.chapter .eyebrow{font-size:calc(9px / var(--scene-scale,1))}}
.sequence-progress{display:flex;align-items:center;gap:30px}.sequence-info{display:flex;flex-direction:column;gap:6px;font-size:11px}#sequence-count{font-weight:bold;letter-spacing:1px}#sequence-label{font-size:9px;color:var(--muted)}@media(max-width:700px){footer{height:calc(112px + env(safe-area-inset-bottom));align-content:center;row-gap:2px}.sequence-progress{order:-1;width:100%;justify-content:space-between;padding:0 12px;gap:8px}.sequence-info{gap:4px}#sequence-label{font-size:9px}#progress button{min-height:36px}.arrows{margin-left:3px}#stage{bottom:calc(112px + env(safe-area-inset-bottom))}#hint{display:none}#map-tools{bottom:calc(120px + env(safe-area-inset-bottom))}#mode{margin-left:auto}}
/* Compact, overlapping score: retain the upper contour of every letter. */
.chapter h2{font-size:250px;letter-spacing:-7px;transform:scaleX(.82);margin:12px 0;width:1400px}
@media(max-width:700px){.chapter h2{font-size:145px;letter-spacing:-4px;transform:scaleX(.73);margin:12px 0}}
#hint{display:none}
/* An opening wordmark that becomes the gallery masthead. */
header img{filter:none}
#intro[hidden]{display:none}
#intro{position:fixed;inset:0;z-index:30;isolation:isolate;touch-action:none;overscroll-behavior:none;--exit:0}
.intro-paper{position:absolute;inset:0;background:var(--paper);opacity:calc(1 - var(--exit));z-index:-1}
.intro-frame{position:absolute;inset:24px;border:1px solid #15151226;pointer-events:none;opacity:calc(1 - var(--exit) * 3)}
.intro-meta{position:absolute;top:48px;left:48px;right:48px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.7px;opacity:calc(1 - var(--exit) * 3)}
#intro-logo{position:absolute;overflow:visible;transform-origin:0 0;will-change:transform;pointer-events:none}
#intro-logo > g[clip-path]{opacity:0}
#intro.drawing #intro-logo > g[clip-path]{animation:logo-fill .8s 1.1s both}
.intro-photo{opacity:0}
#intro.drawing .intro-photo{animation:logo-fill 1.1s 1.5s both}
.intro-ink{opacity:clamp(0,calc((var(--exit) - .2) * 2.5),1)}
.intro-lines{opacity:calc(1 - var(--exit))}
.intro-lines path{stroke-dasharray:1;stroke-dashoffset:1}
#intro.drawing .intro-lines path{animation:logo-draw 1.8s cubic-bezier(.4,0,.2,1) var(--delay) both}
#intro.leaving #intro-logo > g[clip-path]{animation:none;opacity:1}
#intro.leaving .intro-lines{opacity:0}
.intro-bottom{position:absolute;bottom:max(50px,env(safe-area-inset-bottom));left:48px;right:48px;display:grid;grid-template-columns:1fr auto;align-items:end;gap:18px;opacity:calc(1 - var(--exit) * 3)}
.intro-bottom p{margin:0;font:clamp(24px,3vw,44px)/1.12 Georgia,serif;letter-spacing:-1px}.intro-bottom p span{color:var(--muted)}
#intro-enter{border-bottom:1px solid #15151260;padding:15px 0;display:flex;align-items:center;gap:45px;min-height:48px;font-size:11px}
#intro-enter span{font-size:24px}.intro-bottom small{grid-column:2;text-align:right;font-size:9px;color:var(--muted)}
.intro-active > header,.intro-active > main,.intro-active > footer{opacity:var(--intro-reveal,0)}
.intro-active #home{visibility:hidden}
@keyframes logo-draw{to{stroke-dashoffset:0}}
@keyframes logo-fill{from{opacity:0}to{opacity:1}}
@media(max-width:700px){.intro-frame{inset:12px}.intro-meta{top:calc(32px + env(safe-area-inset-top));left:24px;right:24px;font-size:8px;line-height:1.7}.intro-meta span:last-child{display:none}.intro-bottom{left:24px;right:24px;bottom:calc(32px + env(safe-area-inset-bottom));gap:18px;grid-template-columns:1fr}.intro-bottom p{font-size:32px;margin-bottom:24px}.intro-bottom small{grid-column:1;text-align:left}#intro-enter{justify-content:space-between;width:100%}}
@media(prefers-reduced-motion:reduce){#intro.drawing .intro-lines path,#intro.drawing #intro-logo > g[clip-path],#intro.drawing .intro-photo{animation:none;opacity:1;stroke-dashoffset:0}.intro-lines{display:none}#intro-logo{opacity:calc(1 - var(--exit));will-change:auto}}
#intro.drawing .intro-lines{animation:contour-away .6s 2.5s forwards}@keyframes contour-away{to{opacity:0}}#intro:focus{outline:none}
header img{height:auto}.intro-boot body>header,.intro-boot body>main,.intro-boot body>footer{opacity:0}
@media(max-height:520px){.intro-bottom p{display:none}.intro-bottom{bottom:24px;gap:8px}.intro-meta{top:26px}.intro-bottom small{font-size:8px}}
/* Establish the photograph before closing it into the letters. */
.intro-context{opacity:0}
#intro.drawing .intro-context{animation:photo-context 4s 1.5s both}
#intro.drawing #intro-logo > g[clip-path]{animation:logo-fill .7s 3.5s both}
#intro.drawing .intro-photo{animation:logo-fill .8s 3.5s both}
#intro.drawing .intro-lines{animation:contour-away .5s 1.6s forwards}
#intro.leaving .intro-context{display:none}
#intro.leaving #intro-logo > g[clip-path]{animation:none;opacity:1}
#intro.leaving .intro-photo{animation:none;opacity:1}
@keyframes photo-context{0%{opacity:0}20%,50%{opacity:1}85%,100%{opacity:0}}
@media(prefers-reduced-motion:reduce){#intro.drawing .intro-context{display:none}#intro.drawing #intro-logo > g[clip-path],#intro.drawing .intro-photo{animation:none;opacity:1}}
.editorial-note{position:absolute;width:440px;pointer-events:none}.editorial-note>span{font-size:13px;letter-spacing:2px}.editorial-note p{font:36px/1.25 Georgia,serif;letter-spacing:-.6px;margin:22px 0;max-width:420px}#sequence-label{max-width:360px;line-height:1.4}
@media(max-width:700px){.chapter.series-opening h2{font-size:100px}.editorial-note{width:342px}.editorial-note>span{font-size:10px;letter-spacing:1px}.editorial-note p{font:15px/1.4 Georgia,serif;letter-spacing:0;margin:9px 0;max-width:330px}#sequence-label{max-width:245px;font-size:8px}}
#intro-replay{display:block;margin:0 0 30px;padding:12px 0;border-bottom:1px solid #ffffff70;color:inherit;min-height:44px;font-size:12px}
#map-panel{position:fixed;left:32px;bottom:96px;z-index:4;background:var(--paper);border:1px solid #15151230;width:224px;box-shadow:0 3px 18px #15151208}#map-details summary{cursor:pointer;min-height:44px;padding:15px 12px;font-size:10px}#map-details summary span{float:right}#map-overview svg{display:block;width:100%;height:150px;touch-action:none;cursor:crosshair}#map-overview rect{fill:#151512;opacity:.48}#map-overview .map-viewport{fill:#b35b3420;stroke:#a74825;stroke-width:1.5px;vector-effect:non-scaling-stroke;opacity:1;pointer-events:none}#map-overview nav{display:flex;border-top:1px solid #15151220}#map-overview button{min-height:44px;flex:1;padding:8px 4px;font-size:10px}#map-details summary:focus-visible{outline:2px solid;outline-offset:3px}
@media(max-width:700px){#map-panel{left:16px;bottom:calc(120px + env(safe-area-inset-bottom));width:180px}#map-overview svg{height:125px}#progress button{min-height:44px;min-width:44px}#sequence-label{max-width:190px}#map-tools{right:16px}#map-tools button{min-height:44px;min-width:44px}#viewer .close{position:fixed;background:var(--paper);left:0;right:0;top:0;text-align:right;padding:16px 22px;padding-top:calc(16px + env(safe-area-inset-top));border-bottom:1px solid #15151218}#viewer section{padding-bottom:env(safe-area-inset-bottom)}#index-close{position:sticky;float:right;top:0;background:var(--ink)}.intro-bottom{bottom:calc(24px + env(safe-area-inset-bottom))}}
@media(max-width:380px){#sequence-label{max-width:165px}#map-panel{width:156px;left:10px}#map-tools{right:10px}#map-overview button{font-size:9px}#progress{gap:0}.sequence-progress{padding:0 6px}}
/* Curatorial reading and the final pause share the existing paper and type. */
#index .curatorial-intro{font:clamp(18px,2vw,26px)/1.5 Georgia,serif;letter-spacing:0;max-width:850px;margin:30px 0 0}
.collection-note{margin:0 0 24px;max-width:760px}.collection-note summary{cursor:pointer;padding:14px 0;min-height:44px;font-size:11px}.collection-note p{font:18px/1.6 Georgia,serif;margin:6px 0 25px;color:#ded8ce}.collection-note summary:focus-visible{outline:2px solid currentColor;outline-offset:3px}
#ending{overflow-y:auto;padding:90px 7vw 50px}#ending[open] .ending-content{animation:copy-in .5s ease both}.ending-content{max-width:1200px;margin:auto}.ending-kicker{font-size:10px;letter-spacing:2px;margin-bottom:35px}#ending-title{font:clamp(58px,10vw,150px)/.96 Display,Impact,sans-serif;letter-spacing:-.03em;margin:0 0 30px}#ending-title:focus{outline:none}#ending-copy{font:clamp(23px,2.5vw,36px)/1.3 Georgia,serif;margin:0 0 18px}.ending-note{max-width:470px;font:16px/1.6 Georgia,serif;color:var(--muted)}.ending-actions{display:flex;flex-wrap:wrap;gap:16px 35px;margin:32px 0 45px}.ending-actions button{border-bottom:1px solid #15151260;padding:15px 0;min-height:48px;text-align:left}.ending-credit{font-size:10px;line-height:1.9;text-decoration:none}.ending-credit span{text-decoration:underline;text-underline-offset:4px}
@media(max-width:700px){#ending{padding:85px 24px calc(32px + env(safe-area-inset-bottom))}#ending .close{right:12px;font-size:10px;max-width:90%;min-height:44px}.ending-kicker{font-size:9px;letter-spacing:1px;margin-bottom:30px}#ending-title{font-size:clamp(52px,13vw,86px)}.ending-actions{display:grid;gap:8px;margin:25px 0 32px}.collection-note p{font-size:17px}#index .curatorial-intro{font-size:19px}}
@media(prefers-reduced-motion:reduce){#ending[open] .ending-content{animation:none}}

@media(max-width:700px){#map-panel{bottom:calc(174px + env(safe-area-inset-bottom))}}
/* Original Margen Vivo signature, below the exhibition controls. */
footer{height:124px;padding-bottom:44px}#stage{bottom:124px}.footer-credit{position:absolute;left:32px;right:32px;bottom:0;height:44px;display:flex;align-items:center;justify-content:flex-end;border-top:1px solid #15151218}#map-tools{bottom:134px}#map-panel{bottom:140px}
@media(max-width:700px){footer{height:calc(184px + env(safe-area-inset-bottom));padding-bottom:calc(72px + env(safe-area-inset-bottom))}#stage{bottom:calc(184px + env(safe-area-inset-bottom))}.footer-credit{left:18px;right:18px;bottom:env(safe-area-inset-bottom);height:72px;justify-content:center}.footer-credit .mv-credit{flex-direction:column;gap:0;align-items:center}.footer-credit .mv-credit__label{font-size:11px}#map-tools{bottom:calc(192px + env(safe-area-inset-bottom))}#map-panel{bottom:calc(246px + env(safe-area-inset-bottom))}}
