/* ==========================================
   Responsive Styles
========================================== */

/* Large Tablets / Laptops */
@media (max-width:1200px){

    h1{
        font-size:48px;
    }

    h2{
        font-size:36px;
    }

    .hero-grid,
    .download-grid{
        grid-template-columns:1fr;
        text-align:center;
        gap:2rem;
    }

    .hero-content{
        max-width:100%;
        margin:0 auto;
    }

    .hero-buttons{
        justify-content:center;
    }

    .hero-image{
        margin-top:40px;
    }

    .hero-app-shell{
        padding:0.9rem;
    }

    .hero-app-venue{
        flex-direction:column;
        align-items:flex-start;
    }

    .hero-app-btn{
        width:100%;
    }

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

    .footer-grid{
        gap:1.6rem;
    }

}

/* Tablets */
@media (max-width:992px){

    .navbar{
        display:none;
        position:absolute;
        top:90px;
        left:0;
        width:100%;
        background:#fff;
        box-shadow:0 10px 30px rgba(0,0,0,.1);
        padding:30px;
    }

    .navbar.active{
        display:block;
    }

    .navbar ul{
        flex-direction:column;
        gap:20px;
    }

    .menu-btn{
        display:block;
    }

    .stats-grid,
    .sports-grid,
    .feature-grid,
    .timeline{
        grid-template-columns:repeat(2,1fr);
    }

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

    .footer-logo{
        margin:auto auto 25px;
    }

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

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

}

/* Mobile */
@media (max-width:768px){

    .container{
        width:92%;
    }

    h1{
        font-size:36px;
    }

    h2{
        font-size:30px;
    }

    h3{
        font-size:22px;
    }

    p{
        font-size:16px;
    }

    .hero{
        padding-top:140px;
        padding-bottom:72px;
    }

    .hero-buttons{
        flex-direction:column;
    }

    .hero-image img{
        width:260px;
    }

    .sports-grid,
    .feature-grid,
    .stats-grid,
    .timeline{
        grid-template-columns:1fr;
    }

    .hero{
        padding-top:120px;
        padding-bottom:72px;
    }

    .download-grid{
        gap:40px;
    }

    .qr-card-group{
        grid-template-columns:1fr;
        max-width:320px;
    }

    .qr-card{
        width:100%;
    }

    .faq-question{
        font-size:16px;
        padding:20px;
    }

    .cta-box{
        padding:50px 25px;
    }

    .policy-card,
    .contact-form,
    .contact-info{
        padding:1.25rem;
    }

}

/* Small Phones */
@media (max-width:480px){

    .header {
        min-height: 78px;
    }

    .header .container{
        padding:15px 0;
        min-height: 78px;
    }

    .logo img{
        height:56px;
    }

    h1{
        font-size:30px;
    }

    h2{
        font-size:26px;
    }

    .btn{
        width:100%;
        justify-content:center;
    }

    .hero-buttons{
        gap:0.75rem;
    }

    .stat-card{
        padding:25px;
    }

    .sport-card,
    .feature-card,
    .step,
    .stat-card{
        padding:25px;
    }

    .download-list li{
        font-size:15px;
    }

    .footer-socials a{
        width:38px;
        height:38px;
    }

}