/* GROWBZ — Home page.
   Page-level CSS from the design's <helmet> (keyframes for the hero mockup), plus layout
   adaptations below tablet width via the design's data-* hooks (no effect at >= 1024px). */

@keyframes floaty { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-14px); } }
@keyframes floaty2 { 0%,100% { transform: translateY(0); } 50% { transform: translateY(10px); } }
@keyframes floaty3 { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-8px); } }
@keyframes toastIn { 0% { opacity: 0; transform: translateY(8px); } 100% { opacity: 1; transform: translateY(0); } }

@media (prefers-reduced-motion: reduce) {
  [data-hero-mock], [data-hero-mock] * { animation: none !important; }
}

@media (max-width: 960px) {
  [data-hero-grid] { grid-template-columns: 1fr !important; padding: 72px 32px 80px !important; }
  [data-hero-mock] { display: none !important; }
  [data-cols-3] { grid-template-columns: 1fr 1fr !important; }
  [data-steps-grid], [data-plans-grid] { grid-template-columns: 1fr !important; }
  [data-plans-grid] { row-gap: 32px !important; }
  [data-connector] { display: none !important; }
}

@media (max-width: 640px) {
  [data-hero-grid] { padding: 56px 20px 64px !important; }
  [data-home-h1] { font-size: 36px !important; }
  [data-home-h2] { font-size: 28px !important; }
  [data-home-section] { padding-left: 20px !important; padding-right: 20px !important; }
  [data-cols-3] { grid-template-columns: 1fr !important; }
  [data-logo-row] { gap: 20px 28px !important; }
  [data-cta-box] { padding: 48px 24px !important; }
  [data-cta-h2] { font-size: 30px !important; }
}
