*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    scroll-behavior:smooth;
    font-family:'Poppins',sans-serif;
}

body{
    background:#0f172a;
    color:white;
    overflow-x:hidden;
}

/* Scroll Bar */

#progressBar{
    position:fixed;
    top:0;
    left:0;
    height:5px;
    width:0%;
    background:linear-gradient(90deg,#38bdf8,#3b82f6);
    z-index:10000;
}

/* Navbar */

nav{
    position:fixed;
    width:100%;
    top:0;
    left:0;
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:20px 8%;
    background:rgba(15,23,42,.75);
    backdrop-filter:blur(15px);
    z-index:999;
}

.logo{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:24px;
    font-weight:700;
    color:#38bdf8;
}

.logo i{
    font-size:28px;
}

nav ul{
    display:flex;
    list-style:none;
    gap:35px;
}

nav ul li a{
    text-decoration:none;
    color:white;
    transition:.3s;
    font-weight:500;
}

nav ul li a:hover{
    color:#38bdf8;
}

/* Hero */

.hero{
    min-height:100vh;
    display:flex;
    justify-content:center;
    align-items:center;
    text-align:center;
    padding:120px 8% 60px;
    background:
    radial-gradient(circle at top,#1e3a8a 0%,transparent 40%),
    radial-gradient(circle at bottom,#2563eb 0%,transparent 35%);
}

.hero-content{
    max-width:900px;
}

.hero h1{
    font-size:58px;
    line-height:1.2;
    margin-bottom:25px;
}

.hero p{
    color:#cbd5e1;
    font-size:20px;
    margin-bottom:40px;
}

.course-info{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:25px;
    margin-bottom:40px;
}

.card{
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.1);
    backdrop-filter:blur(12px);
    padding:30px;
    border-radius:18px;
    transition:.4s;
}

.card:hover{
    transform:translateY(-10px);
    box-shadow:0 20px 35px rgba(0,0,0,.3);
}

.card h3{
    color:#38bdf8;
    margin-bottom:12px;
}

.card p{
    font-size:18px;
    color:white;
    margin:0;
}

.btn{
    display:inline-block;
    padding:15px 35px;
    background:#2563eb;
    color:white;
    text-decoration:none;
    border-radius:50px;
    font-weight:600;
    transition:.3s;
}

.btn:hover{
    background:#1d4ed8;
    transform:scale(1.05);
}

/* Sections */

section{
    padding:90px 8%;
}

.section-title{
    text-align:center;
    font-size:42px;
    margin-bottom:60px;
}

/* About */

.about-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:30px;
}

.about-card{
    background:#1e293b;
    padding:35px;
    border-radius:18px;
    transition:.3s;
}

.about-card:hover{
    transform:translateY(-8px);
}

.about-card h3{
    color:#38bdf8;
    margin-bottom:15px;
}

.about-card ul{
    padding-left:20px;
}

.about-card li{
    margin:10px 0;
    color:#dbeafe;
}

/* Responsive */

/* @media(max-width:900px){

.hero h1{
    font-size:42px;
}

.course-info{
    grid-template-columns:1fr;
}

nav{
    flex-direction:column;
    gap:15px;
}

nav ul{
    flex-wrap:wrap;
    justify-content:center;
}

.section-title{
    font-size:32px;
}

} */
 @media(max-width:900px){

    nav{
        flex-direction:column;
        gap:15px;
        padding:15px 5%;
    }

    nav ul{
        flex-wrap:wrap;
        justify-content:center;
        gap:15px;
    }

    .hero{

        padding-top:230px;

    }

    .hero h1{

        font-size:38px;

    }

    .course-info{

        grid-template-columns:1fr;

    }

    .section-title{

        font-size:32px;

    }

}
/* ================= Modules ================= */

.module-container{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));

    gap:35px;

}

.module-card{

    position:relative;

    background:rgba(255,255,255,.05);

    border:1px solid rgba(255,255,255,.08);

    border-radius:20px;

    padding:35px;

    overflow:hidden;

    transition:.4s;

    cursor:pointer;

}

.module-card:hover{

    transform:translateY(-12px);

    box-shadow:0 25px 40px rgba(0,0,0,.35);

    border-color:#38bdf8;

}

.module-card::before{

    content:"";

    position:absolute;

    width:200px;

    height:200px;

    background:rgba(56,189,248,.08);

    border-radius:50%;

    top:-100px;

    right:-100px;

}

.module-number{

    width:70px;

    height:70px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    background:#2563eb;

    color:white;

    font-size:24px;

    font-weight:bold;

    margin-bottom:25px;

}

.module-card h3{

    font-size:26px;

    margin-bottom:20px;

    color:#38bdf8;

}

.module-card p{

    color:#d1d5db;

    line-height:1.8;

}
/* ================= Timeline ================= */

.timeline{

    position:relative;

    max-width:1200px;

    margin:auto;

    margin-top:50px;

}

.timeline::after{

    content:"";

    position:absolute;

    width:4px;

    background:#38bdf8;

    top:0;

    bottom:0;

    left:50%;

    margin-left:-2px;

}

