/* Joerrens Listings - map */
.jl-map-wrap { margin: 0 0 2em; }
.jl-map { position: relative; border-radius: 8px; overflow: hidden; background: var(--ast-global-color-4, #f0f5fa); }
.jl-map__start { height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; padding: 0 16px; text-align: center; }
.jl-map__label { margin: 0; font-weight: 600; color: var(--ast-global-color-2, #1e293b); }
.jl-map__note { margin: 0; font-size: 12px; color: #6b7280; }
.jl-map .wp-block-button__link { border-radius: 9999px; }
.jl-map__hint { margin: .6em 0 0; font-size: 13px; color: #6b7280; }

/* Filter buttons above the map */
.jl-map__filter { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 12px; }
.jl-map__chip { background: #fff; color: var(--ast-global-color-2, #1e293b); border: 1px solid var(--ast-global-color-6, #d1d5db); border-radius: 9999px; padding: 6px 16px; font: inherit; font-size: 15px; cursor: pointer; }
.jl-map__chip.is-active { background: var(--ast-global-color-0, #cc0935); border-color: var(--ast-global-color-0, #cc0935); color: #fff; }

/* Pins: red = partner offer, dark = directly with the owner */
.jl-pin { display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 50%; background: var(--ast-global-color-0, #cc0935); border: 2px solid #fff; box-shadow: 0 1px 3px rgba(0, 0, 0, .35); transform: translate(-50%, -50%); cursor: pointer; }
.jl-pin svg { width: 16px; height: 16px; fill: #fff; }
.jl-pin--direct { background: var(--ast-global-color-2, #1e293b); }
.jl-map.is-far .jl-pin { width: 11px; height: 11px; border-width: 1.5px; box-shadow: none; opacity: .85; }
.jl-map.is-far .jl-pin svg { display: none; }
.jl-map.is-far .jl-pin--direct { width: 14px; height: 14px; opacity: 1; }

/* Zoom buttons: no theme underline (it made "+" look like "±") */
.jl-map .leaflet-bar a, .jl-map .leaflet-bar a:hover { text-decoration: none; color: var(--ast-global-color-2, #1e293b); font: 600 20px/30px sans-serif; }

/* Popup */
.jl-pop .leaflet-popup-content-wrapper { padding: 0; border-radius: 8px; overflow: hidden; }
.jl-pop .leaflet-popup-content { margin: 0; width: 240px !important; }
.jl-pop img { display: block; width: 100%; height: 135px; object-fit: cover; }
.jl-pop__body { padding: 10px 12px 12px; }
.jl-pop .leaflet-popup-content a.jl-pop__title { display: block; margin-bottom: 4px; font-weight: 600; line-height: 1.3; color: var(--ast-global-color-2, #1e293b); text-decoration: none; }
.jl-pop .leaflet-popup-content a.jl-pop__title:hover { color: var(--ast-global-color-0, #cc0935); }
.jl-pop a.leaflet-popup-close-button { top: 8px; right: 8px; width: 26px; height: 26px; border-radius: 50%; background: #fff; color: var(--ast-global-color-2, #1e293b); font: 18px/26px sans-serif; text-align: center; box-shadow: 0 1px 3px rgba(0, 0, 0, .3); }
.jl-pop__facts { font-size: 13px; color: #6b7280; }
.jl-pop__direct { margin-top: 6px; font-size: 12px; font-weight: 600; color: var(--ast-global-color-2, #1e293b); }