/* Sue Ryder Ireland - interactive maps (sueryder-site maps.php, sr-maps.js).
   The map keeps the .map-embed block's size from the design (theme.css). */
.map-embed.sr-map { display: block; width: 100%; color: var(--text, #333); font: 15px/1.4 var(--font-sans, Arial, sans-serif); text-align: left; background: #E9ECF4; }
.map-embed.sr-map:focus-visible { outline: 3px solid var(--navy, #032F5C); outline-offset: 2px; }
.sr-map .leaflet-control-attribution { font-size: 12px; }
.sr-map .leaflet-control-attribution a,
.sr-map .leaflet-popup-content a { color: var(--navy, #032F5C); text-decoration: underline; }
.sr-map .leaflet-bar a:focus-visible,
.sr-map .leaflet-popup-content a:focus-visible,
.sr-map .leaflet-popup-close-button:focus-visible { outline: 2px solid var(--navy, #032F5C); outline-offset: 2px; }

/* pins: the legend's leaf, navy for shops, blue for residences */
.sr-pin { background: none; border: 0; }
.sr-pin svg { display: block; filter: drop-shadow(0 1px 1.5px rgba(0, 0, 0, .45)); }
.sr-pin:focus-visible { outline: 3px solid var(--navy, #032F5C); outline-offset: 2px; border-radius: 4px; }

/* popups */
.sr-map .leaflet-popup-content { margin: 14px 18px 14px 16px; }
.sr-map-popup p { margin: 0; }
.sr-map-popup__type { font-size: 12px; letter-spacing: .06em; text-transform: uppercase; color: var(--text-2, #595959); }
.sr-map-popup__name { margin-top: 2px !important; font: 600 17px/1.3 var(--font-serif, Georgia, serif); color: var(--navy, #032F5C); }
.sr-map-popup__name a { color: inherit !important; text-decoration: none !important; }
.sr-map-popup__name a:hover, .sr-map-popup__name a:focus-visible { text-decoration: underline !important; }
.sr-map-popup__addr { margin-top: 4px !important; font-size: 14px; }
.sr-map-popup__links { display: flex; flex-wrap: wrap; gap: 4px 16px; margin-top: 8px !important; font-size: 14px; }
.sr-map-popup__links a { display: inline-block; padding: 4px 0; }

/* "Get directions" on a shop / residence map */
.sr-map .sr-map-directions { border: 0; box-shadow: 0 1px 4px rgba(0, 0, 0, .3); }
.sr-map .sr-map-directions a { display: inline-flex; align-items: center; width: auto; height: auto; min-height: 40px; padding: 0 14px; border: 0; border-radius: 4px; background: var(--navy, #032F5C); color: #fff; font: 600 14px/1 var(--font-sans, Arial, sans-serif); text-decoration: none; }
.sr-map .sr-map-directions a:hover,
.sr-map .sr-map-directions a:focus-visible { background: var(--steel-bg, #59708F); color: #fff; }

.sr-map-vh { position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
