/* ========================================
   MOBILE RESPONSIVE CSS ADDITIONS
   Add these to your existing CSS
======================================== */

/* ========================================
   GLOBAL MOBILE IMPROVEMENTS
======================================== */

@media (max-width: 900px) {
    
    /* Hero Section */
    .hero {
        height: 70vh;
        min-height: 500px;
    }
    
    .hero h1 {
        font-size: 36px;
        line-height: 1.2;
    }
    
    .hero-text {
        font-size: 16px;
        margin-bottom: 25px;
    }
    
    .cta-btn {
        padding: 14px 32px;
        font-size: 16px;
    }
    
    /* About Section */
    .about {
        padding: 60px 5%;
    }
    
    .about-content {
        grid-template-columns: 1fr;
        gap: 30px;
        padding: 30px;
    }
    
    .section-title {
        font-size: 32px;
    }
    
    .section-text {
        font-size: 16px;
    }
    
    .about-image {
        order: -1;
    }
    
    /* Programs Section */
    .programs {
        padding: 60px 5%;
    }
    
    .program-grid {
        grid-template-columns: 1fr;
        gap: 25px;
        margin-top: 40px;
    }
    
    .program-card {
        padding: 30px 20px;
    }
    
    .program-icon {
        font-size: 50px;
    }
    
    /* Why Choose Section */
    .why-choose {
        padding: 60px 5%;
    }
    
    .features-grid {
        grid-template-columns: 1fr;
        gap: 20px;
        margin-top: 40px;
    }
    
    .feature-box {
        padding: 30px 25px;
    }
    
    .feature-icon {
        font-size: 45px;
    }
    
    /* Daycare Programs */
    .daycare {
        padding: 60px 5%;
    }
    
    .daycare-grid {
        grid-template-columns: 1fr;
        gap: 30px;
        margin-top: 40px;
    }
    
    .daycare-header {
        height: 150px;
    }
    
    .daycare-content {
        padding: 25px;
    }
    
    .daycare-content h3 {
        font-size: 22px;
    }
    
    /* Video Section */
    .video-section {
        padding: 60px 5%;
    }
    
    .video-container {
        border-radius: 20px;
    }
    
    /* Mission Section */
    .mission {
        padding: 60px 5%;
    }
    
    .mission-grid {
        grid-template-columns: 1fr;
        gap: 25px;
        margin-top: 40px;
    }
    
    .mission-card img {
        height: 220px;
    }
    
    .mission-content {
        padding: 25px;
    }
    
    .mission-card h3 {
        font-size: 22px;
    }
    
    /* Stats Section */
    .stats {
        padding: 60px 5%;
    }
    
    .stats-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
        margin-top: 30px;
    }
    
    .stat-box {
        padding: 25px 15px;
    }
    
    .stat-number {
        font-size: 38px;
    }
    
    .stat-label {
        font-size: 14px;
    }
    
    /* Teachers Section */
    .teachers-section {
        padding: 60px 5%;
    }
    
    .teachers-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    
    .teacher-photo {
        height: 280px;
    }
    
    .teacher-info {
        padding: 20px;
    }
    
    /* CTA Section */
    .cta-section {
        padding: 80px 5%;
    }
    
    .cta-title {
        font-size: 32px;
    }
    
    .cta-description {
        font-size: 16px;
    }
    
    /* Gallery */
    .gallery {
        padding: 60px 5%;
    }
    
    .gallery-grid {
        grid-template-columns: 1fr;
        margin-top: 40px;
    }
    
    .gallery-item img {
        height: 250px;
    }
    
    /* Schedule */
    .schedule {
        padding: 60px 5%;
    }
    
    .schedule-timeline {
        grid-template-columns: 1fr;
        margin-top: 40px;
    }
    
    /* Testimonials */
    .testimonials {
        padding: 60px 5%;
    }
    
    .testimonial-grid {
        grid-template-columns: 1fr;
        gap: 20px;
        margin-top: 40px;
    }
    
    .testimonial-card {
        padding: 25px;
        font-size: 16px;
    }
    
    /* Events */
    .events {
        padding: 60px 5%;
    }
    
    .events-grid {
        grid-template-columns: 1fr;
        gap: 20px;
        margin-top: 40px;
    }
    
    .event-card {
        padding: 30px;
        font-size: 18px;
    }
    
    /* Admissions CTA */
    .admissions-cta {
        padding: 60px 5%;
    }
    
    .admissions-cta h2 {
        font-size: 32px;
    }
    
    .admissions-cta p {
        font-size: 16px;
    }
    
    /* Back to Top */
    .back-to-top {
        width: 50px;
        height: 50px;
        font-size: 22px;
        bottom: 20px;
        right: 20px;
    }
}

