/* ======================================================
   GLOBAL RESET + BODY
====================================================== */

*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{
font-family:'Poppins',sans-serif;
background:#f8f9fa;
color:#2c3e50;
overflow-x:hidden;
}

/* ======================================================
   HEADER SYSTEM
====================================================== */

:root{
--header-height:110px;
}

header{
position:relative;
top:0;
left:0;
width:100%;
z-index:99999;
display:flex;
justify-content:space-between;
align-items:center;
padding:20px 60px;
height:var(--header-height);
transition:.4s;
}

header.standard-header{
background-image:url('/PSCMR/assets/pscmr.jpg');
background-size:cover;
background-position:center;
border-bottom:3px solid #000000;
box-shadow:0 4px 10px rgba(0,0,0,.3);
}

header.standard-header::before{
content:'';
position:absolute;
inset:0;
background:rgba(0,0,0,.4);
}

header.standard-header .logo,
header.standard-header nav{
position:relative;
z-index:2;
}

header.transparent-header{
background:transparent;
position:absolute;
top:0;
left:0;
}

header.standard-header nav a,
header.standard-header .logo{
color:#fff;
text-shadow:1px 1px 3px rgba(0,0,0,.5);
}

header.scrolled{
background:rgba(0,0,0,.95);
padding:15px 60px;
min-height:70px;
}

.logo{
color:#fff;
font-size:24px;
font-weight:800;
text-decoration:none;
}

.logo span{
color:#ff9800;
}

nav{
display:flex;
align-items:center;
gap:15px;
}

nav a{
color:#fff;
text-decoration:none;
font-weight:600;
text-transform:uppercase;
font-size:12px;
transition:.3s;
display:flex;
align-items:center;
}

