/* ==========================================
   RESPONSIVE DESIGN
   ========================================== */

/* Tablet */
@media (max-width: 1024px) {
  .hero-content { flex-direction: column; text-align: center; }
  .hero-cta-group { justify-content: center; }
  .elephant-img { width: 250px; }
  .admission-wrapper { grid-template-columns: 1fr; }
  .dino-presenter { flex-direction: column; align-items: center; text-align: center; }
  .dino-image-wrap { flex: 0 0 auto; width: 200px; }
  .bubble-pointer { display: none; }
  .speech-bubble { text-align: left; }
  .dino-fun-facts { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: repeat(2, 1fr); }
  .bg-animal { transform: scale(0.8); }
  .bg-animal[style*="scaleX(-1)"] { transform: scale(0.8) scaleX(-1); }
}

/* Mobile */
@media (max-width: 768px) {
  body { cursor: auto; }
  .custom-cursor, .custom-cursor-trail { display: none; }
  a, button, input, select, textarea { cursor: auto; }

  .nav-toggle { display: flex; }
  .nav-menu {
    position: fixed;
    top: 0; right: -100%;
    width: 280px; height: 100vh;
    background: var(--light);
    flex-direction: column;
    padding: 80px 30px 30px;
    box-shadow: -5px 0 30px rgba(0,0,0,0.2);
    transition: right 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 9998;
    gap: 5px;
  }
  .nav-menu.open { right: 0; }
  .nav-link {
    color: var(--dark) !important;
    padding: 12px 18px;
    width: 100%;
    font-size: 1.05rem;
  }
  .nav-link:hover { background: rgba(108,92,231,0.08); }
  .nav-link.active::after { background: var(--primary); }
  .nav-toggle.open span:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); }
  .nav-toggle.open span:nth-child(2) { opacity: 0; }
  .nav-toggle.open span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }
  .nav-toggle.open span { background: var(--dark); }

  .hero { min-height: auto; padding: 120px 0 80px; }
  .hero-content { gap: 30px; }
  .elephant-img { width: 200px; }

  .section { padding: 60px 0; }
  .section-header { margin-bottom: 40px; }
  .about-grid { grid-template-columns: 1fr; gap: 20px; }
  .stats-row { gap: 20px; }
  .stat-circle { width: 80px; height: 80px; font-size: 1.3rem; }
  .stat-number { font-size: 1.4rem; }

  .classes-grid { grid-template-columns: 1fr; max-width: 400px; margin: 0 auto; }
  .class-card { min-height: auto; }

  .activities-grid { grid-template-columns: 1fr; }
  .activity-card { padding: 25px 20px; }

  .gallery-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
  .gallery-placeholder { font-size: 2.5rem; }
  .lightbox-prev { left: 5px; width: 35px; height: 35px; }
  .lightbox-next { right: 5px; width: 35px; height: 35px; }

  .testimonials-slider { padding: 0 40px; }
  .testimonial-card { padding: 25px; }
  .testimonial-text { font-size: 1rem; }
  .slider-btn { width: 35px; height: 35px; font-size: 0.85rem; }

  .admission-form-wrap { padding: 25px; }
  .info-card { padding: 25px; }
  .form-btns { flex-direction: column; }
  .form-btns .btn { width: 100%; justify-content: center; }

  .footer-grid { grid-template-columns: 1fr; gap: 30px; }
  .footer-content { padding: 60px 0 20px; }

  /* Hide presenter animals on mobile */
  .bg-animal { display: none !important; }
}

/* Small Mobile */
@media (max-width: 480px) {
  html { font-size: 14px; }
  .hero { padding: 100px 0 60px; }
  .elephant-img { width: 160px; }
  .dino-image-wrap { width: 160px; }
  .speech-bubble { padding: 18px; }
  .fun-fact { padding: 10px 12px; }
  .gallery-grid { grid-template-columns: 1fr; }
  .hero-cta-group { flex-direction: column; align-items: center; }
  .btn { width: 100%; justify-content: center; }
  .rainbow-orbit { width: 300px; height: 300px; }
  .nav-menu { width: 100%; }
}
