.infographic .people-map { color:#fff; background: linear-gradient(135deg,#39111e,#230912 70%); border: 1px solid rgba(255,180,193,.32); border-radius: 14px; overflow: hidden; }
.infographic .people-views { margin-top: 12px; }
.infographic-top { display:none; }
.infographic-top div { display:flex; align-items:baseline; gap:14px; }
.infographic-top strong { font-size:clamp(46px,7vw,92px); line-height:.8; color:var(--pink); letter-spacing:-.08em; }
.infographic-top span { font-size:11px; letter-spacing:2px; }
.infographic-top p { color:var(--muted); font-size:12px; line-height:1.7; margin:0; }
.infographic .map-viewport { height:clamp(500px,calc(100svh - 210px),680px); background: radial-gradient(circle at 50% 50%,#641d31 0,#35101d 28%,#210811 72%); }
.infographic .map-viewport:before { content:''; position:absolute; inset:0; background:url('/stories/world-map.svg') center/82% auto no-repeat; opacity:.15; filter:brightness(0) invert(1); pointer-events:none; }
.infographic .infographic-core { display:none; }
.infographic .people-map-notice { display:none; }
.infographic .map-plane { width:100%; height:100%; left:50%; top:50%; }
.infographic .map-land { display:none; }
.infographic .map-markers { position:absolute; inset:0; }
.infographic .map-marker { width:64px; height:64px; border:2px solid #bd7183; background:#2d0e19; box-shadow:0 0 0 5px #421525,0 8px 22px #12030a99; }
.infographic .map-marker { width:16px; height:16px; border:2px solid #a9ecff; background:#d8f8ff; box-shadow:0 0 0 4px #56d9ff33,0 0 22px 8px #56d9ff99; }
.infographic .map-marker img { display:none; }
.infographic .map-marker span { color:#fff; font-size:10px; font-weight:bold; top:calc(100% + 7px); }
.infographic .map-marker:hover,.infographic .map-marker:focus-visible,.infographic .map-marker[aria-expanded="true"] { border-color:var(--pink); box-shadow:0 0 0 5px #ffb4c155,0 8px 24px #12030a99; }
.infographic .map-marker:hover,.infographic .map-marker:focus-visible,.infographic .map-marker[aria-expanded="true"] { transform:translate(-50%,-50%) scale(1.35); background:var(--pink); box-shadow:0 0 0 7px #ffb4c133,0 0 28px 12px #ffb4c099; }
.infographic .map-marker span { display:none; top:calc(100% + 14px); width:120px; color:#fff; font-size:11px; text-shadow:0 2px 6px #12030a; transform:translateX(-50%) scale(.74); }
.infographic .map-marker:hover span,.infographic .map-marker:focus-visible span,.infographic .map-marker[aria-expanded="true"] span { display:block; }
.infographic-core { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:190px; height:190px; border-radius:50%; border:1px solid #ffb4c177; display:grid; place-content:center; text-align:center; background:#2b0d16dd; box-shadow:0 0 0 16px #ffb4c00b,0 0 50px #ffb4c033; z-index:1; }
.infographic-core:before { content:''; position:absolute; inset:-70px; border:1px dashed #ffb4c033; border-radius:50%; }
.infographic-core b { color:var(--pink); font-size:9px; letter-spacing:3px; }
.infographic-core strong { color:#fff; font-size:25px; line-height:.9; letter-spacing:.06em; margin:10px 0; }
.infographic-core span { color:var(--muted); font-size:10px; }
.infographic .map-controls { display:none; }
.infographic .map-person-location { color:#9edfee; }
.infographic .map-person { background:#35111df5; color:#fff; border-color:var(--pink); }
@media(max-width:760px){
  .infographic-top{padding:18px 14px 10px;align-items:start}
  .infographic-top strong{font-size:55px}
  .infographic-top span{font-size:8px}
  .infographic-top p{font-size:10px}
  .infographic .people-views button[data-people-view="map"]{display:none}
  .infographic .people-views{margin:0 0 14px}
  .infographic .storyPeople__stage{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .infographic .storyPeople__stage:not(.expanded) .storyPerson:nth-child(n+9){display:none}
  .infographic .storyPerson{aspect-ratio:auto}
  .infographic .storyPerson img{height:auto;aspect-ratio:4/5}
  .infographic .storyPerson__copy{position:relative;display:block;padding:9px 8px 11px;background:#220710}
  .infographic .storyPerson__copy b{font-size:13px;line-height:1.45;overflow-wrap:anywhere}
  .infographic .storyPerson__copy small{font-size:9px;line-height:1.45;overflow-wrap:anywhere}
  .infographic .storyPerson__badge{font-size:7px;top:7px;left:7px;padding:5px 7px}
  .infographic .map-viewport{height:420px}
  .infographic .map-marker{width:16px;height:16px}
  .infographic .map-marker span{width:72px;font-size:9px}
  .infographic-core{width:130px;height:130px}
  .infographic-core strong{font-size:18px}
  .infographic-core:before{inset:-35px}
}
