/* Reset */
* { box-sizing:border-box; margin:0; padding:0; font-family: Arial, sans-serif; }
body { line-height:1.6; color:#333; }
header { background: url('images/banner.jpg') no-repeat center center/cover; height: 70vh; color:white; display:flex; justify-content:center; align-items:center; text-align:center; position:relative; }
.hero-overlay { background-color: rgba(0,0,0,0.5); width:100%; height:100%; display:flex; flex-direction:column; justify-content:center; align-items:center; }
header h1 { font-size:3rem; margin-bottom:0.5rem; }
header p { font-size:1.5rem; margin:0.3rem 0; }
header .button { padding:12px 25px; background:#28a745; color:white; text-decoration:none; border-radius:5px; margin-top:15px; }
nav { background:#f4f4f4; padding:15px 20px; display:flex; justify-content:center; gap:25px; }
nav a { text-decoration:none; color:#333; font-weight:bold; }
nav a:hover { color:#28a745; }
section { padding:60px 20px; max-width:1200px; margin:auto; }
h2 { text-align:center; margin-bottom:40px; font-size:2.2rem; }
p { max-width:800px; margin:auto 0; text-align:center; }
.about-content { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:25px; margin-bottom:40px; }
.section-img { max-width:400px; border-radius:10px; }
.programs { display:flex; flex-wrap:wrap; gap:25px; justify-content:center; }
.program { flex:1 1 300px; background:#f9f9f9; padding:25px; border-radius:10px; box-shadow:0 0 10px rgba(0,0,0,0.1); text-align:center; }
.program img { max-width:100%; border-radius:10px; margin-bottom:15px; }
.program h3 { margin-bottom:15px; color:#28a745; }
.button { display:inline-block; padding:12px 25px; background:#007BFF; color:white; text-decoration:none; border-radius:5px; font-weight:bold; margin-top:15px; }
.button:hover { background:#218838; }
form { max-width:600px; margin:auto; display:flex; flex-direction:column; gap:15px; }
input, textarea { padding:10px; border-radius:5px; border:1px solid #ccc; width:100%; }
button { padding:12px; border:none; border-radius:5px; background:#28a745; color:white; font-weight:bold; cursor:pointer; }
button:hover { background:#218838; }
footer { background:#333; color:white; text-align:center; padding:25px; }
@media(max-width:768px){ .programs { flex-direction:column; } .about-content { flex-direction:column; } header h1 { font-size:2.2rem; } header p { font-size:1.2rem; }}