/* COMPLETE RDM PORTAL THEME | PRIMARY #442998 | RESPONSIVE */
/* =========================================================
   RDM KHANPUR - ONLINE STUDENT PORTAL
   Theme: #442998 Royal Purple + Gold
========================================================= */


/* =========================================================
   ROOT
========================================================= */

:root{
    --navy:#442998;
    --navy-dark:#2D176B;
    --navy-light:#6546BD;

    --gold:#e9ae16;
    --gold-light:#ffd45c;
    --gold-soft:#fff8e4;

    --white:#ffffff;

    --background:#FAF8FF;
    --background-2:#EEE8FC;

    --text:#442998;
    --muted:#746865;

    --border:#E3DBF5;

    --shadow:0 10px 30px rgba(68,41,152,.09);
}


/* =========================================================
   RESET
========================================================= */

*{
    box-sizing:border-box;
}

html,
body{
    margin:0;
    padding:0;

    width:100%;
    min-height:100%;
}

html{
    scroll-behavior:smooth;
}

body{
    min-height:100vh;

    background:var(--background);

    color:#202735;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    overflow-x:hidden;

    padding-bottom:68px;
}

body.drawer-open{
    overflow:hidden;
}

a{
    text-decoration:none !important;
}

img{
    display:block;
    max-width:100%;
}

button,
input,
select,
textarea{
    font-family:inherit;
}


/* =========================================================
   DESKTOP TOP BAR
========================================================= */

.portal-topbar{
    width:100%;
    height:40px;

    padding:0 5%;

    display:flex;
    align-items:center;
    justify-content:space-between;

    background:var(--navy);

    border-top:3px solid var(--gold);

    color:#ffffff;
}

.portal-top-left,
.portal-top-right{
    display:flex;
    align-items:center;

    gap:22px;
}

.portal-topbar a,
.portal-topbar span{
    display:flex;
    align-items:center;

    gap:7px;

    color:#ffffff !important;

    font-size:11px;
    line-height:1;

    font-weight:700;
}

.portal-topbar i{
    color:var(--gold);

    font-size:12px;
}


/* =========================================================
   DESKTOP LOGO
========================================================= */

.portal-brand{
    width:100%;
    height:185px;

    padding:12px 30px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:#ffffff;

    border-bottom:1px solid #EEE8FA;
}

.portal-brand a{
    width:100%;
    height:100%;

    display:flex;
    align-items:center;
    justify-content:center;
}

.portal-logo{
    width:auto;
    height:auto;

    max-width:820px;
    max-height:158px;

    object-fit:contain;
    object-position:center;
}


/* =========================================================
   DESKTOP NAVIGATION
========================================================= */

.portal-nav{
    position:relative;

    z-index:9000;

    width:100%;

    background:var(--navy);

    border-bottom:3px solid var(--gold);

    box-shadow:
        0 5px 18px rgba(68,41,152,.14);
}

.portal-nav-inner{
    width:100%;
    max-width:1450px;

    margin:0 auto;
    padding:0 20px;

    display:flex;
    align-items:center;
    justify-content:center;
}

.portal-menu{
    margin:0;
    padding:0;

    list-style:none;

    display:flex;
    align-items:center;
    justify-content:center;
}

.portal-menu > li{
    position:relative;
}

.portal-menu > li > a{
    min-height:58px;

    padding:0 18px;

    display:flex;
    align-items:center;
    justify-content:center;

    gap:8px;

    color:#ffffff !important;

    font-size:11px;
    font-weight:800;

    white-space:nowrap;

    transition:
        background .2s ease;
}

.portal-menu > li > a i:first-child{
    color:var(--gold);
}

.portal-menu > li:hover > a{
    background:
        rgba(255,255,255,.08);
}


/* =========================================================
   DESKTOP DROPDOWN
========================================================= */

.portal-submenu{
    position:absolute;

    top:100%;
    left:0;

    z-index:99999;

    width:245px;

    margin:0;
    padding:7px;

    list-style:none;

    background:#ffffff;

    border:1px solid var(--border);
    border-top:3px solid var(--gold);

    border-radius:
        0 0 11px 11px;

    box-shadow:
        0 18px 40px
        rgba(68,41,152,.18);

    opacity:0;
    visibility:hidden;

    transform:
        translateY(8px);

    transition:.2s ease;
}

.portal-menu > li:hover > .portal-submenu{
    opacity:1;
    visibility:visible;

    transform:
        translateY(0);
}

.portal-submenu a{
    min-height:43px;

    padding:0 12px;

    display:flex;
    align-items:center;

    gap:10px;

    color:var(--navy) !important;

    border-bottom:
        1px solid #EEE8FA;

    border-radius:6px;

    font-size:10.5px;
    font-weight:700;

    transition:.2s ease;
}

.portal-submenu li:last-child a{
    border-bottom:0;
}

.portal-submenu a i{
    width:18px;

    color:#b98100;

    text-align:center;
}

.portal-submenu a:hover{
    padding-left:16px;

    background:#F1EBFF;
}


/* =========================================================
   MOBILE ELEMENTS - DESKTOP HIDDEN
========================================================= */

.mobile-header,
.mobile-overlay,
.mobile-drawer{
    display:none;
}


/* =========================================================
   DASHBOARD
========================================================= */

.portal-dashboard{
    width:100%;

    min-height:
        calc(100vh - 351px);

    padding:
        46px 28px
        95px;

    display:flex;
    align-items:center;

    background:
        radial-gradient(
            circle at 12% 20%,
            rgba(68,41,152,.035),
            transparent 26%
        ),
        radial-gradient(
            circle at 90% 85%,
            rgba(233,174,22,.055),
            transparent 22%
        ),
        var(--background);
}

.portal-container{
    width:100%;
    max-width:1360px;

    margin:0 auto;
}


/* =========================================================
   SERVICE GRID
========================================================= */

.service-grid{
    width:100%;

    display:grid;

    grid-template-columns:
        repeat(3,minmax(0,1fr));

    gap:22px;
}


/* =========================================================
   SERVICE CARD
========================================================= */

.service-card{
    position:relative;

    min-width:0;
    min-height:145px;

    padding:22px;

    overflow:hidden;

    display:flex;
    align-items:center;

    gap:18px;

    background:#ffffff;

    border:
        1px solid #E3DBF5;

    border-radius:17px;

    box-shadow:var(--shadow);

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;
}


/* NAVY LEFT BORDER */

.service-card::before{
    content:"";

    position:absolute;

    top:0;
    left:0;
    bottom:0;

    width:6px;

    background:var(--navy);
}


/* GOLD CIRCLE */

.service-card::after{
    content:"";

    position:absolute;

    top:-52px;
    right:-52px;

    width:110px;
    height:110px;

    border-radius:50%;

    background:
        rgba(233,174,22,.15);

    transition:.3s ease;
}

.service-card:hover{
    transform:
        translateY(-5px);

    border-color:#C9B9EB;

    box-shadow:
        0 18px 38px
        rgba(68,41,152,.14);
}

.service-card:hover::after{
    width:135px;
    height:135px;

    background:
        rgba(233,174,22,.23);
}


/* =========================================================
   SERVICE ICON
========================================================= */

.service-icon{
    position:relative;

    z-index:2;

    width:64px;
    height:64px;

    flex:0 0 64px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:
        linear-gradient(
            145deg,
            var(--navy),
            var(--navy-light)
        );

    border:
        4px solid #EEE8FC;

    border-radius:17px;

    color:var(--gold);

    font-size:24px;

    box-shadow:
        0 8px 20px
        rgba(68,41,152,.18);
}


/* =========================================================
   SERVICE CONTENT
========================================================= */

.service-content{
    position:relative;

    z-index:2;

    flex:1;

    min-width:0;
}

.service-label{
    display:block;

    margin:
        0 0 7px;

    color:#946500;

    font-size:8px;
    line-height:1;

    font-weight:900;

    letter-spacing:.8px;

    text-transform:uppercase;
}

.service-title{
    margin:0;

    color:var(--navy);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:20px;
    line-height:1.3;

    font-weight:700;
}


/* =========================================================
   SERVICE ARROW
========================================================= */

.service-arrow{
    position:relative;

    z-index:3;

    width:38px;
    height:38px;

    flex:0 0 38px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:var(--gold-soft);

    border:
        1px solid #ecd68f;

    border-radius:50%;

    color:var(--navy);

    font-size:11px;

    transition:.25s ease;
}

.service-card:hover .service-arrow{
    background:var(--navy);

    border-color:var(--navy);

    color:var(--gold);

    transform:
        translateX(3px);
}


/* =========================================================
   FIXED BOTTOM NAVIGATION
========================================================= */

.portal-bottom-nav{
    position:fixed;

    left:0;
    right:0;
    bottom:0;

    z-index:99990;

    width:100%;
    height:68px;

    padding:0 5%;

    display:grid;

    grid-template-columns:
        repeat(5,1fr);

    align-items:center;

    background:#ffffff;

    border-top:
        3px solid var(--gold);

    box-shadow:
        0 -7px 25px
        rgba(68,41,152,.14);
}

.portal-bottom-nav a{
    position:relative;

    height:65px;

    min-width:0;

    display:flex;
    align-items:center;
    justify-content:center;

    gap:8px;

    color:#697287 !important;

    font-size:10.5px;
    font-weight:800;

    transition:.2s ease;
}

.portal-bottom-nav a i{
    color:var(--navy);

    font-size:16px;
}

.portal-bottom-nav a:hover,
.portal-bottom-nav a.active{
    color:var(--navy) !important;

    background:#F1EBFF;
}

.portal-bottom-nav a.active::before{
    content:"";

    position:absolute;

    top:0;
    left:50%;

    width:44px;
    height:3px;

    transform:
        translateX(-50%);

    background:var(--gold);

    border-radius:
        0 0 5px 5px;
}


/* =========================================================
   CENTER ADMISSION
========================================================= */

.portal-bottom-nav .bottom-admission{
    position:relative;

    top:-13px;

    height:76px;

    flex-direction:column;

    gap:2px;

    background:
        transparent !important;
}

.portal-bottom-nav .bottom-admission::before{
    display:none !important;
}

.portal-bottom-nav .bottom-admission i{
    width:55px;
    height:55px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:var(--navy);

    border:
        4px solid #ffffff;

    border-radius:50%;

    color:var(--gold);

    font-size:19px;

    box-shadow:
        0 7px 22px
        rgba(68,41,152,.30);
}

.portal-bottom-nav .bottom-admission span{
    color:var(--navy);

    font-size:8.5px;
    font-weight:900;
}


/* =========================================================
   TABLET
========================================================= */

