/* Dealer Locator frontend */
.dl-wrap{max-width:1200px;margin:30px auto;font-family:inherit}.dl-heading h2{margin:0 0 6px}.dl-heading p{margin:0 0 20px;opacity:.75}
.dl-filters{display:grid;grid-template-columns:1fr 1fr 1fr 180px auto;gap:10px;margin-bottom:12px}.dl-filters select,.dl-filters input,.dl-filters button{min-height:46px;padding:0 14px;border:1px solid #d7d7d7;border-radius:5px;background:#fff}.dl-filters button{background:#111;color:#fff;border-color:#111;cursor:pointer}.dl-status{min-height:22px;font-size:13px}
.dl-results{display:grid;grid-template-columns:42% 58%;min-height:560px;border:1px solid #e2e2e2;border-radius:8px;overflow:hidden}.dl-list{overflow:auto;max-height:560px;background:#fafafa}.dl-card{background:#fff;padding:18px;border-bottom:1px solid #e7e7e7;cursor:pointer}.dl-card:hover{background:#fcfcfc}.dl-card h3{margin:0 0 6px;font-size:18px}.dl-card p{margin:8px 0;font-size:14px;line-height:1.5}.dl-meta{font-size:13px;opacity:.72}.dl-actions{display:flex;gap:10px;margin-top:12px}.dl-action{display:inline-block;padding:7px 10px;border:1px solid #ddd;border-radius:4px;text-decoration:none;font-size:13px}.dl-products{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.dl-products span{font-size:11px;background:#f0f0f0;padding:4px 7px;border-radius:12px}.dl-map{min-height:560px}.dl-empty{padding:30px;text-align:center;opacity:.65}
@media(max-width:800px){.dl-filters{grid-template-columns:1fr 1fr}.dl-filters button{grid-column:span 2}.dl-results{grid-template-columns:1fr}.dl-map{min-height:400px;order:-1}.dl-list{max-height:none}}

.dl-nearby-row{display:flex;align-items:center;gap:14px;margin:0 0 12px}.dl-near-me{min-height:44px;padding:0 18px;border:1px solid #111;border-radius:5px;background:#111;color:#fff;cursor:pointer;font-weight:600}.dl-radius-label{font-size:13px;display:flex;align-items:center;gap:7px}.dl-radius-label select{min-height:40px;padding:0 10px;border:1px solid #d7d7d7;border-radius:5px;background:#fff}.dl-or{text-align:center;position:relative;margin:4px 0 12px;color:#888;font-size:12px}.dl-or:before{content:'';position:absolute;left:0;right:0;top:50%;border-top:1px solid #eee}.dl-or span{position:relative;background:#fff;padding:0 10px}.dl-distance{display:inline-block;margin-top:4px;font-size:12px}@media(max-width:800px){.dl-nearby-row{flex-wrap:wrap}.dl-radius-label{width:100%}}

/* Marker clustering */
.dl-map .marker-cluster { background-clip: padding-box; border-radius: 50%; }
.dl-map .marker-cluster div { border-radius: 50%; font-weight: 700; font-size: 13px; line-height: 30px; text-align: center; }
.dl-map .marker-cluster-small div { width: 30px; height: 30px; margin: 5px; }
.dl-map .marker-cluster-medium div { width: 34px; height: 34px; margin: 3px; line-height: 34px; }
.dl-map .marker-cluster-large div { width: 40px; height: 40px; margin: 0; line-height: 40px; }

.dl-reset{min-height:46px;padding:0 14px;border:1px solid #d7d7d7;border-radius:5px;background:#fff;color:#333;cursor:pointer}.dl-reset:hover{background:#f5f5f5}
@media(max-width:800px){.dl-reset{grid-column:span 2}}