.timeline-item{

    position:relative;

    width:50%;

    padding:20px 40px;

}

.timeline-item::after{

    content:"";

    position:absolute;

    width:22px;

    height:22px;

    background:#2563eb;

    border:4px solid white;

    border-radius:50%;

    top:35px;

    z-index:10;

}

.left{

    left:0;

}

.right{

    left:50%;

}

.left::after{

    right:-13px;

}

.right::after{

    left:-13px;

}

.timeline-content{

    background:#1e293b;

    padding:25px;

    border-radius:18px;

    transition:.35s;

    border:1px solid rgba(255,255,255,.08);

}

.timeline-content:hover{

    transform:scale(1.03);

    box-shadow:0 15px 30px rgba(0,0,0,.35);

    border-color:#38bdf8;

}

.timeline-content h3{

    color:#38bdf8;

    margin-bottom:12px;

}

.timeline-content p{

    color:#dbeafe;

    line-height:1.7;

}

/* Mobile */

@media(max-width:900px){

.timeline::after{

left:20px;

}

.timeline-item{

width:100%;

padding-left:60px;

padding-right:20px;

}

.right{

left:0;

}

.left::after,

.right::after{

left:9px;

}

}
/* ================= Evaluation ================= */

.evaluation-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(320px,1fr));

gap:30px;

margin-top:50px;

}

.evaluation-card{

background:#1e293b;

padding:30px;

border-radius:18px;

transition:.35s;

border:1px solid rgba(255,255,255,.08);

}

.evaluation-card:hover{

transform:translateY(-10px);

border-color:#38bdf8;

box-shadow:0 20px 35px rgba(0,0,0,.35);

}

.evaluation-card h3{

margin-bottom:20px;

color:#38bdf8;

}

.progress{

background:#334155;

height:18px;

border-radius:30px;

overflow:hidden;

margin-bottom:20px;

}

.progress-bar{

height:100%;

display:flex;

align-items:center;

justify-content:center;

font-size:13px;

font-weight:bold;

color:white;

background:linear-gradient(90deg,#2563eb,#38bdf8);

}

.p60{

width:60%;

}

.p20{

width:20%;

}

.p10{

width:10%;

}

.p5{

width:5%;

}

/* ================= Milestones ================= */

.milestone-container{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(260px,1fr));

gap:30px;

margin-top:50px;

}

.milestone-card{

background:#1e293b;

padding:35px;

text-align:center;

border-radius:20px;

transition:.4s;

position:relative;

overflow:hidden;

}

.milestone-card:hover{

transform:translateY(-12px);

box-shadow:0 25px 40px rgba(0,0,0,.35);

}

.milestone-card span{

display:inline-flex;

align-items:center;

justify-content:center;

width:70px;

height:70px;

background:#2563eb;

border-radius:50%;

font-size:24px;

font-weight:bold;

margin-bottom:20px;

}

.milestone-card h3{

color:#38bdf8;

margin-bottom:15px;

}

.milestone-card p{

line-height:1.8;

color:#dbeafe;

margin-bottom:20px;

}

.milestone-card strong{

font-size:20px;

color:#22c55e;

}
/* ================= Books ================= */

.book-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(260px,1fr));

gap:30px;

margin-top:50px;

}

.book-card{

background:#1e293b;

padding:35px;

text-align:center;

border-radius:20px;

transition:.35s;

}

.book-card:hover{

transform:translateY(-10px);

box-shadow:0 20px 35px rgba(0,0,0,.35);

}

.book-card i{

font-size:45px;

color:#38bdf8;

margin-bottom:20px;

}

.book-card h3{

margin-bottom:15px;

}

.book-card p{

color:#dbeafe;

}

/* ================= Policy ================= */

.policy-card{

background:#1e293b;

padding:50px;

border-radius:25px;

text-align:center;

max-width:900px;

margin:auto;

}

.policy-card i{

font-size:60px;

color:#38bdf8;

margin-bottom:20px;

}

.policy-card h2{

margin-bottom:20px;

}

.policy-card p{

line-height:2;

color:#dbeafe;

}

/* ================= Footer ================= */

footer{

background:#020617;

padding:60px 20px;

text-align:center;

margin-top:80px;

}

footer h2{

margin-bottom:15px;

color:#38bdf8;

}

footer p{

margin:10px;

color:#cbd5e1;

}

.social{

margin:30px 0;

}

.social a{

display:inline-flex;

width:50px;

height:50px;

align-items:center;

justify-content:center;

background:#1e293b;

border-radius:50%;

margin:10px;

color:white;

text-decoration:none;

font-size:22px;

transition:.3s;

}

.social a:hover{

background:#2563eb;

transform:translateY(-6px);

}

/* ================= Scroll Button ================= */

#topBtn{

position:fixed;

bottom:30px;

right:30px;

width:55px;

height:55px;

border:none;

border-radius:50%;

background:#2563eb;

color:white;

font-size:22px;

cursor:pointer;

display:none;

transition:.3s;

}

#topBtn:hover{

transform:scale(1.1);

}
/* ================= Academic Integrity ================= */