@media(min-width:768px) and (max-width:1100px){

    .portal-brand{
        height:160px;
    }

    .portal-logo{
        max-width:650px;
        max-height:135px;
    }

    .portal-menu > li > a{
        min-height:54px;

        padding:0 10px;

        font-size:9.5px;
    }

    .portal-dashboard{
        min-height:auto;

        padding:
            35px 18px
            95px;
    }

    .service-grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));

        gap:17px;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:767px){

    html,
    body{
        width:100%;
        min-height:100%;
    }

    body{
        padding-top:92px;

        padding-bottom:
            calc(
                74px +
                env(safe-area-inset-bottom)
            );

        background:#FAF8FF;
    }


    /* HIDE DESKTOP HEADER */

    .portal-topbar,
    .portal-brand,
    .portal-nav{
        display:none !important;
    }


    /* =====================================================
       MOBILE FIXED HEADER
    ===================================================== */

    .mobile-header{
        position:fixed;

        top:0;
        left:0;
        right:0;

        z-index:100000;

        width:100%;
        height:92px;

        padding:7px 10px;

        display:grid;

        grid-template-columns:
            52px minmax(0,1fr);

        align-items:center;

        gap:8px;

        background:#ffffff;

        border-top:
            4px solid var(--gold);

        border-bottom:
            2px solid var(--navy);

        box-shadow:
            0 5px 18px
            rgba(68,41,152,.14);
    }


    /* MENU BUTTON */

    .mobile-menu-button{
        width:52px;
        height:52px;

        margin:0;
        padding:0;

        display:flex;

        flex-direction:column;

        align-items:center;
        justify-content:center;

        gap:5px;

        background:var(--navy);

        border:0;

        border-radius:13px;

        box-shadow:
            0 7px 17px
            rgba(68,41,152,.22);

        cursor:pointer;
    }

    .mobile-menu-button span{
        display:block;

        width:25px;
        height:2px;

        background:#ffffff;

        border-radius:10px;
    }


    /* =====================================================
       FULL WIDTH LOGO AREA
    ===================================================== */

    .mobile-logo-area{
        width:100%;
        min-width:0;

        height:78px;

        margin:0;
        padding:0;

        display:flex;

        align-items:center;
        justify-content:center;

        overflow:hidden;
    }

    .mobile-logo{
        display:block;

        width:100%;
        height:100%;

        max-width:none;
        max-height:none;

        margin:0;

        object-fit:contain;

        object-position:center center;
    }


    /* =====================================================
       OVERLAY
    ===================================================== */

    .mobile-overlay{
        position:fixed;

        inset:0;

        z-index:100001;

        display:block;

        background:
            rgba(3,12,38,.58);

        backdrop-filter:
            blur(2px);

        opacity:0;

        visibility:hidden;

        transition:.25s ease;
    }

    .mobile-overlay.show{
        opacity:1;

        visibility:visible;
    }


    /* =====================================================
       DRAWER
    ===================================================== */

    .mobile-drawer{
        position:fixed;

        top:0;
        left:0;
        bottom:0;

        z-index:100002;

        width:min(84%,340px);

        display:flex;

        flex-direction:column;

        background:#ffffff;

        box-shadow:
            15px 0 45px
            rgba(68,41,152,.25);

        transform:
            translateX(-105%);

        transition:
            transform .30s ease;
    }

    .mobile-drawer.open{
        transform:
            translateX(0);
    }


    /* DRAWER HEADER */

    .drawer-header{
        position:relative;

        padding:
            22px 16px
            17px;

        background:
            linear-gradient(
                135deg,
                var(--navy-dark),
                var(--navy-light)
            );

        border-bottom:
            4px solid var(--gold);
    }

    .drawer-logo-box{
        padding:7px;

        background:#ffffff;

        border-radius:9px;
    }

    .drawer-logo{
        width:100%;

        max-height:70px;

        object-fit:contain;

        object-position:center;
    }

    .drawer-title{
        margin-top:12px;

        color:#ffffff;

        font-size:12px;
        font-weight:900;
    }

    .drawer-subtitle{
        margin-top:4px;

        color:#d9e1f4;

        font-size:9px;
    }

    .drawer-close{
        position:absolute;

        top:8px;
        right:8px;

        width:31px;
        height:31px;

        padding:0;

        display:flex;

        align-items:center;
        justify-content:center;

        background:var(--gold);

        border:0;

        border-radius:50%;

        color:var(--navy);

        cursor:pointer;
    }


    /* =====================================================
       DRAWER MENU
    ===================================================== */

    .drawer-menu{
        flex:1;

        overflow-y:auto;

        padding:
            10px 11px
            25px;
    }

    .drawer-heading{
        margin:
            15px 12px
            5px;

        color:#9e7000;

        font-size:8px;

        font-weight:900;

        letter-spacing:.8px;

        text-transform:uppercase;
    }

    .drawer-menu a{
        min-height:48px;

        padding:0 13px;

        display:flex;

        align-items:center;

        gap:12px;

        color:#4d5668 !important;

        border-bottom:
            1px solid #EEE8FA;

        border-radius:7px;

        font-size:11px;

        font-weight:700;
    }

    .drawer-menu a i{
        width:24px;

        color:var(--navy);

        text-align:center;

        font-size:14px;
    }

    .drawer-menu a:hover{
        background:#F1EBFF;

        color:var(--navy) !important;
    }


    /* =====================================================
       MOBILE DASHBOARD
    ===================================================== */

    .portal-dashboard{
        width:100%;

        min-height:
            calc(
                100vh -
                166px
            );

        padding:
            16px 12px
            26px;

        display:block;

        background:
            linear-gradient(
                180deg,
                #F6F2FF 0%,
                #FCFAFF 100%
            );
    }

    .portal-container{
        width:100%;

        max-width:none;
    }


    /* SINGLE CARD */

    .service-grid{
        width:100%;

        display:grid;

        grid-template-columns:1fr;

        gap:12px;
    }


    /* =====================================================
       MOBILE CARD
    ===================================================== */

    .service-card{
        width:100%;

        min-height:102px;

        padding:14px 15px;

        display:flex;

        flex-direction:row;

        align-items:center;

        justify-content:flex-start;

        gap:14px;

        background:#ffffff;

        border:
            1px solid #E3DBF5;

        border-radius:15px;

        box-shadow:
            0 7px 20px
            rgba(68,41,152,.08);
    }

    .service-card::before{
        width:5px;
    }

    .service-card::after{
        top:-39px;
        right:-39px;

        width:78px;
        height:78px;

        background:
            rgba(233,174,22,.13);
    }


    /* ICON */

    .service-icon{
        width:55px;
        height:55px;

        flex:0 0 55px;

        border-width:3px;

        border-radius:14px;

        font-size:20px;
    }


    /* CONTENT */

    .service-content{
        flex:1;

        min-width:0;

        display:flex;

        flex-direction:column;

        justify-content:center;
    }

    .service-label{
        margin:
            0 0 6px;

        color:#946500;

        font-size:7px;

        line-height:1;

        font-weight:900;

        letter-spacing:.6px;
    }

    .service-title{
        margin:0;

        padding-right:42px;

        color:var(--navy);

        font-size:17px;

        line-height:1.25;

        white-space:normal;

        overflow-wrap:break-word;
    }


    /* ARROW */

    .service-arrow{
        position:absolute;

        top:50%;
        right:14px;

        bottom:auto;

        width:32px;
        height:32px;

        flex:0 0 32px;

        font-size:9px;

        transform:
            translateY(-50%);
    }

    .service-card:hover .service-arrow{
        transform:
            translate(
                3px,
                -50%
            );
    }


    /* =====================================================
       MOBILE FIXED BOTTOM NAV
    ===================================================== */

    .portal-bottom-nav{
        height:
            calc(
                72px +
                env(safe-area-inset-bottom)
            );

        padding:
            3px 2px
            env(safe-area-inset-bottom);

        grid-template-columns:
            repeat(5,1fr);

        border-top:
            2px solid var(--gold);
    }

    .portal-bottom-nav a{
        height:64px;

        min-width:0;

        padding:0 2px;

        flex-direction:column;

        gap:4px;

        color:#5e677a !important;

        font-size:7.5px;

        text-align:center;
    }

    .portal-bottom-nav a i{
        font-size:16px;
    }

    .portal-bottom-nav a span{
        display:block;

        max-width:100%;

        overflow:hidden;

        white-space:nowrap;

        text-overflow:ellipsis;
    }

    .portal-bottom-nav .bottom-admission{
        top:-17px;

        height:75px;

        gap:2px;
    }

    .portal-bottom-nav .bottom-admission i{
        width:56px;
        height:56px;

        font-size:19px;
    }

    .portal-bottom-nav .bottom-admission span{
        overflow:visible;

        color:var(--navy);

        font-size:8px;
    }
}


/* =========================================================
   MEDIUM MOBILE
========================================================= */

@media(min-width:500px) and (max-width:767px){

    body{
        padding-top:100px;
    }

    .mobile-header{
        height:100px;

        padding:7px 14px;

        grid-template-columns:
            56px minmax(0,1fr);

        gap:10px;
    }

    .mobile-menu-button{
        width:56px;
        height:56px;
    }

    .mobile-menu-button span{
        width:27px;
    }

    .mobile-logo-area{
        height:84px;
    }

    .portal-dashboard{
        padding:
            18px 16px
            28px;
    }

    .service-card{
        min-height:108px;
    }
}


/* =========================================================
   600 - 767 MOBILE / SMALL TABLET
========================================================= */

