/* Outreach Karate & Fitness Academy - Responsive Stylesheet */

@media (max-width: 1024px) {
    .container {
        padding: 0 40px;
    }

    .hero-content h1 {
        font-size: 3.5rem;
    }

    .section-title {
        font-size: 3rem;
    }

    .contact-container {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .map-container {
        height: 400px;
    }
}

@media (max-width: 768px) {
    section {
        padding: 80px 0;
    }

    .section-title {
        font-size: 2.8rem;
    }

    /* Navbar Mobile */
    .nav-links {
        position: fixed;
        right: -110%;
        top: 0;
        height: 100vh;
        width: 85%;
        background: var(--white);
        flex-direction: column;
        align-items: flex-start;
        padding: 100px 50px;
        justify-content: flex-start;
        transition: var(--transition);
        z-index: 999;
        box-shadow: -20px 0 50px rgba(0, 0, 0, 0.05);
    }

    .nav-links a {
        color: var(--black);
    }

    .nav-links.nav-active {
        right: 0;
    }

    .hamburger {
        display: block;
        z-index: 1001;
    }

    /* Hero */
    #hero {
        align-items: center;
        padding-bottom: 0;
    }

    .hero-content h1 {
        font-size: 2.8rem;
    }

    .tagline {
        font-size: 1.8rem;
        letter-spacing: 4px;
    }

    .hero-btns {
        flex-direction: column;
        align-items: center;
        gap: 15px;
    }

    .hero-btns .btn {
        width: 100%;
        max-width: 280px;
    }

    /* Grid adjustments */
    .program-grid {
        grid-template-columns: 1fr;
    }

    .product-grid,
    .blog-grid {
        grid-template-columns: 1fr;
    }

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

    .map-container {
        height: 350px;
    }

    .contact-info {
        text-align: center;
    }

    .info-item {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    /* Special Training */
    .special-list {
        flex-direction: column;
        gap: 15px;
    }

    .special-item {
        width: 100%;
    }

    /* Footer */
    .footer-grid {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .social-links {
        justify-content: center;
    }

    /* Collaborations */
    .collaboration-grid {
        flex-direction: column;
        gap: 20px;
    }
}

@media (max-width: 480px) {
    .container {
        padding: 0 20px;
    }

    .hero-content h1 {
        font-size: 1.8rem;
    }

    .tagline {
        font-size: 1.2rem;
    }

    .section-title {
        font-size: 2rem;
    }
}

/* Hamburger animation */
.toggle .line1 {
    transform: rotate(-45deg) translate(-5px, 6px);
}

.toggle .line2 {
    opacity: 0;
}

.toggle .line3 {
    transform: rotate(45deg) translate(-5px, -6px);
}