:root{
    --teal:#0f7382;
    --teal-dark:#074856;
    --teal-light:#dff2f1;

    --gold:#ddb15c;
    --gold-dark:#c9993f;

    --sand:#f5ebdb;
    --ivory:#faf7f2;

    --white:#ffffff;

    --text:#1f2f33;
    --text-soft:#5b6b70;

    --border:rgba(0,0,0,0.08);
    --shadow:0 12px 35px rgba(0,0,0,0.10);
}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:'Poppins',sans-serif;
    color:var(--text);
    background:var(--ivory);
    line-height:1.7;
}

img{
    max-width:100%;
    display:block;
}

a{
    text-decoration:none;
}

/* ===================================
TOPBAR
=================================== */

.topbar{
    background: #0f5868;
    color:#fff;
    font-size:13px;
}

.topbar-inner{
    max-width:1180px;
    margin:auto;
    padding:8px 24px;

    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
}

.topbar-left,
.topbar-right{
    display:flex;
    gap:20px;
    flex-wrap:wrap;
}

.topbar-left span{
    opacity:.85;
}

.topbar-right a{
    color:#fff;
    opacity:.75;
}

.topbar-right a:hover{
    opacity:1;
}

/* ===================================
NAVIGATION
=================================== */

.main-nav{
    background:var(--teal-dark);
    position:sticky;
    top:0;
    z-index:999;
}

.nav-inner{
    max-width:1180px;
    margin:auto;

    display:flex;
    justify-content:space-between;
    align-items:center;
}

.brand-logo{
    height:72px;
    width:auto;
}

.nav-actions{
    display:flex;
    align-items:center;
    gap:18px;
}