@media(min-width:600px) and (max-width:767px){

    body{
        padding-top:105px;
    }

    .mobile-header{
        height:105px;

        padding:7px 18px;

        grid-template-columns:
            58px minmax(0,1fr);

        gap:12px;
    }

    .mobile-menu-button{
        width:58px;
        height:58px;
    }

    .mobile-menu-button span{
        width:28px;
    }

    .mobile-logo-area{
        height:88px;
    }
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media(max-width:380px){

    body{
        padding-top:84px;
    }

    .mobile-header{
        height:84px;

        padding:6px 7px;

        grid-template-columns:
            46px minmax(0,1fr);

        gap:5px;
    }

    .mobile-menu-button{
        width:46px;
        height:46px;
    }

    .mobile-menu-button span{
        width:22px;
    }

    .mobile-logo-area{
        width:100%;
        height:70px;
    }

    .mobile-logo{
        width:100%;
        height:100%;

        max-width:none;
        max-height:none;

        object-fit:contain;

        object-position:center;
    }

    .portal-dashboard{
        padding:
            13px 9px
            24px;
    }

    .service-grid{
        gap:9px;
    }

    .service-card{
        min-height:94px;

        padding:12px;

        gap:11px;
    }

    .service-icon{
        width:49px;
        height:49px;

        flex:
            0 0 49px;

        font-size:18px;
    }

    .service-title{
        padding-right:35px;

        font-size:15px;
    }

    .service-arrow{
        right:11px;

        width:29px;
        height:29px;
    }
}


/* =========================================================
   LARGE DESKTOP
========================================================= */

@media(min-width:1500px){

    .portal-container{
        max-width:1420px;
    }

    .service-card{
        min-height:150px;
    }
}


/* =========================================================
   ADMISSION GUIDE PAGE - FULL UPDATED CSS
   RDM PORTAL
   Theme: #442998 Royal Purple + Gold
   Bigger & Readable Fonts
========================================================= */

.admission-guide-page{
    width:100%;
    min-height:calc(100vh - 350px);
    padding:32px 22px 110px;

    background:
        radial-gradient(
            circle at 8% 10%,
            rgba(68,41,152,.045),
            transparent 24%
        ),
        radial-gradient(
            circle at 92% 88%,
            rgba(233,174,22,.07),
            transparent 22%
        ),
        #FAF8FF;
}

.admission-guide-container{
    width:100%;
    max-width:1320px;
    margin:0 auto;
}


/* =========================================================
   PAGE HEADING
========================================================= */

.admission-guide-heading{
    position:relative;

    margin:0 0 18px;
    padding:22px 24px;

    display:flex;
    align-items:center;

    gap:18px;

    overflow:hidden;

    background:#ffffff;

    border:1px solid #E3DBF5;
    border-left:5px solid #442998;

    border-radius:16px;

    box-shadow:
        0 8px 25px
        rgba(68,41,152,.07);
}

.admission-guide-heading::after{
    content:"";

    position:absolute;

    top:-70px;
    right:-55px;

    width:160px;
    height:160px;

    background:rgba(233,174,22,.11);

    border-radius:50%;
}

.admission-guide-heading-icon{
    position:relative;
    z-index:2;

    width:64px;
    height:64px;

    flex:0 0 64px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:
        linear-gradient(
            145deg,
            #442998,
            #6546BD
        );

    border-radius:15px;

    color:#e9ae16;

    font-size:26px;

    box-shadow:
        0 7px 18px
        rgba(68,41,152,.20);
}

.admission-guide-heading-content{
    position:relative;
    z-index:2;

    min-width:0;
}

.admission-guide-small-title{
    display:block;

    margin-bottom:6px;

    color:#946500;

    font-size:12px;
    line-height:1.2;

    font-weight:900;

    letter-spacing:.8px;

    text-transform:uppercase;
}

.admission-guide-heading h1{
    margin:0 0 6px;

    color:#442998;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:30px;
    line-height:1.2;

    font-weight:700;
}

.admission-guide-heading p{
    margin:0;

    max-width:900px;

    color:#625B75;

    font-size:15px;
    line-height:1.65;

    font-weight:500;
}


/* =========================================================
   IMPORTANT WARNING
========================================================= */

.admission-main-warning{
    margin:0 0 14px;
    padding:15px 18px;

    display:flex;
    align-items:center;

    gap:14px;

    background:#fff9e8;

    border:1px solid #efd98e;
    border-left:5px solid #e9ae16;

    border-radius:12px;
}

.admission-warning-icon{
    width:46px;
    height:46px;

    flex:0 0 46px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:#e9ae16;

    border-radius:10px;

    color:#442998;

    font-size:19px;
}

.admission-warning-content{
    min-width:0;
}

.admission-warning-content span{
    display:block;

    margin-bottom:4px;

    color:#442998;

    font-size:14px;
    line-height:1.3;

    font-weight:900;

    letter-spacing:.3px;
}

.admission-warning-content p{
    margin:0;

    color:#624d17;

    font-size:14px;
    line-height:1.65;

    font-weight:600;
}


/* =========================================================
   QUICK APPLY BAR
========================================================= */

.admission-quick-action{
    margin:0 0 21px;

    padding:14px 15px;

    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:15px;

    background:
        linear-gradient(
            135deg,
            #442998,
            #5C3AAF
        );

    border:1px solid #442998;
    border-left:5px solid #e9ae16;

    border-radius:12px;

    box-shadow:
        0 8px 20px
        rgba(68,41,152,.14);
}

.admission-quick-left{
    min-width:0;

    display:flex;
    align-items:center;

    gap:12px;
}

.admission-quick-icon{
    width:44px;
    height:44px;

    flex:0 0 44px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:#e9ae16;

    border-radius:10px;

    color:#442998;

    font-size:17px;
}

.admission-quick-text{
    min-width:0;

    display:flex;
    flex-direction:column;

    gap:3px;
}

.admission-quick-text span{
    color:#dce4f5;

    font-size:13px;
    line-height:1.4;

    font-weight:600;
}

.admission-quick-text strong{
    color:#ffffff;

    font-size:16px;
    line-height:1.4;

    font-weight:800;
}

.admission-quick-button{
    min-height:44px;

    padding:0 18px;

    flex:0 0 auto;

    display:flex;
    align-items:center;
    justify-content:center;

    gap:8px;

    background:#e9ae16;

    border:2px solid #e9ae16;

    border-radius:9px;

    color:#442998 !important;

    font-size:13px;
    line-height:1;

    font-weight:900;

    text-transform:uppercase;

    box-shadow:
        0 5px 13px
        rgba(0,0,0,.15);

    transition:.25s ease;
}

.admission-quick-button:hover{
    background:#ffffff;
    transform:translateY(-2px);
}


/* =========================================================
   GUIDE GRID
========================================================= */

.admission-guide-grid{
    width:100%;

    display:grid;

    grid-template-columns:
        repeat(3,minmax(0,1fr));

    gap:19px;

    align-items:stretch;
}


/* =========================================================
   GUIDE CARD
========================================================= */

.admission-guide-card{
    position:relative;

    min-width:0;

    padding:22px;

    overflow:hidden;

    background:#ffffff;

    border:1px solid #E3DBF5;

    border-radius:16px;

    box-shadow:
        0 9px 27px
        rgba(68,41,152,.07);

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;
}

.admission-guide-card::before{
    content:"";

    position:absolute;

    top:0;
    left:0;
    bottom:0;

    width:4px;

    background:#442998;
}

.admission-guide-card::after{
    content:"";

    position:absolute;

    top:-55px;
    right:-55px;

    width:115px;
    height:115px;

    background:rgba(233,174,22,.10);

    border-radius:50%;
}

.admission-guide-card:hover{
    transform:translateY(-4px);

    border-color:#C9B9EB;

    box-shadow:
        0 16px 35px
        rgba(68,41,152,.11);
}

/* =========================================================
   ADMISSION CARD HEADER - UPDATED
========================================================= */

.admission-card-header {
    position: relative;
    z-index: 2;

    width: 100%;
    min-width: 0;

    margin: 0 0 20px;
    padding: 0 0 17px;

    display: flex;
    flex-direction: row;
    align-items: center;

    gap: 14px;

    border-bottom: 1px solid #E9E2F7;
}

.admission-card-icon {
    width: 54px;
    height: 54px;

    min-width: 54px;
    flex: 0 0 54px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: linear-gradient(
        145deg,
        #442998,
        #6546BD
    );

    border-radius: 13px;

    color: #e9ae16;
    font-size: 22px;

    box-shadow: 0 6px 15px rgba(68,41,152, .16);
}

.admission-card-icon i {
    color: #e9ae16;
    font-size: 22px;
}

.admission-card-header > div:not(.admission-card-icon) {
    flex: 1 1 auto;
    min-width: 0;
}

.admission-card-number {
    display: block;

    margin: 0 0 5px;

    color: #946500;

    font-size: 12px;
    line-height: 1.4;
    font-weight: 800;

    letter-spacing: .4px;
}

.admission-card-header h2 {
    margin: 0;

    color: #442998;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 21px;
    line-height: 1.4;
    font-weight: 700;

    overflow-wrap: anywhere;
}


/* =========================================================
   ADMISSION STEPS - FULL WIDTH FIX
========================================================= */

.admission-step-list {
    position: relative;
    z-index: 2;

    display: flex !important;
    flex-direction: column !important;

    align-items: stretch !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    gap: 12px;
}

.admission-step {
    position: relative;

    display: flex !important;
    flex-direction: row !important;

    align-items: center !important;
    justify-content: flex-start !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    height: auto !important;
    min-height: 60px;

    margin: 0 !important;
    padding: 13px 15px !important;

    gap: 15px;

    background: #FCFAFF;

    border: 1px solid #E9E2F7;
    border-radius: 11px;

    box-sizing: border-box;

    overflow: visible !important;

    transition: .25s ease;
}

.admission-step:hover {
    background: #fffaf0;

    border-color: #e9c66a;

    transform: translateY(-2px);

    box-shadow: 0 5px 15px rgba(68,41,152, .06);
}

/* Step Number */

.admission-step-number {
    width: 38px !important;
    height: 38px !important;

    min-width: 38px !important;
    min-height: 38px !important;

    max-width: 38px !important;

    flex: 0 0 38px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #442998;

    border: 1px solid #6546BD;
    border-radius: 10px;

    color: #f5c64e;

    font-size: 13px;
    font-weight: 800;
    line-height: 1;

    text-align: center;

    box-sizing: border-box;
}

/* Step Description */

.admission-step p {
    display: block !important;

    flex: 1 1 auto !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;

    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #493E65;

    font-family: "Poppins", "Noto Sans Devanagari", sans-serif;

    font-size: 14px;
    font-weight: 600;
    line-height: 1.75;

    text-align: left;

    white-space: normal !important;

    overflow-wrap: anywhere;
    word-break: normal;

    overflow: visible !important;

    box-sizing: border-box;
}


/* =========================================================
   FIX FOR ADMISSION CARD CONTENT
========================================================= */

.admission-card {
    min-width: 0;
    box-sizing: border-box;
}

.admission-card .admission-step-list {
    flex: 1 1 auto;
}

.admission-card .admission-step {
    align-self: stretch;
}


/* =========================================================
   DOCUMENT LIST
========================================================= */

.admission-document-list{
    position:relative;
    z-index:2;

    display:flex;
    flex-direction:column;

    gap:9px;
}

.admission-document-item{
    min-height:47px;

    padding:8px 10px;

    display:grid;

    grid-template-columns:
        34px minmax(0,1fr) 22px;

    align-items:center;

    gap:9px;

    background:#FCFAFF;

    border:1px solid #EEE8FA;

    border-radius:9px;
}

.admission-document-icon{
    width:32px;
    height:32px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:#EEE8FC;

    border-radius:7px;

    color:#442998;

    font-size:13px;
}

.admission-document-item > span{
    color:#554D6C;

    font-size:14px;
    line-height:1.5;

    font-weight:600;
}

.admission-document-item > i:last-child{
    color:#c18a00;

    font-size:14px;

    text-align:center;
}


/* =========================================================
   ADMISSION RULES
========================================================= */

.admission-rule-list{
    position:relative;
    z-index:2;

    display:flex;
    flex-direction:column;

    gap:10px;
}

.admission-rule-item{
    padding:12px;

    display:flex;
    align-items:flex-start;

    gap:11px;

    background:#FCFAFF;

    border:1px solid #EEE8FA;

    border-radius:9px;
}

.admission-rule-number{
    width:34px;
    height:34px;

    flex:0 0 34px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:#fff8e4;

    border:1px solid #ead38b;

    border-radius:50%;

    color:#442998;

    font-size:11px;

    font-weight:900;
}

.admission-rule-item > div{
    min-width:0;
}

.admission-rule-item strong{
    display:block;

    margin-bottom:5px;

    color:#442998;

    font-size:14px;
    line-height:1.4;

    font-weight:800;
}

.admission-rule-item p{
    margin:0;

    color:#625B75;

    font-size:13px;
    line-height:1.65;

    font-weight:500;
}


/* =========================================================
   MAIN ADMISSION PROCESS BOX
========================================================= */

.admission-process-box{
    position:relative;

    margin-top:21px;

    padding:22px;

    overflow:visible;

    display:grid;

    grid-template-columns:
        62px minmax(0,1fr) 335px;

    align-items:center;

    gap:18px;

    background:
        linear-gradient(
            135deg,
            #2D176B 0%,
            #442998 55%,
            #5C3AAF 100%
        );

    border:1px solid #442998;

    border-radius:17px;

    box-shadow:
        0 13px 32px
        rgba(68,41,152,.20);
}

.admission-process-box::before{
    content:"";

    position:absolute;

    top:0;
    left:0;
    bottom:0;

    width:6px;

    background:#e9ae16;

    border-radius:
        17px 0 0 17px;
}

.admission-process-box::after{
    content:"";

    position:absolute;

    top:-65px;
    right:350px;

    width:160px;
    height:160px;

    background:
        rgba(233,174,22,.07);

    border-radius:50%;

    pointer-events:none;
}


/* =========================================================
   PROCESS ICON
========================================================= */

.admission-process-icon{
    position:relative;
    z-index:2;

    width:62px;
    height:62px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:#e9ae16;

    border:4px solid
        rgba(255,255,255,.16);

    border-radius:15px;

    color:#442998;

    font-size:25px;

    box-shadow:
        0 7px 17px
        rgba(0,0,0,.18);
}


/* =========================================================
   PROCESS CONTENT
========================================================= */

.admission-process-content{
    position:relative;
    z-index:2;

    min-width:0;
}

.admission-process-content > span{
    display:block;

    margin-bottom:5px;

    color:#e9ae16;

    font-size:11px;

    font-weight:900;

    letter-spacing:.7px;
}

.admission-process-content h2{
    margin:0 0 6px;

    color:#ffffff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:22px;
    line-height:1.3;
}

.admission-process-content p{
    margin:0;

    color:#d5def0;

    font-size:13px;
    line-height:1.6;
}


/* =========================================================
   MAIN HIGHLIGHT ADMISSION BUTTON
========================================================= */

.admission-highlight-button{
    position:relative;
    z-index:5;

    width:100%;
    min-width:0;

    padding:0 !important;

    display:block;

    overflow:visible;

    background:
        linear-gradient(
            135deg,
            #e4a700 0%,
            #ffd65a 48%,
            #e4a700 100%
        ) !important;

    border:3px solid #ffffff !important;

    border-radius:14px;

    color:#442998 !important;

    text-decoration:none !important;

    box-shadow:
        0 0 0 3px
        rgba(233,174,22,.22),
        0 12px 27px
        rgba(0,0,0,.25);

    animation:
        admissionGlow
        2s ease-in-out infinite;

    transition:
        transform .25s ease,
        box-shadow .25s ease;
}

.admission-highlight-button:hover{
    transform:
        translateY(-3px)
        scale(1.015);

    box-shadow:
        0 0 0 5px
        rgba(233,174,22,.18),
        0 17px 35px
        rgba(0,0,0,.30);
}


/* =========================================================
   START HERE BADGE
========================================================= */

.admission-start-badge{
    position:absolute;

    top:-16px;
    left:17px;

    z-index:10;

    min-height:30px;

    padding:0 13px;

    display:flex;
    align-items:center;
    justify-content:center;

    gap:6px;

    background:#ffffff;

    border:2px solid #e9ae16;

    border-radius:20px;

    color:#442998;

    font-size:10px;

    font-weight:900;

    letter-spacing:.7px;

    box-shadow:
        0 5px 13px
        rgba(68,41,152,.18);
}

.admission-start-badge i{
    color:#d89d00;
}


/* =========================================================
   BUTTON MAIN
========================================================= */

.admission-button-main{
    min-height:70px;

    padding:
        14px 13px
        10px;

    display:grid;

    grid-template-columns:
        47px minmax(0,1fr) 38px;

    align-items:center;

    gap:11px;
}

.admission-button-icon{
    width:47px;
    height:47px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:#442998;

    border-radius:11px;

    color:#e9ae16;

    font-size:19px;

    box-shadow:
        0 5px 13px
        rgba(68,41,152,.20);
}

.admission-button-text{
    min-width:0;

    display:flex;
    flex-direction:column;

    gap:4px;
}

.admission-button-text strong{
    color:#442998;

    font-size:15px;
    line-height:1.3;

    font-weight:900;
}

.admission-button-text small{
    color:#594914;

    font-size:12px;
    line-height:1.4;

    font-weight:800;
}

.admission-button-arrow{
    width:38px;
    height:38px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:#ffffff;

    border-radius:50%;

    color:#442998;

    font-size:13px;

    box-shadow:
        0 4px 12px
        rgba(68,41,152,.14);

    transition:
        transform .25s ease;
}

.admission-highlight-button:hover
.admission-button-arrow{
    transform:translateX(4px);
}


/* =========================================================
   CLICK HINT
========================================================= */

.admission-click-hint{
    min-height:34px;

    padding:7px 10px;

    display:flex;
    align-items:center;
    justify-content:center;

    gap:7px;

    background:#ffffff;

    border-radius:
        0 0 10px 10px;

    color:#442998;

    font-size:11px;
    line-height:1.4;

    font-weight:900;
}

.admission-click-hint i{
    color:#c38b00;

    font-size:14px;

    animation:
        admissionHand
        1s ease-in-out infinite;
}


/* =========================================================
   BUTTON ANIMATIONS
========================================================= */

@keyframes admissionGlow{

    0%,
    100%{
        box-shadow:
            0 0 0 3px
            rgba(233,174,22,.20),
            0 12px 27px
            rgba(0,0,0,.23);
    }

    50%{
        box-shadow:
            0 0 0 7px
            rgba(233,174,22,.10),
            0 15px 34px
            rgba(0,0,0,.29);
    }
}

@keyframes admissionHand{

    0%,
    100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-3px);
    }
}