.integrity-card{

    max-width:1000px;

    margin:40px auto;

    background:#1e293b;

    padding:40px;

    border-radius:20px;

    border-left:6px solid #38bdf8;

    box-shadow:0 15px 30px rgba(0,0,0,.3);

}

.integrity-card h3{

    color:#38bdf8;

    margin-bottom:20px;

    display:flex;

    align-items:center;

    gap:12px;

}

.integrity-card p{

    color:#dbeafe;

    line-height:1.9;

    margin-bottom:18px;

    text-align:justify;

}

.integrity-card hr{

    border:none;

    height:1px;

    background:#475569;

    margin:35px 0;

}

.warning-box{

    margin-top:30px;

    background:#7f1d1d;

    color:#fff;

    padding:20px;

    border-radius:12px;

    display:flex;

    align-items:flex-start;

    gap:15px;

}

.warning-box i{

    font-size:24px;

    color:#facc15;

}
/* ================= Course Materials ================= */

.material-container{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));

    gap:35px;

    margin-top:50px;

}

.material-card{

    background:#1e293b;

    padding:35px;

    border-radius:20px;

    border:1px solid rgba(255,255,255,.08);

    transition:.35s;

    cursor:pointer;

    text-align:center;

}

.material-card:hover{

    transform:translateY(-10px);

    border-color:#38bdf8;

    box-shadow:0 20px 40px rgba(0,0,0,.35);

}

.material-card h3{

    color:#38bdf8;

    margin-bottom:15px;

    font-size:28px;

}

.material-card p{

    color:#dbeafe;

    margin-bottom:25px;

    line-height:1.8;

}


/* ================= Modal ================= */

.modal{

    display:none;

    position:fixed;

    z-index:5000;

    left:0;

    top:0;

    width:100%;

    height:100%;

    overflow:auto;

    background:rgba(0,0,0,.75);

    backdrop-filter:blur(8px);

    animation:fadeIn .3s ease;

}


/* Modal Box */

.modal-content{

    position:relative;

    width:90%;

    max-width:750px;

    margin:70px auto;

    padding:40px;

    border-radius:24px;

    background:rgba(30,41,59,.95);

    border:1px solid rgba(255,255,255,.08);

    box-shadow:0 25px 60px rgba(0,0,0,.5);

    animation:slideDown .35s ease;

}


/* Title */

.modal-content h2{

    color:#38bdf8;

    margin-bottom:30px;

    text-align:center;

    font-size:34px;

}


/* PDF List */

.modal-content ul{

    list-style:none;

}

.modal-content li{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:18px 20px;

    margin-bottom:15px;

    background:#334155;

    border-radius:14px;

    transition:.3s;

}

.modal-content li:hover{

    background:#475569;

    transform:translateX(6px);

}


/* PDF Name */

.modal-content li a{

    color:white;

    text-decoration:none;

    font-size:18px;

    font-weight:500;

}


/* View Button */

.modal-content li a:last-child{

    background:#2563eb;

    padding:10px 22px;

    border-radius:30px;

    transition:.3s;

}

.modal-content li a:last-child:hover{

    background:#1d4ed8;

}


/* Close Button */

.close{

    position:absolute;

    right:25px;

    top:20px;

    font-size:34px;

    color:#94a3b8;

    cursor:pointer;

    transition:.3s;

}

.close:hover{

    color:#38bdf8;

    transform:rotate(90deg);

}


/* Scrollbar */

.modal::-webkit-scrollbar{

    width:8px;

}

.modal::-webkit-scrollbar-thumb{

    background:#38bdf8;

    border-radius:20px;

}


/* Animation */

@keyframes fadeIn{

    from{

        opacity:0;

    }

    to{

        opacity:1;

    }

}

@keyframes slideDown{

    from{

        opacity:0;

        transform:translateY(-50px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

/* ================= Institute Header ================= */

.college-header{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:30px;

    margin-bottom:45px;

}

.college-logo{

    width:120px;

    height:120px;

    object-fit:contain;

    filter:drop-shadow(0 8px 20px rgba(0,0,0,.35));

    transition:.35s;

}

.college-logo:hover{

    transform:scale(1.05);

}

.college-details{

    text-align:left;

}

.college-details h3{

    color:#ffffff;

    font-size:24px;

    margin-bottom:8px;

    font-weight:600;

}

.college-details p{

    color:#93c5fd;

    font-size:18px;

    margin:0;

}

.course-description{

    max-width:900px;

    margin:25px auto 45px;

    color:#cbd5e1;

    font-size:21px;

    line-height:1.8;

}


/* Mobile */

@media(max-width:768px){

    .modal-content{

        width:95%;

        padding:25px;

    }

    .modal-content h2{

        font-size:26px;

    }

    .modal-content li{

        flex-direction:column;

        align-items:flex-start;

        gap:15px;

    }
    .college-header{

    flex-direction:column;

    text-align:center;

    gap:20px;

}

.college-details{

    text-align:center;

}

.college-logo{

    width:90px;

    height:90px;

}

.college-details h3{

    font-size:18px;

}

.college-details p{

    font-size:15px;

}

}

