/* ==========================================
   GLOBAL RESPONSIVE
========================================== */

@media screen and (max-width:768px){

    *{
        box-sizing:border-box;
    }

    body{
        overflow-x:hidden;
    }

    img{
        max-width:100%;
        height:auto;
        display:block;
    }

    /* ==========================
       NAVBAR
    ========================== */

    header{
        padding:15px 20px;
    }

    nav{
        display:flex;
        flex-direction:column;
        align-items:center;
        gap:15px;
    }

    .logo{
        font-size:28px;
    }

    

    nav h2{
        font-size:22px;
        text-align:center;
    }

    .btn{
        width:220px;
        text-align:center;
    }
    


    /* ==========================
       HERO
    ========================== */

    .hero{
        flex-direction:column;
        text-align:center;
        padding:120px 20px 60px;
        gap:40px;
    }

    .hero-left,
    .hero-right{
        width:100% !important;
    }

    .hero-left h1{
        font-size:34px;
    }

    .hero-left p{
        font-size:16px;
    }

    .tagline{
        font-size:24px;
    }

    .hero-image{
        width:90%;
        max-width:350px;
        margin:auto;
    }

    /* ==========================
       WHY SECTION
    ========================== */

    .container{
        display:flex !important;
        flex-direction:column;
        gap:50px;
    }

    .left,
    .right{
        width:100%;
    }

    .left h1,
    .right h1{
        font-size:30px;
        text-align:center;
    }

    .desc{
        text-align:center;
        max-width:100%;
    }

    .feature-grid{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:20px;
    }

    .feature-card{
        width:100%;
        min-height:auto;
    }

    /* ==========================
       TIMELINE
    ========================== */

    .timeline{
        display:flex;
        flex-direction:column;
        gap:35px;
        align-items:center;
    }

    .line{
        display:none;
    }

    .step{
        width:100%;
        text-align:center;
    }

    .circle{
        width:70px;
        height:70px;
        font-size:24px;
    }

    /* ==========================
       RESOURCE CARD
    ========================== */

    .resource-card{
        display:flex;
        flex-direction:column;
        text-align:center;
        gap:20px;
    }

    /* ==========================
       MISSION
    ========================== */

    .mission{
        flex-direction:column;
        gap:25px;
        padding:30px 20px;
        text-align:center;
    }

    .divider{
        display:none;
    }

    .mission-item{
        flex-direction:column;
        text-align:center;
        width:100%;
    }

    /* ==========================
       FOOTER
    ========================== */

    .social-icons{
        flex-wrap:wrap;
        justify-content:center;
    }

    .footer-links{
        flex-direction:column;
        gap:10px;
    }

    .footer-links span{
        display:none;
    }

    /* ==========================
       COMPARE
    ========================== */

    .compare-container{
        height:280px;
    }

}
/* ==========================
   MOBILE ALIGNMENT FIXES
   Paste-safe: added at bottom only
========================== */

html,
body{
    width:100%;
    max-width:100%;
    overflow-x:hidden;
}

*,
*::before,
*::after{
    box-sizing:border-box;
}

img{
    max-width:100%;
    height:auto;
    display:block;
}

section,
header,
footer{
    width:100%;
    max-width:100%;
    overflow:hidden;
}

