/* Discovery map UI — contrast, touch targets and map attribution remain visible. */
#market-map-section{padding:22px;border-radius:23px}
.map-explore-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.map-explore-heading h2{margin-bottom:8px}
.map-explore-heading p{font-size:13px;line-height:1.5}
.map-explore-toolbar{display:flex;gap:9px;flex-wrap:wrap;margin:14px 0}
.map-explore-toolbar .button{min-height:44px}
.map-explore-shell{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(270px,.75fr);gap:12px;align-items:stretch}
.map-explore-canvas{min-width:0}
#market-map{height:520px;min-height:410px;border-radius:18px;background:#172c43}
.map-explore-results{height:520px;min-height:410px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;background:#f4f6f7;border:1px solid var(--line);border-radius:18px;padding:12px}
.map-business-card{margin-bottom:12px;background:#fff;border:1px solid #d7dde2;border-radius:16px;padding:10px;box-shadow:0 5px 18px #14223510}
.map-business-card.is-selected{border-color:#b4833b;box-shadow:0 0 0 2px #c6955140}
.map-business-select{display:flex;width:100%;align-items:start;gap:12px;text-align:left;border:0;background:transparent;padding:0 0 12px;font:inherit;cursor:pointer;color:#172538}
.map-business-select:focus-visible,.map-result-pin:focus-visible{outline:3px solid #2767b0;outline-offset:3px}
.map-business-photo{flex:0 0 85px;width:85px;height:85px;border-radius:12px;overflow:hidden;background:#e5e8ec}
.map-business-photo img{display:block;width:100%;height:100%;object-fit:cover}
.map-business-placeholder{display:grid;place-content:center;width:100%;height:100%;color:#9b7335;font-size:32px}
.map-business-content{display:flex;flex-direction:column;min-width:0;gap:5px;flex:1}
.map-business-content strong{font-size:15px;line-height:1.35;overflow-wrap:anywhere}
.map-business-content small{font-size:12px;line-height:1.4;color:#667182}
.map-business-meta{font-size:12px;color:#5d6876;display:flex;gap:8px;flex-wrap:wrap}
.map-business-price{font-size:13px;font-weight:750;color:#6b491c}
.map-business-book{display:block;text-align:center;width:100%;min-height:44px;font-size:13px}
.map-business-directions{display:flex;gap:8px;margin-top:7px}.map-business-directions a{display:grid;place-items:center;flex:1;min-height:44px;border-radius:10px;border:1px solid #cbd3db;color:#253a52;text-decoration:none;font-size:12px;font-weight:650;background:#fff}.map-business-directions a:focus-visible{outline:3px solid #2767b0;outline-offset:2px}
.map-explore-empty{font-size:14px;line-height:1.7;color:#667182;padding:15px}
.map-explore-note{font-size:12px;line-height:1.6;margin:12px 2px}
.map-pin-wrap{background:transparent!important;border:0!important}
.map-result-pin{display:flex;align-items:center;justify-content:center;min-width:66px;min-height:38px;padding:7px 9px;border-radius:25px 25px 22px 22px;background:#ffcc82;color:#1c2430;border:3px solid white;box-shadow:0 5px 16px #07152573;font:700 13px/1.15 system-ui,sans-serif;white-space:nowrap;cursor:pointer}
.map-pin-wrap.map-pin-selected .map-result-pin{background:#172c43;color:white}
.map-pin-cluster{background:#f6a947;color:#122137}
#market-map .leaflet-control-attribution{background:#fffef5e8;color:#253345}
#market-map .leaflet-control-attribution a{color:#253345}
@media(max-width:760px){
 #market-map-section{padding:13px;border-radius:18px}
 .map-explore-heading h2{font-size:20px}
 .map-explore-toolbar{gap:7px}
 .map-explore-toolbar .button{flex:1 1 auto;font-size:12px;padding:11px}
 .map-explore-shell{display:block;position:relative}
 #market-map{height:68dvh;min-height:460px;border-radius:18px}
 .map-explore-canvas{position:relative}
 .map-explore-results{position:absolute;z-index:420;left:10px;right:10px;bottom:33px;height:clamp(160px,29dvh,260px);min-height:0;border-radius:20px 20px 16px 16px;background:#f7f8faed;backdrop-filter:blur(8px);padding:9px}
 #market-map .leaflet-bottom{bottom:clamp(175px,30dvh,275px)}
 .map-business-photo{width:76px;height:76px;flex-basis:76px}
 .map-business-card{padding:9px}
 .map-business-content strong{font-size:14px}
 .map-explore-note{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.map-explore-results{scroll-behavior:auto}}
