body{font-size:.9rem;background:#f8f9fa}
#map{width:100%;min-height:380px;border:1px solid #dee2e6;border-radius:.5rem}
.table-hover tbody tr:hover{background:#f1f3f5}
footer{font-size:.7rem}
.marker-highlight { filter: drop-shadow(0 0 4px #0d6efd); }
.gm-iw-card{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;max-width:250px;}
.gm-iw-title{font-size:.95rem;font-weight:600;margin-bottom:.25rem;line-height:1.15}
.gm-iw-meta{font-size:.7rem;text-transform:uppercase;letter-spacing:.5px;color:#6c757d;margin-bottom:.25rem}
.gm-iw-row{font-size:.75rem;margin-bottom:.2rem;display:flex;gap:.25rem;align-items:flex-start}
.gm-iw-row span.label{color:#6c757d;min-width:52px;display:inline-block}
.gm-iw-phone{font-weight:500}
.menu-links .btn{padding:.15rem .35rem;line-height:1;border-radius:.35rem;font-size:.65rem;font-weight:600}
.menu-links .btn + .btn{margin-left:.15rem}

/* Responsive table/card view */
@media (max-width: 991.98px) {
  .results-table thead { display: none; }
  .results-table tbody, .results-table tr, .results-table td { display: block; }
  .results-table tr { 
    border: 1px solid #dee2e6; 
    border-radius: .5rem; 
    margin-bottom: 1.5rem; 
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    background-color: #fff;
  }
  .results-table td { border: none; padding: .5rem 1rem; }
  .results-table td[data-label]::before {
    content: attr(data-label);
    font-weight: 600;
    display: inline-block;
    width: 80px;
    margin-right: .5rem;
    color: #6c757d;
  }
  .results-table .card-title-cell {
    background-color: #f8f9fa;
    font-weight: bold;
    border-bottom: 1px solid #dee2e6;
    border-top-left-radius: .5rem;
    border-top-right-radius: .5rem;
  }
  .results-table .card-title-cell::before { display: none; }
}