/* Shared visual system for local SEO landing pages. */

body.local-page {
  background: var(--site-bg, #000000) !important;
  color: var(--site-text, #f9fbff) !important;
  font-family: var(--site-font-body, 'Open Sans', Arial, sans-serif) !important;
}

body.local-page .hero {
  background: radial-gradient(circle at top, rgba(254, 229, 0, 0.12), transparent 36%),
    linear-gradient(180deg, rgba(8, 48, 128, 0.76) 0%, rgba(4, 25, 81, 0.88) 100%) !important;
  border-bottom: 1px solid rgba(254, 229, 0, 0.78) !important;
  padding: clamp(118px, 13vw, 150px) 20px clamp(62px, 8vw, 84px) !important;
}

body.local-page .hero h1,
body.local-page .section-title,
body.local-page .cta-section h2,
body.local-page .local-content h2,
body.local-page .local-content h3 {
  color: var(--site-text, #f9fbff) !important;
  letter-spacing: 0;
}

body.local-page .hero h1 span,
body.local-page .class-card h3,
body.local-page .instructor-card h3,
body.local-page .directions-box h3,
body.local-page .location-box h3,
body.local-page .price-card .price {
  color: var(--site-yellow, #fee500) !important;
}

body.local-page .hero .subtitle,
body.local-page .section-subtitle,
body.local-page .class-card p,
body.local-page .price-card p,
body.local-page .benefit-item p,
body.local-page .instructor-card p,
body.local-page .local-content p,
body.local-page .local-content ul,
body.local-page .local-content li,
body.local-page .directions-box p,
body.local-page .location-box p,
body.local-page .phone {
  color: var(--site-text-soft, #dce6ff) !important;
}

body.local-page .distance-badge,
body.local-page .home-badge {
  background: rgba(254, 229, 0, 0.14) !important;
  border: 1px solid rgba(254, 229, 0, 0.8);
  border-radius: 999px !important;
  color: var(--site-yellow, #fee500) !important;
}

body.local-page .section,
body.local-page .section-dark {
  background: transparent !important;
}

body.local-page .class-card,
body.local-page .price-card,
body.local-page .benefit-item,
body.local-page .instructor-card,
body.local-page .directions-box,
body.local-page .location-box,
body.local-page .local-content {
  background: linear-gradient(180deg, rgba(18, 25, 41, 0.78) 0%, rgba(10, 15, 27, 0.78) 100%) !important;
  border: 1px solid rgba(254, 229, 0, 0.74) !important;
  border-radius: 8px !important;
  box-shadow: 0 16px 34px rgba(0, 0, 0, 0.24) !important;
}

body.local-page .benefit-item {
  text-align: left !important;
}

body.local-page .benefit-item .icon {
  display: none;
}

body.local-page .local-content {
  max-width: 900px !important;
  padding: clamp(26px, 3.4vw, 38px) !important;
}

body.local-page .local-content ul {
  padding-left: 1.25rem;
}

body.local-page .local-content li {
  list-style: disc;
}

body.local-page .cta-btn {
  background: var(--site-yellow, #fee500) !important;
  color: #101522 !important;
  border-radius: 6px !important;
  box-shadow: 0 12px 22px rgba(0, 0, 0, 0.22);
  letter-spacing: 0 !important;
}

body.local-page .cta-btn:hover {
  background: #fff07a !important;
  transform: translateY(-1px);
  text-decoration: none !important;
}

body.local-page .cta-section {
  background: linear-gradient(180deg, rgba(8, 48, 128, 0.74) 0%, rgba(4, 25, 81, 0.88) 100%) !important;
  border-top: 1px solid rgba(254, 229, 0, 0.78) !important;
}

body.local-page .footer {
  display: none;
}

@media (max-width: 768px) {
  body.local-page .hero {
    padding-top: 112px !important;
  }

  body.local-page .local-content {
    padding: 24px !important;
  }
}
