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

body{

font-family:Inter;
background:#f7f5f2;
color:#333;
line-height:1.6;

}

h1,h2,h3{

font-family:Poppins;

}

.hero{

background:linear-gradient(120deg,#2f6d4e,#4aa874);
color:white;
padding:120px 10%;

}

.hero-container{

display:flex;
align-items:center;
justify-content:space-between;
gap:60px;

}

.hero-text{

max-width:500px;

}

.hero h1{

font-size:56px;
margin-bottom:20px;

}

.hero span{

color:#ffd6ea;

}

.hero p{

margin-bottom:30px;

}

.hero-buttons{

display:flex;
gap:15px;

}

.btn-primary{

background:#ff7aa8;
color:white;
padding:14px 28px;
border-radius:30px;
text-decoration:none;
font-weight:600;

}

.btn-secondary{

border:2px solid white;
padding:14px 28px;
border-radius:30px;
color:white;
text-decoration:none;

}



.hero-flowers{

position:relative;
font-size:70px;

}

.flower{

position:absolute;
animation:float 6s ease-in-out infinite;

}

.flower1{top:-20px;left:0}
.flower2{top:80px;left:80px}
.flower3{top:150px;left:-40px}
.flower4{top:40px;left:160px}

@keyframes float{

0%{transform:translateY(0)}
50%{transform:translateY(-20px)}
100%{transform:translateY(0)}

}



.section{

padding:80px 10%;
text-align:center;

}

.section.alt{

background:#eef4ef;

}

.cards{

display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
margin-top:40px;

}

.card{

background:white;
padding:30px;
border-radius:12px;
box-shadow:0 10px 25px rgba(0,0,0,0.08);

}



.schedule{

margin-top:30px;
font-size:18px;
display:flex;
flex-direction:column;
gap:10px;

}



.map{

margin:40px auto;
max-width:900px;

}



.contact{

background:#2f6d4e;
color:white;

}



footer{

text-align:center;
padding:30px;
background:#1f4733;
color:white;

}



@media(max-width:900px){

.hero-container{

flex-direction:column;
text-align:center;

}

.cards{

grid-template-columns:1fr;

}

.hero-buttons{

justify-content:center;

}

}
.floating-flowers{

position:fixed;
top:0;
left:0;
width:100%;
height:100%;
pointer-events:none;
overflow:hidden;
z-index:0;

}

.floating-flowers span{

position:absolute;
font-size:40px;
animation:fall linear infinite;
opacity:0.7;

}

.floating-flowers span:nth-child(1){
left:10%;
animation-duration:12s;
}

.floating-flowers span:nth-child(2){
left:25%;
animation-duration:16s;
}

.floating-flowers span:nth-child(3){
left:40%;
animation-duration:14s;
}

.floating-flowers span:nth-child(4){
left:60%;
animation-duration:18s;
}

.floating-flowers span:nth-child(5){
left:75%;
animation-duration:15s;
}

.floating-flowers span:nth-child(6){
left:90%;
animation-duration:17s;
}

@keyframes fall{

0%{
transform:translateY(-100px) rotate(0deg);
}

100%{
transform:translateY(110vh) rotate(360deg);
}

}

.btn-primary{

position:relative;
overflow:hidden;
transition:0.3s;

}

.btn-primary::after{

content:"";
position:absolute;
top:0;
left:-100%;
width:100%;
height:100%;

background:linear-gradient(120deg,transparent,rgba(255,255,255,0.5),transparent);

transition:0.5s;

}

.btn-primary:hover::after{

left:100%;
}

.telefono{

font-size:20px;
font-weight:500;
margin-bottom:25px;

}

.btn-contacto{

display:inline-block;
margin-top:10px;

}