/* ========================================
   SMALL MOBILE (480px and below)
======================================== */

@media (max-width: 480px) {
    
    /* Hero */
    .hero h1 {
        font-size: 28px;
    }
    
    .hero-text {
        font-size: 14px;
        margin-bottom: 20px;
    }
    
    .cta-btn {
        padding: 12px 28px;
        font-size: 15px;
    }
    
    /* Sections */
    .about,
    .programs,
    .why-choose,
    .daycare,
    .mission,
    .teachers-section,
    .gallery,
    .schedule,
    .testimonials,
    .events {
        padding: 40px 4%;
    }
    
    .section-title {
        font-size: 26px;
    }
    
    .section-subtitle {
        font-size: 14px;
    }
    
    .section-text {
        font-size: 15px;
    }
    
    /* About */
    .about-content {
        padding: 20px;
        border-radius: 20px;
    }
    
    .about-list li {
        padding: 12px 15px;
        font-size: 14px;
    }
    
    .about-list li::before {
        width: 28px;
        height: 28px;
        font-size: 14px;
    }
    
    /* Cards */
    .program-card,
    .feature-box,
    .daycare-content {
        padding: 20px 15px;
    }
    
    .program-card h3,
    .feature-box h3,
    .daycare-content h3 {
        font-size: 20px;
    }
    
    .program-icon,
    .feature-icon {
        font-size: 40px;
    }
    
    /* Stats */
    .stats-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }
    
    .stat-number {
        font-size: 32px;
    }
    
    .stat-label {
        font-size: 13px;
    }
    
    /* Footer */
    .kid-footer {
        padding: 70px 4% 30px;
    }
    
    .footer-container {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    
    .footer-box h3 {
        font-size: 20px;
    }
    
    .footer-box h4 {
        font-size: 18px;
    }
    
    .footer-box p,
    .footer-box a {
        font-size: 14px;
    }
    
    .footer-social a {
        width: 38px;
        height: 38px;
        font-size: 18px;
    }
    
    .footer-animals {
        gap: 15px;
    }
    
    .animal {
        font-size: 38px;
    }
    
    /* CTA */
    .cta-section {
        padding: 60px 4%;
    }
    
    .cta-title {
        font-size: 26px;
    }
    
    .cta-description {
        font-size: 15px;
    }
    
    /* Admissions */
    .admissions-cta h2 {
        font-size: 26px;
    }
    
    .admissions-cta p {
        font-size: 15px;
    }
}

/* ========================================
   TABLET LANDSCAPE (768px - 1024px)
======================================== */

@media (min-width: 768px) and (max-width: 1024px) {
    
    .program-grid,
    .features-grid,
    .daycare-grid,
    .mission-grid,
    .teachers-grid,
    .gallery-grid,
    .events-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .stats-grid,
    .schedule-timeline {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* ========================================
   LANDSCAPE ORIENTATION
======================================== */

@media (max-height: 600px) and (orientation: landscape) {
    
    .hero {
        height: 100vh;
        min-height: auto;
    }
    
    .hero h1 {
        font-size: 32px;
        margin-bottom: 15px;
    }
    
    .hero-text {
        font-size: 14px;
        margin-bottom: 20px;
    }
}

/* ========================================
   ACCESSIBILITY IMPROVEMENTS
======================================== */

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}

/* ========================================
   PRINT STYLES
======================================== */

@media print {
    .kid-navbar,
    .nav-toggle,
    .back-to-top,
    .hero-video,
    .footer-animals,
    .nav-cloud {
        display: none !important;
    }
    
    body {
        background: white !important;
    }
    
    .hero-overlay {
        background: rgba(0,0,0,0.3) !important;
    }
}

/* ========================================
   TOUCH DEVICE OPTIMIZATIONS
======================================== */

@media (hover: none) and (pointer: coarse) {
    
    /* Increase touch target sizes */
    .nav-links a,
    .nav-toggle,
    .cta-btn,
    .back-to-top {
        min-height: 44px;
        min-width: 44px;
    }
    
    /* Remove hover effects on touch devices */
    .program-card:hover,
    .feature-box:hover,
    .daycare-card:hover,
    .mission-card:hover,
    .stat-box:hover,
    .teacher-card:hover,
    .gallery-item:hover {
        transform: none;
    }
    
    /* Disable cursor trail on touch devices */
    .trail {
        display: none;
    }
}