/* Travel atlas: all geometry and names are bundled, with no map API requests. */
.travel-explorer{margin-top:32px;border:1px solid var(--line);background:#101a15;scroll-margin-top:118px}
.travel-heading{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:27px 30px;border-bottom:1px solid var(--line)}
.travel-heading .small-label{font-size:8px;letter-spacing:1.5px;color:var(--accent);margin-bottom:7px}
.travel-heading h3{font-family:var(--serif);font-size:37px;line-height:1.15;font-weight:400;letter-spacing:-.6px}
.travel-tabs{display:flex;padding:4px;border:1px solid var(--line);background:#151f19;gap:4px}
.travel-tabs button{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-width:127px;padding:11px 15px;border:0;background:none;color:var(--muted);text-align:left;transition:background .18s,color .18s}
.travel-tabs button>span:first-child{font-size:12px;line-height:1.4}
.travel-tabs button>span:last-child{font-size:9px;line-height:1.4;color:#97aa9b}
.travel-tabs button[aria-selected=true]{background:#2c3c30;color:var(--ink)}
.travel-tabs button[aria-selected=true]>span:last-child{color:#e6b293}
.travel-tabs button:hover{color:var(--ink);background:#243329}
.travel-tabs button:focus-visible{outline-offset:1px}
.travel-panel{display:grid;grid-template-columns:minmax(0,1fr) 318px;min-width:0}
.travel-visual{display:flex;flex-direction:column;min-width:0;background:radial-gradient(ellipse at center,#1a2c22,transparent 72%),#111c17}
.travel-map-stage{display:flex;flex:1;align-items:center;padding:13px 13px 0;min-width:0;overflow:hidden}
.travel-map{display:block;width:100%;height:auto;aspect-ratio:1000/570;overflow:hidden}
.travel-graticule{fill:none;stroke:#47604e;stroke-width:.5;opacity:.19;pointer-events:none}
.travel-land{fill:#273a2e;stroke:#5b6f60;stroke-width:.65;pointer-events:none}
.travel-place{fill:#c59070;stroke:#28392d;stroke-width:.8;cursor:pointer;transition:fill .14s,stroke .14s;vector-effect:non-scaling-stroke}
.travel-place.is-highlighted{fill:#f4c3a2;stroke:#fff0df;stroke-width:1.2}
.travel-marker{pointer-events:none;fill:none;stroke:#fff0df;stroke-width:1.5}
.travel-marker circle:last-child{fill:#fff0df;stroke:none}
.travel-inset-label{font-family:var(--sans);font-size:10px;letter-spacing:2px;fill:#8a9e8e;text-anchor:middle}
.travel-readout{display:flex;justify-content:space-between;gap:15px;align-items:center;min-height:86px;padding:14px 28px 20px}
.travel-place-name{font-family:var(--serif);font-size:28px;line-height:1.25;color:var(--ink)}
.travel-place-note{font-size:10px;color:var(--muted);margin-top:4px;line-height:1.5}
.travel-legend{display:flex;align-items:center;gap:7px;font-size:9px;color:var(--muted)}
.travel-legend>span{width:8px;height:8px;background:#c59070}
.travel-directory{padding:24px 18px 19px;border-left:1px solid var(--line);align-self:stretch}
.travel-directory>.small-label{font-size:8px;letter-spacing:1.2px;padding:0 8px;margin-bottom:11px;color:var(--muted)}
.travel-directory ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:1px 4px}
.travel-directory li{min-width:0}
.travel-choice{width:100%;display:flex;align-items:center;gap:8px;min-height:36px;text-align:left;font-size:10px;line-height:1.4;border:0;background:none;color:#bdc8bd;padding:7px 8px;transition:color .15s,background .15s}
.travel-choice-dot{width:5px;height:5px;border:1px solid #ac866c;flex:none;border-radius:50%}
.travel-choice.is-highlighted,.travel-choice:hover{background:#293a2d;color:var(--ink)}
.travel-choice[aria-pressed=true] .travel-choice-dot{background:var(--accent);border-color:var(--accent)}
.travel-choice:focus-visible{outline-offset:0}
.travel-footnote{padding:10px 27px;border-top:1px solid var(--line);font-size:8px;color:#a0aea1;line-height:1.6}
.travel-footnote a{text-decoration:underline;text-underline-offset:3px}
.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.kpi-place-list{margin-top:12px}
.kpi-place-list summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:30px;font-size:11px;cursor:pointer;list-style:none;color:var(--muted)}
.kpi-place-list summary::-webkit-details-marker{display:none}
.kpi-place-list summary>span{color:var(--accent);font-size:18px;line-height:1;transition:transform .2s}
.kpi-place-list[open] summary>span{transform:rotate(45deg)}
.kpi-place-list summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.kpi-place-list ul{padding:10px 0 0;margin:0;list-style:none;border-top:1px solid var(--line);margin-top:7px}
.kpi-place-list li{font-size:11px;line-height:1.8;color:var(--muted)}
@media(max-width:1050px){.travel-panel{grid-template-columns:minmax(0,1fr) 280px}.travel-directory{padding:21px 12px}.travel-choice{padding-inline:5px;gap:5px;font-size:9px}.travel-readout{padding-inline:20px}.travel-place-name{font-size:25px}}
@media(max-width:900px){.travel-panel{grid-template-columns:1fr}.travel-directory{border-left:0;border-top:1px solid var(--line);padding:19px 24px}.travel-directory ul{grid-template-columns:repeat(4,minmax(0,1fr));gap:2px 8px}.travel-choice{font-size:10px;min-height:40px;gap:7px}.travel-directory>.small-label{padding-inline:5px}.travel-map-stage{padding:15px 25px 0}.travel-readout{padding-inline:30px}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.travel-explorer{margin-top:27px;scroll-margin-top:105px}.travel-heading{align-items:stretch;flex-direction:column;padding:22px;gap:21px}.travel-heading h3{font-size:34px}.travel-tabs{width:100%}.travel-tabs button{flex:1;min-width:0;padding:11px 13px}.travel-map-stage{padding:17px 5px 0}.travel-readout{min-height:86px;padding:10px 20px 20px}.travel-place-name{font-size:26px}.travel-place-note{font-size:10px;max-width:215px}.travel-directory{padding:19px 15px}.travel-directory ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:1px 10px}.travel-choice{font-size:11px;min-height:44px;padding:8px 5px;gap:8px}.travel-footnote{padding:10px 20px}.kpi-place-list summary{min-height:44px}.kpi-card-top h3{line-height:1.5}}
@media(prefers-reduced-motion:reduce){.travel-choice,.travel-place,.travel-tabs button,.kpi-place-list summary>span{transition:none}}