/* =========================================================
   VERIFICATION NOTE
========================================================= */

.admission-verification-note{
    margin-top:14px;

    padding:13px 16px;

    display:flex;
    align-items:center;
    justify-content:center;

    gap:11px;

    background:#ffffff;

    border:1px solid #E3DBF5;
    border-bottom:3px solid #e9ae16;

    border-radius:10px;

    text-align:center;
}

.admission-verification-icon{
    width:38px;
    height:38px;

    flex:0 0 38px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:#fff8e4;

    border-radius:50%;

    color:#b98200;

    font-size:16px;
}

.admission-verification-note > div:last-child{
    display:flex;
    flex-direction:column;

    gap:3px;
}

.admission-verification-note strong{
    color:#442998;

    font-size:14px;
    line-height:1.4;
}

.admission-verification-note span{
    color:#687386;

    font-size:12px;
    line-height:1.5;
}


/* =========================================================
   TABLET - 768px TO 1050px
========================================================= */

@media(max-width:1050px){

    .admission-guide-page{
        padding:
            25px 18px
            105px;
    }

    .admission-guide-grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .admission-rule-card{
        grid-column:
            1 / -1;
    }

    .admission-rule-list{
        display:grid;

        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .admission-process-box{
        grid-template-columns:
            58px minmax(0,1fr) 300px;
    }

    .admission-process-content h2{
        font-size:20px;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:767px){

    .admission-guide-page{
        min-height:
            calc(100vh - 166px);

        padding:
            16px 10px
            100px;
    }


    /* =====================================================
       PAGE HEADING
    ===================================================== */

    .admission-guide-heading{
        margin-bottom:12px;

        padding:14px 12px;

        gap:12px;

        border-radius:13px;
    }

    .admission-guide-heading-icon{
        width:52px;
        height:52px;

        flex:0 0 52px;

        border-radius:12px;

        font-size:21px;
    }

    .admission-guide-small-title{
        margin-bottom:4px;

        font-size:10px;
        line-height:1.2;
    }

    .admission-guide-heading h1{
        margin-bottom:4px;

        font-size:21px;
        line-height:1.25;
    }

    .admission-guide-heading p{
        font-size:13px;
        line-height:1.55;
    }


    /* =====================================================
       WARNING
    ===================================================== */

    .admission-main-warning{
        margin-bottom:11px;

        padding:11px;

        gap:10px;

        align-items:flex-start;

        border-radius:10px;
    }

    .admission-warning-icon{
        width:40px;
        height:40px;

        flex:0 0 40px;

        font-size:16px;
    }

    .admission-warning-content span{
        margin-bottom:3px;

        font-size:12px;
    }

    .admission-warning-content p{
        font-size:12px;
        line-height:1.55;
    }


    /* =====================================================
       QUICK APPLY BAR
    ===================================================== */

    .admission-quick-action{
        margin-bottom:13px;

        padding:11px;

        gap:9px;

        border-radius:10px;
    }

    .admission-quick-left{
        gap:9px;
    }

    .admission-quick-icon{
        width:38px;
        height:38px;

        flex:0 0 38px;

        font-size:14px;
    }

    .admission-quick-text span{
        font-size:10px;
        line-height:1.3;
    }

    .admission-quick-text strong{
        font-size:12px;
        line-height:1.4;
    }

    .admission-quick-button{
        min-height:38px;

        padding:0 11px;

        gap:5px;

        font-size:10px;

        border-radius:8px;
    }


    /* =====================================================
       GRID
    ===================================================== */

    .admission-guide-grid{
        grid-template-columns:1fr;

        gap:12px;
    }

    .admission-rule-card{
        grid-column:auto;
    }


    /* =====================================================
       CARDS
    ===================================================== */

    .admission-guide-card{
        padding:15px;

        border-radius:13px;
    }

    .admission-card-header{
        margin-bottom:13px;

        padding-bottom:12px;

        gap:10px;
    }

    .admission-card-icon{
        width:45px;
        height:45px;

        flex:0 0 45px;

        border-radius:10px;

        font-size:17px;
    }

    .admission-card-number{
        margin-bottom:4px;

        font-size:9px;
        line-height:1.2;
    }

    .admission-card-header h2{
        font-size:17px;
        line-height:1.35;
    }


    /* =====================================================
       STEPS
    ===================================================== */

    .admission-step-list{
        gap:8px;
    }

    .admission-step{
        min-height:44px;

        padding:8px 9px;

        gap:9px;

        border-radius:8px;
    }

    .admission-step-number{
        width:30px;
        height:30px;

        flex:0 0 30px;

        font-size:10px;
    }

    .admission-step p{
        font-size:13px;
        line-height:1.5;
    }


    /* =====================================================
       DOCUMENTS
    ===================================================== */

    .admission-document-list{
        gap:8px;
    }

    .admission-document-item{
        min-height:44px;

        padding:7px 8px;

        grid-template-columns:
            31px minmax(0,1fr) 20px;

        gap:8px;
    }

    .admission-document-icon{
        width:29px;
        height:29px;

        font-size:12px;
    }

    .admission-document-item > span{
        font-size:13px;
        line-height:1.45;
    }

    .admission-document-item > i:last-child{
        font-size:12px;
    }


    /* =====================================================
       ADMISSION RULES
    ===================================================== */

    .admission-rule-list{
        display:flex;

        flex-direction:column;

        gap:8px;
    }

    .admission-rule-item{
        padding:10px;

        gap:9px;
    }

    .admission-rule-number{
        width:31px;
        height:31px;

        flex:0 0 31px;

        font-size:10px;
    }

    .admission-rule-item strong{
        margin-bottom:4px;

        font-size:13px;
        line-height:1.4;
    }

    .admission-rule-item p{
        font-size:12px;
        line-height:1.6;
    }


    /* =====================================================
       MAIN PROCESS BOX
    ===================================================== */

    .admission-process-box{
        margin-top:13px;

        padding:
            16px 13px
            14px;

        grid-template-columns:
            49px minmax(0,1fr);

        gap:11px;

        border-radius:14px;
    }

    .admission-process-box::after{
        display:none;
    }

    .admission-process-icon{
        width:49px;
        height:49px;

        border-width:3px;

        border-radius:11px;

        font-size:20px;
    }

    .admission-process-content > span{
        margin-bottom:4px;

        font-size:9px;
    }

    .admission-process-content h2{
        margin-bottom:4px;

        font-size:17px;
        line-height:1.3;
    }

    .admission-process-content p{
        font-size:12px;
        line-height:1.5;
    }


    /* =====================================================
       BIG ADMISSION BUTTON
    ===================================================== */

    .admission-highlight-button{
        grid-column:
            1 / -1;

        width:100%;

        margin-top:12px;

        border-radius:13px;
    }

    .admission-start-badge{
        top:-13px;
        left:15px;

        min-height:27px;

        padding:0 10px;

        font-size:9px;
    }

    .admission-button-main{
        min-height:68px;

        padding:
            14px 11px
            10px;

        grid-template-columns:
            44px minmax(0,1fr) 36px;

        gap:9px;
    }

    .admission-button-icon{
        width:44px;
        height:44px;

        border-radius:10px;

        font-size:17px;
    }

    .admission-button-text strong{
        font-size:14px;
        line-height:1.3;
    }

    .admission-button-text small{
        font-size:11px;
        line-height:1.35;
    }

    .admission-button-arrow{
        width:36px;
        height:36px;

        font-size:12px;
    }

    .admission-click-hint{
        min-height:32px;

        padding:6px 8px;

        font-size:10px;
        line-height:1.4;
    }

    .admission-click-hint i{
        font-size:13px;
    }


    /* =====================================================
       VERIFICATION NOTE
    ===================================================== */

    .admission-verification-note{
        margin-top:10px;

        padding:10px;

        justify-content:flex-start;

        text-align:left;
    }

    .admission-verification-icon{
        width:35px;
        height:35px;

        flex:0 0 35px;

        font-size:14px;
    }

    .admission-verification-note strong{
        font-size:12px;
        line-height:1.4;
    }

    .admission-verification-note span{
        font-size:11px;
        line-height:1.45;
    }
}


/* =========================================================
   SMALL MOBILE
   381px - 480px
========================================================= */

@media(min-width:381px) and (max-width:480px){

    .admission-guide-page{
        padding-left:9px;
        padding-right:9px;
    }

    .admission-guide-heading h1{
        font-size:20px;
    }

    .admission-guide-heading p{
        font-size:12.5px;
    }

    .admission-step p,
    .admission-document-item > span{
        font-size:12.5px;
    }

    .admission-rule-item p{
        font-size:11.5px;
    }
}


/* =========================================================
   VERY SMALL MOBILE
========================================================= */

@media(max-width:380px){

    .admission-guide-page{
        padding-left:7px;
        padding-right:7px;
    }

    .admission-guide-heading{
        padding:11px 9px;

        gap:9px;
    }

    .admission-guide-heading-icon{
        width:45px;
        height:45px;

        flex:0 0 45px;

        font-size:18px;
    }

    .admission-guide-small-title{
        font-size:9px;
    }

    .admission-guide-heading h1{
        font-size:18px;
    }

    .admission-guide-heading p{
        font-size:11.5px;
    }

    .admission-main-warning{
        padding:9px;
    }

    .admission-warning-content span{
        font-size:11px;
    }

    .admission-warning-content p{
        font-size:11px;
    }

    .admission-quick-action{
        padding:9px 8px;
    }

    .admission-quick-icon{
        display:none;
    }

    .admission-quick-text span{
        font-size:9px;
    }

    .admission-quick-text strong{
        font-size:11px;
    }

    .admission-quick-button{
        min-height:36px;

        padding:0 8px;

        font-size:9px;
    }

    .admission-guide-card{
        padding:13px 11px;
    }

    .admission-card-number{
        font-size:8.5px;
    }

    .admission-card-header h2{
        font-size:16px;
    }

    .admission-step p{
        font-size:12px;
    }

    .admission-document-item > span{
        font-size:12px;
    }

    .admission-rule-item strong{
        font-size:12.5px;
    }

    .admission-rule-item p{
        font-size:11px;
    }

    .admission-process-box{
        padding:
            15px 10px
            13px;
    }

    .admission-process-content h2{
        font-size:16px;
    }

    .admission-process-content p{
        font-size:11px;
    }

    .admission-button-text strong{
        font-size:13px;
    }

    .admission-button-text small{
        font-size:10.5px;
    }

    .admission-click-hint{
        font-size:9.5px;
    }

    .admission-verification-note strong{
        font-size:11.5px;
    }

    .admission-verification-note span{
        font-size:10.5px;
    }
}


/* =========================================================
   LARGE DESKTOP
   
   
   
/* ============================================================
   RDM COLLEGE - ADMISSION LOGIN + RESULT
   FINAL CSS
   Replace old admission login/result CSS with this block
============================================================ */


/* ============================================================
   MAIN PAGE
============================================================ */

.admissionlogin-section{
    width:100%;
    min-height:calc(100vh - 220px);
    padding:28px 16px 100px;
    background:#FAF8FF;
}

.admissionlogin-container{
    width:100%;
    max-width:1180px;
    margin:0 auto;
}


/* ============================================================
   PAGE HEADER
============================================================ */

.admissionlogin-page-head{
    display:flex;
    align-items:center;
    gap:14px;
    max-width:950px;
    margin:0 auto 14px;
    padding:17px 20px;
    background:#fff;
    border:1px solid #E3DBF5;
    border-left:5px solid #442998;
    border-radius:14px;
    box-shadow:0 8px 24px rgba(68,41,152,.07);
}

.admissionlogin-page-icon{
    width:52px;
    height:52px;
    flex:0 0 52px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#442998;
    color:#e9ae16;
    border-radius:12px;
    font-size:21px;
}

.admissionlogin-page-title{
    min-width:0;
}

.admissionlogin-page-title > span{
    display:block;
    margin-bottom:3px;
    color:#b17b00;
    font-size:10px;
    font-weight:900;
    letter-spacing:1px;
}

.admissionlogin-page-title h1{
    margin:0 0 3px;
    color:#442998;
    font-size:23px;
    line-height:1.25;
    font-weight:800;
}

.admissionlogin-page-title p{
    margin:0;
    color:#687386;
    font-size:12px;
    line-height:1.5;
}


/* ============================================================
   TOP WARNING
============================================================ */

.admissionlogin-top-warning{
    max-width:950px;
    margin:0 auto 14px;
}

.admissionlogin-warning-icon,
.admissionlogin-warning-text{
    display:none;
}

.admissionlogin-warning-box{
    position:relative;
    padding:11px 14px 11px 43px;
    background:#fff9e9;
    border:1px solid #ead58c;
    border-radius:10px;
    color:#604b13;
    font-size:12px;
    line-height:1.55;
    font-weight:600;
}

.admissionlogin-warning-box::before{
    content:"\f071";
    position:absolute;
    top:50%;
    left:13px;
    transform:translateY(-50%);
    color:#c88e00;
    font-family:"Font Awesome 6 Free";
    font-size:16px;
    font-weight:900;
}


/* ============================================================
   LOGIN FORM
============================================================ */

.admissionlogin-grid{
    width:100%;
}

.admissionlogin-card{
    position:relative;
    width:100%;
    max-width:950px;
    margin:0 auto;
    padding:24px;
    overflow:hidden;
    background:#fff;
    border:1px solid #E3DBF5;
    border-radius:16px;
    box-shadow:0 10px 30px rgba(68,41,152,.08);
}

.admissionlogin-card::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:4px;
    background:linear-gradient(
        90deg,
        #442998 0%,
        #442998 78%,
        #e9ae16 78%
    );
}


/* ============================================================
   CARD HEADER
============================================================ */

.admissionlogin-card-head{
    display:flex;
    align-items:center;
    gap:11px;
    margin-bottom:20px;
    padding-bottom:14px;
    border-bottom:1px solid #E5DDF5;
}

.admissionlogin-card-head-icon{
    width:42px;
    height:42px;
    flex:0 0 42px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#442998;
    color:#e9ae16;
    border-radius:9px;
    font-size:15px;
}

.admissionlogin-card-head span{
    display:block;
    margin-bottom:2px;
    color:#b17b00;
    font-size:9px;
    font-weight:900;
    letter-spacing:.8px;
}

.admissionlogin-card-head h2{
    margin:0;
    color:#442998;
    font-size:18px;
    line-height:1.35;
    font-weight:800;
}

.admissionlogin-heading{
    margin:0 0 20px;
    padding-bottom:12px;
    color:#442998;
    border-bottom:1px solid #E5DDF5;
    font-size:19px;
    font-weight:800;
}


/* ============================================================
   FORM GRID
============================================================ */

#admissionLoginForm{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:17px 18px;
}

