*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{
font-family:Arial;
background:#f4f6f9;
overflow-x:hidden;
}

/* topbar */

.topbar{
background:#2c3e50;
color:white;
text-align:center;
padding:6px;
font-size:14px;
}

/* header */

.header{
background:white;
padding:15px;
border-bottom:1px solid #ddd;
}

/* navbar */

.navbar{
background:#0d6efd;
}

.navbar .container{
display:flex;
gap:20px;
}

.navbar a{
color:white;
text-decoration:none;
padding:12px 0;
}

/* container */

.container{
width:95%;
max-width:1200px;
margin:auto;
}

/* slider */

.hero-slider{
width:100%;
max-width:1200px;
margin:auto;
height:220px;
overflow:hidden;
position:relative;
}

.slide{
width:100%;
height:220px;
object-fit:cover;
display:none;
}

/* stats */

.stats{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:10px;
margin:20px 0;
}

.stat-box{
padding:15px;
border-radius:6px;
color:white;
text-align:center;
}

.green{background:#27ae60;}
.orange{background:#e67e22;}
.red{background:#e74c3c;}
.blue{background:#3498db;}

/* notices */

.notice-box{
background:white;
padding:15px;
border-radius:6px;
margin-top:20px;
}

.notice-box ul{
list-style:none;
}

.notice-box li{
padding:10px;
border-bottom:1px solid #eee;
}

/* services */

.services{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:10px;
margin-top:20px;
}

.service-box{
background:white;
padding:15px;
border-radius:6px;
box-shadow:0 2px 10px rgba(0,0,0,0.1);
text-align:center;
}

/* DM section */

.dm-section{
display:flex;
gap:20px;
background:white;
padding:20px;
margin-top:30px;
border-radius:8px;
}

.dm-img img{
width:160px;
border-radius:6px;
}

.dm-message{
flex:1;
}

.btn{
display:inline-block;
margin-top:10px;
padding:8px 14px;
background:#0d6efd;
color:white;
text-decoration:none;
border-radius:4px;
}

/* departments */

.departments{
margin-top:30px;
}

.dept-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:15px;
}

.dept-box{
background:white;
padding:20px;
text-align:center;
border-radius:6px;
box-shadow:0 2px 10px rgba(0,0,0,0.1);
}

/* gallery */

.gallery{
margin-top:30px;
}

.gallery-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:10px;
}

.gallery-grid img{
width:100%;
height:120px;
object-fit:cover;
border-radius:6px;
}

/* ticker */

.notice-ticker{
background:#ffefc1;
padding:8px;
margin-top:20px;
}


/* footer */

.footer{
background:#0b0f2f;
color:white;
padding:20px;
margin-top:30px;
}