* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body { background: #fff; color: var(--ink); font-family: var(--font-text); -webkit-font-smoothing: antialiased; }
::selection { background: var(--brad-red); color: #fff; }
a { color: inherit; }

@keyframes marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@keyframes chatIn { from { opacity: 0; transform: translateY(16px) scale(0.98); } to { opacity: 1; transform: none; } }
@keyframes chatDot { 0%,60%,100% { opacity: .3; transform: translateY(0); } 30% { opacity: 1; transform: translateY(-3px); } }

/* responsive */
@media (max-width: 940px) {
  .hero-copy ~ div, .hero-copy { grid-column: auto; }
  [class*="-grid"] { grid-template-columns: 1fr 1fr !important; }
  .reason-grid, .step-grid, .plan-grid, .badge-grid, .stat-grid { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 760px) {
  .kit-nav, .kit-phone { display: none !important; }
  section > div > div[style*="grid-template-columns: 1.05fr"],
  .hosp-grid, .corr-grid { grid-template-columns: 1fr !important; }
  [class*="-grid"], .reason-grid, .step-grid, .plan-grid, .badge-grid, .stat-grid, .kit-foot-grid { grid-template-columns: 1fr !important; }
}

@media (prefers-reduced-motion: reduce) {
  * { animation: none !important; transition: none !important; }
}