.admissionlogin-group{
    min-width:0;
    margin:0;
}

#admissionLoginForm .admissionlogin-group:first-child{
    grid-column:1 / -1;
}


/* ============================================================
   LABEL
============================================================ */

.admissionlogin-group label{
    display:flex;
    align-items:center;
    gap:4px;
    margin:0 0 7px;
    color:#442998;
    font-size:12px;
    line-height:1.4;
    font-weight:800;
}

.admissionlogin-group label b{
    color:#d92d20;
}


/* ============================================================
   INPUT
============================================================ */

.admissionlogin-input-wrap{
    position:relative;
    width:100%;
}

.admissionlogin-input-icon{
    position:absolute;
    top:50%;
    left:0;
    z-index:2;
    width:45px;
    height:30px;
    display:flex;
    align-items:center;
    justify-content:center;
    transform:translateY(-50%);
    border-right:1px solid #E3DBF5;
    color:#442998;
    font-size:13px;
    pointer-events:none;
}

.admissionlogin-control{
    width:100%;
    height:48px;
    padding:0 13px;
    outline:none;
    background:#fff;
    border:1.5px solid #ccd5e3;
    border-radius:9px;
    color:#172033;
    font-family:inherit;
    font-size:13px;
    font-weight:600;
    transition:.2s ease;
}

.admissionlogin-control-icon{
    padding-left:55px;
}

.admissionlogin-control:hover{
    border-color:#9caac0;
}

.admissionlogin-control:focus{
    border-color:#442998;
    box-shadow:0 0 0 3px rgba(68,41,152,.08);
}

.admissionlogin-control::placeholder{
    color:#9aa3b2;
    font-weight:500;
}

select.admissionlogin-control{
    cursor:pointer;
}

.admissionlogin-control:disabled{
    cursor:not-allowed;
    background:#f2f4f7;
    color:#8c95a5;
}


/* ============================================================
   SMALL HELP
============================================================ */

.admissionlogin-help-text,
.admissionlogin-help{
    display:none;
}


/* ============================================================
   SUBMIT BUTTON
============================================================ */

.admissionlogin-submit-area{
    grid-column:1 / -1;
    margin-top:2px;
}

