/* ==========================================
   RESPONSIVE CSS - IronPulse Gym
========================================== */

/* Hide hamburger on desktop */
.menu-toggle{
    display:none;
}

/* ===========================
   Tablet (992px)
=========================== */

@media (max-width:992px){

    .hero h1{
        font-size:80px;
    }

    .trust-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .why-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .program-grid,
    .pricing-grid,
    .trainer-grid,
    .testimonial-grid,
    .gallery-grid,
    .stats-grid,
    .contact-wrapper,
    .footer-grid{
        grid-template-columns:1fr;
    }

    .contact-wrapper{
        display:grid;
    }

    .featured{
        transform:none;
    }

    .footer-grid{
        text-align:center;
    }

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


/* ===========================
   Mobile (768px)
=========================== */

@media (max-width:768px){

    .nav{
        position:relative;
    }

    .nav-btn{
        display:none;
    }

    .menu-toggle{
        display:block;
        font-size:30px;
        color:#fff;
        cursor:pointer;
        z-index:1002;
    }

    .nav-links{
        position:absolute;
        top:100%;
        left:0;
        width:100%;
        background:#111;
        display:none;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:20px;
        padding:25px 0;
        z-index:1001;
    }

    .nav-links.active{
        display:flex;
    }

    .hero h1{
        font-size:60px;
    }

    .hero-text{
        font-size:16px;
    }

    .hero-buttons{
        flex-direction:column;
        gap:15px;
    }

    .trust-grid,
    .why-grid,
    .program-grid,
    .pricing-grid,
    .trainer-grid,
    .testimonial-grid,
    .gallery-grid,
    .stats-grid,
    .contact-wrapper,
    .footer-grid{
        grid-template-columns:1fr;
    }

    section{
        padding:70px 0;
    }

    .section-title h2{
        font-size:38px;
    }

    .price-card{
        padding:30px 20px;
    }

    .trainer-card img{
        height:350px;
        object-fit:cover;
    }

    .gallery-card img{
        height:300px;
        object-fit:cover;
    }

    .contact-form{
        padding:20px;
    }

    .footer-grid{
        text-align:center;
    }

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


/* ===========================
   Small Phones (480px)
=========================== */

@media (max-width:480px){

    .hero h1{
        font-size:48px;
    }

    .logo{
        font-size:28px;
    }

    .section-title h2{
        font-size:30px;
    }

    .btn,
    .btn-outline{
        width:100%;
        text-align:center;
    }

    .hero-buttons{
        width:100%;
    }

    .trainer-card img{
        height:280px;
    }

    .gallery-card img{
        height:220px;
    }
}