.nav-badge{
    border:1px solid rgba(221,177,92,.45);
    color:var(--gold);
    padding:10px 20px;
    border-radius:3px;

    font-size:12px;
    font-weight:600;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.whatsapp-icon-btn{
    width:54px;
    height:54px;

    border:none;
    border-radius:6px;

    background:#25d366;
    color:var(--teal-dark);

    cursor:pointer;

    font-size:26px;

    transition:.25s;
}

.whatsapp-icon-btn:hover{
    transform:translateY(-2px);
}

/* ===================================
EARLY BIRD
=================================== */

.early-bird-strip{
    background:var(--gold);
    color:var(--teal-dark);
    text-align:center;
    font-weight:600;
}

.early-bird-strip span{
    text-decoration:line-through;
    opacity:.8;
}

/* ===================================
HERO
=================================== */

.hero-section{
    background:linear-gradient(
        135deg,
        #e8f7f6 0%,
        #d9f0ee 45%,
        #f5ebdb 100%
    );

    padding:45px 24px;
}

.hero-inner{
    max-width:1180px;
    margin:auto;

    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:50px;
    align-items:center;
}

.hero-kicker{
    color:var(--gold-dark);

    text-transform:uppercase;
    letter-spacing:.18em;
    font-size:12px;
    font-weight:700;

    margin-bottom:30px;
}

.hero-content h1{
    font-family:'Playfair Display',serif;

    font-size:clamp(48px,6vw,78px);
    line-height:1.05;

    color:var(--teal-dark);

    margin-bottom:50px;
}

.hero-content h1 em{
    color:var(--gold-dark);
    font-style:italic;
}

.hero-sub{
    max-width:620px;

    font-size:17px;
    color:var(--text-soft);

    margin-bottom:50px;
}

.hero-pills{
    display:flex;
    flex-wrap:wrap;
    gap:10px;

    margin-bottom:50px;
}

.hero-pills span{
    background:#fff;

    border:1px solid rgba(0,0,0,.08);

    padding:10px 16px;
    border-radius:6px;

    font-size:13px;
    font-weight:600;

    box-shadow:0 3px 12px rgba(0,0,0,.04);
}

.hero-pills i{
    color:var(--gold-dark);
    margin-right:8px;
}

/* ===================================
BUTTONS
=================================== */

.hero-actions{
    display:flex;
    gap:14px;
    flex-wrap:wrap;
}

.btn-primary{
    background:var(--gold);

    color:var(--teal-dark);

    border:none;

    padding:15px 30px;

    border-radius:4px;

    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;

    cursor:pointer;
}

.btn-outline{
    background:transparent;

    border:2px solid var(--teal-dark);

    color:var(--teal-dark);

    padding:13px 28px;

    border-radius:4px;

    font-weight:700;
    text-transform:uppercase;
    display: none;
}

/* ===================================
HERO RIGHT IMAGE + COURSE CARD
=================================== */

.hero-right{
    display:flex;
    flex-direction:column;
    gap:18px;
}

.hero-image-wrap{
    position:relative;
    border-radius:22px;
    overflow:hidden;
    box-shadow:var(--shadow);
    border:6px solid rgba(255,255,255,.65);
}

.hero-ribbon{
    position:absolute;
    top:57px;
    left:-97px;

    z-index:10;

    width:420px;

    display:flex;
    justify-content:center;
    align-items:center;

    background:linear-gradient(
        90deg,
        #d8ab57,
        #e4bc6c,
        #d8ab57
    );

    color:var(--teal-dark);

    font-size:12px;
    font-weight:700;

    letter-spacing:.16em;
    text-transform:uppercase;

    padding:13px 0;

    transform:rotate(-35deg);

    box-shadow:0 8px 25px rgba(0,0,0,.25);

    white-space:nowrap;
}

.hero-image{
    width:100%;
    height:330px;
    object-fit:cover;
}

.hero-card{
    background:var(--teal-dark);
    color:#fff;
    border-top:4px solid var(--gold);
    padding:28px;
    border-radius:18px;
    box-shadow:var(--shadow);
}

.hero-card-title{
    color:var(--gold);
    font-size:12px;
    font-weight:700;
    letter-spacing:.18em;
    text-transform:uppercase;
    margin-bottom:16px;
}

.hero-fact{
    display:flex;
    justify-content:space-between;
    gap:18px;
    padding:10px 0;
    border-bottom:1px solid rgba(255,255,255,.13);
}

.hero-fact:last-child{
    border-bottom:none;
}

.hero-fact span{
    color:rgba(255,255,255,.58);
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.08em;
}

.hero-fact strong{
    color:#fff;
    font-size:14px;
    text-align:right;
}

.hero-fact.highlight strong{
    color:var(--gold);
}

/* ===================================
SECTION COMMON
=================================== */

.section{
    padding:78px 24px;
}

.section-inner{
    max-width:1180px;
    margin:auto;
}

.section-ivory{
    background:var(--ivory);
}

.section-sand{
    background:var(--sand);
    display: none;
}

.eyebrow{
    color:var(--gold-dark);
    text-align:center;
    font-size:11px;
    font-weight:700;
    letter-spacing:.22em;
    text-transform:uppercase;
    margin-bottom:12px;
}

.section-title{
    font-family:'Playfair Display',serif;
    font-size:clamp(34px,4vw,48px);
    font-weight:400;
    line-height:1.2;
    color:var(--teal-dark);
    text-align:center;
    margin-bottom:44px;
}

/* ===================================
WHY CARDS
=================================== */

.why-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
}

.why-card{
    background:#fff;
    border:1px solid rgba(0,0,0,.08);
    padding:32px 28px;
    border-radius:16px;
    position:relative;
    overflow:hidden;
    box-shadow:0 8px 24px rgba(0,0,0,.04);
}

.why-num{
    font-family:'Playfair Display',serif;
    font-size:48px;
    color:rgba(7,72,86,.12);
    line-height:1;
    margin-bottom:14px;
}

.why-icon{
    width:46px;
    height:46px;
    border-radius:50%;
    background:rgba(15,115,130,.10);
    color:var(--teal);
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:14px;
}

.why-card h3{
    color:var(--teal-dark);
    font-size:16px;
    margin-bottom:8px;
}