@media (max-width:768px){

    header{
        width:100%;
        padding:15px;
    }
nav{
    width:100%;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:15px;
}
.logo{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    margin:0 auto;
}
/* Logo Image */
.logo img{
    width:50px;
    height:50px;
    margin-right: -10px;
}

/* Vertical Divider */
.logo-divider{
    width: 3px;
    height:45px;
    background:#16b5ff;
    border-radius:20px;
    flex-shrink:0;
    margin-right:-3px;
}

/* Brand Text */
.logo-text{
    display:flex;
    flex-direction:column;
    justify-content:center;
    margin-right: 10px;
}

.brand{
    font-size:30px;
    line-height:1;
    margin-right:13px;
}

.nav-tagline{
    font-size:7px;
    letter-spacing:1.5px;
    margin-top:3px;
}
nav h2{
    width:100%;
    text-align:center;
    font-size:20px;      /* Reduce slightly */
    margin-top:10px;
    white-space:nowrap;  /* Keep on one line */
}

.btn{
    width:220px;
    margin:0 auto;
    font-size:20px;
}

    .hero{
        width:100%;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        padding:70px 20px 40px;
        min-height:auto;
        text-align:center;
        gap:30px;
    }

    .hero-left,
    .hero-right{
        width:100% !important;
        max-width:100%;
    }

    .hero-left h1{
        font-size:34px;
        line-height:1.3;
    }

    .hero-left p{
        font-size:16px;
        line-height:1.7;
    }

    .compare-section{
        padding:50px 15px;
    }

    .compare-section h2{
        font-size:26px;
        text-align:center;
        line-height:1.3;
    }

    .compare-container{
        width:100%;
        max-width:100%;
        height:240px;
        border-radius:15px;
    }

    .slider-button{
        width:45px;
        height:45px;
    }

    .why-section{
        width:100%;
        padding:50px 20px;
    }

    .container{
        width:100%;
        max-width:100%;
        display:flex !important;
        flex-direction:column;
        gap:45px;
    }

    .left,
    .right{
        width:100%;
        max-width:100%;
    }

    .left h1,
    .right h1{
        font-size:30px;
        text-align:center;
    }

    .desc{
        text-align:center;
        max-width:100%;
    }

    .feature-grid{
        width:100%;
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:20px;
    }

    .feature-card{
        width:100%;
        min-height:auto;
        padding:25px;
    }

    .timeline{
        width:100%;
        display:flex;
        flex-direction:column;
        align-items:center;
        gap:30px;
    }

    .line{
        display:none;
    }

    .step{
        width:100%;
        max-width:100%;
        text-align:center;
    }

    .step h3,
    .step p{
        text-align:center;
    }

    .resource-card{
        width:100%;
        flex-direction:column;
        text-align:center;
        padding:25px;
    }

    .mission{
        width:100%;
        max-width:100%;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:25px;
        padding:40px 20px;
        margin:50px auto;
        border-radius:0;
        text-align:center;
    }

    .mission-item{
        width:100%;
        flex-direction:column;
        justify-content:center;
        align-items:center;
        text-align:center;
        padding:10px 0;
    }

    .newsletter{
        width:100%;
        padding:50px 20px;
    }

    .social-icons{
        justify-content:center;
        flex-wrap:wrap;
    }

    .footer-links{
        flex-direction:column;
        gap:10px;
    }

    .footer-links span{
        display:none;
    }
}

@media (max-width:420px){
    .hero-left h1{
        font-size:30px;
    }

    .compare-container{
        height:210px;
    }

    .compare-section h2{
        font-size:24px;
    }

    .left h1,
    .right h1{
        font-size:27px;
    }
}
/* FINAL MOBILE NAVBAR FIX */
@media(max-width:768px){

    header{
        padding:15px 20px;
    }

    nav{
        display:flex;
        flex-direction:column;
        align-items:center;
        gap:14px;
        width:100%;
    }

    .logo{
        width:100%;
        display:flex;
        align-items:center;
        justify-content:center;
        gap:10px;
    }

    .logo img{
        width:50px;
        height:50px;
    }

    .logo-divider{
        width:2px;
        height:45px;
        background:#16b5ff;
        border-radius:20px;
        flex-shrink:0;
    }

    .brand{
        font-size:28px;
        line-height:1;
    }

    .nav-tagline{
        font-size:7px;
        letter-spacing:1.5px;
        margin-top:3px;
    }

    nav h2{
        width:100%;
        text-align:center;
        font-size:18px !important;
        white-space:nowrap;
        margin:5px 0 0;
        line-height:1.2;
    }

    .btn{
        width:220px;
        text-align:center;
        margin:0 auto;
    }
}

/* FINAL MOBILE TIMELINE FIX */
@media(max-width:768px){

    .timeline{
        display:flex !important;
        flex-direction:column !important;
        align-items:center !important;
        gap:70px !important;
        width:100% !important;
        margin-top:40px !important;
    }

    .timeline .line{
        display:none !important;
    }

    .step{
        width:100% !important;
        max-width:320px !important;
        display:flex !important;
        flex-direction:column !important;
        align-items:center !important;
        justify-content:center !important;
        text-align:center !important;
        position:relative !important;
    }

    .circle{
        width:90px !important;
        height:90px !important;
        margin:0 auto !important;
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        position:relative !important;
        font-size:30px !important;
    }

    .number{
        position:static !important;
        transform:none !important;
        width:38px !important;
        height:38px !important;
        margin:22px auto 18px !important;
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        border-radius:50% !important;
        font-size:16px !important;
        font-weight:700 !important;
        color:#fff !important;
        text-align:center !important;
    }

    .step h3{
        width:100% !important;
        max-width:280px !important;
        margin:0 auto 12px !important;
        text-align:center !important;
        font-size:20px !important;
        line-height:1.3 !important;
    }

    .step p{
        width:100% !important;
        max-width:280px !important;
        margin:0 auto !important;
        text-align:center !important;
        font-size:15px !important;
        line-height:1.7 !important;
    }
}