.admissionlogin-btn{
    width:100%;
    min-height:49px;
    padding:0 18px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    cursor:pointer;
    background:linear-gradient(135deg,#442998,#6546BD);
    border:0;
    border-bottom:3px solid #e9ae16;
    border-radius:9px;
    color:#fff;
    font-family:inherit;
    font-size:13px;
    font-weight:800;
    box-shadow:0 7px 18px rgba(68,41,152,.18);
    transition:.2s ease;
}

.admissionlogin-btn i{
    color:#e9ae16;
}

.admissionlogin-btn:hover{
    transform:translateY(-1px);
    box-shadow:0 9px 22px rgba(68,41,152,.23);
}

.admissionlogin-btn:disabled{
    opacity:.7;
    cursor:not-allowed;
}


/* ============================================================
   REMOVE EXTRA SECURITY / BOTTOM HELP
============================================================ */

.admissionlogin-secure-note,
.admissionlogin-security-note,
.admissionlogin-bottom-help{
    display:none !important;
}


/* ============================================================
   NO OPEN ADMISSION
============================================================ */

.admissionlogin-closed-box,
.admissionlogin-closed{
    display:flex;
    align-items:center;
    gap:12px;
    padding:16px;
    background:#fff4f3;
    border:1px solid #efc4c1;
    border-left:4px solid #d92d20;
    border-radius:10px;
}

.admissionlogin-closed-icon{
    width:42px;
    height:42px;
    flex:0 0 42px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#d92d20;
    color:#fff;
    border-radius:9px;
    font-size:16px;
}

.admissionlogin-closed-box h3,
.admissionlogin-closed h3{
    margin:0 0 3px;
    color:#a5221a;
    font-size:14px;
    font-weight:800;
}

.admissionlogin-closed-box p,
.admissionlogin-closed p{
    margin:0;
    color:#75433f;
    font-size:11px;
    line-height:1.5;
}


/* ============================================================
   RESULT SECTION
============================================================ */

.admission-result-section{
    width:100%;
    max-width:950px;
    margin:18px auto 0;
}

.admission-result-card{
    width:100%;
    padding:0;
    overflow:hidden;
    background:#fff;
    border:1px solid #E3DBF5;
    border-radius:16px;
    box-shadow:0 10px 30px rgba(68,41,152,.09);
}


/* ============================================================
   RESULT STATUS HEADER
============================================================ */

.admission-result-card .result-message{
    display:flex !important;
    align-items:center;
    gap:12px;
    margin:0 !important;
    padding:15px 18px !important;
    border:0 !important;
    border-radius:0 !important;
}

.admission-result-card .result-message.status-info{
    background:linear-gradient(135deg,#442998,#6546BD) !important;
    color:#fff !important;
    border-bottom:4px solid #e9ae16 !important;
}

.admission-result-card .result-message.status-success{
    background:linear-gradient(135deg,#087443,#0a9558) !important;
    color:#fff !important;
    border-bottom:4px solid #e9ae16 !important;
}

.admission-result-card .result-message.status-warning{
    background:linear-gradient(135deg,#a56c00,#d2950c) !important;
    color:#fff !important;
    border-bottom:4px solid #442998 !important;
}

.admission-result-card .result-message.status-error{
    background:linear-gradient(135deg,#a61b1b,#d92d20) !important;
    color:#fff !important;
}

.admission-result-card .result-message-icon{
    width:42px;
    height:42px;
    flex:0 0 42px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.15);
    border:1px solid rgba(255,255,255,.22);
    border-radius:50%;
    color:#fff !important;
    font-size:17px;
}

.admission-result-card .result-message > div:last-child{
    min-width:0;
}

.admission-result-card .result-message span{
    display:block;
    margin-bottom:3px;
    color:#e9ae16 !important;
    font-size:9px;
    line-height:1.2;
    font-weight:900;
    letter-spacing:1px;
}

.admission-result-card .result-message h4{
    margin:0 !important;
    padding:0 !important;
    background:none !important;
    border:0 !important;
    color:#fff !important;
    font-size:16px;
    line-height:1.4;
    font-weight:800;
}


/* ============================================================
   SESSION / SEMESTER
============================================================ */

.result-selection-info{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    padding:14px 18px;
    background:#f7f9fd;
    border-bottom:1px solid #E5DDF5;
}

.result-selection-info > div{
    position:relative;
    padding:11px 13px 11px 17px;
    background:#fff;
    border:1px solid #E3DBF5;
    border-radius:9px;
}

.result-selection-info > div::before{
    content:"";
    position:absolute;
    top:9px;
    bottom:9px;
    left:0;
    width:3px;
    background:#e9ae16;
    border-radius:0 4px 4px 0;
}

.result-selection-info span{
    display:block;
    margin-bottom:3px;
    color:#7b8494;
    font-size:9px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.4px;
}

.result-selection-info strong{
    display:block;
    color:#442998;
    font-size:13px;
    line-height:1.3;
    font-weight:900;
}


/* ============================================================
   STUDENT DETAILS TITLE
============================================================ */

.result-student-title{
    display:flex;
    align-items:center;
    gap:8px;
    padding:16px 18px 10px;
    color:#442998;
    font-size:14px;
    font-weight:900;
}

.result-student-title i{
    width:30px;
    height:30px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#442998;
    border-radius:7px;
    color:#e9ae16;
    font-size:12px;
}


/* ============================================================
   STUDENT DETAILS GRID
============================================================ */

.result-details-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:9px;
    padding:0 18px 18px;
}

.result-detail-item{
    min-width:0;
    min-height:66px;
    padding:10px 11px;
    background:#fff;
    border:1px solid #dfe5ee;
    border-radius:8px;
    transition:.2s ease;
}

.result-detail-item:hover{
    border-color:#b6c2d3;
    box-shadow:0 4px 12px rgba(68,41,152,.06);
}

.result-detail-item span{
    display:block;
    margin-bottom:5px;
    color:#7b8494;
    font-size:9px;
    line-height:1.3;
    font-weight:700;
}

.result-detail-item strong{
    display:block;
    overflow-wrap:anywhere;
    color:#442998;
    font-size:11.5px;
    line-height:1.35;
    font-weight:900;
}


/* ============================================================
   RESULT ACTION AREA
============================================================ */

.admission-result-card .result-button-area{
    margin:0 !important;
    padding:14px 18px 17px;
    display:flex;
    justify-content:flex-end;
    background:#f7f9fd;
    border-top:1px solid #E5DDF5;
}


/* ============================================================
   PROCEED / PAY / RECEIPT BUTTON
============================================================ */

.admission-result-btn{
    width:auto;
    min-width:310px;
    min-height:52px;
    display:flex !important;
    align-items:center;
    gap:10px;
    padding:7px 11px !important;
    border-radius:9px;
    text-decoration:none !important;
    transition:.2s ease;
}

.admission-result-btn:hover{
    text-decoration:none !important;
    transform:translateY(-1px);
}

.admission-result-btn-primary{
    background:linear-gradient(135deg,#442998,#6546BD);
    color:#fff !important;
    box-shadow:0 7px 18px rgba(68,41,152,.20);
}

.admission-result-btn-success{
    background:linear-gradient(135deg,#087443,#0a9558);
    color:#fff !important;
    box-shadow:0 7px 18px rgba(8,116,67,.18);
}

.admission-result-btn-warning{
    background:linear-gradient(135deg,#e9ae16,#f3c54c);
    color:#442998 !important;
    box-shadow:0 7px 18px rgba(233,174,22,.20);
}

.admission-result-btn-icon{
    width:38px;
    height:38px;
    flex:0 0 38px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.15);
    border-radius:8px;
    font-size:14px;
}

.admission-result-btn > div:nth-child(2){
    flex:1;
    min-width:0;
}

.admission-result-btn strong{
    display:block;
    margin-bottom:2px;
    color:inherit;
    font-size:12px;
    line-height:1.25;
    font-weight:900;
}

.admission-result-btn span{
    display:block;
    color:inherit;
    opacity:.85;
    font-size:9px;
    line-height:1.3;
    font-weight:500;
}

.admission-result-btn > i:last-child{
    width:27px;
    height:27px;
    flex:0 0 27px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.12);
    border-radius:50%;
    color:inherit;
    font-size:10px;
}


/* ============================================================
   ADMISSION CLOSED ACTION
============================================================ */

.admission-action-closed{
    min-width:280px;
    display:flex;
    align-items:center;
    gap:9px;
    padding:10px 12px;
    background:#fff0f0;
    border:1px solid #efc1c1;
    border-radius:9px;
    color:#b42318;
}

.admission-action-closed > i{
    width:34px;
    height:34px;
    flex:0 0 34px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#b42318;
    border-radius:7px;
    color:#fff;
    font-size:12px;
}

.admission-action-closed strong,
.admission-action-closed span{
    display:block;
}

.admission-action-closed strong{
    margin-bottom:2px;
    font-size:12px;
}

.admission-action-closed span{
    font-size:9px;
}


/* ============================================================
   TABLET
============================================================ */

@media(max-width:991px){

    .result-details-grid{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

}


/* ============================================================
   MOBILE
============================================================ */

@media(max-width:767px){

    .admissionlogin-section{
        padding:12px 9px 90px;
    }

    .admissionlogin-page-head{
        gap:9px;
        margin-bottom:10px;
        padding:11px 12px;
        border-radius:11px;
    }

    .admissionlogin-page-icon{
        width:44px;
        height:44px;
        flex-basis:44px;
        border-radius:9px;
        font-size:17px;
    }

    .admissionlogin-page-title > span{
        font-size:8px;
    }

    .admissionlogin-page-title h1{
        font-size:17px;
    }

    .admissionlogin-page-title p{
        font-size:10px;
    }

    .admissionlogin-top-warning{
        margin-bottom:10px;
    }

    .admissionlogin-warning-box{
        padding:9px 9px 9px 36px;
        font-size:10px;
        border-radius:8px;
    }

    .admissionlogin-warning-box::before{
        left:11px;
        font-size:13px;
    }

    .admissionlogin-card{
        padding:16px 11px;
        border-radius:12px;
    }

    .admissionlogin-card-head{
        gap:8px;
        margin-bottom:15px;
        padding-bottom:11px;
    }

    .admissionlogin-card-head-icon{
        width:37px;
        height:37px;
        flex-basis:37px;
        font-size:13px;
    }

    .admissionlogin-card-head h2{
        font-size:14px;
    }

    .admissionlogin-card-head span{
        font-size:7px;
    }

    #admissionLoginForm{
        grid-template-columns:1fr;
        gap:13px;
    }

    #admissionLoginForm .admissionlogin-group:first-child{
        grid-column:auto;
    }

    .admissionlogin-group label{
        margin-bottom:5px;
        font-size:11px;
    }

    .admissionlogin-control{
        height:46px;
        font-size:12px;
    }

    .admissionlogin-control-icon{
        padding-left:48px;
    }

    .admissionlogin-input-icon{
        width:40px;
        font-size:11px;
    }

    .admissionlogin-submit-area{
        grid-column:auto;
    }

    .admissionlogin-btn{
        min-height:47px;
        font-size:12px;
    }


    /* RESULT */

    .admission-result-section{
        margin-top:12px;
    }

    .admission-result-card{
        border-radius:12px;
    }

    .admission-result-card .result-message{
        gap:9px;
        padding:12px !important;
    }

    .admission-result-card .result-message-icon{
        width:37px;
        height:37px;
        flex-basis:37px;
        font-size:14px;
    }

    .admission-result-card .result-message span{
        font-size:7px;
    }

    .admission-result-card .result-message h4{
        font-size:12px;
    }

    .result-selection-info{
        grid-template-columns:1fr 1fr;
        gap:7px;
        padding:9px;
    }

    .result-selection-info > div{
        padding:9px 8px 9px 12px;
    }

    .result-selection-info span{
        font-size:7px;
    }

    .result-selection-info strong{
        font-size:10.5px;
    }

    .result-student-title{
        padding:12px 9px 8px;
        font-size:12px;
    }

    .result-student-title i{
        width:27px;
        height:27px;
        font-size:10px;
    }

    .result-details-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:6px;
        padding:0 9px 11px;
    }

    .result-detail-item{
        min-height:59px;
        padding:8px;
        border-radius:7px;
    }

    .result-detail-item span{
        margin-bottom:4px;
        font-size:7.5px;
    }

    .result-detail-item strong{
        font-size:9.5px;
    }

    .admission-result-card .result-button-area{
        padding:10px 9px 12px;
    }

    .admission-result-btn{
        width:100%;
        min-width:0;
        min-height:50px;
    }

    .admission-result-btn-icon{
        width:35px;
        height:35px;
        flex-basis:35px;
        font-size:12px;
    }

    .admission-result-btn strong{
        font-size:10.5px;
    }

    .admission-result-btn span{
        font-size:8px;
    }

    .admission-result-btn > i:last-child{
        width:25px;
        height:25px;
        flex-basis:25px;
    }

    .admission-action-closed{
        width:100%;
        min-width:0;
    }

}


/* ============================================================
   SMALL MOBILE
============================================================ */

@media(max-width:420px){

    .admissionlogin-section{
        padding-left:7px;
        padding-right:7px;
    }

    .admissionlogin-card{
        padding-left:9px;
        padding-right:9px;
    }

    .result-selection-info{
        grid-template-columns:1fr 1fr;
    }

    .result-details-grid{
        grid-template-columns:1fr 1fr;
    }

}


/* ============================================================
   VERY SMALL MOBILE
============================================================ */

@media(max-width:340px){

    .result-selection-info{
        grid-template-columns:1fr;
    }

    .result-details-grid{
        grid-template-columns:1fr;
    }

}


/* ==========================================================
   RDM - ADMISSION APPLY FORM
========================================================== */

.admission-apply-section{
    width:100%;
    padding:32px 15px 105px;
    background:#FAF8FF;
}

.admission-apply-container{
    width:100%;
    max-width:1100px;
    margin:0 auto;
    padding:27px;
    background:#fff;
    border:1px solid #E3DBF5;
    border-radius:17px;
    box-shadow:0 12px 35px rgba(68,41,152,.09);
}


/* HEADER */

.admission-apply-head{
    display:flex;
    align-items:center;
    gap:13px;
    margin-bottom:24px;
    padding-bottom:17px;
    border-bottom:1px solid #e4e9f1;
}

.admission-apply-head-icon{
    width:48px;
    height:48px;
    flex:0 0 48px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#442998;
    border-radius:10px;
    color:#e9ae16;
    font-size:18px;
}

.admission-apply-head-content{
    min-width:0;
}

.admission-apply-head-content > span{
    display:block;
    margin-bottom:2px;
    color:#ae7b00;
    font-size:9px;
    font-weight:900;
    letter-spacing:1px;
}

.admission-apply-head h1{
    margin:0 0 3px;
    color:#442998;
    font-size:21px;
    line-height:1.3;
    font-weight:850;
}

.admission-apply-head p{
    margin:0;
    color:#667186;
    font-size:11px;
    font-weight:700;
}

.admission-apply-head p b{
    padding:0 4px;
    color:#e9ae16;
}


/* ==========================================================
   STEPPER
========================================================== */

.admission-stepper{
    width:100%;
    display:flex;
    align-items:flex-start;
    margin-bottom:30px;
    padding:0 8px;
}

.admission-step{
    width:82px;
    flex:0 0 82px;
    position:relative;
    z-index:2;
    display:flex;
    flex-direction:column;
    align-items:center;
}

.admission-step-number{
    width:42px;
    height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#E5DDF5;
    border:3px solid #fff;
    border-radius:50%;
    color:#7c8799;
    font-size:13px;
    box-shadow:0 0 0 1px #d7dee8;
    transition:.2s ease;
}

.admission-step span{
    margin-top:6px;
    color:#7c8799;
    font-size:10px;
    font-weight:800;
    text-align:center;
}

.admission-step-line{
    flex:1;
    height:3px;
    margin-top:20px;
    background:#e1e6ed;
}

.admission-step.active .admission-step-number{
    background:#442998;
    color:#e9ae16;
    box-shadow:
        0 0 0 1px #442998,
        0 5px 14px rgba(68,41,152,.20);
}

.admission-step.active span{
    color:#442998;
}

.admission-step.completed .admission-step-number{
    background:#198754;
    color:#fff;
    box-shadow:0 0 0 1px #198754;
}

.admission-step.completed span{
    color:#198754;
}


/* ==========================================================
   STEP CONTENT
========================================================== */

.form-step{
    display:none;
}

.form-step.active{
    display:block;
    animation:admissionApplyFade .25s ease;
}

@keyframes admissionApplyFade{

    from{
        opacity:0;
        transform:translateY(5px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }
}


/* SECTION TITLE */

.apply-section-title{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:20px;
}

.apply-section-title > div{
    width:38px;
    height:38px;
    flex:0 0 38px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#442998;
    border-radius:8px;
    color:#e9ae16;
    font-size:13px;
}

.apply-section-title span{
    display:flex;
    flex-direction:column;
}

.apply-section-title small{
    margin-bottom:1px;
    color:#ae7b00;
    font-size:8px;
    font-weight:900;
    letter-spacing:.7px;
}

.apply-section-title strong{
    color:#442998;
    font-size:17px;
    line-height:1.3;
}


/* ==========================================================
   FORM
========================================================== */

.apply-form-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:17px 22px;
}

.apply-form-full{
    grid-column:1/-1;
}

.apply-form-group{
    min-width:0;
}

.apply-form-group label{
    display:block;
    margin-bottom:6px;
    color:#293247;
    font-size:11px;
    line-height:1.4;
    font-weight:800;
}

.apply-form-group label b{
    color:#d92d20;
}

.apply-form-group input,
.apply-form-group select{
    width:100%;
    height:47px;
    padding:0 12px;
    outline:none;
    background:#fff;
    border:1.5px solid #d4dce7;
    border-radius:8px;
    color:#172033;
    font-family:inherit;
    font-size:12px;
    font-weight:600;
    transition:.2s ease;
}

.apply-form-group input:hover,
.apply-form-group select:hover{
    border-color:#aeb9c8;
}

.apply-form-group input:focus,
.apply-form-group select:focus{
    border-color:#442998;
    box-shadow:0 0 0 3px rgba(68,41,152,.07);
}

.apply-form-group input[readonly]{
    background:#f5f7fa;
    color:#4d586b;
    cursor:not-allowed;
}


/* ==========================================================
   DOCUMENT HEADING
========================================================== */

.apply-document-heading{
    display:flex;
    align-items:center;
    gap:9px;
    margin:24px 0 12px;
    padding-top:19px;
    border-top:1px solid #e5eaf1;
}

.apply-document-heading > div{
    width:34px;
    height:34px;
    flex:0 0 34px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#fff7df;
    border-radius:7px;
    color:#b27d00;
    font-size:12px;
}

.apply-document-heading span{
    display:flex;
    flex-direction:column;
}

.apply-document-heading strong{
    color:#442998;
    font-size:13px;
}

.apply-document-heading small{
    margin-top:1px;
    color:#7b8494;
    font-size:8.5px;
}


/* ==========================================================
   UPLOAD GRID
========================================================== */

.apply-upload-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    padding:17px;
    background:#FCFAFF;
    border:1px solid #e1e6ed;
    border-radius:12px;
}

.apply-upload-group{
    min-width:0;
    padding:13px;
    background:#fff;
    border:1px solid #E3DBF5;
    border-radius:10px;
    transition:.2s ease;
}

.apply-upload-group:hover{
    border-color:#bac5d4;
    box-shadow:0 5px 15px rgba(68,41,152,.05);
}

.apply-upload-title{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    margin-bottom:9px;
}

.apply-upload-title > span{
    min-width:0;
    color:#442998;
    font-size:11px;
    font-weight:850;
}

.apply-upload-title > span i{
    width:19px;
    color:#b17d00;
}

.apply-upload-title > b{
    padding:3px 6px;
    background:#fff1f0;
    border-radius:4px;
    color:#d92d20;
    font-size:7px;
    font-weight:800;
    text-transform:uppercase;
}


/* REAL INPUT HIDDEN */

.apply-file-input{
    position:absolute !important;
    width:1px !important;
    height:1px !important;
    padding:0 !important;
    margin:-1px !important;
    overflow:hidden !important;
    clip:rect(0,0,0,0) !important;
    white-space:nowrap !important;
    border:0 !important;
}


/* CLICKABLE FILE BOX */

.apply-file-box{
    display:block;
    cursor:pointer;
}


/* PREVIEW */

.apply-preview-box{
    position:relative;
    width:100%;
    height:145px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    background:#FCFAFF;
    border:1.5px dashed #c8d1de;
    border-radius:8px;
    transition:.2s ease;
}

.apply-file-box:hover .apply-preview-box{
    background:#F1EBFF;
    border-color:#442998;
}

.apply-preview-placeholder{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:7px;
    color:#8a94a4;
}

.apply-preview-placeholder i{
    font-size:26px;
    color:#aab3c0;
}

.apply-preview-placeholder span{
    font-size:9px;
    font-weight:700;
}

.apply-preview-box img{
    display:none;
    width:100%;
    height:100%;
    object-fit:contain;
    padding:6px;
    background:#fff;
}

.image-preview-box img{
    object-fit:contain;
}

.signature-preview-box{
    height:110px;
}

.signature-preview-box img{
    object-fit:contain;
}

.document-preview-box{
    height:145px;
}

.apply-preview-box.has-preview .apply-preview-placeholder{
    display:none;
}


/* PDF PREVIEW */

.apply-pdf-preview{
    display:none;
    width:100%;
    height:100%;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:7px;
    background:#fff8f8;
    color:#c62828;
}

.apply-pdf-preview i{
    font-size:31px;
}

.apply-pdf-preview span{
    font-size:9px;
    font-weight:800;
}


/* SELECT FILE BUTTON */

.apply-file-select{
    min-height:36px;
    margin-top:8px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    background:#442998;
    border-radius:7px;
    color:#fff;
    font-size:9px;
    font-weight:800;
    transition:.2s ease;
}

.apply-file-select i{
    color:#e9ae16;
}

.apply-file-box:hover .apply-file-select{
    background:#0d2a70;
}


/* FILE NAME */

.apply-selected-file{
    margin-top:7px;
    overflow:hidden;
    color:#596477;
    font-size:8.5px;
    font-weight:600;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.apply-file-note{
    display:block;
    margin-top:4px;
    color:#d92d20;
    font-size:8px;
    font-weight:700;
}


/* ==========================================================
   PAYMENT
========================================================== */

.apply-payment-card{
    display:flex;
    align-items:center;
    gap:13px;
    max-width:500px;
    padding:17px;
    background:#f7f9fd;
    border:1px solid #E3DBF5;
    border-left:4px solid #e9ae16;
    border-radius:10px;
}

.apply-payment-icon{
    width:44px;
    height:44px;
    flex:0 0 44px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#442998;
    border-radius:9px;
    color:#e9ae16;
    font-size:15px;
}

.apply-payment-card span{
    display:block;
    margin-bottom:2px;
    color:#7b8494;
    font-size:9px;
}

.apply-payment-card strong{
    display:block;
    color:#442998;
    font-size:13px;
}

.apply-payment-card small{
    display:block;
    margin-top:3px;
    color:#6c7688;
    font-size:8.5px;
}


/* ==========================================================
   BUTTONS
========================================================== */

.apply-button-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin-top:28px;
    padding-top:18px;
    border-top:1px solid #E5DDF5;
}

.apply-btn{
    min-height:44px;
    padding:0 20px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    cursor:pointer;
    border:0;
    border-radius:8px;
    font-family:inherit;
    font-size:11px;
    font-weight:850;
    transition:.2s ease;
}

.apply-btn:hover{
    transform:translateY(-1px);
}

.apply-btn-back{
    background:#edf1f5;
    color:#442998;
}

.apply-btn-next{
    margin-left:auto;
    background:#442998;
    border-bottom:3px solid #e9ae16;
    color:#fff;
    box-shadow:0 6px 15px rgba(68,41,152,.15);
}

.apply-btn-next i{
    color:#e9ae16;
}

.apply-btn-submit{
    margin-left:auto;
    background:#198754;
    border-bottom:3px solid #0e673d;
    color:#fff;
    box-shadow:0 6px 15px rgba(25,135,84,.18);
}

.apply-btn:disabled{
    opacity:.7;
    cursor:not-allowed;
    transform:none;
}


/* NO SUBJECT */

.apply-no-subject{
    padding:14px;
    background:#fff5f5;
    border:1px solid #efc5c5;
    border-radius:8px;
    color:#b42318;
    font-size:11px;
    font-weight:700;
}


/* ==========================================================
   TABLET
========================================================== */

@media(max-width:900px){

    .admission-apply-container{
        max-width:760px;
    }

}


/* ==========================================================
   MOBILE
========================================================== */

@media(max-width:767px){

    .admission-apply-section{
        padding:13px 7px 95px;
    }

    .admission-apply-container{
        padding:13px 9px 18px;
        border-radius:12px;
    }


    /* HEADER */

    .admission-apply-head{
        gap:9px;
        margin-bottom:18px;
        padding-bottom:12px;
    }

    .admission-apply-head-icon{
        width:39px;
        height:39px;
        flex-basis:39px;
        border-radius:8px;
        font-size:14px;
    }

    .admission-apply-head-content > span{
        font-size:7px;
    }

    .admission-apply-head h1{
        font-size:15px;
    }

    .admission-apply-head p{
        font-size:8.5px;
    }


    /* HORIZONTAL STEPPER */

    .admission-stepper{
        width:100%;
        align-items:flex-start;
        margin-bottom:22px;
        padding:0;
    }

    .admission-step{
        width:52px;
        flex:0 0 52px;
    }

    .admission-step-number{
        width:33px;
        height:33px;
        border-width:2px;
        font-size:10px;
    }

    .admission-step span{
        margin-top:5px;
        font-size:7.5px;
    }

    .admission-step-line{
        min-width:10px;
        height:2px;
        margin-top:16px;
    }


    /* SECTION TITLE */

    .apply-section-title{
        gap:8px;
        margin-bottom:15px;
    }

    .apply-section-title > div{
        width:32px;
        height:32px;
        flex-basis:32px;
        border-radius:7px;
        font-size:10px;
    }

    .apply-section-title small{
        font-size:7px;
    }

    .apply-section-title strong{
        font-size:14px;
    }


    /* FORM */

    .apply-form-grid{
        grid-template-columns:1fr;
        gap:12px;
    }

    .apply-form-group label{
        margin-bottom:5px;
        font-size:10px;
    }

    .apply-form-group input,
    .apply-form-group select{
        height:44px;
        padding:0 10px;
        border-radius:7px;
        font-size:11px;
    }


    /* DOCUMENT TITLE */

    .apply-document-heading{
        margin:18px 0 10px;
        padding-top:15px;
    }

    .apply-document-heading strong{
        font-size:11px;
    }

    .apply-document-heading small{
        font-size:7.5px;
    }


    /* UPLOAD */

    .apply-upload-grid{
        grid-template-columns:1fr;
        gap:10px;
        padding:9px;
        border-radius:9px;
    }

    .apply-upload-group{
        padding:10px;
        border-radius:8px;
    }

    .apply-upload-title > span{
        font-size:10px;
    }

    .apply-preview-box{
        height:155px;
    }

    .signature-preview-box{
        height:105px;
    }

    .document-preview-box{
        height:145px;
    }

    .apply-file-select{
        min-height:36px;
        font-size:9px;
    }


    /* PAYMENT */

    .apply-payment-card{
        max-width:none;
        padding:13px;
    }


    /* BUTTON */

    .apply-button-row{
        margin-top:20px;
        padding-top:13px;
    }

    .apply-btn{
        min-height:42px;
        padding:0 14px;
        font-size:10px;
    }

}


/* ==========================================================
   SMALL MOBILE
========================================================== */

@media(max-width:380px){

    .admission-step{
        width:47px;
        flex-basis:47px;
    }

    .admission-step-number{
        width:30px;
        height:30px;
        font-size:9px;
    }

    .admission-step-line{
        margin-top:14px;
    }

    .admission-step span{
        font-size:7px;
    }

}


/* ==========================================================
   ADMISSION PAYMENT PAGE
========================================================== */

.admission-payment-section{
    width:100%;
    padding:32px 15px 110px;
    background:#FAF8FF;
}

.admission-payment-container{
    width:100%;
    max-width:900px;
    margin:0 auto;
    padding:28px;
    background:#fff;
    border:1px solid #E3DBF5;
    border-radius:16px;
    box-shadow:0 12px 35px rgba(68,41,152,.08);
}


/* HEADER */

.admission-payment-head{
    display:flex;
    align-items:center;
    gap:13px;
    margin-bottom:20px;
    padding-bottom:17px;
    border-bottom:1px solid #e5e9f0;
}

.admission-payment-head-icon{
    width:48px;
    height:48px;
    flex:0 0 48px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#442998;
    border-radius:10px;
    color:#e9ae16;
    font-size:18px;
}

.admission-payment-head > div:last-child{
    min-width:0;
}

.admission-payment-head span{
    display:block;
    margin-bottom:2px;
    color:#a97800;
    font-size:9px;
    font-weight:900;
    letter-spacing:1px;
}

.admission-payment-head h1{
    margin:0 0 3px;
    color:#442998;
    font-size:21px;
    line-height:1.3;
    font-weight:850;
}

.admission-payment-head p{
    margin:0;
    color:#6c7688;
    font-size:11px;
    font-weight:700;
}

.admission-payment-head p b{
    padding:0 4px;
    color:#e9ae16;
}


/* WARNING */

.admission-payment-warning{
    display:flex;
    align-items:flex-start;
    gap:11px;
    margin-bottom:18px;
    padding:13px 15px;
    background:#fff9e8;
    border:1px solid #f1d67b;
    border-left:4px solid #e9ae16;
    border-radius:9px;
}

.admission-payment-warning-icon{
    width:31px;
    height:31px;
    flex:0 0 31px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#fff0bb;
    border-radius:7px;
    color:#9b6b00;
    font-size:12px;
}

.admission-payment-warning strong{
    display:block;
    margin-bottom:2px;
    color:#5f4500;
    font-size:11px;
    font-weight:850;
}

.admission-payment-warning p{
    margin:0;
    color:#756229;
    font-size:9.5px;
    line-height:1.6;
}


/* CARD */

.admission-payment-card{
    margin-bottom:17px;
    padding:19px;
    background:#fff;
    border:1px solid #dfe5ed;
    border-radius:11px;
}

.admission-payment-card-title{
    display:flex;
    align-items:center;
    gap:9px;
    margin-bottom:16px;
}

.admission-payment-card-title > div{
    width:35px;
    height:35px;
    flex:0 0 35px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#442998;
    border-radius:8px;
    color:#e9ae16;
    font-size:12px;
}

.admission-payment-card-title span{
    display:flex;
    flex-direction:column;
}

.admission-payment-card-title small{
    margin-bottom:1px;
    color:#a97800;
    font-size:7px;
    font-weight:900;
    letter-spacing:.7px;
}

.admission-payment-card-title strong{
    color:#442998;
    font-size:14px;
}


/* STUDENT DETAILS */

.admission-payment-details{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    border:1px solid #e2e7ee;
    border-radius:9px;
    overflow:hidden;
}

.payment-detail-item{
    min-width:0;
    padding:12px 14px;
    background:#fff;
    border-bottom:1px solid #E5DDF5;
}

.payment-detail-item:nth-child(odd){
    border-right:1px solid #E5DDF5;
}

.payment-detail-item span{
    display:block;
    margin-bottom:3px;
    color:#7a8495;
    font-size:8.5px;
    font-weight:700;
}

.payment-detail-item strong{
    display:block;
    overflow-wrap:anywhere;
    color:#17233d;
    font-size:11px;
    font-weight:800;
}


/* PAYMENT SUMMARY */

.payment-summary-card{
    background:#fafbfd;
}

.payment-summary-list{
    overflow:hidden;
    background:#fff;
    border:1px solid #e1e6ed;
    border-radius:9px;
}

.payment-summary-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    padding:12px 15px;
    border-bottom:1px solid #E5DDF5;
}

