.location-map{border-color:#2b3c53;border-radius:20px;box-shadow:0 18px 45px #0003}
.store-map{background:#111a25;height:440px}
.store-map .leaflet-tile-pane{filter:none}
.store-map .leaflet-image-layer{max-width:none}
.store-map .leaflet-marker-icon.store-pin{filter:none}
.store-pin svg{position:relative;display:block;width:48px;height:60px;z-index:1}
.store-pin-art{filter:drop-shadow(0 3px 3px #04101c66);transform-origin:50% 93.333%;animation:store-pin-breathe 1s ease-in-out infinite}
.store-pin-aura{position:absolute;left:-8px;top:45px;width:64px;height:22px;border-radius:50%;background:radial-gradient(ellipse at center,#020c1999 0%,#06122566 24%,#4b9eff26 50%,#478fff12 70%,#478fff00 76%);box-shadow:inset 0 0 0 1px #7fb6ff1a;opacity:.7;transform-origin:center;pointer-events:none;animation:store-pin-ground-pulse 1s ease-in-out infinite}
.store-map.is-offscreen .store-pin-art,.store-map.is-offscreen .store-pin-aura{animation-play-state:paused}
@keyframes store-pin-breathe{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-.65px) scale(1.02)}}
@keyframes store-pin-ground-pulse{0%,100%{transform:scale(1);opacity:.7}50%{transform:scale(1.09);opacity:.88}}
@media(prefers-reduced-motion:reduce){.store-pin-art,.store-pin-aura{animation:none}}
.store-map .store-map-label{background:#102543ed;border:1px solid #5b9fe799;color:#e4f3ff;font-weight:600;padding:9px 12px;border-radius:10px;box-shadow:0 4px 22px #0004;max-width:min(250px,calc(100vw - 80px));white-space:normal;text-align:center}
.store-map .store-map-label strong{display:block;font:inherit}
.store-map .store-map-label span{display:block;margin-top:3px;font-size:var(--text-caption,.75rem);line-height:1.35;font-weight:400;color:#b4c9e4}
.store-map .store-map-label::before{border-top-color:#5b9fe799}
.store-map .leaflet-control-zoom{border-color:#385375;border-radius:10px}
.store-map .leaflet-control-zoom a{background:#142136;color:#d8eaff;width:40px;height:40px;}
.store-map .leaflet-control-attribution{background:#111a25ec}
.location-map-caption{background:#101a28;padding:19px 20px;color:#a4bddf}
.location-map-caption i{background:#458fff;box-shadow:0 0 12px #318dff99;width:6px;height:6px}
.location-map-caption>a{color:#c4dcff}
.map-fallback>.icon{color:#69adff}
.location-copy>p{max-width:390px}
.location-copy>.button{min-height:50px}
@media(max-width:640px){
 .store-map{height:360px}
 .location-map-caption{padding:17px 14px;}
}