.why-card p{
    color:var(--text-soft);
    font-size:14px;
}

/* ===================================
VIDEO SECTION
=================================== */

.video-wrap{
    max-width:900px;
    margin:auto;
    position:relative;
    padding-bottom:50.6%;
    height:0;
    border-radius:22px;
    overflow:hidden;
    box-shadow:var(--shadow);
    border:8px solid rgba(255,255,255,.65);
}

.video-wrap iframe{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    border:0;
}

/* ===================================
CERTIFICATION
=================================== */

.certification-banner{
    background:var(--teal-dark);
    color:#fff;
    padding:78px 24px;
    text-align:center;
}

.cert-inner{
    max-width:840px;
    margin:auto;
}

.cert-line{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:16px;
    margin-bottom:28px;
}

.cert-line span{
    width:90px;
    height:1px;
    background:linear-gradient(to right,transparent,var(--gold),transparent);
}

.cert-line i{
    color:var(--gold);
    font-size:28px;
}

.certification-banner .eyebrow{
    color:var(--gold);
}

.certification-banner h2{
    font-family:'Playfair Display',serif;
    font-size:clamp(30px,4vw,44px);
    font-weight:400;
    line-height:1.3;
    color:var(--sand);
    margin-bottom:24px;
}

.certification-banner p{
    color:rgba(255,255,255,.76);
    font-size:15px;
    margin-bottom:16px;
}

.certification-banner strong{
    color:#fff;
}

/* ===================================
FEE SECTION
=================================== */

.fee-section{
    background:var(--sand);
}

.fee-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
    max-width:860px;
    margin:0 auto 28px;
}

.fee-card{
    background:#fff;
    border-radius:18px;
    padding:38px 28px;
    text-align:center;
    border:1px solid rgba(0,0,0,.08);
    box-shadow:0 8px 24px rgba(0,0,0,.04);
}

.fee-card.featured{
    background:var(--teal-dark);
    border:2px solid var(--gold);
}

.fee-card p{
    font-size:11px;
    font-weight:700;
    letter-spacing:.18em;
    text-transform:uppercase;
    color:var(--text-soft);
    margin-bottom:10px;
}

.fee-card.featured p{
    color:var(--gold);
}

.fee-card h3{
    font-family:'Playfair Display',serif;
    font-size:54px;
    font-weight:400;
    color:var(--teal-dark);
    line-height:1;
}

.fee-card.featured h3{
    color:var(--sand);
}

.fee-card span{
    display:block;
    margin-top:10px;
    color:var(--text-soft);
    font-size:13px;
}

.fee-card.featured span{
    color:rgba(255,255,255,.68);
}

.strike{
    text-decoration:line-through;
    opacity:.72;
}

.wide-register-btn{
    width:100%;
    max-width:860px;
    margin:auto;
    display:block;

    background:var(--gold);
    color:var(--teal-dark);

    border:none;
    border-radius:6px;

    padding:17px 28px;

    font-size:15px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;

    cursor:pointer;
}

/* ===================================
ACCORDION
=================================== */

.accordion-section{
    background:var(--ivory);
}

.accordion-item{
    background:#fff;
    border:1px solid rgba(0,0,0,.08);
    border-radius:14px;
    overflow:hidden;
    margin-bottom:14px;
    box-shadow:0 6px 18px rgba(0,0,0,.035);
}

.accordion-title{
    width:100%;
    background:#fff;
    border:none;
    padding:22px 26px;

    display:flex;
    justify-content:space-between;
    align-items:center;

    color:var(--teal-dark);

    font-size:17px;
    font-weight:700;
    cursor:pointer;
}

.accordion-title i{
    color:var(--gold-dark);
    transition:.25s;
}

.accordion-item.active .accordion-title i{
    transform:rotate(180deg);
}

.accordion-content{
    display:none;
    padding:0 26px 26px;
    color:var(--text-soft);
}

.accordion-item.active .accordion-content{
    display:block;
}

.clean-list{
    padding-left:20px;
}

