body{
margin:0;
font-family:'Inter',sans-serif;
background:#f5f5f5;
color:#222;
line-height:1.6;
}

.announcement{
background:#ffd700;
color:#000;
text-align:center;
padding:8px;
font-weight:600;
}

.site-header{
position:sticky;
top:0;
background:#1e7f36;
color:white;
display:flex;
justify-content:space-between;
align-items:center;
padding:16px 30px;
z-index:1000;
}

.logo{
font-weight:700;
font-size:20px;
}

nav a{
color:white;
text-decoration:none;
margin-left:18px;
font-weight:500;
}

nav a:hover{
text-decoration:underline;
}

.hero{
height:520px;
background:url(hero.jpg) center/cover no-repeat;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
}

.hero-overlay{
background:rgba(0,0,0,0.45);
padding:60px;
color:white;
border-radius:6px;
}

.hero h1{
font-size:42px;
margin-bottom:10px;
}

.section{
padding:70px 30px;
max-width:1100px;
margin:auto;
}

.grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
gap:30px;
}

.card{
background:white;
padding:25px;
border-radius:6px;
box-shadow:0 4px 12px rgba(0,0,0,0.08);
}

.card h3{
margin-top:0;
}

.btn-primary{
background:#2fa24a;
color:white;
padding:12px 20px;
border-radius:4px;
text-decoration:none;
font-weight:600;
display:inline-block;
margin-top:15px;
}

.btn-secondary{
background:white;
color:#2fa24a;
padding:12px 20px;
border-radius:4px;
text-decoration:none;
margin-left:10px;
font-weight:600;
}

.site-footer{
background:#1e1e1e;
color:#aaa;
text-align:center;
padding:30px;
}

@media(max-width:768px){

.hero h1{
font-size:30px;
}

.section{
padding:50px 20px;
}

nav{
display:none;
}

}