*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{

font-family:'Poppins',sans-serif;
background:#FFF8EC;
overflow-x:hidden;

}

/* Navbar */

header{
    width:100%;
    position:sticky;
    top:0;
    background:#FFF8EC;
    z-index:1200;
    transition:box-shadow .3s ease;
}

header.sticky{
    box-shadow:0 4px 15px rgba(0,0,0,.08);
}

.navbar{
    width:90%;
    max-width:1400px;
    height:80px;
    margin:0 auto;

    display:flex;
    justify-content:space-between;
    align-items:center;

    position:relative;
    z-index:1000;
}

.logo img{
    height:71px;
    display:block;
}

.nav-links{
    display:flex;
    align-items:center;
}

.nav-links ul{
    display:flex;
    align-items:center;
    gap:40px;
    list-style:none;
}

.menu-header{
    display:none;
}

.nav-links li{
    position:relative;
}

.nav-links a{
    text-decoration:none;
    color:#222;
    font-size:15px;
    font-weight:600;
    padding:8px 0;
    position:relative;
    transition:.3s ease;
}

.nav-links a:hover{
    color:#f4b400;
}

.nav-links a::after{
    content:"";
    position:absolute;
    left:0;
    bottom:-6px;
    width:0;
    height:3px;
    background:#f4b400;
    border-radius:10px;
    transition:.3s;
}

.nav-links a:hover::after,
.nav-links a.active::after{
    width:100%;
}
/* Desktop Sign Up Button */

.signup{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    padding:13px 30px;
    background:#FFD63A;
    color:#000;
    text-decoration:none;

    font-size:15px;
    font-weight:600;

    border-radius:40px;
    box-shadow:0 8px 20px rgba(0,0,0,.08);

    transition:all .3s ease;
}

.signup:hover{
    background:#F4C400;
    transform:translateY(-3px);
    box-shadow:0 12px 25px rgba(0,0,0,.12);
}
/* Hamburger Hidden on Desktop */

.menu-toggle{
    display:none;
    font-size:30px;
    cursor:pointer;
    color:#6B2CA0;
}

/* ===========================
   MOBILE VIEW
=========================== */
@media (max-width:768px){
    /* ===========================
   Sticky Header
=========================== */

header{
    width:100%;
    transition:all .3s ease;
}

header.sticky{
    background:#FFF6E8;
    box-shadow:0 4px 15px rgba(0,0,0,.08);
}
@keyframes slideDown{
    from{
        transform:translateY(-100%);
    }
    to{
        transform:translateY(0);
    }
}

    .navbar{
        width:92%;
        height:78px;
        display:flex;
        align-items:center;
        justify-content:space-between;
        position:relative;
    }

    .logo img{
        height:62px;
        width:auto;
    }

    /* Hamburger */
    .menu-toggle{
        display:block;
        position:absolute;
        right:0;
        top:50%;
        transform:translateY(-50%);
        font-size:32px;
        cursor:pointer;
        color:#6B2CA0;
        z-index:1101;
    }

    /* Enroll Button */
    .signup{
        margin-right:55px;
        padding:12px 24px;
    }

    /* Overlay */
    .menu-overlay{
        position:fixed;
        top:0;
        left:0;
        width:100%;
        height:100%;
        background:rgba(0,0,0,.45);
        opacity:0;
        visibility:hidden;
        transition:0.3s;
        z-index:1098;
    }

    .menu-overlay.active{
        opacity:1;
        visibility:visible;
    }

    /* Sidebar */
    .nav-links{
        position:fixed;
        top:0;
        left:-100%;
        width:75%;
        max-width:320px;
        height:100vh;
        height:100dvh;
        background:#fff;
        display:flex;
        flex-direction:column;
        transition:left .35s ease;
        box-shadow:10px 0 30px rgba(0,0,0,.28);
        z-index:1100;
        padding:0;
    }

    .nav-links.active{
        left:0;
    }

    /* Header */
    .menu-header{
        display:flex;
        width:100%;
        justify-content:space-between;
        align-items:center;
        padding:20px;
        border-bottom:1px solid #eee;
    }

    .menu-logo img{
        width:140px;
    }

    .close-menu{
        display:flex;
        align-items:center;
        justify-content:center;
        font-size:34px;
        line-height:1;
        cursor:pointer;
        color:#6B2CA0;
        margin-left:auto;
        padding:6px 2px 6px 14px;
    }
    /* Menu List */
    .nav-links ul{
        display:block;
        width:100%;
        list-style:none;
        margin:0;
        padding:0;
    }

    .nav-links li{
        border-bottom:1px solid #eee;
    }

    .nav-links li a{
        display:block;
        padding:18px 25px;
        text-decoration:none;
        color:#333;
        font-size:17px;
        font-weight:500;
    }

    .nav-links li a:hover{
        background:#FFF6E8;
        color:#6B2CA0;
    }
}

/* Desktop */
@media (min-width:769px){
    .nav-links a{
        font-size:18px;
    }

    .menu-toggle,
    .menu-overlay{
        display:none;
    }

    .nav-links{
        position:static;
    }
}
/* Hero */

.hero{
    width: 90%;
    margin: auto;
    min-height: 50vh;

    display: flex;
    justify-content: space-between;
    align-items: center;

    position: relative;

    /* 👇 Hero section ko upar le aayega */
    margin-top: -70px;
}

/* Left */

.left{

width:50%;

}

.left h1{

font-family:'Baloo 2',cursive;

font-size:68px;
line-height:1.05;
color:#111;
font-weight:800;

margin-bottom:20px;

}

.left p{

color:#666;

font-size:18px;

line-height:1.8;

max-width:600px;

margin-bottom:35px;

}

.btn{

display:inline-block;

background:#FFD63A;

padding:18px 40px;

border-radius:50px;

font-weight:700;

text-decoration:none;

color:#111;

box-shadow:0 15px 30px rgba(255,214,58,.4);

transition:.3s;

}

.btn:hover{

transform:translateY(-5px);

}

/* Right */

.right{

width:45%;
display:flex;
justify-content:center;
align-items:center;

}

.right img{

width:100%;
max-width:650px;

}

/* Decorations */

.rocket{

position:absolute;

top:90px;
left:79%;

width:80px;

animation:float 3s ease-in-out infinite;

}

.coin{

position:absolute;

left:auto;
right:3%;
top:62%;
bottom:auto;

width:55px;

animation:float 4s ease-in-out infinite;
pointer-events:none;

}

.robot{

position:absolute;

left:41px;
bottom:40px;

width:80px;

animation:float 3s ease-in-out infinite;

}
@keyframes float{

0%{

transform:translateY(0);

}

50%{

transform:translateY(-15px);

}

100%{

transform:translateY(0);

}
}
@media (max-width:768px){
    .rocket{

position:absolute;

top:90px;
left:79%;

width:80px;

animation:float 3s ease-in-out infinite;

}

.coin{

display:none;

}

.robot{

position:absolute;

left:70px;
bottom:40px;

width:80px;

animation:float 3s ease-in-out infinite;

}
}

@media (min-width:769px) and (max-width:991px){
    .coin{
        display:none;
    }
}

/* Responsive */

@media(max-width:991px){

.hero{

flex-direction:column;
padding-top:50px;

}

.left{

width:100%;
text-align:center;

}

.left h1{

font-size:50px;

}

.left p{

margin:auto;
margin-bottom:30px;

}

.right{

width:100%;
margin-top:40px;

}

}
.financial-literacy{

width:90%;
max-width:1200px;

margin:0px auto;
position:relative;

}

.gap-floating-robot{
    position:absolute;
    top:-78px;
    left:50%;
    width:70px;
    height:auto;
    translate:-50% 0;
    z-index:3;
    pointer-events:none;
    filter:drop-shadow(0 9px 8px rgba(91,56,18,.12));
    animation:float 3s ease-in-out infinite;
}

.gap-floating-rocket{
    position:absolute;
    top:-112px;
    right:5%;
    width:76px;
    height:auto;
    z-index:3;
    pointer-events:none;
    filter:drop-shadow(0 9px 8px rgba(91,56,18,.11));
    animation:float 3.8s ease-in-out .45s infinite;
}