.clean-list li{
    margin-bottom:8px;
}

.clean-list ul{
    padding-left:22px;
    margin-top:8px;
}

.mini-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
    margin-top:18px;
}

.mini-grid div{
    background:var(--teal-light);
    padding:18px;
    border-radius:12px;
}

.mini-grid strong{
    display:block;
    color:var(--teal-dark);
    margin-bottom:6px;
}

.mini-grid span{
    display:block;
    font-size:13px;
}

/* ===================================
FOOTER
=================================== */

.site-footer{
    background:#062f38;
    color:#fff;
    padding:34px 24px;
}

.footer-inner{
    max-width:1180px;
    margin:auto;

    display:flex;
    justify-content:space-between;
    gap:24px;
    flex-wrap:wrap;
}

.footer-inner h3{
    font-family:'Playfair Display',serif;
    font-size:24px;
    color:var(--sand);
}

.footer-inner p{
    color:rgba(255,255,255,.65);
    font-size:13px;
}

/* ===================================
MODAL
=================================== */

.modal{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.65);
    z-index:2000;

    display:none;
    justify-content:center;
    align-items:center;

    padding:20px;
}

.modal.show{
    display:flex;
}

.modal-box{
    width:100%;
    max-width:520px;
    background:#fff;
    border-radius:20px;
    padding:34px;
    position:relative;
    box-shadow:0 25px 80px rgba(0,0,0,.28);
}

.modal-close{
    position:absolute;
    top:14px;
    right:18px;

    border:none;
    background:transparent;

    font-size:32px;
    line-height:1;

    cursor:pointer;
    color:var(--teal-dark);
}

.modal-box h2{
    font-family:'Playfair Display',serif;
    font-size:34px;
    color:var(--teal-dark);
    margin-bottom:6px;
}

.modal-sub{
    color:var(--text-soft);
    margin-bottom:20px;
    font-size:14px;
}

.modal-box label{
    display:block;
    font-size:13px;
    font-weight:600;
    color:var(--teal-dark);
    margin-bottom:12px;
}

.modal-box input{
    width:100%;
    margin-top:6px;
    padding:13px 14px;
    border:1px solid rgba(0,0,0,.16);
    border-radius:8px;
    font-family:'Poppins',sans-serif;
}

.payment-options{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    margin-top:16px;
}

/* ===================================
CHECKOUT SLIDING MODAL
- Keeps details and UPI screen inside same popup
- Allows smooth left/right transition
- Enables modal scrolling on smaller screens
=================================== */

.checkout-modal{
    max-height:90vh;
    overflow:hidden;
    padding:0;
}

.checkout-slider{
    display:flex;
    width:200%;
    transition:transform .45s ease;
}

.checkout-slider.show-upi-panel{
    transform:translateX(-50%);
}

.checkout-panel{
    width:50%;
    padding:34px;
    max-height:90vh;
    overflow-y:auto;
}

.upi-box-panel{
    display:block;
    margin-top:0;
    padding-top:0;
    border-top:none;
}

.checkout-back-btn{
    border:none;
    background:transparent;
    color:var(--teal-dark);
    font-weight:700;
    cursor:pointer;
    margin-bottom:18px;
    font-family:'Poppins',sans-serif;
}

.checkout-back-btn i{
    margin-right:6px;
}

.upi-box-panel img{
    max-width:400px;
    width:100%;
    margin:12px auto 18px;
}

/* ===================================
PAYMENT METHOD SELECTION
=================================== */

.payment-method-box{
    margin-top:18px;
    margin-bottom:18px;
}

.payment-method-title{
    color:var(--teal-dark);
    font-size:14px;
    font-weight:700;
    margin-bottom:10px;
}

.payment-method-option{
    display:flex !important;
    align-items:flex-start;
    gap:12px;

    border:1px solid rgba(0,0,0,.12);
    border-radius:10px;

    padding:14px;
    margin-bottom:10px;

    cursor:pointer;

    transition:.2s ease;
}

