/* Location Page Styles */

.location-hero {
  background: linear-gradient(135deg, var(--color-primary) 0%, #003d7a 100%);
  color: #fff; padding-block: var(--space-3xl); text-align: center;
}
.location-hero__title { font-size: var(--text-3xl); font-weight: 800; }
.location-hero__subtitle { font-size: var(--text-lg); opacity: 0.9; margin-top: var(--space-xs); }

.location-content {
  display: grid; grid-template-columns: 1fr 380px; gap: var(--space-2xl);
  padding-block: var(--space-3xl);
}
.location-services-grid {
  display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-md);
}
.location-service-link {
  display: flex; align-items: center; gap: var(--space-sm);
  padding: var(--space-md); background: var(--color-neutral-50);
  border-radius: var(--radius-md); text-decoration: none; color: var(--color-neutral-700);
  border: 1px solid var(--color-neutral-100); transition: all 0.2s;
}
.location-service-link:hover {
  border-color: var(--color-primary); background: var(--color-primary-light);
  color: var(--color-primary);
}

.nearby-suburbs { padding-block: var(--space-3xl); background: var(--color-neutral-50); }
.suburbs-flex { display: flex; flex-wrap: wrap; gap: var(--space-xs); justify-content: center; }

.location-map {
  border-radius: var(--radius-lg); overflow: hidden; margin-bottom: var(--space-lg);
  aspect-ratio: 16/9; background: var(--color-neutral-100);
}
.location-map iframe { width: 100%; height: 100%; border: 0; }

.location-contact-card {
  background: #fff; border-radius: var(--radius-lg); box-shadow: var(--shadow-lg);
  padding: var(--space-xl); border: 1px solid var(--color-neutral-100);
}
.location-contact-card h3 { font-size: var(--text-lg); margin-bottom: var(--space-md); }

@media (max-width: 1024px) {
  .location-content { grid-template-columns: 1fr; }
  .location-services-grid { grid-template-columns: 1fr; }
}
