/* Public illustrated world map. Scoped to the homepage section. */
.world-map-section { scroll-margin-top: 24px; }
.world-map-section > .section-intro { max-width: 800px; margin-bottom: 30px; }
.world-map-frame { margin: 0; border: 1px solid var(--dotf-border, #b88b45); background: #08152d; box-shadow: 0 16px 48px #0003; }
.world-map-image-link { display: block; }
.world-map-image-link img { display: block; width: 100%; height: auto; aspect-ratio: 1295 / 1214; image-rendering: pixelated; }
.world-map-image-link:focus-visible { outline: 3px solid var(--dotf-cyan, #7de5ed); outline-offset: 4px; }
.world-map-frame figcaption { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 20px; padding: 22px 26px; }
.world-map-frame figcaption p { margin: 0; color: #c0cbe0; font-size: 13px; line-height: 1.8; }
.world-map-frame figcaption strong { display: block; color: var(--dotf-gold, #ffda8a); font-size: 15px; font-weight: 600; }
.world-map-frame figcaption p > span { display: block; }
.world-map-full-size { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; color: var(--dotf-cyan, #7de5ed); white-space: nowrap; }
.world-map-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
@media (max-width: 600px) {
  .world-map-frame figcaption { align-items: flex-start; flex-direction: column; gap: 10px; padding: 18px; }
  .world-map-section > .section-intro { margin-bottom: 24px; }
}