.payment-method-option:hover{
    border-color:var(--gold-dark);
    background:rgba(221,177,92,.08);
}

.payment-method-option input{
    width:auto !important;
    margin-top:5px !important;
}

.payment-method-option strong{
    display:block;
    color:var(--teal-dark);
    font-size:14px;
}

.payment-method-option small{
    display:block;
    color:var(--text-soft);
    font-size:12px;
    line-height:1.4;
}

.full-width-btn{
    width:100%;
    text-align:center;
    justify-content:center;
}

.btn-outline.dark{
    border-color:var(--teal-dark);
    color:var(--teal-dark);
}

.upi-box{
    display:none;
    margin-top:24px;
    padding-top:22px;
    border-top:1px solid rgba(0,0,0,.1);
}

.upi-box.show{
    display:block;
}

.upi-box h3{
    color:var(--teal-dark);
    margin-bottom:14px;
}

.upi-box img{
    width:4000px;
    border:1px solid rgba(0,0,0,.08);
    border-radius:30px;
}

.upi-note{
    font-size:13px;
    color:var(--text-soft);
    margin-bottom:14px;
}

.curriculum-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:16px;
}

.module{
    background:#fff;
    border:1px solid rgba(1,70,89,.15);
    border-left:4px solid var(--teal);
    padding:24px;
}

.module.full{
    grid-column:1 / -1;
    border-left-color:var(--gold);
}

.module-top{
    display:flex;
    justify-content:space-between;
    gap:14px;
    margin-bottom:16px;
}

.module-top h3{
    font-family:'Playfair Display',serif;
    color:var(--teal-dark);
    font-size:20px;
}

.module-top span{
    background:var(--gold);
    color:var(--teal-dark);
    padding:4px 10px;
    font-size:11px;
    font-weight:700;
    white-space:nowrap;
}

.module ul{
    list-style:none;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px 18px;
}

.module li{
    position:relative;
    padding-left:16px;
    font-size:13px;
    color:var(--text-soft);
}

.module li::before{
    content:"›";
    position:absolute;
    left:0;
    color:var(--teal);
    font-weight:800;
}

.faculty-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
}

.faculty-card{
    background:var(--teal-dark);
    border:1px solid rgba(255,255,255,.12);
    text-align:center;
    padding:28px 18px;
}

.faculty-avatar{
    width:100px;
    height:100px;
    border-radius:50%;
    background:rgba(255,255,255,.1);
    color:var(--gold);
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0 auto 14px;
    border:2px solid rgba(221,177,92,.35);
}

.faculty-avatar img{
    border-radius:50%;
}

.faculty-card h3{
    font-family:'Playfair Display',serif;
    color:var(--sand);
    font-size:20px;
}

.faculty-card span{
    display:block;
    color:var(--gold);
    font-size:11px;
    font-weight:700;
    letter-spacing:.12em;
    text-transform:uppercase;
    margin:6px 0 10px;
}

.faculty-card p{
    color:rgba(255,255,255,.68);
    font-size:13px;
}

.faculty-card small{
    display:inline-block;
    margin-top:12px;
    color:var(--gold);
    background:rgba(221,177,92,.12);
    border:1px solid rgba(221,177,92,.25);
    padding:4px 10px;
    border-radius:20px;
}

.location-map{
    height: 170px;
    overflow: hidden;
    width: 553px;
}

.location-map iframe{
    width:100%;
    height:100%;
    border:none;
}

.locations-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
}

.location-card{
    background:#fff;
    border:1px solid rgba(1,70,89,.15);
    overflow:hidden;
}

.location-img{
    height:170px;
    background:linear-gradient(135deg,var(--teal-light),var(--sand));
    display:flex;
    align-items:center;
    justify-content:center;
}

.location-img span{
    background:var(--gold);
    color:var(--teal-dark);
    padding:6px 16px;
    font-size:11px;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase;
}

.location-body{
    padding:22px;
}

