/* Artie's — Visit page */

.visit-hero {
  padding-top: calc(var(--header-h) + var(--space-16));
  padding-bottom: var(--space-16);
}
.visit-hero h1 { font-size: var(--text-5xl); margin: var(--space-4) 0 var(--space-5); }
.visit-hero p.measure { color: var(--aqua-mist); font-size: var(--text-lg); margin-bottom: var(--space-10); }
.visit-subnav { display: flex; gap: var(--space-6); flex-wrap: wrap; border-top: 1px solid rgba(250,246,238,0.15); padding-top: var(--space-6); }
.visit-subnav a {
  font-size: var(--text-caption);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: var(--tracking-wide);
  color: var(--cream-text);
  border-bottom: 1px solid transparent;
}
.visit-subnav a:hover { border-bottom-color: var(--coral); color: var(--coral); }

.visit-form__grid { display: grid; grid-template-columns: 0.8fr 1.2fr; gap: var(--space-16); align-items: start; }
@media (max-width: 900px) { .visit-form__grid { grid-template-columns: 1fr; } }
.visit-form__intro h2 { font-size: var(--text-3xl); margin: var(--space-2) 0 var(--space-5); }
.visit-form__intro p.measure { margin-bottom: var(--space-5); }

.visit-form { max-width: 560px; }
.visit-form .btn { width: 100%; justify-content: center; margin-top: var(--space-2); }

.visit-location__grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-12); align-items: stretch; }
@media (max-width: 900px) { .visit-location__grid { grid-template-columns: 1fr; } }
.visit-location h2 { font-size: var(--text-3xl); margin: var(--space-3) 0 var(--space-4); }
.visit-location__address { font-size: var(--text-lg); color: var(--aqua-mist); margin-bottom: var(--space-6); }

.visit-hours { display: flex; flex-direction: column; gap: var(--space-3); margin-bottom: var(--space-8); }
.visit-hours div { display: flex; justify-content: space-between; gap: var(--space-6); border-bottom: 1px solid rgba(250,246,238,0.12); padding-bottom: var(--space-2); max-width: 440px; }
.visit-hours dt { font-weight: 700; }
.visit-hours dd { color: var(--aqua-mist); }

.visit-policy { display: flex; flex-direction: column; gap: var(--space-2); margin-bottom: var(--space-8); color: var(--aqua-mist); font-size: var(--text-sm); max-width: 46ch; }
.visit-policy li { padding-left: var(--space-4); position: relative; }
.visit-policy li::before { content: '—'; position: absolute; left: 0; color: var(--coral); }

.visit-location__actions { display: flex; gap: var(--space-4); flex-wrap: wrap; }
.visit-location__map { min-height: 360px; border-radius: var(--radius-md); overflow: hidden; }
