/* Static composition is unchanged; the desktop enhancement adds reading travel. */
.map-chapter{--map-paper-width:300px;position:relative;width:min(1280px,91.111112%);margin:0 auto;padding:clamp(96px,13vh,144px) 32px clamp(110px,14vh,170px);scroll-margin-top:100px}
.map-story-stage{display:contents}
.map-story-content{display:flow-root}
@media(min-width:768px){
 .map-chapter[data-map-story=scroll]{height:calc(var(--map-content-height) + var(--map-reading-hold));scroll-margin-top:var(--map-pin-top)}
 .map-chapter[data-map-story=scroll] .map-story-stage{display:block;position:sticky;top:var(--map-pin-top)}
}
.map-heading{margin:0 auto clamp(64px,8vh,88px);transform:rotate(1.5deg)}
.map-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:center;gap:clamp(48px,7vw,112px);max-width:1130px;margin:0 auto}
.map-media{position:relative;width:min(100%,calc(var(--map-paper-width) * 1.72));aspect-ratio:1.1;isolation:isolate;justify-self:center}
.map-film,.map-photo{position:absolute;width:min(var(--map-paper-width),58%);margin:0}
.map-photo{top:0;left:2%;transform:rotate(-5deg);z-index:1}
.map-film{bottom:0;right:0;transform:rotate(5deg);z-index:2}
.map-video-motion{width:100%;transform-origin:50% 50%}
.map-chapter:is([data-map-gather=arriving],[data-map-gather=leaving]) .map-video-motion{will-change:transform,opacity}
.map-media .video-surface{border-radius:28px;box-shadow:0 4px 8px rgb(83 55 34 / 2.4%),0 22px 38px -22px rgb(83 55 34 / 24%)}
.map-media img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:contain}
.map-copy{max-width:390px;color:#3e2723;font:400 20px/1.4 'Courier Prime',monospace;letter-spacing:0;text-wrap:pretty}
.map-copy p{margin:0}.map-copy p+p{margin-top:24px}
@media(max-width:1199px){.map-chapter .map-copy{text-align:center}}
@media(max-width:1100px) and (min-width:801px){.map-chapter{padding-inline:16px}.map-layout{gap:40px;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}}
/* A safe stacked fallback only; the current design review is desktop-first. */
@media(max-width:800px){.map-chapter{padding:70px 0 100px;width:calc(100% - 48px)}.map-layout{grid-template-columns:1fr;gap:48px;max-width:540px}.map-heading{margin-bottom:54px}.map-copy{max-width:460px;margin-inline:auto}.map-media .video-surface{border-radius:20px}}