.location-body h3{
    font-family:'Playfair Display',serif;
    color:var(--teal-dark);
    font-size:22px;
    margin-bottom:12px;
}

.location-body p{
    color:var(--text-soft);
    font-size:14px;
    margin-bottom:8px;
}

.location-body i{
    color:var(--gold-dark);
    margin-right:8px;
}

.site-footer{
    background:#010f14;
    color:#fff;
    padding:25px 32px 26px;
}

.footer-inner{
    max-width:1180px;
    margin:auto;
}

.footer-top{
    display:grid;
    grid-template-columns:2fr 1fr 1.3fr 1fr;
    gap:44px;
    border-bottom:1px solid rgba(255,255,255,.08);
}

.footer-brand h3{
    font-family:'Playfair Display',serif;
    color:var(--sand);
    font-size:28px;
    font-weight:400;
}

.footer-tag{
    color:var(--gold);
    font-size:11px;
    letter-spacing:.16em;
    text-transform:uppercase;
    margin:6px 0 22px;
}

.footer-brand p:not(.footer-tag),
.footer-col p,
.footer-col a{
    display:block;
    color:rgba(255,255,255,.48);
    font-size:14px;
    margin-bottom:12px;
}

.footer-brand .footer-tag{
    color:var(--gold);
    font-size:11px;
    letter-spacing:.16em;
    text-transform:uppercase;
    margin:6px 0 22px;
    line-height:1.8;
}

.footer-col h4{
    color:var(--gold);
    font-size:12px;
    letter-spacing:.2em;
    text-transform:uppercase;
    margin-bottom:18px;
}

.footer-col a:hover,
.footer-bottom a:hover{
    color:var(--gold);
}

.footer-bottom{
    display:flex;
    justify-content:space-between;
    gap:20px;
    flex-wrap:wrap;
}

.footer-bottom p,
.footer-bottom a{
    color:rgba(255,255,255,.28);
    font-size:12px;
}

.footer-bottom a{
    margin-left:18px;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:700;
}

.join-box{
    background: #fff;
    border-top: 1px solid rgba(1, 70, 89, .08);
    border-left: 3px solid var(--teal);
    border-right: 1px solid rgba(1, 70, 89, .08);
    border-bottom: 1px solid rgba(1, 70, 89, .08);
    padding:36px 34px;
    box-shadow:0 10px 28px rgba(0,0,0,.05);
}

.join-box h3{
    font-family:'Playfair Display',serif;
    color:var(--teal-dark);
    font-size:28px;
    margin-bottom:24px;
    display:flex;
    align-items:center;
    gap:12px;
}

.join-box h3 i{
    color:var(--gold-dark);
    font-size:20px;
}

.join-list{
    list-style:none;
    display:flex;
    flex-direction:column;
    gap:14px;
}

.join-list li{
    position:relative;
    padding-left:28px;
    color:var(--text);
    font-size:17px;
    line-height:1.5;
}

.join-list li::before{
    content:"✓";
    position:absolute;
    left:0;
    top:0;
    color:var(--teal-dark);
    font-weight:800;
}

.join-sub-list{
    margin-left:28px;
    margin-top:-6px;
}

.join-sub-list div{
    position:relative;
    padding-left:26px;
    margin-bottom:2px;
    color:var(--text-soft);
    font-size:15px;
}

.join-sub-list div::before{
    content:"\f05a";
    font-family:"Font Awesome 6 Free";
    font-weight:900;

    position:absolute;
    left:0;
    top:2px;

    color:var(--gold-dark);
}

.assessment-block{
    background:#fff;
    padding:20px 0;
}

.assessment-eyebrow{
    text-align:center;
    font-size:11px;
    font-weight:800;
    letter-spacing:.28em;
    text-transform:uppercase;
    margin-bottom:10px;
}

.assessment-block h3{
    font-family:'Playfair Display',serif;
    color:var(--teal-dark);
    font-size:clamp(34px,4vw,52px);
    text-align:center;
    font-weight:400;
    margin-bottom:48px;
}

.assessment-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
}

