.hours-badge{
  display: inline-flex; align-items: center; gap: 12px;
  margin-top: 26px;
  padding: 10px 20px 10px 10px;
  border: 1px solid var(--cream-line);
  border-radius: var(--radius-full);
  font-family: var(--font-mono);
  font-size: 13px;
  color: var(--cream-dim);
}
.hours-badge .dot-ring{
  width: 26px; height: 26px; border-radius: 50%;
  border: 1px solid var(--cream-line);
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
.hours-badge .dot-ring::before{ content:""; width:6px; height:6px; border-radius:50%; background: var(--orange-glow); display:block; }

.loc-filter{
  display: flex; gap: 10px; flex-wrap: wrap;
  padding-bottom: 36px;
}

.loc-grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  padding-bottom: 40px;
}
.loc-card{
  border: 1px solid var(--cream-line);
  border-radius: var(--radius-lg);
  padding: 26px 26px 24px;
  transition: border-color 0.3s ease, transform 0.3s ease, background 0.3s ease;
}
.loc-card:hover{ border-color: var(--cream-dim); background: var(--cream-line); transform: translateY(-3px); }
.loc-top{ display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; flex-wrap: wrap; }
.loc-top h3{ font-size: 1.3rem; }
.loc-address{ font-size: 14px; color: var(--cream-dim); line-height: 1.55; margin-bottom: 18px; min-height: 44px; }
.loc-meta{ display: flex; align-items: center; justify-content: space-between; font-family: var(--font-mono); font-size: 12.5px; color: var(--cream-faint); margin-bottom: 20px; flex-wrap: wrap; gap: 8px; }
.loc-meta a{ color: var(--orange-glow); font-weight: 600; }
.loc-actions{ display: flex; gap: 10px; }
.loc-actions .btn{ flex: 1; }

@media (max-width: 980px){
  .loc-grid{ grid-template-columns: 1fr 1fr; }
}
@media (max-width: 620px){
  .loc-grid{ grid-template-columns: 1fr; }
  .loc-actions{ flex-direction: column; }
}