@media (max-width: 768px){

.gap-floating-robot{
    width:48px;
    top:-38px;
}

.gap-floating-rocket{
    width:52px;
    top:-58px;
    right:3%;
}

.hero{
    width:90%;
    min-height:auto;
    margin-top:20px;
    flex-direction:column-reverse;
    text-align:center;
    gap:35px;
}

.left{
    width:110%;
}

.left h1{
    font-size:38px;
    line-height:1.2;
    margin-bottom:15px;
}

.left p{
    font-size:16px;
    line-height:1.7;
    max-width:100%;
    margin-bottom:25px;
}

.btn{
    padding:15px 32px;
    font-size:16px;
}

.right{
    width:60%;
    margin-top: -105px;
    
}

.right img{
    width:90%;
    max-width:380px;
    margin-bottom: -37px;
}

.robot{
    width:55px;
    left:150px;
    bottom:-52px;
}

}

/* ================= Stats =================

.stats-box{

background:#0B57A4;

border-radius:20px;

display:flex;
justify-content:space-between;
align-items:center;

padding:30px 20px;

color:#fff;

margin-bottom:70px;

}

.stat{

flex:1;

text-align:center;

border-right:1px solid rgba(255,255,255,.3);

}

.stat:last-child{

border:none;

}

.stat h2{

font-size:34px;

margin-bottom:8px;

font-weight:700;

}

.stat p{

font-size:15px;

opacity:.95;

} */

/* ============ Heading ============ */

/* ============================
   WHY MONEY SECTION
============================ */

/*====================================
        WHY MONEY SECTION
====================================*/

/*====================================
        WHY MONEY SECTION
====================================*/

.why-money{
    width:100%;
    background:#FFF8EC;
    padding:45px 0 80px;
}

/*====================================
        HEADING
====================================*/

.section-title{
    text-align:center;
    margin-bottom:60px;
}

.section-title h1{
    font-size:3rem;
    font-weight:800;
    color:#1F2937;
    line-height:1.3;
    margin:0;
}

.section-title h1 span{
    color:#4F46E5;
    font-weight:900;
}

.section-title::after{
    content:"";
    display:block;
    width:90px;
    height:5px;
    background:#4F46E5;
    border-radius:20px;
    margin:18px auto 0;
}

/*====================================
        MAIN BOX
====================================*/

.why-box{
    width:96%;
    max-width:1600px;
    margin:0 auto;

    background:#fff;

    border-radius:28px;

    padding:55px 50px;

    box-shadow:0 18px 45px rgba(0,0,0,.08);

    transition:.35s ease;
}

.why-box:hover{
    transform:translateY(-5px);
    box-shadow:0 25px 60px rgba(0,0,0,.12);
}

/*====================================
        BULLET LAYOUT
====================================*/

.why-box ul{
    list-style:none;

    display:grid;
    grid-template-columns:repeat(2,1fr);

    gap:28px 40px;

    margin:0;
    padding:0;
}

/*====================================
        BULLET BOX
====================================*/

.why-box li{
    position:relative;

    background:#F8FAFC;

    padding:20px 22px 20px 60px;

    border-radius:18px;

    font-size:1.1rem;
    font-weight:500;

    color:#374151;

    line-height:1.8;

    transition:.3s ease;
}

.why-box li:hover{
    background:#EEF2FF;
    transform:translateX(6px);
}

/*====================================
        TICK ICON
====================================*/

.why-box li::before{
    content:"✔";

    position:absolute;

    left:20px;
    top:50%;

    transform:translateY(-50%);

    width:30px;
    height:30px;

    border-radius:50%;

    background:#4F46E5;

    color:#fff;

    display:flex;
    justify-content:center;
    align-items:center;

    font-size:15px;
    font-weight:bold;
}

/*====================================
        TABLET VIEW
====================================*/

@media (max-width:992px){

    .why-money{
        padding:40px 0 70px;
    }

    .section-title h1{
        font-size:2.5rem;
    }

    .why-box{
        width:95%;
        padding:40px 30px;
    }

    .why-box ul{
        grid-template-columns:1fr;
        gap:22px;
    }

}

/*====================================
        MOBILE VIEW
====================================*/

@media (max-width:768px){

    .why-money{
        padding:34px 0 60px;
    }

    .section-title{
        margin-bottom:40px;
    }

    .section-title h1{
        font-size:2rem;
    }

    .section-title::after{
        width:70px;
        height:4px;
    }

    .why-box{
        width:94%;
        padding:25px 18px;
        border-radius:18px;
    }

    .why-box ul{
        grid-template-columns:1fr;
        gap:16px;
    }

    .why-box li{
        font-size:16px;
        line-height:1.7;
        padding:16px 16px 16px 50px;
    }

    .why-box li::before{
        width:24px;
        height:24px;
        left:15px;
        font-size:12px;
    }

}

/*====================================
        SMALL MOBILE
====================================*/

@media (max-width:480px){

    .why-money{
        padding:28px 0 50px;
    }

    .section-title h1{
        font-size:1.7rem;
    }

    .why-box{
        width:96%;
        padding:20px 15px;
    }

    .why-box li{
        font-size:15px;
        padding:15px 15px 15px 45px;
    }

    .why-box li::before{
        width:22px;
        height:22px;
        left:12px;
        font-size:11px;
    }

}




.imagine-section{
    padding:17px 2%;
    background: #FFF8EC;;
}

.imagine-section h2{
    text-align:center;
    font-size:2.2rem;
    margin-bottom:50px;
    color:#1e293b;
    margin-top: -52px;
}

.imagine-container{
    width:100%;
    max-width:2000px;
    margin:0 auto;

    display:flex;
    flex-direction:column;
    gap:30px;
}

.imagine-card{
    display:flex;
    align-items:center;
    gap:25px;
    background:#fff;
    padding:20px;
    border-radius:18px;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    transition:.3s;
}

.imagine-card:hover{
    transform:translateY(-5px);
}

.imagine-card img{
    width:180px;
    height:120px;
    object-fit:cover;
    border-radius:15px;
    flex-shrink:0;
}

.imagine-card h3{
    font-size:1.3rem;
    color:#1f2937;
    line-height:1.6;
    font-weight:600;
}
.journey-card .number{
    position:absolute;
    top:22px;
    left:22px;

    width:75px;
    height:75px;

    border-radius:50%;
    background:linear-gradient(135deg,#4f46e5,#7c3aed);

    color:#fff;

    font-size:34px;
    font-weight:800;

    display:flex;
    justify-content:center;
    align-items:center;

    box-shadow:0 12px 25px rgba(79,70,229,.35);

    border:5px solid #fff;

    z-index:5;
}

@media(max-width:992px){

.card{

flex-direction:column;

}

.card img{

width:100%;
height:350px;

}

.text{

width:100%;
padding:35px;

}

.text h3{

font-size:34px;

}

}

@media(max-width:768px){

.imagine-card{
    flex-direction:column;
    text-align:center;
}


.imagine-card img{
    width:100%;
    height:220px;
}

.imagine-card h3{
    font-size:1.1rem;
}

}@media(max-width:768px){

.journey-card{
    flex-direction:column;
    gap:20px;
}

.journey-card img{
    width:100%;
    height:240px;
}

.journey-card h3{
    font-size:1.5rem;
    padding:0 20px 30px;
    text-align:center;
}

.journey-card .number{
    width:60px;
    height:60px;
    font-size:28px;
    top:15px;
    left:15px;
}

}
/* Mobile */

@media(max-width:768px){

.card{

flex-direction:column;

}

.card img{

width:100%;
height:220px;

}

.text{

width:100%;
padding:25px;

}

.text h3{

font-size:22px;

}

}
.teach-section{
    width:min(90%, 1300px);
    margin:80px auto;
    display:grid;
    grid-template-columns:minmax(0, 1.05fr) minmax(320px, .95fr);
    align-items:center;
    gap:clamp(36px, 6vw, 80px);
}

.teach-left{
    min-width:0;
}

.teach-right{
    min-width:0;
    display:flex;
    align-items:center;
    justify-content:center;
    align-self:start;
    margin-top:227px;
}

.teach-right img{
    display:block;
    width:100%;
    max-width:550px;
    height:auto;
    object-fit:contain;
    border-radius:18px;
}

.teach-left h2{

font-size:50px;
font-weight:700;
color:#6B2CA0;
margin-bottom:10px;

}

.subtitle{

color:#777;
margin-bottom:25px;
line-height:1.6;

}

.tag{

display:inline-block;

background:#6B2CA0;
color:#fff;

padding:10px 18px;

border-radius:30px;

font-size:13px;
font-weight:600;

margin-bottom:25px;

}

.teach-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:18px;
    margin-bottom:30px;
}