.assessment-card{
    background:#fff;

    border-top:1px solid rgba(1,70,89,.08);
    border-left:3px solid var(--teal);

    border-right:1px solid rgba(1,70,89,.08);
    border-bottom:1px solid rgba(1,70,89,.08);

    padding:32px 28px;

    box-shadow:0 10px 24px rgba(0,0,0,.05);

    transition:.25s ease;
}

.assessment-card:hover{
    transform:translateY(-4px);

    box-shadow:0 18px 36px rgba(0,0,0,.08);
}

.assessment-icon{
    width:56px;
    height:56px;
    border-radius:50%;
    background:rgba(1,70,89,.08);
    color:var(--teal);
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:20px;
    font-size:22px;
}

.assessment-card h4{
    color:var(--teal-dark);
    font-size:18px;
    margin-bottom:12px;
}

.assessment-card p{
    color:var(--text-soft);
    font-size:15px;
    line-height:1.65;
}

.assessment-note{
    margin-top:26px;

    background:#fff;

    border-top:1px solid rgba(1,70,89,.08);
    border-left:3px solid var(--teal);

    border-right:1px solid rgba(1,70,89,.08);
    border-bottom:1px solid rgba(1,70,89,.08);

    padding:22px 24px;

    display:flex;
    align-items:center;
    gap:14px;

    color:var(--teal-dark);

    box-shadow:0 10px 24px rgba(0,0,0,.05);
}

.assessment-note i{
    color:var(--teal);
}

@media(max-width:900px){
    .assessment-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:900px){
    .curriculum-grid,
    .locations-grid{
        grid-template-columns:1fr;
    }

    .faculty-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .footer-top{
        grid-template-columns:1fr 1fr;
    }
}

@media(max-width:560px){
    .module ul{
        grid-template-columns:1fr;
    }

    .faculty-grid{
        grid-template-columns:1fr;
    }

    .footer-top{
        grid-template-columns:1fr;
    }
}

/* ===================================
FIX: UPI PANEL VISIBILITY
- Overrides older .upi-box display:none rule
- Keeps UPI QR visible inside sliding checkout panel
=================================== */

.checkout-panel .upi-box-panel{
    display:block !important;
    visibility:visible;
    opacity:1;
}

/* ===================================
RESPONSIVE
=================================== */

@media(max-width:960px){
    .hero-inner{
        grid-template-columns:1fr;
    }

    .hero-content{
        order:1;
    }

    .hero-right{
        order:2;
    }

    .why-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .mini-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:720px){
    .topbar-inner{
        flex-direction:column;
        align-items:flex-start;
    }

    .brand-logo{
        height:58px;
    }

    .nav-actions{
        gap:10px;
    }

    .nav-badge{
        font-size:10px;
        padding:8px 12px;
    }

    .whatsapp-icon-btn{
        width:46px;
        height:46px;
        font-size:23px;
    }

    .hero-section{
        padding:56px 18px;
    }

    .section,
    .certification-banner{
        padding:58px 18px;
    }

    .hero-content h1{
        font-size:44px;
    }

    .hero-image{
        height:260px;
    }

    .why-grid,
    .fee-grid{
        grid-template-columns:1fr;
    }

    .hero-fact{
        flex-direction:column;
        gap:2px;
    }

    .hero-fact strong{
        text-align:left;
    }

    .payment-options{
        flex-direction:column;
    }

    .btn-primary,
    .btn-outline{
        width:100%;
        text-align:center;
    }
}

@media(max-width:600px){
    .checkout-panel{
        padding:28px 22px;
    }

    .checkout-modal{
        max-height:92vh;
    }

    .checkout-panel{
        max-height:92vh;
    }
}

@media(max-width:480px){
    .nav-inner{
        padding:12px 16px;
    }

    .brand-logo{
        height:50px;
    }

    .nav-badge{
        display:none;
    }

    .hero-pills span{
        width:100%;
    }

    .modal-box{
        padding:28px 22px;
    }
}