/* DIPANI V7.59. Scope all styles to DIPANI's additional public map. */
.dipani-v759-public .dipani-v743-public-map{width:100%;height:430px;min-height:310px;border:1px solid #dce5f1;border-radius:16px;background:#e9f3f8;overflow:hidden;box-shadow:0 5px 24px rgba(16,52,99,.07)}
.dipani-v759-public .dipani-v743-place{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:5px 11px;color:#18418f;background:#fbfdff;border:1px solid #dbe5f1;border-radius:999px;font-size:12.5px;font-weight:650;cursor:pointer;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,color .15s ease}
.dipani-v759-public .dipani-v743-place:hover,.dipani-v759-public .dipani-v743-place.is-active{background:#f1f6ff;border-color:#86a8e6;box-shadow:0 2px 8px rgba(22,73,150,.08);color:#0d327b}
.dipani-v759-public .dipani-v759-smallpin{font-size:12px;color:#0a42b3;line-height:1}
.dipani-v759-public[data-group="supplier"] .dipani-v759-smallpin{color:#ee7910}
.dipani-v759-public[data-group="customer"] .dipani-v759-smallpin{color:#178657}
.dipani-v759-leaflet-icon{background:none!important;border:none!important;filter:drop-shadow(0 3px 3px rgba(21,47,91,.22))}
.dipani-v759-public .leaflet-popup.dipani-v759-leaflet-popup .leaflet-popup-content-wrapper{padding:0;border-radius:14px;background:#fff;box-shadow:0 8px 30px rgba(4,27,68,.23);overflow:hidden}
.dipani-v759-public .leaflet-popup.dipani-v759-leaflet-popup .leaflet-popup-content{margin:0;width:300px!important;max-width:calc(100vw - 88px)}
.dipani-v759-public .leaflet-popup.dipani-v759-leaflet-popup .leaflet-popup-close-button{width:28px;height:28px;top:6px;right:7px;background:#fff;border-radius:50%;color:#34486b;font-size:20px;z-index:5}
.dipani-v759-card{width:300px;max-width:100%;box-sizing:border-box;background:#fff;overflow:hidden;color:#192f4f;font:400 13px/1.5 Inter,system-ui,sans-serif}
.dipani-v759-card-top{padding:15px 16px 11px;display:flex;align-items:center;gap:10px;background:#f8fbff}
.dipani-v759-card-icon{display:flex;align-items:center;justify-content:center;width:33px;height:33px;border-radius:11px;font-size:18px;color:#fff;flex-shrink:0}
.dipani-v759-card-heading{min-width:0;display:flex;flex-direction:column;gap:1px}
.dipani-v759-card-heading strong{font-size:16px;font-weight:800;line-height:1.25;color:#0d327b;overflow-wrap:anywhere}
.dipani-v759-card-heading small{font-size:11px;color:#61738d}
.dipani-v759-card-text{padding:12px 16px 11px}
.dipani-v759-card-address{color:#243b57;font-size:13px;overflow-wrap:anywhere}
.dipani-v759-card .dipani-v759-source{display:block;color:#697b90;font-size:11px;margin-top:6px}
.dipani-v759-card-footer{border-top:1px solid #e4ebf5;padding:10px 16px 12px;background:#fff}
.dipani-v759-card-footer a{color:#073ba4!important;font-weight:750!important;font-size:12px!important;text-decoration:none!important}
.dipani-v759-card-footer a:hover{text-decoration:underline!important}
.dipani-v759-photo{width:100%;height:155px;position:relative;background:#e8eff5;overflow:hidden}
.dipani-v759-photo img{width:100%;height:100%;object-fit:cover;display:block}
.dipani-v759-photo-credit{position:absolute;bottom:4px;right:5px;background:rgba(255,255,255,.94);padding:2px 5px;border-radius:4px;font-size:10px;line-height:1.2}
.dipani-v759-photo-credit a{color:#274167!important;text-decoration:none!important}
.dipani-v759-public .gm-style-iw-c{max-width:min(350px,calc(100vw - 55px))!important;padding:0!important;border-radius:14px!important;box-shadow:0 9px 30px rgba(3,28,74,.23)!important;overflow:hidden!important}
.dipani-v759-public .gm-style-iw-d{overflow:auto!important;max-height:360px!important}
.dipani-v759-public button.gm-ui-hover-effect{z-index:8!important;background:#fff!important;border-radius:100%!important;right:4px!important;top:4px!important}
.dipani-v759-public .gm-style-iw-chr{position:absolute;z-index:4;right:6px;top:4px}
.dipani-v759-map-status{margin:9px 0;color:#4a6684;font-size:12px}
@media(max-width:768px){.dipani-v759-public .dipani-v743-public-map{height:335px;min-height:280px}.dipani-v759-card{width:270px}.dipani-v759-public .leaflet-popup.dipani-v759-leaflet-popup .leaflet-popup-content{width:270px!important}}


/* V7.64: Zoom only for the large DIPANI locations map. Independent of the
   theme's Leaflet controls, which previously caused clipped +/- buttons. */
html body .dipani-v759-public .dipani-v743-public-map .dipani-v764-zoom{
 position:absolute!important;top:14px!important;left:14px!important;right:auto!important;bottom:auto!important;
 z-index:900!important;width:34px!important;max-width:34px!important;
 display:flex!important;flex-direction:column!important;gap:0!important;
 margin:0!important;padding:0!important;overflow:hidden!important;
 background:#fff!important;border:1px solid #dfe3e8!important;border-radius:9px!important;
 box-shadow:0 2px 9px rgba(23,45,76,.18)!important;box-sizing:content-box!important;
}
html body .dipani-v759-public .dipani-v743-public-map .dipani-v764-zoom button{
 appearance:none!important;-webkit-appearance:none!important;position:static!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
 width:34px!important;min-width:34px!important;max-width:34px!important;
 height:34px!important;min-height:34px!important;max-height:34px!important;
 margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
 box-shadow:none!important;background:#fff!important;color:#303a49!important;
 font:500 23px/1 Arial,sans-serif!important;letter-spacing:0!important;
 cursor:pointer!important;text-decoration:none!important;transform:none!important;
}
html body .dipani-v759-public .dipani-v743-public-map .dipani-v764-zoom button+button{
 border-top:1px solid #e8ecf0!important;
}
html body .dipani-v759-public .dipani-v743-public-map .dipani-v764-zoom button:hover{
 background:#f4f6f9!important;color:#123e88!important;
}
html body .dipani-v759-public .dipani-v743-public-map .dipani-v764-zoom button:focus-visible{
 outline:2px solid #0a42b3!important;outline-offset:-3px!important;
}
html body .dipani-v759-public .dipani-v743-public-map .dipani-v764-zoom button:disabled{
 opacity:.4!important;cursor:default!important;
}

/* V7.87 – animated OSM pins. Only SVG moves inside fixed Leaflet position. */
@keyframes dipani-v787-pin-bob{0%,78%,100%{transform:translateY(0)}84%{transform:translateY(-5px)}90%{transform:translateY(0)}94%{transform:translateY(-2px)}}
.dipani-v759-public .dipani-v759-leaflet-icon svg{display:block;animation:dipani-v787-pin-bob 4.9s ease-in-out infinite;will-change:transform}
.dipani-v759-public .dipani-v759-leaflet-icon:hover svg{animation-duration:1.25s}
@media (prefers-reduced-motion:reduce){.dipani-v759-public .dipani-v759-leaflet-icon svg{animation:none!important;will-change:auto}}
