.region-map-section{background:#f5f8fa;border-block:1px solid #e1e9ee}.region-map-section .section-heading{align-items:end}.region-map-section h2{max-width:700px}.region-map__intro{max-width:300px;font-size:14px;color:#526779}.region-map__layout{display:grid;grid-template-columns:minmax(0,1fr) 265px;gap:24px;align-items:stretch}.region-map__canvas{position:relative;background:#e5f1f5;border:1px solid #d1e2e9;border-radius:18px;overflow:hidden;align-self:start}.region-map__svg{width:100%;height:auto;min-height:320px}.region-map__land{fill:#fcfdf8;stroke:#a5bec6;stroke-width:1.3;stroke-linejoin:round}.region-map__water-label{fill:#7ba0af;font:11px var(--font);letter-spacing:3px}.region-map__roads-outline path{fill:none;stroke:#d8cdbb;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.region-map__roads path{fill:none;stroke:#fff;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.region-map__roads .region-map__road--major{stroke:#f0dba7;stroke-width:2}.region-map__city{cursor:pointer;outline:none}.region-map__hit{fill:transparent}.region-map__halo{fill:#fff;opacity:.8}.region-map__dot{fill:#304e63;stroke:#fff;stroke-width:1.5}.region-map__city text{font:12px var(--font);font-weight:500;fill:#304b5b;paint-order:stroke;stroke:#fcfdf8;stroke-width:3px;stroke-linejoin:round}.region-map__city:hover .region-map__dot,.region-map__city[aria-pressed=true] .region-map__dot{fill:#d61523;stroke-width:2}.region-map__city:focus-visible .region-map__halo{stroke:#d61523;stroke-width:2;opacity:1}.region-map__city[aria-pressed=true] text{fill:#b81120;font-weight:700}.region-map__tools{position:absolute;right:14px;top:14px;display:flex;gap:5px;z-index:1}.region-map__tools button{width:36px;height:36px;border:1px solid #c7d8e0;background:#fff;color:#304e63;border-radius:7px;font-size:22px;line-height:1;box-shadow:0 2px 5px #304e6309}.region-map__tools button:disabled{opacity:.4;cursor:default}.region-map__legend{font-size:11px;color:#526779;display:flex;align-items:center;gap:8px;padding:12px 16px;background:#ffffffb8}.region-map__legend-car{width:17px;height:8px;border-radius:2px;background:#d61523;display:inline-block;flex-shrink:0}.region-map__panel{padding:24px;background:#fff;border:1px solid #d7e2e9;border-radius:14px}.region-map__panel label{display:block;font-size:12px;color:#526779;margin-bottom:8px}.region-map__panel select{width:100%;padding:12px;border:1px solid #cbd9e2;border-radius:5px;background:#fff;color:#20364a;font-size:14px}.region-map__panel h3{font-size:23px;line-height:1.25;margin:25px 0 15px}.region-map__panel p{font-size:13px;line-height:1.8;color:#526779}.region-map__panel .button{margin:23px 0 16px;padding:13px 17px;font-size:12px;width:100%;justify-content:center}.region-map__panel .region-map__nearby{font-size:11px}.region-map__attribution{font-size:10px;color:#657c8c;margin-top:12px}.region-map__attribution a{text-decoration:underline}@media(max-width:1050px){.region-map__layout{grid-template-columns:1fr}.region-map__panel{display:grid;grid-template-columns:1fr 1fr;gap:12px 25px}.region-map__panel label{grid-column:1;margin:0}.region-map__panel select{grid-column:1}.region-map__panel h3{grid-column:2;grid-row:1 / span 2;margin:0;align-self:center}.region-map__panel .button{margin:0}.region-map__panel .region-map__nearby{grid-column:1 / -1}}@media(max-width:540px){.region-map-section .section-heading{display:block}.region-map__intro{margin-top:15px}.region-map__svg{min-height:240px}.region-map__panel{display:block;padding:20px}.region-map__panel h3{margin:20px 0 12px}.region-map__panel .button{margin:18px 0 12px}.region-map__legend{font-size:10px}.region-map__city text{font-size:13px}.region-map__tools{top:8px;right:8px}.region-map__tools button{width:32px;height:32px}}@media(prefers-reduced-motion:reduce){.region-map__car{display:none}}.region-map__lagoon{fill:#e5f1f5;stroke:#b4d0da;stroke-width:1}.region-map__lagoon-label{font:10px var(--font);fill:#6b95a5;letter-spacing:.4px}.region-map__svg{touch-action:pan-y pinch-zoom;user-select:none}.region-map__svg.is-zoomed{touch-action:none;cursor:grab}.region-map__svg.is-dragging,.region-map__svg.is-dragging *{cursor:grabbing!important}.region-map__pan-hint{padding:8px 16px;background:#ffffffb8;font-size:11px;color:#526779}.region-map__svg:focus-visible{outline:2px solid #d61523;outline-offset:-3px}.region-map__tour-road{fill:none;stroke:#cbbfa9;stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