.payment-summary-row span{
    display:flex;
    align-items:center;
    gap:7px;
    color:#536074;
    font-size:10px;
    font-weight:700;
}

.payment-summary-row span i{
    width:18px;
    color:#9c730d;
}

.payment-summary-row strong{
    color:#17233d;
    font-size:12px;
    white-space:nowrap;
}

.payment-summary-total{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    padding:15px;
    background:#442998;
}

.payment-summary-total span{
    display:block;
    margin-bottom:2px;
    color:#fff;
    font-size:11px;
    font-weight:800;
}

.payment-summary-total small{
    display:block;
    color:#cbd5ec;
    font-size:8px;
}

.payment-summary-total > strong{
    color:#ffd44a;
    font-size:20px;
    font-weight:900;
    white-space:nowrap;
}


/* PAYMENT METHOD */

.payment-method-box{
    display:flex;
    align-items:center;
    gap:12px;
    margin-top:4px;
    padding:14px;
    background:#FCFAFF;
    border:1px solid #E3DBF5;
    border-radius:10px;
}

.payment-method-icon{
    width:42px;
    height:42px;
    flex:0 0 42px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#442998;
    border-radius:9px;
    color:#e9ae16;
    font-size:15px;
}

.payment-method-content{
    flex:1;
    min-width:0;
}