nav a:hover{color:#ff9800;}

.has-submenu{
position:relative;
display:flex;
align-items:center;
}

.has-submenu::after{
content:' ▾';
font-size:12px;
margin-left:4px;
}

/* SUBMENU */

.submenu{
position:absolute;
top:calc(100% + 5px);
left:50%;
transform:translateX(-50%) translateY(-10px);
background:#000;
min-width:250px;
opacity:0;
visibility:hidden;
transition:.3s;
border-top:3px solid #ff9800;
z-index:99;
}

.has-submenu:hover .submenu{
opacity:1;
visibility:visible;
transform:translateX(-50%) translateY(0);
}

.submenu a{
display:block;
padding:10px 18px;
font-size:14px;
text-transform:none;
border-bottom:1px solid rgba(255,255,255,.1);
}

.submenu a:hover{
background:rgba(255,152,0,.1);
color:#ff9800;
padding-left:22px;
}

.submenu a:last-child{border-bottom:none;}

/* NESTED SUBMENU */

.has-nested-submenu{position:relative;}

.nested-submenu{
position:absolute;
top:0;
left:100%;
background:#000;
min-width:200px;
display:none;
border-left:2px solid #ff9800;
z-index:100000;
}

.has-nested-submenu:hover>.nested-submenu{display:block;}

.nested-submenu a{
padding:10px 15px;
font-size:13px;
white-space:nowrap;
}

.has-nested-submenu a i{
float:right;
font-size:10px;
margin-top:5px;
color:#ff9800;
}

/* CONTENT SPACING */

.main-content{margin-top:20px;}
.home-page-content{margin-top:0;}

/* ======================================================
   DEPARTMENT THEME (MASTER STYLE FOR ALL DEPTS)
====================================================== */

.about-container{
max-width:1400px;
margin:0 auto;
padding:40px 20px;
background:linear-gradient(135deg,#f8fafc,#e2e8f0,#f8fafc);
border-radius:20px;
}

.about-header{
text-align:center;
margin-bottom:60px;
padding:40px 0;
background:#fff;
border-radius:20px;
box-shadow:0 10px 30px rgba(0,0,0,0.08);
}

.about-header h1{
font-size:3rem;
font-weight:800;
color:#1a365d;
}

.info-section{
background:#fff;
padding:40px;
margin-bottom:30px;
border-radius:20px;
box-shadow:0 10px 25px rgba(0,0,0,0.06);
}

.info-section h2{
font-size:2rem;
margin-bottom:20px;
color:#1a365d;
border-bottom:3px solid #4299e1;
padding-bottom:10px;
}

/* NAV MENU */

.dept-nav-menu{
display:flex;
flex-wrap:wrap;
gap:15px;
justify-content:center;
align-items:center;
position:relative;
z-index:1000;
}

.nav-section{
display:flex;
flex-direction:row;
gap:15px;
flex-wrap:wrap;
justify-content:center;
position:relative;
z-index:10000;
}

.nav-dropdown{
position:relative;
display:inline-block;
width:auto;
z-index:1002;
overflow:visible;
}

.dropdown-content{
display:none;
position:absolute;
background:linear-gradient(135deg,#ffffff 0%,#f8f9fa 100%);
min-width:280px;
box-shadow:0 15px 35px rgba(0,0,0,0.15);
z-index:99999;
border-radius:12px;
border:2px solid #e2e8f0;
top:calc(100% + 10px);
left:0;
margin-top:0;
backdrop-filter:blur(10px);
animation:dropdownSlide 0.3s ease-out;
}

@keyframes dropdownSlide{
from{opacity:0;transform:translateY(-10px);}
to{opacity:1;transform:translateY(0);}
}

.dropdown-content a{
color:#2d3748;
padding:14px 20px;
text-decoration:none;
display:block;
font-size:0.9rem;
font-weight:500;
transition:all 0.3s ease;
border-bottom:1px solid #e2e8f0;
position:relative;
overflow:hidden;
}

.dropdown-content a:before{
content:'▸';
position:absolute;
left:8px;
color:#4299e1;
transition:all 0.3s ease;
}

.dropdown-content a:hover{
background:linear-gradient(135deg,#4299e1,#3182ce);
color:white;
padding-left:30px;
transform:translateX(5px);
}

.dropdown-content a:hover:before{
left:12px;
color:white;
}

.nav-link{
display:inline-block;
padding:14px 24px;
background:linear-gradient(135deg,#f8fafc 0%,#e2e8f0 100%);
border:2px solid #dee2e6;
border-radius:12px;
text-decoration:none;
font-weight:600;
color:#495057;
transition:all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
font-size:0.95rem;
text-align:center;
cursor:pointer;
border:none;
min-width:150px;
white-space:nowrap;
position:relative;
overflow:hidden;
text-transform:uppercase;
letter-spacing:0.5px;
}

.nav-link:before{
content:'';
position:absolute;
top:0;
left:-100%;
width:100%;
height:100%;
background:linear-gradient(90deg,transparent,rgba(255,255,255,0.3),transparent);
transition:left 0.5s;
}

.nav-link:hover:before{
left:100%;
}

.nav-link:hover{
background:linear-gradient(135deg,#4299e1,#3182ce);
color:white;
border-color:#4299e1;
transform:translateY(-3px) scale(1.05);
box-shadow:0 8px 25px rgba(66,153,225,0.4);
text-shadow:0 2px 4px rgba(0,0,0,0.1);
}

.nav-link.active{
background:linear-gradient(135deg,#007bff,#0056b3);
color:white;
border-color:#007bff;
box-shadow:0 6px 20px rgba(0,123,255,0.4);
transform:translateY(-2px);
text-shadow:0 2px 4px rgba(0,0,0,0.2);
}

.nav-link.active:after{
content:'';
position:absolute;
bottom:-5px;
left:50%;
transform:translateX(-50%);
width:0;
height:0;
border-left:8px solid transparent;
border-right:8px solid transparent;
border-top:8px solid #0056b3;
}

.nav-link.active:hover{
background-color:#0056b3;
transform:translateY(-2px);
box-shadow:0 4px 8px rgba(0,123,255,0.4);
}

/* CONTENT SWITCH */

.content-section{display:none;}
.content-section.active{display:block;}

.main-content-wrapper{
display:flex;
gap:30px;
margin-bottom:30px;
align-items:stretch;
height:500px;
}

.main-content-wrapper .info-section{
flex:1;
margin-bottom:0;
display:flex;
flex-direction:column;
height:100%;
}

.main-content-wrapper .info-section#about{
overflow-y:auto;
padding-right:15px;
}

.main-content-wrapper .info-section#hod{
justify-content:space-between;
}

.main-content-wrapper .info-section#about::-webkit-scrollbar{
width:8px;
}

.hod-container{
display:flex;
gap:30px;
align-items:center;
}

.hod-photo-section{
flex:0 0 auto;
}

.hod-photo-img{
width:180px;
height:240px;
object-fit:cover;
border-radius:15px;
border:4px solid #4299e1;
}

.hod-details-section{
flex:1;
}

.hod-details-section h3{
color:#2b6cb0;
font-size:1.4rem;
margin-bottom:10px;
}

.hod-details-section p{
margin-bottom:8px;
line-height:1.6;
}

.hod-details-section a{
color:#4299e1;
text-decoration:none;
}

.hod-details-section a:hover{
text-decoration:underline;
}

/* ======================================================
   FOOTER
====================================================== */

.footer-top-banner{
display:flex;
width:100%;
color:#fff;
margin-top:50px;
}

.banner-item{
flex:1;
padding:25px;
display:flex;
align-items:center;
justify-content:center;
gap:15px;
font-weight:600;
text-transform:uppercase;
font-size:14px;
}

.library{background:#f3a642;}
.sports{background:#6ec06e;}
.elearning{background:#5dbad3;}

footer{
background:#0b3c5d;
color:#fff;
padding:60px 40px 20px 40px;
width:100%;
}

.footer-container{
max-width:1200px;
margin:0 auto;
display:grid;
grid-template-columns:1.2fr 1fr 1fr 1.2fr;
gap:40px;
}

.footer-col ul{list-style:none;}

.footer-col h4{
font-size:1.2rem;
margin-bottom:25px;
font-weight:600;
color:#fff;
position:relative;
}

.footer-col h4::after{
content:'';
position:absolute;
left:0;
bottom:-8px;
width:30px;
height:2px;
background:#ffb300;
}

.footer-col ul li{
margin-bottom:12px;
font-size:13px;
display:flex;
align-items:center;
}

.footer-col ul li::before{
content:'▶';
font-size:10px;
color:#ffb300;
margin-right:10px;
}

.footer-col ul li a{
color:#fff;
text-decoration:none;
}

.footer-bottom{
border-top:1px solid rgba(255,255,255,0.1);
margin-top:40px;
padding-top:20px;
text-align:center;
font-size:12px;
}

/* NEWS + HIGHLIGHTS */

.news-list ul,
.highlights-list ul{
list-style:none;
padding:0;
margin:0;
}

.news-list li,
.highlights-list li{
padding:15px 0;
border-bottom:1px solid #e2e8f0;
line-height:1.6;
}

.news-list li strong,
.highlights-list li strong{
color:#2b6cb0;
font-size:1.1rem;
display:block;
margin-bottom:8px;
}

.news-list li:last-child,
.highlights-list li:last-child{
border-bottom:none;
}

/* MOBILE */

@media(max-width:768px){

.about-header h1{font-size:2rem;}

.main-content-wrapper{
flex-direction:column;
height:auto;
}

.main-content-wrapper .info-section{
height:auto;
}

.main-content-wrapper .info-section#about{
overflow-y:visible;
padding-right:0;
}

.dept-nav-menu{flex-direction:column;}

.nav-section{flex-direction:column;width:100%;}

.nav-link{width:100%;}

.hod-container{flex-direction:column;text-align:center;}

}
