/* Keep map controls at the frame and the geography open in the middle. */
.atlas-map-panel{display:flex;flex-direction:column;background:var(--paper)}
.atlas-map-canvas{position:relative;flex:1;min-height:0;isolation:isolate}
.atlas-map-canvas #map{height:100%;min-height:0}
.atlas-map-tools{inset:14px 14px auto 74px;justify-content:flex-start;gap:7px;background:none}
.atlas-map-tools>button{min-height:44px;padding:10px 15px;font-size:13px;border:1px solid #ccd3c9;box-shadow:0 2px 8px #253b380a}
.atlas-map-tools>button:hover{background:#fff;color:var(--accent);border-color:var(--accent)}
.atlas-map-tools>button:disabled{opacity:.45;cursor:default}
#map .leaflet-control-zoom{margin:14px}
#map .leaflet-control-zoom a{width:44px;height:44px;line-height:44px}
.atlas-map-help{padding:8px 12px;display:flex;justify-content:space-between;align-items:start;gap:10px;font-size:12px;line-height:1.6;border-top:1px solid var(--line)}
.atlas-map-help p{margin:0}
#mapGestureHint{color:var(--muted);white-space:nowrap}
.map-touch-hint{display:none}
.atlas-edge-hints{position:absolute;inset:0;z-index:450;pointer-events:none;overflow:hidden}
.atlas-edge{position:absolute;transform:translate(-50%,-50%);width:max-content;min-height:44px;padding:6px 9px;pointer-events:auto;display:flex;align-items:center;gap:5px;text-align:right;border:0;border-radius:4px;background:transparent;box-shadow:none;color:var(--ink);font-family:inherit;line-height:1.35;isolation:isolate}
/* The visible label is 32px high, inside a comfortable 44px touch target. */
.atlas-edge:before{content:'';position:absolute;inset:6px 0;z-index:-1;border:1px solid #ccd3cc;border-radius:4px;background:#f7f8f4f0;pointer-events:none}
.atlas-edge>span:last-child{flex:1;min-width:0}
.atlas-edge strong{display:block;font-size:12px;font-weight:500;white-space:nowrap}
.atlas-edge small{display:none}
.atlas-edge-arrow{width:16px;height:16px;display:grid;place-items:center;flex-shrink:0;color:var(--muted)}
.atlas-edge-arrow svg{transform:rotate(var(--direction));width:16px;height:16px;stroke-width:1.5}
.atlas-edge:hover:before{background:#fff;border-color:var(--accent)}
.atlas-edge:hover .atlas-edge-arrow{color:var(--accent)}
.atlas-edge:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.atlas-edge-hints.is-compact .atlas-edge{gap:4px;padding-inline:8px}
.basemap-unavailable .atlas-edge-hints,.basemap-unavailable .atlas-map-help{display:none}
.basemap-unavailable .atlas-map-canvas{flex:none;height:auto}
@media(max-width:1100px){.atlas-map-help{display:block}#mapGestureHint{margin-top:3px;white-space:normal}}
@media(max-width:900px){.atlas-map-canvas{flex:none;height:560px}.atlas-map-help{display:flex}#mapGestureHint{margin:0}}
@media(max-width:600px){.atlas-map-canvas{height:520px}.atlas-map-tools{inset:12px 10px auto 65px;gap:5px}.atlas-map-tools>button{padding:9px 10px;gap:5px;font-size:12px}#map .leaflet-control-zoom{margin:12px 10px}.atlas-map-help{display:block}#mapGestureHint{margin-top:3px}}
@media(pointer:coarse){.map-pointer-hint{display:none}.map-touch-hint{display:inline}}

/* Open editorial numerals, echoing the years in the homepage timeline. */
.atlas-results{min-height:0;padding-block:0;gap:12px 28px;flex-wrap:wrap;margin-block:12px}
.atlas-heading{align-items:center}
.atlas-heading .atlas-counters{margin-block:4px}
.atlas-counters{display:flex;align-items:center;gap:30px;max-width:100%;margin:0;flex-shrink:0}
.atlas-counter{display:flex;flex-direction:column;align-items:flex-start;gap:6px;color:var(--ink)}
.atlas-counter-stories{padding-inline-start:30px;border-inline-start:1px solid var(--line)}
.atlas-counter dt{order:1;display:flex;align-items:center;gap:8px;font-size:14px;line-height:1.4;color:#526058}
.atlas-counter dt:before{content:"";width:12px;height:2px;background:var(--accent)}
.atlas-counter dd{margin:0;font-size:64px;line-height:.95;font-weight:350;letter-spacing:-.055em;font-variant-numeric:tabular-nums;min-height:.95em}
.atlas-counter [data-count-value]{display:inline-block;min-width:3ch;text-align:right}
.atlas-result-actions{display:flex;align-items:center;gap:16px;margin-inline-start:auto}
#mapStatus:not(.sr-only){flex-basis:100%;max-width:none;order:3;font-size:14px;line-height:1.7}
.atlas-result-context{margin:0;flex-basis:100%;font-size:14px;line-height:1.6;color:var(--muted)}
.atlas-place-select,.atlas-person-link,.atlas-place-directions,.atlas-popup-story,.atlas-popup-directions{min-height:44px}
.atlas-place-directions,.atlas-popup-directions{font-size:14px;display:flex;align-items:center}
/* The popup has one heading, one story subtitle and a clear action hierarchy. */
.atlas-story-popup .leaflet-popup-content{margin:28px 20px 18px;max-width:calc(100vw - 120px)}
.atlas-popup h3{margin:0 0 6px;padding-inline-end:12px;font-size:23px;line-height:1.4;overflow-wrap:anywhere}
.atlas-popup p{color:var(--muted);font-size:14px;line-height:1.6}
.atlas-popup-actions{display:grid;gap:8px;margin-top:20px}
.atlas-popup-actions .atlas-popup-story,.atlas-popup-actions .atlas-popup-group,.atlas-popup-actions .atlas-popup-directions{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;margin:0;padding:10px 12px;border:1px solid transparent;border-radius:6px;font-family:inherit;font-size:14px;font-weight:500;line-height:1.6;text-align:center;text-decoration:none}
.atlas-popup-actions .atlas-popup-story{background:var(--accent);color:#fff}
.atlas-popup-actions .atlas-popup-story:hover{background:#2540c9;color:#fff}
.atlas-popup-actions .atlas-popup-group{background:transparent;color:var(--accent);border-color:var(--accent)}
.atlas-popup-actions .atlas-popup-group:hover{background:#eef0fb}
.atlas-popup-actions .atlas-popup-directions{color:var(--ink);font-size:13px;font-weight:400;text-decoration:underline;text-underline-offset:4px}
.atlas-popup-actions .atlas-popup-directions:hover{color:var(--accent);background:#eef0fb}
.atlas-popup-actions a:focus-visible,.atlas-popup-actions button:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
@media(max-width:1000px) and (max-height:500px){
 .atlas-story-popup .leaflet-popup-content{margin:24px 16px 12px;max-height:calc(100dvh - 142px);overflow-y:auto;overscroll-behavior:contain}
 .atlas-popup-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:12px}
 .atlas-popup-actions .atlas-popup-story,.atlas-popup-actions .atlas-popup-group{padding:8px;font-size:13px;line-height:1.5}
 .atlas-popup-actions .atlas-popup-directions{grid-column:1/-1}
}
/* One disclosure per locality. Portraits belong to people; their sites are visible directly. */
.atlas-panel-heading{padding-block:12px 20px}
.atlas-panel-heading h2{font-size:24px;line-height:1.2;margin-bottom:6px}
.atlas-panel-heading>span{display:block;font:400 14px/1.5 Heebo,Arial,sans-serif}
.atlas-place-group{display:block;padding:0;align-self:start}
.atlas-place-group h3{margin:0;font-size:inherit}
.atlas-group-select{display:flex;align-items:center;gap:12px;width:100%;min-height:72px;padding:12px;border:0;text-align:start;color:var(--ink)}
.atlas-group-select:hover,.atlas-group-select[aria-expanded=true]{color:var(--accent)}
.atlas-group-select[aria-expanded=true]{background:#eef0fb}
.atlas-group-select:focus-visible,.atlas-place-story a:focus-visible,.atlas-place-story button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.atlas-group-copy{flex:1;min-width:0}
.atlas-group-copy strong{display:block;font-family:Heebo,Arial,sans-serif;font-size:20px;font-weight:400;line-height:1.3;overflow-wrap:anywhere}
.atlas-group-copy .atlas-place-meta{margin:2px 0 0;font:400 14px/1.45 Heebo,Arial,sans-serif;color:var(--muted)}
.atlas-group-select>svg{flex-shrink:0;transition:transform .18s}
.atlas-group-select[aria-expanded=true]>svg{transform:rotate(180deg)}
.atlas-place-stories{list-style:none;margin:12px 12px 16px 0;padding:0 12px 0 0;border-inline-start:2px solid #dce1f5}
.atlas-place-story{padding:12px 0}
.atlas-place-story+.atlas-place-story{border-top:1px solid var(--line)}
.atlas-place-story h4{margin:0;font-size:inherit}
.atlas-place-group.is-selected{background:transparent;border-top-color:var(--line)}
.atlas-place-group.is-selected:before{display:none}
.atlas-place-story .atlas-person-link{position:relative;gap:0;margin:0;padding-inline-start:52px;min-height:44px;font-family:var(--font-heading,Alef,Arial,sans-serif);font-size:18px;font-weight:700;line-height:1.3;text-decoration:none}
.atlas-place-story .atlas-person-link:hover>span,.atlas-place-story .atlas-person-link:focus-visible>span{text-decoration:underline;text-underline-offset:4px}
.atlas-story-thumb{position:absolute;inset-inline-start:0;top:0;width:40px;height:52px;object-fit:contain}
.atlas-person-link>span{flex:1;min-width:0;overflow-wrap:anywhere}
.atlas-story-locations{margin-inline-start:52px;font-family:Heebo,Arial,sans-serif}
.atlas-sites-label{display:block;margin:0;font-size:13px;font-weight:400;line-height:1.5;color:var(--muted)}
.atlas-story-sites{list-style:none;margin:0;padding:0}
.atlas-story-site{display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:8px;padding:0;margin:0;margin-inline-start:-52px}
.atlas-story-site .atlas-place-select{grid-area:1/2;width:100%;min-height:44px;padding:8px 0;font-size:15px;line-height:1.5;font-weight:400;color:var(--ink);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:4px}
.atlas-story-site .atlas-place-select:hover{color:var(--accent);text-decoration-color:currentColor}
.atlas-story-site .atlas-place-select[aria-pressed=true]{color:var(--accent);font-weight:500;background:#eef0fb;box-shadow:6px 0 #eef0fb,-6px 0 #eef0fb}
.atlas-story-site .atlas-place-directions{grid-area:1/1;align-self:start;justify-content:center;width:44px;min-height:44px;padding:0;color:var(--accent);border-radius:4px;text-decoration:none}
.atlas-story-site .atlas-place-directions:hover{background:#eef0fb}
@media(min-width:901px){.atlas-place-group.is-expanded>h3{position:sticky;top:0;z-index:3}}
@media(max-width:600px){.atlas-place-group{padding:0}.atlas-place-stories{margin-inline:10px 0;padding-inline-start:10px}.atlas-group-select{padding-inline:10px}}
@media(prefers-reduced-motion:reduce){.atlas-group-select>svg{transition:none}}
.atlas-archive-invitation{display:flex;align-items:center;gap:32px;margin-top:32px;padding:28px 36px;background:#eef0fb;border:1px solid #dce1f5;border-radius:12px}
.atlas-archive-invitation h2{font-size:clamp(24px,2.3vw,34px);font-weight:550;line-height:1.35;margin:0}
.atlas-archive-invitation h2 em{font-style:normal;color:var(--accent)}
.atlas-archive-link{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 28px;margin-inline-start:auto;border:1px solid var(--accent);border-radius:6px;background:var(--accent);color:#fff;font-size:16px;white-space:nowrap;transition:background .18s,transform .18s}
.atlas-archive-link:hover{background:#2540c9;transform:translateY(-2px)}
.atlas-archive-link:focus-visible{outline:3px solid var(--ink);outline-offset:4px}
html[data-motion=off] .atlas-archive-link{transition:none}
html[data-motion=off] .atlas-archive-link:hover{transform:none}
@media(max-width:900px){.atlas-result-actions .atlas-view-toggle{margin:0}.atlas-archive-invitation{gap:24px;padding:24px}}
@media(max-width:600px){
 .atlas-results{padding-block:0;gap:14px;min-height:0}
 .atlas-heading .atlas-counters{margin-top:22px}
 .atlas-counters{gap:24px}.atlas-counter-stories{padding-inline-start:24px}.atlas-counter dd{font-size:56px}
 .atlas-result-actions{width:100%;justify-content:space-between;flex-direction:row-reverse;gap:12px}.atlas-result-actions #mapReset{order:0;min-height:44px}
 .atlas-result-actions .atlas-view-toggle button{min-height:44px}
 .atlas-archive-invitation{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;margin-top:24px;padding:22px}
 .atlas-archive-invitation h2{font-size:24px}
 .atlas-archive-link{width:100%;margin:0}
}