.teach-card{
    min-width:0;
    min-height:140px;
    background:#fff;
    border-radius:15px;
    padding:20px 12px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    box-shadow:0 5px 15px rgba(0,0,0,.08);
    transition:.3s;
}

.teach-card:hover{

transform:translateY(-5px);

}

.teach-card img{
    display:block;
    width:55px;
    height:55px;
    margin:0 0 12px;
    object-fit:contain;
}

.teach-card h4{
    margin:0;
    font-size:15px;
    font-weight:600;
    line-height:1.4;
}

.bottom-box{

background:#E8D8F8;

padding:18px 25px;

border-radius:12px;

font-weight:600;

color:#5B2C83;

}

.bottom-box span{

color:#8B3BB8;

}
@media (max-width:992px){

    .teach-section{
        width:92%;
        grid-template-columns:minmax(0, 1fr) minmax(280px, .85fr);
        gap:40px;
    }

    .teach-left h2{
        font-size:38px;
    }

    .teach-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .teach-right img{
        max-width:430px;
        height:auto;
    }

    .teach-right{
        margin-top:188px;
    }

}


/*==========================
      MOBILE VIEW
==========================*/

@media (max-width:768px){

    .teach-section{
        width:92%;
        margin:60px auto;
        grid-template-columns:1fr;
        align-items:center;
        gap:35px;
    }

    .teach-left,
    .teach-right{
        width:100%;
        text-align:center;
    }

    .teach-right{
        margin-top:0;
    }

    .teach-left h2{
        font-size:30px;
    }

    .subtitle{
        font-size:15px;
        margin-bottom:18px;
    }

    .tag{
        font-size:12px;
        padding:8px 16px;
        margin-bottom:20px;
    }

    .teach-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap:15px;
    }

    .teach-card{
        min-height:130px;
        padding:18px;
    }

    .teach-card img{
        width:50px;
    }

    .teach-card h4{
        font-size:15px;
    }

    .bottom-box{
        padding:16px;
        font-size:14px;
        text-align:center;
    }

    .teach-right img{
        width:100%;
        max-width:600px;
        height:auto;
        object-fit:contain;
    }

}


/*==========================
      SMALL MOBILE
==========================*/

@media (max-width:480px){

    .teach-section{
        width:95%;
        margin:50px auto;
        gap:25px;
    }

    .teach-left h2{
        font-size:26px;
    }

    .subtitle{
        font-size:14px;
    }

    .teach-card{
        min-height:120px;
        padding:16px;
        border-radius:12px;
    }

    .teach-card img{
        width:45px;
    }

    .teach-card h4{
        font-size:14px;
    }

    .bottom-box{
        padding:14px;
        font-size:13px;
    }

    .teach-right img{
        width:100%;
        max-width:100%;
        height:auto;
    }

}

/* Responsive */

.journey{
    padding:60px clamp(16px, 4vw, 64px);
    background:#FFF8EC;
}

.heading{
    text-align:center;
    margin-bottom:50px;
}

.heading h2{
    font-size:2.3rem;
    color:#1e293b;
    margin-bottom:10px;
}

.heading p{
    color:#64748b;
    font-size:1.1rem;
}

.journey-container{
    display:grid;
    gap:32px;
    width:100%;
    max-width:1100px;
    margin:0 auto;
}

.journey-card{
    display:grid;
    grid-template-columns:88px minmax(280px, 42%) minmax(0, 1fr);
    align-items:center;
    width:100%;
    min-height:280px;
    height:280px;
    background:#fff;
    border-radius:24px;
    overflow:hidden;
    position:relative;
    box-shadow:0 18px 45px rgba(0,0,0,.08);
    transition:opacity .65s ease, transform .65s ease, box-shadow .35s ease;
}

.journey-animate .journey-card{
    opacity:0;
    transform:translateY(45px) scale(.98);
}

.journey-animate .journey-card.journey-visible{
    opacity:1;
    transform:translateY(0) scale(1);
    transition-delay:var(--journey-delay, 0ms);
}

.journey-card.journey-visible:hover,
.journey-card:not(.journey-visible):hover{
    transform:translateY(-8px);
    box-shadow:0 28px 60px rgba(0,0,0,.12);
    transition-delay:0ms;
}

.journey-card .number{
    position:static;
    justify-self:center;
    width:62px;
    height:62px;
    border:4px solid #fff;
    font-size:28px;
    z-index:1;
}

.journey-card img{
    width:100%;
    height:280px;
    padding:0;
    object-fit:contain;
    object-position:center;
    display:block;
    background:transparent;
}

.journey-card h3{
    display:flex;
    align-items:center;
    min-width:0;
    min-height:100%;
    margin:0;
    padding:32px clamp(28px, 5vw, 64px);
    font-size:2rem;
    font-weight:700;
    color:#1f2937;
    line-height:1.4;
    text-align:left;
}
@media(max-width:768px){

.heading h2{
    font-size:clamp(1.8rem, 8vw, 2.25rem);
}

.heading p{
    font-size:1rem;
    line-height:1.6;
}

.journey-card{
    display:grid;
    grid-template-columns:72px minmax(0, 1fr);
    grid-template-rows:auto auto;
    min-height:0;
    height:auto;
    border-radius:18px;
}

.journey-card img{
    grid-column:1 / -1;
    grid-row:1;
    width:100%;
    height:clamp(190px, 62vw, 260px);
    padding:0;
    margin:0;
    object-fit:contain;
    object-position:center;
    background:transparent;
}

.journey-card .number{
    grid-column:1;
    grid-row:2;
    width:52px;
    height:52px;
    margin-left:10px;
    font-size:23px;
}

.journey-card h3{
    grid-column:2;
    grid-row:2;
    justify-content:center;
    width:100%;
    min-height:68px;
    padding:12px 16px 12px 8px;
    font-size:clamp(1.15rem, 5vw, 1.4rem);
    line-height:1.35;
    text-align:left;
}
}

@media(max-width:420px){
    .journey{
        padding-inline:12px;
    }

    .journey-container{
        gap:22px;
    }

    .journey-card .number{
        width:46px;
        height:46px;
        margin-left:8px;
        font-size:20px;
    }

    .journey-card h3{
        min-height:62px;
        padding:10px 12px 10px 6px;
    }
}

@media(min-width:769px) and (max-width:950px){
    .journey-card{
        grid-template-columns:72px minmax(240px, 40%) minmax(0, 1fr);
    }

    .journey-card .number{
        width:54px;
        height:54px;
        font-size:24px;
    }

    .journey-card h3{
        padding:24px;
        font-size:clamp(1.35rem, 3vw, 1.7rem);
    }
}

@media(prefers-reduced-motion:reduce){
    .journey-animate .journey-card,
    .journey-animate .journey-card.journey-visible{
        opacity:1;
        transform:none;
        transition:none;
    }
}
.activities{
    padding:80px 2%;
    background:#FFF8EC;
}

.section-heading{
    text-align:center;
    margin-bottom:40px;
}

.section-heading h2{
    font-size:2.4rem;
    color:#1f2937;
}

.section-heading span{
    color:#4F46E5;
}

.activity-box{
    background:#fff;
    border-radius:25px;
    padding:40px;
    box-shadow:0 15px 40px rgba(0,0,0,.08);

    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:30px;

    max-width:1100px;
    margin:auto;
}

.activity-item{
    display:flex;
    align-items:center;
    gap:20px;
}

