/* ==========================================================================
   LITTLE BEE ACADEMY — RESPONSIVE RULES
   Mobile-first overrides layered on top of style.css
   ========================================================================== */

/* ---------- Laptop / small desktop ---------- */
@media (max-width: 1180px) {
  .hive-grid { grid-template-columns: repeat(2, 1fr); }
  .classroom-map { grid-template-columns: repeat(2, 1fr); }
  .milestone-grid { grid-template-columns: repeat(2, 1fr); }
  .values-grid { grid-template-columns: repeat(2, 1fr); }
  .station-grid { grid-template-columns: 1fr; }
}

/* ---------- Tablet ---------- */
@media (max-width: 980px) {
  :root { --header-h: 80px; --header-h-scrolled: 66px; }

  .main-nav, .header-actions .btn--primary.desktop-only { display: none; }
  .hamburger { display: flex; }

  .hero-inner { grid-template-columns: 1fr; padding-bottom: 80px; text-align: center; }
  .hero-copy .btn-row, .hero-trust { justify-content: center; }
  .hero-lede { margin-inline: auto; }
  .hero-stage { max-width: 420px; margin-top: 20px; }

  .welcome-grid, .montessori-grid { grid-template-columns: 1fr; }
  .welcome-art { order: -1; max-width: 420px; margin-inline: auto; }
  .montessori-arch { max-width: 360px; }

  .contact-layout { grid-template-columns: 1fr; }
  .form-grid { grid-template-columns: 1fr; }

  .program-detail { grid-template-columns: 1fr; text-align: center; }
  .program-detail-art { order: -1 !important; margin-bottom: 12px; }
  .program-detail-meta { text-align: left; }
  .program-detail-badge { margin-inline: auto; }

  .why-row { grid-template-columns: 50px 1fr; }
  .why-emoji { display: none; }

  .journey-steps { grid-template-columns: 1fr; gap: 44px; }
  .journey-path { display: none; }

  .checklist { grid-template-columns: 1fr; }
}

/* ---------- Mobile ---------- */
@media (max-width: 640px) {
  .container { padding-inline: 18px; }
  .section { padding-block: clamp(48px, 12vw, 90px); }

  .hero-title { font-size: clamp(2.1rem, 9vw, 2.8rem); }
  .hero-stage { max-width: 300px; }

  .hive-grid, .milestone-grid, .classroom-map, .values-grid { grid-template-columns: 1fr; }

  .footer-top { grid-template-columns: 1fr; gap: 32px; }

  .montessori-points { grid-template-columns: 1fr; }

  .story-title { font-size: clamp(1.6rem, 8vw, 2.2rem); }
  .story-progress { display: none; }

  .bubble-field { min-height: 280px; }
  .speech-bubble { font-size: 0.85rem; padding: 10px 16px; }

  .final-cta-bee { display: none; }

  .mobile-menu-links a { font-size: clamp(1.7rem, 11vw, 2.2rem); }

  .form-submit-row { flex-direction: column; align-items: stretch; }
  .btn--submit { width: 100%; }

  .radio-group { gap: 10px; }
}

/* ---------- Reduce non-essential motion / decoration on small screens ---------- */
@media (max-width: 780px) {
  .story-bee-layer,
  .welcome-deco,
  .hero-float:nth-of-type(n+5) {
    display: none;
  }
  .classroom-room { transform: none !important; }
  .hive-card:hover { transform: none; }
}
