.map-page { background: var(--paper); }
.map-page-intro { padding-top: clamp(32px, 5vw, 64px); padding-bottom: 32px; }
.map-page-back { display: inline-block; padding: 8px 0; color: var(--text-muted); text-decoration: none; font: 500 var(--text-cap)/1.4 var(--font-sans); }
.map-page-back:hover { color: var(--text-accent); }
.map-page-back:focus-visible { outline: 2px solid var(--focus-ring); outline-offset: 4px; }
.map-page-eyebrow { margin: 30px 0 16px; font: 600 var(--text-xs)/1.6 var(--font-eyebrow); letter-spacing: var(--tracking-eyebrow); text-transform: uppercase; color: var(--text-accent); }
.map-page-intro h1 { max-width: 22ch; margin: 0; color: var(--text-strong); font: 400 clamp(38px, 4.7vw, 66px)/1.04 var(--font-heading); letter-spacing: -.035em; }
.map-page-deck { max-width: 75ch; margin: 22px 0 0; color: var(--text-muted); font: 400 var(--text-base)/1.7 var(--font-sans); }
.map-page-body { padding-bottom: var(--section-y); }
.map-page-note { max-width: 96ch; margin: 26px 0 0; font: 400 var(--text-sm)/1.7 var(--font-sans); color: var(--text-muted); }
@media (max-width: 760px) {
  .map-page-intro { padding-top: 22px; }
  .map-page-eyebrow { margin-top: 20px; }
  .map-page-deck { font-size: var(--text-base); }
}