.payment-method-content span{
    display:block;
    margin-bottom:1px;
    color:#858e9d;
    font-size:8px;
    font-weight:700;
}

.payment-method-content strong{
    display:block;
    color:#442998;
    font-size:12px;
    font-weight:850;
}

.payment-method-content small{
    display:block;
    margin-top:2px;
    color:#747f90;
    font-size:8px;
}

.payment-method-check{
    color:#198754;
    font-size:18px;
}


/* SECURITY */

.payment-security-note{
    display:flex;
    align-items:flex-start;
    gap:7px;
    margin-top:12px;
    padding:10px 12px;
    background:#eef7f2;
    border-radius:7px;
    color:#37644c;
    font-size:8.5px;
    line-height:1.5;
}

.payment-security-note i{
    margin-top:2px;
    color:#198754;
}


/* PAYMENT BUTTON */

.admission-payment-action{
    margin-top:17px;
}

.admission-pay-btn{
    width:100%;
    min-height:58px;
    padding:8px 13px;
    display:flex;
    align-items:center;
    gap:11px;
    cursor:pointer;
    background:#442998;
    border:0;
    border-bottom:4px solid #e9ae16;
    border-radius:10px;
    color:#fff;
    box-shadow:0 7px 18px rgba(68,41,152,.18);
    transition:.2s ease;
}

.admission-pay-btn:hover{
    background:#8c1612;
    transform:translateY(-1px);
}

.admission-pay-btn:disabled{
    opacity:.75;
    cursor:not-allowed;
    transform:none;
}

.pay-btn-icon{
    width:37px;
    height:37px;
    flex:0 0 37px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.10);
    border-radius:7px;
    color:#ffd44a;
}

.pay-btn-text{
    flex:1;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    text-align:left;
}

.pay-btn-text small{
    margin-bottom:1px;
    color:#bac8e7;
    font-size:7px;
    font-weight:800;
    letter-spacing:.6px;
}

.pay-btn-text strong{
    color:#fff;
    font-size:14px;
    font-weight:850;
}

.pay-btn-arrow{
    color:#ffd44a;
    font-size:13px;
}


/* BOTTOM NOTE */

.payment-bottom-note{
    display:flex;
    align-items:flex-start;
    justify-content:center;
    gap:6px;
    margin-top:14px;
    color:#707b8d;
    font-size:8.5px;
    line-height:1.5;
    text-align:center;
}

.payment-bottom-note i{
    margin-top:2px;
    color:#442998;
}


/* ==========================================================
   MOBILE
========================================================== */

@media(max-width:767px){

    .admission-payment-section{
        padding:13px 7px 95px;
    }

    .admission-payment-container{
        padding:13px 9px 18px;
        border-radius:12px;
    }

    .admission-payment-head{
        gap:9px;
        margin-bottom:14px;
        padding-bottom:12px;
    }

    .admission-payment-head-icon{
        width:39px;
        height:39px;
        flex-basis:39px;
        border-radius:8px;
        font-size:14px;
    }

    .admission-payment-head span{
        font-size:7px;
    }

    .admission-payment-head h1{
        font-size:15px;
    }

    .admission-payment-head p{
        font-size:8px;
    }

    .admission-payment-warning{
        padding:10px;
    }

    .admission-payment-warning-icon{
        width:28px;
        height:28px;
        flex-basis:28px;
    }

    .admission-payment-warning strong{
        font-size:10px;
    }

    .admission-payment-warning p{
        font-size:8px;
    }

    .admission-payment-card{
        padding:12px 10px;
        margin-bottom:12px;
    }

    .admission-payment-card-title{
        margin-bottom:11px;
    }

    .admission-payment-card-title > div{
        width:31px;
        height:31px;
        flex-basis:31px;
    }

    .admission-payment-card-title strong{
        font-size:12px;
    }

    .admission-payment-details{
        grid-template-columns:1fr;
    }

    .payment-detail-item{
        padding:10px 11px;
        border-right:0 !important;
    }

    .payment-detail-item span{
        font-size:8px;
    }

    .payment-detail-item strong{
        font-size:10.5px;
    }

    .payment-summary-row{
        padding:10px 11px;
    }

    .payment-summary-row span{
        font-size:9px;
    }

    .payment-summary-row strong{
        font-size:10.5px;
    }

    .payment-summary-total{
        padding:12px;
    }

    .payment-summary-total span{
        font-size:10px;
    }

    .payment-summary-total > strong{
        font-size:17px;
    }

    .payment-method-box{
        padding:11px;
    }

    .payment-method-icon{
        width:37px;
        height:37px;
        flex-basis:37px;
    }

    .payment-method-content strong{
        font-size:10.5px;
    }

    .admission-pay-btn{
        min-height:54px;
    }

    .pay-btn-text strong{
        font-size:12px;
    }

}


/* ============================================================
   FINAL ADMISSION APPLICATION CARD — SEMESTER I–VIII
   Scope exclusively to apply page; avoid guide-step collisions.
   This block must remain LAST in the stylesheet.
============================================================ */
.admission-apply-section { width:100% !important; padding:30px 16px 110px !important; background:#FAF8FF; display:flow-root !important; }
.admission-apply-section, .admission-apply-section *, .admission-apply-section *::before, .admission-apply-section *::after {box-sizing:border-box;}
.admission-apply-section .admission-apply-container { width:min(100%,1320px) !important; max-width:1320px !important; margin:0 auto !important; padding:32px 35px 38px !important; background:#fff !important; border:1px solid #E3DBF5 !important; border-radius:20px !important; box-shadow:0 12px 35px rgba(68,41,152,.09) !important; min-height:0 !important; height:auto !important; display:flow-root !important; overflow:visible !important; }
.admission-apply-section .admission-apply-head {display:flex !important; align-items:center !important; width:100% !important; margin:0 0 22px !important; padding:0 0 18px !important;}
.admission-apply-section .admission-stepper {display:flex !important; flex-direction:row !important; align-items:center !important; justify-content:space-between !important; width:100% !important; margin:0 0 26px !important; padding:0 !important; gap:10px !important; overflow:visible !important;}
.admission-apply-section .admission-stepper > .admission-step {display:flex !important; flex-direction:column !important; align-items:center !important; justify-content:center !important; flex:0 0 72px !important; width:72px !important; min-width:72px !important; max-width:72px !important; min-height:0 !important; height:auto !important; margin:0 !important; padding:0 !important; gap:7px !important; background:transparent !important; border:0 !important; border-radius:0 !important; box-shadow:none !important; transform:none !important; overflow:visible !important;}
.admission-apply-section .admission-stepper > .admission-step::before, .admission-apply-section .admission-stepper > .admission-step::after {content:none !important; display:none !important;}
.admission-apply-section .admission-stepper .admission-step-number {display:flex !important; align-items:center !important; justify-content:center !important; flex:0 0 46px !important; width:46px !important; height:46px !important; min-width:46px !important; min-height:46px !important; max-width:46px !important; padding:0 !important; margin:0 !important; border-radius:50% !important; border:3px solid white !important; background:#eee9fa !important; color:#442998 !important; box-shadow:0 0 0 1px #d8d0ed !important; font-size:17px !important;}
.admission-apply-section .admission-stepper .admission-step.active .admission-step-number {background:#442998 !important; color:#e9ae16 !important; box-shadow:0 0 0 1px #442998 !important;}
.admission-apply-section .admission-stepper .admission-step.completed .admission-step-number {background:#168b58 !important; color:white !important; box-shadow:0 0 0 1px #168b58 !important;}
.admission-apply-section .admission-stepper > .admission-step > span {display:block !important; width:auto !important; max-width:none !important; margin:0 !important; padding:0 !important; font-size:11px !important; line-height:1.3 !important; font-weight:800 !important; color:#442998 !important; white-space:nowrap !important;}
.admission-apply-section .admission-stepper > .admission-step-line {display:block !important; flex:1 1 0 !important; width:auto !important; min-width:10px !important; height:3px !important; margin:0 0 20px !important; background:#dfe4ed !important; border:0 !important;}
.admission-apply-section #admissionForm {display:flow-root !important; position:static !important; width:100% !important; max-width:100% !important; min-width:0 !important; margin:0 !important; padding:0 !important; background:transparent !important;}
.admission-apply-section #admissionForm .form-step {position:static !important; float:none !important; clear:both !important; width:100% !important; max-width:100% !important; min-width:0 !important; height:auto !important; margin:0 !important; padding:0 !important; background:transparent !important;}
.admission-apply-section #admissionForm .form-step:not(.active) {display:none !important;}
.admission-apply-section #admissionForm .form-step.active {display:flow-root !important;}
.admission-apply-section #admissionForm .apply-section-title {width:100% !important; max-width:100% !important; margin:0 0 20px !important;}
.admission-apply-section #admissionForm .apply-payment-card {width:100% !important; max-width:100% !important; min-width:0 !important; margin:0 !important;}
.admission-apply-section #admissionForm .apply-form-grid, .admission-apply-section #admissionForm .apply-upload-grid {width:100% !important; max-width:100% !important; min-width:0 !important;}
.admission-apply-section #admissionForm .apply-button-row {position:static !important; float:none !important; clear:both !important; display:flex !important; align-items:center !important; justify-content:space-between !important; flex-wrap:wrap !important; gap:12px !important; width:100% !important; max-width:100% !important; margin:28px 0 0 !important; padding:20px 0 0 !important; border-top:1px solid #E5DDF5 !important; background:transparent !important;}
.admission-apply-section input[readonly] {background:#f0f2f7 !important; cursor:not-allowed !important;}
@media(max-width:767px) {
 .admission-apply-section {padding:14px 10px 100px !important;}
 .admission-apply-section .admission-apply-container {padding:19px 14px 25px !important; border-radius:15px !important;}
 .admission-apply-section .admission-stepper {gap:4px !important;}
 .admission-apply-section .admission-stepper > .admission-step {flex:0 0 55px !important; width:55px !important; min-width:55px !important; max-width:55px !important;}
 .admission-apply-section .admission-stepper .admission-step-number {width:39px !important; height:39px !important; min-width:39px !important; min-height:39px !important; max-width:39px !important; flex-basis:39px !important;}
 .admission-apply-section .admission-stepper > .admission-step > span {font-size:9px !important;}
 .admission-apply-section #admissionForm .apply-form-grid, .admission-apply-section #admissionForm .apply-upload-grid {grid-template-columns:1fr !important;}
 .admission-apply-section #admissionForm .apply-button-row {gap:9px !important;}
}

/* =========================================================
   APPLY PAGE OUTER CARD — FINAL DESKTOP + MOBILE
   The SECTION itself is the white card so step content remains
   visually enclosed even if inner .admission-apply-container
   ends before the form due to PHP branch markup.
========================================================= */
body .admission-apply-section {
  display: flow-root !important;
  width: calc(100% - 32px) !important;
  max-width: 1420px !important;
  min-width: 0 !important;
  margin: 30px auto 100px !important;
  padding: 30px 34px 42px !important;
  background: #fff !important;
  border: 1px solid #e3dbf5 !important;
  border-radius: 22px !important;
  box-shadow: 0 12px 38px rgba(68,41,152,.10) !important;
  overflow: visible !important;
}
body .admission-apply-section > .admission-apply-container {
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:transparent !important;
}
body .admission-apply-section .form-step,
body .admission-apply-section .apply-button-row,
body .admission-apply-section .apply-payment-card {
  max-width:100% !important;
  min-width:0 !important;
  box-sizing:border-box !important;
}
@media(max-width:767px){
 body .admission-apply-section {
   width:calc(100% - 20px) !important;
   margin:14px auto 94px !important;
   padding:18px 13px 24px !important;
   border-radius:16px !important;
 }
 body .admission-apply-section > .admission-apply-container {padding:0 !important;}
 body .admission-apply-section .admission-stepper {gap:3px !important;}
 body .admission-apply-section .apply-button-row {flex-wrap:wrap !important;}
}
