#store-map{margin-top:30px;border:1px solid #dbe4ef;border-radius:17px;background:#fff;overflow:hidden;position:relative;isolation:isolate}
#store-map .map-panel-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 26px}
#store-map .map-panel-head h3{margin:0;font-size:21px;line-height:1.3;letter-spacing:-.035em;color:#16356c}
#map-count{display:block;font-size:12px;color:#64758c;line-height:1.6;margin-top:6px}
#map-reset{border:1px solid #c8d6ea;background:#f6f8fc;border-radius:8px;color:#234ba1;font-size:12px;font-weight:700;padding:12px 15px;min-height:44px;cursor:pointer;white-space:nowrap}
#map-reset:hover{background:#eaf0fa}
#map-reset:disabled{opacity:.6;cursor:wait}
#map-reset:focus-visible,#stores-map :focus-visible{outline:3px solid #234ba1;outline-offset:3px}
#stores-map{height:480px;width:100%;background:#edf2f6;z-index:0;font-family:inherit}
#stores-map::before{content:attr(data-map-label);position:absolute;top:15px;left:15px;z-index:450;pointer-events:none;background:#fffffff2;border:1px solid #d7e1ed;border-radius:6px;padding:8px 11px;color:#536c88;font-size:9px;font-weight:700;letter-spacing:.06em;box-shadow:0 2px 8px #29466608}
#stores-map.map-popup-open::before{display:none}
#stores-map.map-popup-open .leaflet-control-zoom{visibility:hidden;pointer-events:none}
.map-state-label{background:none;border:0;display:flex;align-items:center;justify-content:center;pointer-events:none;color:#536d89;font-size:11px;font-weight:600;letter-spacing:.015em;text-shadow:0 1px 0 #ffffffa6;white-space:nowrap}
.map-state-label>span{display:block;max-width:100%;text-align:center}
.map-state-tooltip{font-family:inherit;font-size:11px;color:#294c74;background:#fffffff2;border:1px solid #c8d6e7;box-shadow:0 2px 10px #16356c14;border-radius:5px}
#map-status{padding:17px 25px;margin:0;color:#65758b;font-size:12px;line-height:1.8}
#map-fallback{padding:15px 20px;margin:0 24px 20px;border:1px solid #e8d598;border-radius:8px;background:#fffbeb;color:#6c541e;font-size:12px;line-height:1.8}
#map-fallback[hidden]{display:none}
.map-canvas-unavailable{height:100%;display:flex;align-items:center;justify-content:center;text-align:center;padding:35px;margin:0;font-size:15px;color:#536b88;line-height:1.8;max-width:500px;margin-inline:auto}
#stores-map .leaflet-control-attribution{font-size:11px;line-height:1.6;padding:3px 7px;background:#fffffff2;color:#34516c;max-width:100%;white-space:normal}
#stores-map .leaflet-control-attribution a{color:#234ba1;text-decoration:underline;text-underline-offset:2px}
#stores-map .leaflet-control-zoom{border:1px solid #bbcce2;box-shadow:0 2px 10px #16356c1a;border-radius:8px;overflow:hidden}
#stores-map .leaflet-control-zoom a{color:#234ba1;width:38px;height:38px;line-height:38px;background:#fff;font-weight:600}
#stores-map .leaflet-control-zoom a:hover{background:#edf2fa}
#stores-map .leaflet-control-zoom a.leaflet-disabled{color:#a4afbd}
.limplev-map-marker{background:none;border:0}
.map-marker-pin{position:absolute;left:2px;top:1px;display:grid;place-items:center;width:32px;height:32px;border:3px solid #fff;border-radius:50% 50% 50% 0;background:#234ba1;transform:rotate(-45deg);box-shadow:0 2px 5px #15356855}
.map-marker-label{display:grid;place-items:center;width:11px;height:11px;border-radius:50%;background:#f7ed38;transform:rotate(45deg);font-size:13px;font-weight:800;line-height:1;color:#16356c}
.map-marker-pin.is-group{width:36px;height:36px;left:0;top:-3px;background:#f7ed38}
.map-marker-pin.is-group .map-marker-label{width:25px;height:25px;background:transparent}
.limplev-map-marker:focus-visible .map-marker-pin{box-shadow:0 0 0 4px #f7ed38,0 2px 6px #15356855}
#stores-map .leaflet-popup-content-wrapper{border-radius:12px;box-shadow:0 8px 28px #1c385433}
#stores-map .leaflet-popup-content{margin:21px 23px 19px;line-height:1.6;font-family:inherit}
#stores-map .leaflet-popup-close-button{color:#415b7e;width:30px;height:30px;line-height:28px;top:3px;right:3px;font-size:21px}
.map-popup-group-title{font-size:12px;font-weight:700;line-height:1.7;color:#234ba1;margin:0 0 16px!important;padding-bottom:12px;border-bottom:1px solid #dfe6ee}
.map-popup-store+.map-popup-store{border-top:1px solid #dfe6ee;margin-top:22px;padding-top:20px}
.map-popup-city{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#557197;margin-bottom:5px}
.map-popup-store h4{font-size:18px;line-height:1.35;margin:0 0 10px;color:#16356c;overflow-wrap:anywhere}
#stores-map .map-popup-address{font-size:12px;color:#526780;margin:0 0 3px;line-height:1.7;overflow-wrap:anywhere}
#stores-map .map-popup-approximate{font-size:11px;line-height:1.7;color:#8b6321;background:#fff9e6;border-radius:6px;padding:9px 10px;margin:11px 0}
#stores-map .map-popup-hours{font-size:11px;line-height:1.7;color:#62758c;margin:10px 0}
#stores-map .map-popup-phone{display:inline-block;color:#234ba1;font-size:12px;font-weight:600;text-decoration:underline;text-underline-offset:3px;margin-top:9px}
.map-popup-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:14px}
#stores-map .map-popup-whatsapp{display:inline-flex;align-items:center;min-height:40px;padding:10px 12px;border:1px solid #c5dfce;border-radius:7px;background:#e9f5ed;color:#245f40;font-size:11px;font-weight:700;text-decoration:none}
#stores-map .map-popup-directions{color:#234ba1;font-size:11px;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.map-popup-list{border:0;background:none;padding:11px 0 0;color:#234ba1;font-size:11px;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer;min-height:36px}
@media(max-width:560px){#store-map{margin-top:25px;border-radius:13px}#store-map .map-panel-head{padding:20px;align-items:flex-start;gap:16px}#store-map .map-panel-head h3{font-size:19px}#map-count{font-size:11px}#map-reset{font-size:10px;white-space:normal;padding:10px 12px;max-width:115px;line-height:1.5}#stores-map{height:400px}#map-status{padding:15px 19px;font-size:11px}#map-fallback{margin:0 18px 18px;padding:12px 14px;font-size:11px}#stores-map .leaflet-control-attribution{font-size:10px}#stores-map .leaflet-popup-content{margin:21px 17px 17px}.map-popup-store h4{font-size:17px}.map-popup-actions{gap:12px}}

#stores-map.map-cities-ready .leaflet-state-labels-pane{visibility:hidden}
.map-city-label{background:none;border:0;pointer-events:none;font-family:inherit;font-size:11px;line-height:22px;color:#35536f}
.map-city-content{display:flex;align-items:center;gap:7px;height:22px;width:100%;white-space:nowrap}
.map-city-dot{display:block;flex:0 0 5px;width:5px;height:5px;border-radius:50%;background:#5f7b93;box-shadow:0 0 0 1px #ffffffdc}
.map-city-name{display:block;max-width:calc(100% - 12px);overflow:hidden;text-overflow:ellipsis;text-shadow:1px 0 #fff,-1px 0 #fff,0 1px #fff,0 -1px #fff,0 0 4px #fff}
.map-city-label.is-capital,.map-city-label.is-network-city{font-size:12px;font-weight:700;color:#1f426a}
.map-city-label.is-capital .map-city-dot{border-radius:1px;background:#2d4e73}
.map-city-label.is-left .map-city-content{flex-direction:row-reverse;text-align:right}
.map-reading-guide{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 25px;border-top:1px solid #e0e7f0;background:#f8fafc;color:#63758d;font-size:11px;line-height:1.6}
.map-reading-guide>span{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:#234ba1;white-space:nowrap}
.map-reading-guide i{width:10px;height:10px;display:inline-block;border-radius:50%;background:#234ba1;box-shadow:0 0 0 3px #dce6fa}
.map-reading-guide p{margin:0}
#map-details-retry{margin:0 24px 20px;padding:11px 15px;min-height:42px;border:1px solid #b6c8e4;border-radius:7px;background:#f3f7ff;color:#234ba1;font-family:inherit;font-size:12px;font-weight:600;line-height:1.5;cursor:pointer}
#map-details-retry:hover{background:#e8effb}#map-details-retry:focus-visible{outline:3px solid #234ba1;outline-offset:3px}#map-details-retry[hidden]{display:none}
#stores-map .leaflet-control-scale{margin:0 0 12px 14px}#stores-map .leaflet-control-scale-line{background:#ffffffe8;color:#294b72;border-color:#516f91;font-size:10px}
@media(max-width:560px){#map-details-retry{margin:0 18px 18px;max-width:calc(100% - 36px)}.map-reading-guide{padding:12px 19px;align-items:flex-start;flex-direction:column;gap:7px;font-size:11px}.map-city-label{font-size:10px}.map-city-label.is-capital,.map-city-label.is-network-city{font-size:11px}}
