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

body{
font-family:'Inter',sans-serif;
background:#f6f0e6;
color:#222;
line-height:1.7;
}

.hero{
position:relative;
min-height:100vh;
min-height:100svh;
min-height:var(--hero-height,100svh);
background:url('banner.jpg');
background-size:cover;
background-position:center;
display:flex;
flex-direction:column;
color:white;
}

.overlay{
position:absolute;
inset:0;
background:rgba(0,0,0,.55);
}

nav{
position:relative;
z-index:2;
display:flex;
justify-content:space-between;
align-items:center;
padding:28px 60px;
}

.logo{
font-family:'Cinzel',serif;
font-size:1.2rem;
}

.menu a{
color:white;
text-decoration:none;
margin-left:28px;
}

.hero-content{
position:relative;
z-index:2;
margin:auto;
text-align:center;
padding:20px;
max-width:900px;
}

.hero-content h1{
font-family:'Cinzel',serif;
font-size:4rem;
margin-bottom:25px;
}

.hero-content p{
font-size:1.2rem;
margin-bottom:40px;
}

.button{
display:inline-block;
background:#8b6a2d;
color:white;
text-decoration:none;
padding:15px 32px;
border-radius:8px;
}

.section{
padding:90px 25px;
}

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

.intro{
padding:70px 25px;
text-align:center;
}

.section h2,
.intro h2{
font-family:'Cinzel',serif;
font-size:2.4rem;
margin-bottom:18px;
}

.title-block{
text-align:center;
margin-bottom:50px;
}

.gold-line{
width:120px;
height:3px;
background:#8b6a2d;
margin:20px auto 0;
}

.two-columns{
display:grid;
grid-template-columns:1.1fr 1fr;
gap:40px;
align-items:center;
margin-bottom:50px;
}

.image-card img{
width:100%;
border-radius:18px;
box-shadow:0 10px 30px rgba(0,0,0,.25);
}

.info-card{
background:white;
padding:35px;
border-radius:18px;
box-shadow:0 8px 25px rgba(0,0,0,.08);
}

.info-card p{
margin-bottom:25px;
}

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

.schedule-card{
background:white;
padding:30px;
border-radius:18px;
box-shadow:0 8px 25px rgba(0,0,0,.08);
}

.schedule-card h3{
font-family:'Cinzel',serif;
margin-bottom:20px;
color:#8b6a2d;
}

.schedule-card ul{
padding-left:20px;
}

.dark-section{
background:#1f1a16;
color:#f5ede0;
}

.fsspx-card{
background:#2c241f;
padding:40px;
border-radius:18px;
max-width:800px;
margin:auto;
}

.center{
text-align:center;
}

footer{
background:#111;
color:white;
text-align:center;
padding:30px;
}

.whatsapp-link{
display:inline-flex;
align-items:center;
gap:8px;
background:#25d366;
color:white;
text-decoration:none;
padding:10px 20px;
border-radius:8px;
font-weight:500;
font-size:.95rem;
margin-top:4px;
}

.whatsapp-link:hover{
background:#1ebe5c;
}

.youth-card{
background:white;
border-radius:18px;
box-shadow:0 8px 25px rgba(0,0,0,.08);
padding:35px 40px;
margin-top:25px;
border-left:5px solid #8b6a2d;
}

.youth-card h3{
font-family:'Cinzel',serif;
color:#8b6a2d;
font-size:1.25rem;
margin-bottom:22px;
}

.youth-program{
display:grid;
grid-template-columns:auto 1fr;
gap:30px;
align-items:start;
margin-bottom:22px;
}

.youth-program ul{
padding-left:20px;
}

.youth-program ul li{
margin-bottom:4px;
}

.youth-notes{
background:#fdf7ee;
border-radius:10px;
padding:18px 22px;
font-size:.92rem;
color:#555;
}

.youth-notes p{
margin-bottom:6px;
}

.youth-notes p:last-child{
margin-bottom:0;
}

@media(max-width:900px){
.youth-program{
grid-template-columns:1fr;
gap:18px;
}
.youth-card{
padding:25px;
}
}

@media(max-width:900px){

nav{
flex-direction:column;
gap:20px;
padding:25px;
}

.hero-content h1{
font-size:2.5rem;
}

.two-columns{
grid-template-columns:1fr;
}

.schedule-grid{
grid-template-columns:1fr;
}

}
