/* Shared base styles for Shiloh Health landing pages (Southlake + Fort Worth).
   Page-specific rules (.hero-bg gradients, .type-card, .adhd-tab, homepage
   .stat-card/.sticky-bar/.gradient-text/.orig-faq-*) remain inline per page. */

html, body { margin: 0; padding: 0; }
html { scroll-behavior: smooth; }

/* Pulsing availability dot */
.pulse-ring { animation: pulseRing 2.5s ease-out infinite; }
@keyframes pulseRing {
  0% { transform: scale(.85); box-shadow: 0 0 0 0 rgba(56,161,105,.6); }
  70% { transform: scale(1); box-shadow: 0 0 0 18px rgba(56,161,105,0); }
  100% { transform: scale(.85); box-shadow: 0 0 0 0 rgba(56,161,105,0); }
}

/* Form focus state */
.form-input:focus { outline: none; border-color: #2B6CB0; box-shadow: 0 0 0 3px rgba(43,108,176,.15); }

/* Fade-up entrance animation */
@keyframes fadeUp { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: translateY(0); } }
.fade-up { animation: fadeUp .7s ease forwards; }
.delay-100 { animation-delay: .1s; opacity: 0; }
.delay-200 { animation-delay: .2s; opacity: 0; }
.delay-300 { animation-delay: .3s; opacity: 0; }
.delay-400 { animation-delay: .4s; opacity: 0; }
.delay-500 { animation-delay: .5s; opacity: 0; }

/* CTA glow */
.cta-glow { box-shadow: 0 0 30px rgba(56,161,105,.4); }
.cta-glow:hover { box-shadow: 0 0 45px rgba(56,161,105,.6); }

/* FAQ accordion */
.faq-item { margin-bottom: 10px; background: white; border-radius: 12px; overflow: hidden; box-shadow: 0 1px 3px rgba(0,0,0,.06); }
.faq-question { font-size: 17px; color: #2B6CB0; font-weight: bold; cursor: pointer; padding: 18px 20px; display: flex; align-items: center; justify-content: space-between; transition: background-color .3s; }
.faq-question:hover { background: #f3f3f3; }
.faq-answer { font-size: 15px; color: #444; padding: 12px 20px 18px; line-height: 1.6; display: none; border-top: 1px solid #f0f0f0; }
.faq-arrow { font-size: 22px; font-weight: bold; transition: transform .3s; flex-shrink: 0; margin-left: 12px; }
.faq-item.open .faq-arrow { transform: rotate(90deg); }
