.contact-hero {
  align-items: flex-start;
}

.contact-card-main {
  margin-top: var(--space-4);
}

.contact-form {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.contact-preferences legend {
  font-size: var(--font-size-sm);
  font-weight: 500;
  color: var(--color-heading);
  margin-bottom: var(--space-2);
}

.contact-radio {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--font-size-sm);
  color: var(--color-neutral-800);
}

.contact-radio input {
  accent-color: var(--color-primary);
}

.contact-checkbox {
  display: inline-flex;
  align-items: flex-start;
  gap: var(--space-2);
  font-size: var(--font-size-sm);
  color: var(--color-neutral-800);
}

.contact-checkbox input {
  margin-top: 0.25rem;
  accent-color: var(--color-primary);
}

.contact-actions {
  flex-wrap: wrap;
}

.contact-phone-main,
.contact-email-main {
  font-weight: 500;
}

.contact-phone-main a,
.contact-email-main a {
  color: var(--color-heading);
}

.contact-hours,
.contact-access,
.contact-social,
.contact-events-list,
.contact-privacy-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.contact-social a {
  font-size: var(--font-size-sm);
}

.contact-highlights .card,
.contact-direct .card,
.contact-events-feedback .card {
  height: 100%;
}

.newsletter-form {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.contact-navigation .card {
  margin-top: var(--space-4);
}

.contact-nav-grid ul {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.contact-nav-grid a {
  font-size: var(--font-size-sm);
  color: var(--color-neutral-800);
}

.contact-nav-grid a:hover {
  color: var(--color-heading);
}

@media (max-width: 768px) {
  .contact-hero {
    gap: var(--space-8);
  }

  .contact-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .contact-actions .btn {
    width: 100%;
    justify-content: center;
  }
}