.activity-item img{
    width:140px;
    height:100px;
    object-fit:cover;
    border-radius:15px;
}

.activity-item h3{
    font-size:1.3rem;
    color:#1f2937;
    font-weight:600;
}

/* Responsive */

@media(max-width:992px){

.activities-grid{

grid-template-columns:repeat(2,1fr);

}

.section-heading h2{

font-size:40px;

}

}

@media(max-width:768px){

.activities-grid{

grid-template-columns:1fr;

}

.activity-card img{

height:200px;

}

.section-heading h2{

font-size:32px;

}
/* ==========================
        TABLET
========================== */

@media (max-width:992px){

.activities{
    padding:60px 5%;
}

.section-heading h2{
    font-size:2rem;
}

.activity-box{
    grid-template-columns:1fr;
    padding:30px;
    gap:25px;
}

.activity-item img{
    width:170px;
    height:120px;
}

.activity-item h3{
    font-size:1.2rem;
}

}

/* ==========================
        MOBILE
========================== */

@media (max-width:768px){

.activities{
    padding:50px 4%;
}

.section-heading{
    margin-bottom:30px;
}

.section-heading h2{
    font-size:1.8rem;
    line-height:1.3;
}

.activity-box{
    grid-template-columns:1fr;
    padding:20px;
    border-radius:20px;
    gap:20px;
}

.activity-item{
    flex-direction:column;
    text-align:center;
    gap:15px;
}

.activity-item img{
    width:100%;
    height:220px;
    border-radius:15px;
}

.activity-item h3{
    font-size:1.1rem;
    line-height:1.5;
}

}
}
.learning-outcomes{

width:90%;
max-width:1300px;

margin:25px auto;

position:relative;

}

.outcome-heading{

display:flex;
justify-content:center;
align-items:center;
gap:30px;

margin-bottom:70px;

}

.top-img img{

width:110px;

}

.title{

text-align:center;

}

.title h2{

font-size:60px;

font-weight:700;

color:#111;

}

.title span{

color:#1D9B4F;

}

.title p{

margin-top:10px;

font-size:20px;

color:#666;

}

/* Cards */

.outcome-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:35px;

}

.outcome-card{

background:#fff;

padding:40px 25px;

border-radius:18px;

text-align:center;

box-shadow:0 8px 20px rgba(0,0,0,.1);

transition:.35s;

}

.outcome-card:hover{

transform:translateY(-10px);

box-shadow:0 18px 35px rgba(0,0,0,.15);

}

.outcome-card img{

width:100px;

height:70px;

margin-bottom:25px;

}

.outcome-card h4{

font-size:18px;

line-height:1.5;

color:#222;

}

/* Decorative Shape */

.learning-outcomes::after{

content:"";

position:absolute;

right:-50px;

bottom:-40px;

width:220px;

height:220px;

background:#EAE5FF;

border-radius:50%;

z-index:-1;

}

/* Tablet */

@media(max-width:992px){

.outcome-grid{

grid-template-columns:repeat(2,1fr);

}

.title h2{

font-size:45px;

}

.top-img img{

width:80px;

}

}

/* Mobile */

@media(max-width:768px){

.outcome-heading{

flex-direction:column;

gap:15px;

}

.title h2{

font-size:34px;

}

.title p{

font-size:16px;

}

.outcome-grid{

grid-template-columns:1fr;

}

.outcome-card{

padding:30px 20px;

}

.outcome-card img{

width:101px;

}

.outcome-card h4{

font-size:17px;

}

}
/* ================= Founder ================= */

.founder-section{

width:90%;
max-width:1200px;

margin:100px auto;

display:flex;
align-items:center;
justify-content:center;

gap:60px;

}

.founder-image{

flex:1;
display:flex;
justify-content:center;

}

.founder-image img{

width:280px;

border-radius:20px;

border:2px solid #222;

box-shadow:0 10px 25px rgba(0,0,0,.15);

transition:.4s;

}

.founder-image img:hover{

transform:translateY(-8px);

}

.founder-content{

flex:2;

}

.founder-content h2{

font-size:52px;

font-weight:700;

color:#111;

margin-bottom:8px;

}

.founder-content h4{

font-size:24px;

color:#0B63FF;

margin-bottom:25px;

letter-spacing:1px;

}

.founder-content p{

font-size:20px;

line-height:1.8;

color:#666;

margin-bottom:15px;

}

.founder-content strong{

color:#222;

}

/* Responsive */

@media(max-width:992px){

.founder-section{

flex-direction:column;

text-align:center;

gap:35px;

}

.founder-content h2{

font-size:40px;

}

.founder-content h4{

font-size:20px;

}

.founder-content p{

font-size:17px;

}

.founder-image img{

width:240px;

}

}
/* Founder layout refinements */
.founder-section{
    width:min(90%, 1200px);
    display:grid;
    grid-template-columns:minmax(260px, .7fr) minmax(0, 1.6fr);
    align-items:start;
    gap:clamp(40px, 6vw, 72px);
}

.founder-image{
    position:sticky;
    top:100px;
}

.founder-image img{
    display:block;
    width:100%;
    max-width:320px;
    height:auto;
}

.founder-content{
    min-width:0;
    overflow-wrap:anywhere;
}

.founder-content h4{
    max-width:760px;
    margin:0 0 25px;
    font-size:clamp(1rem, 2vw, 1.25rem);
    line-height:1.5;
    letter-spacing:.2px;
}

.founder-content p{
    margin:0 0 16px;
    font-size:clamp(1rem, 1.5vw, 1.125rem);
    line-height:1.75;
    text-align:justify;
    text-align-last:left;
    hyphens:auto;
}

.founder-media{
    display:flex;
    align-items:flex-start;
    gap:16px;
    margin-top:28px;
    padding:22px 24px;
    color:#37205f;
    background:linear-gradient(135deg, #f1e6ff, #e4edff);
    border:1px solid rgba(107,44,160,.2);
    border-left:5px solid #6B2CA0;
    border-radius:16px;
    box-shadow:0 10px 30px rgba(75,38,110,.1);
}

.founder-media-icon{
    flex:0 0 auto;
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    color:#fff;
    background:#6B2CA0;
    border-radius:50%;
    font-size:20px;
}

.founder-media strong{
    display:block;
    margin-bottom:5px;
    color:#4c2475;
    font-size:1.1rem;
}

.founder-media p{
    margin:0;
    color:#563d69;
    font-size:1rem;
    line-height:1.6;
    text-align:justify;
    text-align-last:left;
}

@media(max-width:992px){
    .founder-section{
        grid-template-columns:1fr;
        text-align:center;
    }

    .founder-image{
        position:static;
    }

    .founder-content h4{
        margin-inline:auto;
    }

    .founder-content > p{
        text-align:justify;
        text-align-last:left;
    }

    .founder-media{
        max-width:720px;
        margin-inline:auto;
        text-align:left;
    }
}

@media(max-width:480px){
    .founder-section{
        width:92%;
        margin:60px auto;
        gap:26px;
    }

    .founder-content h2{
        font-size:34px;
    }

    .founder-media{
        gap:12px;
        padding:18px 16px;
        border-left-width:4px;
    }

    .founder-media-icon{
        width:36px;
        height:36px;
        font-size:17px;
    }
}

/*================ Schools Section ================*/

.school-section{

width:90%;
max-width:1300px;

margin:100px auto;

display:flex;
align-items:center;
justify-content:space-between;

gap:60px;

}

.school-left{

flex:1;

}

.school-tag{

display:inline-block;

font-size:28px;
font-weight:700;

margin-bottom:20px;

color:#111;

}

.school-left h2{

font-size:65px;

font-weight:800;

line-height:1.1;

margin-bottom:30px;

}

.school-left h2 span{

color:#1D9448;

}

.school-text{

font-size:25px;

font-weight:500;

line-height:1.5;

margin-bottom:25px;

color:#333;

}

.school-desc{

font-size:20px;

line-height:1.8;

color:#666;

max-width:550px;

margin-bottom:40px;

}

.school-btn{

display:inline-flex;

align-items:center;

gap:10px;

padding:18px 35px;

background:#148A3D;

color:#fff;

text-decoration:none;

border-radius:50px;

font-size:20px;

font-weight:600;

transition:.3s;

}

.school-btn:hover{

background:#0F7032;

transform:translateY(-5px);

}

.school-right{

flex:1;

text-align:center;

}

.school-right img{

width:100%;
max-width:620px;

}

/*================ Responsive ================*/

@media(max-width:991px){

.school-section{

flex-direction:column-reverse;

text-align:center;

}

.school-left h2{

font-size:48px;

}

.school-text{

font-size:20px;

}

.school-desc{

font-size:17px;

margin:auto;
margin-bottom:30px;

}

.school-right img{

max-width:450px;

}

}

@media(max-width:600px){

.school-left h2{

font-size:36px;

}

.school-btn{

font-size:16px;

padding:15px 25px;

}

.school-tag{

font-size:41px;

}

}
/* School section alignment refinements */
.school-section{
    width:min(90%, 1300px);
    display:grid;
    grid-template-columns:minmax(0, 1fr) minmax(320px, 1fr);
    align-items:center;
    gap:clamp(40px, 6vw, 70px);
}

.school-left,
.school-right{
    min-width:0;
}

.school-desc{
    text-align:justify;
    text-align-last:left;
    hyphens:auto;
    overflow-wrap:anywhere;
}

.school-right img{
    display:block;
    height:auto;
    margin:0 auto;
}

@media(max-width:991px){
    .school-section{
        display:flex;
        width:92%;
        margin:70px auto;
        gap:35px;
    }

    .school-left,
    .school-right{
        width:100%;
    }

    .school-desc{
        width:100%;
        max-width:650px;
        text-align:justify;
        text-align-last:left;
    }
}

@media(max-width:600px){
    .school-section{
        margin:55px auto;
        gap:26px;
    }

    .school-tag{
        font-size:1.35rem;
        margin-bottom:14px;
    }

    .school-left h2{
        margin-bottom:20px;
        font-size:clamp(2rem, 10vw, 2.5rem);
    }

    .school-text{
        font-size:1.05rem;
        line-height:1.6;
        margin-bottom:18px;
    }

    .school-desc{
        font-size:1rem;
        line-height:1.7;
        margin-bottom:26px;
    }

    .school-btn{
        max-width:100%;
        justify-content:center;
        padding:14px 22px;
        font-size:.95rem;
        line-height:1.4;
        text-align:center;
    }

    .school-right img{
        width:100%;
        max-width:380px;
    }
}

/*================ Pricing Section ================*/

/*============== PRICING SECTION ==============*/

.pricing{
    width: 90%;
    max-width: 1300px;
    margin: 80px auto;

    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 70px;

    /* Premium Card Look */
    background: #fff;
    border-radius: 30px;
    padding: 60px;

    box-shadow:
        0 20px 60px rgba(0,0,0,0.08),
        0 8px 25px rgba(0,0,0,0.05);

    border: 1px solid rgba(0,0,0,0.06);
}

.pricing-left{

    flex:1;

}

.price-tag{

    display:inline-block;

    background:#16a34a;
    color:#fff;

    padding:10px 22px;

    border-radius:30px;

    font-size:14px;
    font-weight:700;

}

.pricing-left h2{

    font-size:48px;
    margin:22px 0;
    line-height:1.2;
    color:#0f172a;

}

.pricing-left h2 span{

    color:#16a34a;

}

.price-box{

    background:#fff;

    border-radius:25px;

    padding:25px;

    display:flex;
    align-items:center;

    gap:20px;

    margin:30px 0;

    box-shadow:0 15px 35px rgba(0,0,0,.08);

}

.rupee{

    width:85px;
    height:85px;

    border-radius:50%;

    background:#16a34a;

    color:#fff;

    font-size:48px;

    display:flex;
    justify-content:center;
    align-items:center;

}

.price-box h3{

    font-size:64px;
    color:#16a34a;
    line-height:1;

}

.price-box p{

    font-size:24px;
    font-weight:600;
}

.feature-list{

    list-style:none;

    background:#fff;

    border-radius:20px;

    overflow:hidden;

    box-shadow:0 12px 30px rgba(0,0,0,.08);

}

.feature-list li{

    padding:18px 25px;

    border-bottom:1px solid #eee;

    font-size:21px;
    font-weight:600;

}

.feature-list li:last-child{

    border:none;

}

.enroll-btn{

    display:block;

    margin-top:30px;

    background:#16a34a;

    color:#fff;

    text-decoration:none;

    text-align:center;

    padding:22px;

    border-radius:20px;

    font-size:28px;
    font-weight:700;

    transition:.3s;

}

.enroll-btn:hover{

    transform:translateY(-4px);

}

/* Right */

.pricing-right{

    flex:1;

    position:relative;

    display:flex;
    justify-content:center;
    align-items:center;

}

.circle-bg{

    position:absolute;

    width:500px;
    height:500px;

    border-radius:50%;

    border:35px solid rgba(22,163,74,.08);

}

.pricing-right img{

    width:420px;

    position:relative;

    z-index:5;

}

.badge{

    position:absolute;

    width:85px;
    height:85px;

    border-radius:50%;

    background:#fff;

    display:flex;
    justify-content:center;
    align-items:center;

    font-size:38px;

    box-shadow:0 10px 25px rgba(0,0,0,.1);

}

.badge1{

    top:60px;
    left:90px;

}

.badge2{

    left:40px;
    top:220px;

}

.badge3{

    left:70px;
    bottom:140px;

}

.quote{

    position:absolute;

    bottom:-20px;

    background:#fff;

    padding:22px 35px;

    border-radius:20px;

    font-size:24px;
    font-weight:700;

    box-shadow:0 12px 30px rgba(0,0,0,.08);

}
.quote-img{
    position:absolute;
    bottom:-140px;
    left:50%;
    transform:translateX(-50%);
}

.quote-img img{
    width:280px;
    border-radius:20px;
    box-shadow:0 12px 30px rgba(0,0,0,.12);
}
/* ==========================
        TABLET
========================== */

@media (max-width:992px){

.pricing{

    flex-direction:column;
    padding:40px 30px;
    gap:50px;

}

.pricing-left,
.pricing-right{

    width:100%;
    flex:none;

}

.pricing-left h2{

    font-size:38px;
    text-align:center;

}

.price-tag{

    display:table;
    margin:0 auto;

}

.price-box{

    justify-content:center;

}

.feature-list li{

    font-size:18px;

}

.enroll-btn{

    font-size:22px;

}

.circle-bg{

    width:380px;
    height:380px;
    border-width:25px;

}

.pricing-right img{

    width:300px;

}

.badge{

    width:70px;
    height:70px;
    font-size:28px;

}

.badge1{

    top:20px;
    left:40px;

}

.badge2{

    top:150px;
    left:0;

}

.badge3{

    bottom:70px;
    left:20px;

}

.quote{

    position:static;
    margin-top:30px;
    text-align:center;
    font-size:20px;

}

.quote-img{

    position:static;
    transform:none;
    margin-top:20px;
    text-align:center;

}

.quote-img img{

    width:220px;

}

}

/* ==========================
        MOBILE
========================== */

@media (max-width:768px){

.pricing{

    width:92%;
    padding:25px 20px;
    border-radius:22px;
    gap:24px;

}

.pricing-left{

    text-align:center;

}

.pricing-left h2{

    font-size:30px;
    line-height:1.3;

}

.price-tag{

    font-size:13px;
    padding:8px 18px;

}

.price-box{

    flex-direction:column;
    text-align:center;
    gap:15px;
    padding:20px;

}

.rupee{

    width:70px;
    height:70px;
    font-size:36px;

}

.price-box h3{

    font-size:48px;

}

.price-box p{

    font-size:18px;

}

.feature-list li{

    font-size:16px;
    padding:16px;

}

.enroll-btn{

    font-size:20px;
    padding:18px;
    margin-top:24px;

}

.pricing-right{
    min-height:280px;
}

.circle-bg{

    width:260px;
    height:260px;
    border-width:18px;

}

.pricing-right img{

    width:220px;

}

.badge{

    width:50px;
    height:50px;
    font-size:20px;

}

.badge1{

    top:10px;
    left:20px;

}

.badge2{

    top:110px;
    left:-5px;

}

.badge3{

    bottom:40px;
    left:10px;

}

.quote{

    font-size:17px;
    padding:15px 20px;
    border-radius:15px;
    margin-top:20px;

}

.quote-img{

    margin:0;

}

.quote-img img{

    width:190px;

}

}
/*================ CTA SECTION ================*/

.cta-section{

width:90%;
max-width:1300px;

margin:100px auto;

display:flex;
align-items:center;
justify-content:space-between;

gap:60px;

padding:60px;

background:#FFFDF7;

border-radius:35px;

box-shadow:0 15px 40px rgba(0,0,0,.08);

overflow:hidden;

}

.cta-content{

flex:1;

}

.cta-tag{

display:inline-block;

background:#7C5CFF;

color:#fff;

padding:10px 22px;

border-radius:30px;

font-size:15px;

font-weight:600;

margin-bottom:25px;

}

.cta-content h2{

font-size:58px;

line-height:1.2;

color:#18213B;

margin-bottom:35px;

}

.cta-content h2 span{

color:#2F9A55;

}

.cta-item{

display:flex;

align-items:flex-start;

gap:18px;

margin-bottom:30px;

}

.icon{

width:65px;

height:65px;

background:#FFF2A8;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

font-size:30px;

flex-shrink:0;

}

.cta-item p{

font-size:22px;

line-height:1.7;

color:#444;

}

.cta-btn{

display:inline-block;

margin-top:20px;

padding:18px 40px;

background:#2E9B50;

color:#fff;

text-decoration:none;

font-size:22px;

font-weight:700;

border-radius:50px;

transition:.3s;

}

.cta-btn:hover{

background:#21803F;

transform:translateY(-5px);

}

.cta-image{

flex:1;

text-align:center;

}

.cta-image img{

width:100%;
max-width:600px;

}

/*============= Responsive =============*/

@media(max-width:991px){

.cta-section{

flex-direction:column-reverse;

padding:35px;

text-align:center;

}

.cta-content h2{

font-size:42px;

}

.cta-item{

justify-content:center;

text-align:left;

}

}

@media(max-width:600px){

.cta-content h2{

font-size:32px;

}

.cta-item{

flex-direction:column;

align-items:center;

text-align:center;

}

.cta-item p{

font-size:18px;

}

.cta-btn{

width:100%;

text-align:center;

font-size:18px;

}

}

/* CTA spacing and responsive alignment refinements */
.cta-section{
    width:min(90%, 1200px);
    margin:80px auto;
    display:grid;
    grid-template-columns:minmax(0, 1.2fr) minmax(320px, .8fr);
    align-items:center;
    gap:clamp(28px, 4vw, 50px);
    padding:clamp(38px, 5vw, 58px);
}

.cta-content,
.cta-image{
    min-width:0;
}

.cta-content h2{
    font-size:clamp(2.7rem, 4.5vw, 3.4rem);
    margin-bottom:28px;
}

.cta-item{
    margin-bottom:22px;
}

.cta-item p{
    font-size:clamp(1.05rem, 1.7vw, 1.25rem);
    line-height:1.6;
}

.cta-btn{
    margin-top:10px;
}

.cta-image{
    display:flex;
    align-items:center;
    justify-content:center;
}

.cta-image img{
    display:block;
    width:135%;
    max-width:500px;
    height:auto;
}

@media(max-width:991px){
    .cta-section{
        display:flex;
        width:92%;
        margin:65px auto;
        padding:40px;
        gap:25px;
    }

    .cta-image img{
        max-width:380px;
    }

    .cta-content{
        width:100%;
        max-width:720px;
        margin:0 auto;
    }
}

@media(max-width:600px){
    .cta-section{
        margin:45px auto;
        padding:20px 0;
        gap:18px;
        background:transparent;
        border-radius:0;
        box-shadow:none;
    }

    .cta-image img{
        max-width:280px;
    }

    .cta-tag{
        margin-bottom:18px;
    }

    .cta-content h2{
        margin-bottom:24px;
        font-size:clamp(1.9rem, 9vw, 2.3rem);
    }

    .cta-item{
        gap:12px;
        margin-bottom:18px;
    }

    .cta-btn{
        margin-top:6px;
        padding:16px 18px;
        font-size:1rem;
    }
}

/* =========================
        FOOTER
========================= */


.refund-box{

padding:30px 22px;

}

.heading h1{

font-size:30px;

}

.policy h2{

font-size:20px;

}

.policy p,
.policy li{

font-size:15px;

line-height:28px;

}

.footer{

background:#FFF8E9;

margin-top:100px;

}

.footer-container{

display:grid;

grid-template-columns:2fr 1fr 1fr 1fr;

gap:40px;

}

.footer-logo{

width:180px;

margin-bottom:20px;

}

.footer-text{

color:#666;

font-size:17px;

line-height:1.7;

margin-bottom:25px;

}

.social-links{

display:flex;

gap:15px;

}

.social-links a{

width:45px;

height:45px;

background:#ECECEC;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

font-size:20px;

color:#222;

transition:.3s;

text-decoration:none;

}

.social-links a:hover{

background:#22A45D;

color:#fff;

}

.footer-col h3{

margin-bottom:20px;

font-size:24px;

}

.footer-col ul{

list-style:none;

}

.footer-col ul li{

margin-bottom:12px;

}

.footer-col ul li a{

text-decoration:none;

color:#444;

transition:.3s;

}

.footer-col ul li a:hover{

color:#22A45D;

padding-left:5px;

}

.footer-col p{

margin-bottom:15px;

color:#555;

}

.footer-image img{

width:220px;

}

.footer hr{

margin:40px 0 20px;

border:none;

height:1px;

background:#ddd;

}

.copyright{

text-align:center;

color:#666;

font-size:16px;

}

@media(max-width:991px){

.footer-container{

grid-template-columns:1fr;

text-align:center;

}

.social-links{

justify-content:center;

}

.footer-image img{

margin:auto;

}

.managed-by{
display:block;
margin-top:8px;
}

.copyright-separator{
display:none;
}

}
html{
    scroll-behavior: smooth;
}
.footer-link{
    color:grey;
    text-decoration:none;
    font-weight:700;
    position:relative;
    transition:0.3s;
}

.footer-link::after{
    content:"";
    position:absolute;
    left:0;
    bottom:-3px;
    width:0;
    height:2px;
    transition:0.3s;
}

.footer-link:hover{
    color:black;
}

.footer-link:hover::after{
    width:100%;
}


html{
    scroll-behavior:smooth;
}
/*================ FAQ =================*/

.faq-section{

width:90%;
max-width:1200px;

margin:100px auto;

background:white;

padding:70px 40px;

border-radius:30px;

box-shadow:0 15px 40px rgba(0,0,0,.08);

overflow:hidden;
}

.faq-heading{

text-align:center;

margin-bottom:50px;

}

.faq-badge{

display:inline-block;

padding:12px 25px;

background:yellow;

color:white;

border-radius:40px;

font-weight:600;

margin-bottom:20px;

}

.faq-heading h2{

font-size:60px;

line-height:1.2;

margin-bottom:20px;

}

.faq-heading span{

color:#2E9F4D;

}

.faq-heading p{

font-size:22px;

color:#666;

}

.faq-item{

background:white;

border-radius:22px;

margin-bottom:25px;

box-shadow:0 8px 20px rgba(0,0,0,.08);

transition:.3s;

}

.faq-item:hover{

transform:translateY(-5px);

}

.faq-question{

width:100%;

padding:25px;

background:none;

border:none;

display:flex;

align-items:center;

cursor:pointer;

}

.faq-left{

display:flex;

align-items:center;

gap:25px;

text-align:left;

}

.faq-left img{

width:90px;

height:90px;

border-radius:18px;

object-fit:cover;

}

.faq-left h3{

font-size:28px;

margin-bottom:8px;

color:#1E2B50;

overflow-wrap:anywhere;

}

.faq-left p{

font-size:18px;

color:#666;

line-height:1.6;

}

.faq-question span{

width:60px;

height:60px;

background:#EDF5FF;

border-radius:50%;

display:flex;

justify-content:center;

align-items:center;

font-size:24px;

font-weight:bold;

color:#3F7BEA;

}

@media(max-width:768px){

.faq-question{

flex-direction:column;

align-items:flex-start;

}

.faq-left{

flex-direction:column;

text-align:center;

}

.faq-left img{

width:70px;

height:70px;

}

.faq-heading h2{

font-size:38px;

}

.faq-left h3{

font-size:22px;

}

.faq-left p{

font-size:16px;

}

}
/* Functional FAQ accordion */
.faq-container{width:100%;max-width:1000px;margin:0 auto}
.faq-item{overflow:hidden;border:1px solid #edf0f5}
.faq-item:hover{transform:none}
.faq-item.active{border-color:rgba(46,159,77,.35);box-shadow:0 12px 30px rgba(46,159,77,.12)}
.faq-question{display:grid;grid-template-columns:60px minmax(0,1fr) 42px;gap:20px;text-align:left;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.faq-question::after{content:"+";align-self:center;justify-self:center;display:grid;place-items:center;width:38px;height:38px;color:#2E9F4D;background:#eef9f1;border-radius:50%;font-size:26px;line-height:1;transition:.3s ease}
.faq-item.active .faq-question::after{content:"−";color:#fff;background:#2E9F4D;transform:rotate(180deg)}
.faq-question:focus-visible{outline:3px solid rgba(46,159,77,.35);outline-offset:-3px}
.faq-left,.faq-left>div{min-width:0}
.faq-left>div{width:100%}
.faq-left p{max-height:0;margin:0;overflow:hidden;opacity:0;overflow-wrap:anywhere;transform:translateY(-6px);transition:max-height .4s ease,opacity .3s ease,transform .3s ease,margin .3s ease}
.faq-item.active .faq-left p{margin-top:8px;opacity:1;transform:translateY(0)}

@media(max-width:768px){
    .faq-section{
        width:92%;
        margin:60px auto;
        padding:30px 0;
        background:transparent;
        border-radius:0;
        box-shadow:none;
        overflow:visible;
    }
    .faq-heading{margin-bottom:32px}
    .faq-heading h2{font-size:clamp(2rem,9vw,2.5rem)}
    .faq-heading p{font-size:1rem;line-height:1.6}
    .faq-question{grid-template-columns:48px minmax(0,1fr) 34px;gap:12px;align-items:center;padding:18px 14px}
    .faq-question>span{width:46px;height:46px;font-size:18px}
    .faq-left{flex-direction:row;gap:12px;text-align:left}
    .faq-left img{flex:0 0 auto;width:56px;height:56px}
    .faq-left h3{margin:0;font-size:clamp(1rem,4.5vw,1.25rem);line-height:1.35}
    .faq-left p{font-size:.95rem;line-height:1.55}
    .faq-question::after{width:32px;height:32px;font-size:22px}
}

@media(max-width:480px){
    .faq-section{
        padding:20px 0;
        background:transparent;
        border-radius:0;
        box-shadow:none;
        overflow:visible;
    }

    .faq-question{
        grid-template-columns:42px minmax(0,1fr) 30px;
        gap:9px;
        align-items:start;
        padding:15px 10px;
    }
    .faq-question>span{width:40px;height:40px;font-size:16px}
    .faq-left img{display:none}
    .faq-item{margin-bottom:14px;border-radius:16px}

    .faq-question::after{
        margin-top:4px;
    }

    .faq-left h3{
        padding-top:4px;
    }

    .faq-item.active .faq-left p{
        margin-top:9px;
        padding-right:4px;
        font-size:.9rem;
        line-height:1.55;
        text-align:left;
    }
}

@media(prefers-reduced-motion:reduce){.faq-left p,.faq-question::after{transition:none}}

/* Flatten large desktop-style section wrappers on mobile */
@media(max-width:768px){
    .why-box,
    .pricing{
        width:92%;
        padding-left:0;
        padding-right:0;
        background:transparent;
        border:0;
        border-radius:0;
        box-shadow:none;
        overflow:visible;
    }

    .why-box{
        width:92%;
    }

    .pricing{
        margin:55px auto;
    }

    .why-money,
    .imagine-section,
    .journey{
        padding-left:12px;
        padding-right:12px;
    }
}

.enroll-float,
.whatsapp-float{
    position:fixed;
    right:25px;

    width:60px;
    height:60px;

    border-radius:50%;

    display:flex;
    justify-content:center;
    align-items:center;

    font-size:34px;

    text-decoration:none;

    box-shadow:0 8px 20px rgba(0,0,0,.25);

    z-index:9999;

    transition:.3s ease;
}

.whatsapp-float{
    bottom:25px;
    background:#25D366;
    color:#fff;
}

.enroll-float{
    bottom:100px;
    background:#FFD63A;
    color:#000;
    font-size:25px;
}

.enroll-float span{
    position:absolute;
    right:72px;
    padding:8px 13px;
    border-radius:8px;
    background:#FFD63A;
    color:#000;
    font-size:15px;
    font-weight:600;
    line-height:1;
    white-space:nowrap;
    box-shadow:0 6px 16px rgba(0,0,0,.18);
    opacity:0;
    visibility:hidden;
    transform:translateX(8px);
    transition:.25s ease;
}

.enroll-float:hover{
    transform:scale(1.1);
    background:#F4C400;
}

.enroll-float:hover span,
.enroll-float:focus-visible span{
    opacity:1;
    visibility:visible;
    transform:translateX(0);
}

.whatsapp-float:hover{
    transform:scale(1.1);
    background:#1EBE5D;
}

@media (max-width:768px){
    .enroll-float,
    .whatsapp-float{
        width:55px;
        height:55px;
        right:18px;
    }

    .whatsapp-float{
        font-size:30px;
        bottom:18px;
    }

    .enroll-float{
        bottom:88px;
        font-size:23px;
    }

    .enroll-float span{
        right:65px;
        font-size:15px;
    }
}

/* Hero-only responsive layout */
.program-announcement{
    width:min(76%, 1040px);
    margin:22px auto 0;
    padding:16px 26px 17px;
    display:block;
    color:#2f210c;
    background:
        radial-gradient(circle at 96% 103%, transparent 0 55px, rgba(255,255,255,.28) 56px 65px, transparent 66px),
        radial-gradient(circle at 92% -26%, rgba(255,255,255,.78) 0 48px, transparent 49px),
        linear-gradient(120deg, #ffeca0 0%, #ffdf62 52%, #ffc62c 100%);
    border:1px solid rgba(205,151,23,.34);
    border-radius:20px;
    box-shadow:0 12px 28px rgba(139,91,0,.09);
    text-decoration:none;
    overflow:hidden;
    position:relative;
    transition:transform .25s ease, box-shadow .25s ease;
}

.program-announcement:hover,
.program-announcement:focus-visible{
    transform:translateY(-3px);
    box-shadow:0 16px 34px rgba(139,91,0,.16);
}

.program-announcement:focus-visible{
    outline:3px solid #6b2494;
    outline-offset:3px;
}

.announcement-heading,
.announcement-details,
.announcement-title,
.announcement-status,
.announcement-batches,
.announcement-batch,
.announcement-cta,
.announcement-actions{
    display:flex;
}

.announcement-heading,
.announcement-details{
    align-items:center;
    justify-content:space-between;
    gap:22px;
    position:relative;
    z-index:1;
}

.announcement-actions{
    align-items:center;
    gap:14px;
    flex:0 0 auto;
}

.announcement-message{
    display:block;
    position:relative;
    z-index:1;
    padding-top:12px;
    text-align:center;
    color:#5c3b16;
    font-size:14px;
    font-weight:700;
    line-height:1.4;
    text-decoration:none;
    width:100%;
}

.announcement-message span,
.announcement-cta{
    text-decoration:none;
}

.announcement-heading{
    padding-bottom:13px;
    border-bottom:1px dashed rgba(112,73,4,.2);
}

.announcement-title{
    align-items:center;
    gap:10px;
    font-family:'Baloo 2',cursive;
    font-size:18px;
    line-height:1.2;
    font-weight:800;
}

.announcement-title i{
    color:#772aa0;
}

.announcement-status{
    flex:0 0 auto;
    align-items:center;
    gap:8px;
    padding:7px 13px;
    color:#218343;
    background:rgba(255,255,255,.82);
    border-radius:999px;
    font-size:12px;
    line-height:1;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.04em;
}

.status-dot{
    width:9px;
    height:9px;
    background:#2abc5b;
    border-radius:50%;
    box-shadow:0 0 0 4px rgba(42,188,91,.13);
}

.announcement-details{
    padding-top:13px;
}

.announcement-batches{
    align-items:center;
    gap:20px;
}

.announcement-batch{
    flex-direction:column;
    gap:1px;
    white-space:nowrap;
}

.announcement-batch strong{
    font-size:14px;
    line-height:1.25;
}

.announcement-batch span{
    color:#77551c;
    font-size:13px;
    line-height:1.25;
}

.announcement-separator{
    width:1px;
    height:38px;
    background:rgba(112,73,4,.25);
}

.announcement-mascot{
    width:66px;
    height:auto;
    margin:-22px auto -16px;
    object-fit:contain;
    filter:drop-shadow(0 7px 7px rgba(107,67,0,.14));
    animation:announcementMascotFloat 3.2s ease-in-out infinite;
    transform-origin:center;
}

.program-announcement:hover .announcement-mascot,
.program-announcement:focus-visible .announcement-mascot{
    animation-duration:1.6s;
}

@keyframes announcementMascotFloat{
    0%,100%{
        transform:translateY(0) rotate(4deg);
        filter:drop-shadow(0 7px 7px rgba(107,67,0,.14));
    }
    50%{
        transform:translateY(-9px) rotate(-3deg);
        filter:drop-shadow(0 13px 9px rgba(107,67,0,.1));
    }
}

.announcement-cta{
    flex:0 0 auto;
    align-items:center;
    gap:10px;
    padding:12px 18px;
    color:#fff;
    background:#6b2494;
    border-radius:15px;
    box-shadow:0 8px 18px rgba(80,21,116,.2);
    font-size:13px;
    font-weight:700;
    transition:background-color .25s ease;
}

.program-announcement:hover .announcement-cta,
.program-announcement:focus-visible .announcement-cta{
    background:#50156f;
}

.hero{
    width:min(92%, 1400px);
    min-height:auto;
    margin:-10px auto 0;
    padding:clamp(10px, 1.3vw, 20px) 0 40px;
    display:flex;
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
    gap:clamp(30px, 5vw, 80px);
    position:relative;
}

.hero .left{
    flex:1 1 54%;
    width:auto;
    min-width:0;
    align-self:flex-start;
    padding-top:clamp(12px, 2vw, 28px);
}

.hero .left h1{
    font-size:clamp(44px, 5vw, 68px);
    line-height:1.06;
    overflow-wrap:break-word;
}

.hero .left p{
    max-width:620px;
    font-size:clamp(16px, 1.35vw, 18px);
    line-height:1.7;
}

.hero .right{
    flex:1 1 46%;
    width:auto;
    min-width:0;
    margin:0;
}

.hero .right img{
    display:block;
    width:100%;
    max-width:600px;
    height:auto;
    margin:0 auto;
}

.hero .rocket{
    top:calc(12% + 24px);
    right:3%;
    left:auto;
    width:clamp(52px, 6vw, 80px);
}

.hero .coin{
    top:58%;
    right:1%;
    width:clamp(38px, 4vw, 55px);
}

.hero .robot{
    bottom:8%;
    left:2%;
    width:clamp(52px, 6vw, 80px);
}

/* Tablets */
@media (min-width:769px) and (max-width:1100px){
    .program-announcement{
        width:88%;
    }

    .hero{
        min-height:auto;
        margin-top:-8px;
        padding:16px 0 40px;
        gap:30px;
    }

    .hero .left{
        flex-basis:56%;
        text-align:left;
        padding-top:14px;
    }

    .hero .left h1{
        font-size:clamp(40px, 5.2vw, 54px);
    }

    .hero .left p{
        margin:0 0 30px;
    }

    .hero .right{
        flex-basis:44%;
    }

    .hero .coin,
    .hero .robot{
        display:none;
    }
}

/* Phones */
@media (max-width:768px){
    .program-announcement{
        width:calc(100% - 24px);
        margin-top:14px;
        padding:16px 13px 13px;
        border-radius:17px;
    }

    .announcement-heading{
        align-items:flex-start;
        flex-direction:column;
        gap:10px;
    }

    .announcement-title{
        font-size:17px;
        padding-right:48px;
    }

    .announcement-details{
        align-items:stretch;
        flex-direction:column;
        gap:12px;
    }

    .announcement-actions{
        flex-direction:column;
        width:100%;
    }

    .announcement-message{
        padding-top:10px;
        font-size:13px;
    }

    .announcement-mascot{
        width:58px;
        margin:0;
        position:absolute;
        top:-72px;
        right:2px;
    }

    .announcement-batches{
        display:grid;
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap:9px;
        width:100%;
    }

    .announcement-batch{
        min-width:0;
        padding:10px 8px;
        align-items:center;
        justify-content:center;
        text-align:center;
        white-space:normal;
        background:rgba(255,255,255,.48);
        border:1px solid rgba(255,255,255,.42);
        border-radius:12px;
    }

    .announcement-batch strong{
        font-size:14px;
    }

    .announcement-batch span{
        font-size:11px;
    }

    .announcement-separator{
        display:none;
    }

    .announcement-cta{
        justify-content:center;
        width:100%;
        padding:12px 16px;
        border-radius:12px;
    }

    .hero{
        width:calc(100% - 32px);
        min-height:auto;
        margin:0 auto;
        padding:20px 0 55px;
        flex-direction:column-reverse;
        justify-content:center;
        gap:20px;
        text-align:center;
    }

    .hero .left,
    .hero .right{
        flex:none;
        width:100%;
        margin:0;
    }

    .hero .left{
        align-self:auto;
        padding-top:0;
    }

    .hero .left h1{
        font-size:clamp(34px, 10vw, 46px);
        line-height:1.12;
        margin-bottom:16px;
    }

    .hero .left p{
        max-width:560px;
        margin:0 auto 26px;
        font-size:clamp(15px, 4vw, 17px);
        line-height:1.65;
    }

    .hero .btn{
        padding:14px 30px;
        font-size:15px;
    }

    .hero .right img{
        width:min(78%, 340px);
        max-width:100%;
        margin:0 auto;
    }

    .hero .rocket{
        top:12px;
        right:4%;
        left:auto;
        width:48px;
    }

    .hero .coin,
    .hero .robot{
        display:none;
    }
}

/* Small phones */
@media (max-width:420px){
    .program-announcement{
        width:calc(100% - 24px);
        padding:13px;
    }

    .announcement-title{
        font-size:15px;
        line-height:1.25;
        padding-right:42px;
    }

    .announcement-status{
        padding:6px 10px;
        font-size:10px;
    }

    .announcement-mascot{
        width:48px;
        top:-64px;
        right:0;
    }

    .announcement-batches{
        gap:7px;
    }

    .announcement-batch span{
        font-size:10px;
    }

    .announcement-separator{
        height:34px;
    }

    .hero{
        width:calc(100% - 24px);
        margin-top:0;
        padding-top:12px;
    }

    .hero .left h1{
        font-size:clamp(30px, 9.5vw, 38px);
    }

    .hero .right img{
        width:min(82%, 290px);
    }

    .hero .rocket{
        width:40px;
    }
}

@media(prefers-reduced-motion:reduce){
    .announcement-mascot{
        animation:none;
    }

    .gap-floating-robot{
        animation:none;
    }

    .gap-floating-rocket{
        animation:none;
    }
}
