
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Segoe UI',Arial,sans-serif;background:#f5f5f5;color:#333;line-height:1.6}

.hero{height:90vh;background:url('../img/portada.jpg') center/cover no-repeat;display:flex;align-items:center;justify-content:center;text-align:center;position:relative;color:white}
.hero:after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.45)}
.hero-content{position:relative;max-width:800px;padding:20px}
.hero h1{font-size:50px;margin-bottom:10px}
.hero p{font-size:20px;margin-bottom:20px}

.btn{display:inline-block;padding:14px 28px;background:#e36b6b;color:white;border-radius:30px;text-decoration:none;margin:8px;font-weight:bold}

.section{padding:80px 20px;max-width:1200px;margin:auto}
.section h2{text-align:center;margin-bottom:40px;font-size:32px}

.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:25px}
.card{background:white;padding:30px;border-radius:12px;text-align:center;box-shadow:0 8px 20px rgba(0,0,0,.08);transition:.3s}
.card:hover{transform:translateY(-8px)}

.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px}
.gallery img{width:100%;border-radius:10px;cursor:pointer}

.video{text-align:center}
iframe{max-width:100%;border-radius:10px}

.contact{display:grid;grid-template-columns:1fr 1fr;gap:30px}
@media(max-width:800px){.contact{grid-template-columns:1fr}.hero h1{font-size:34px}}

form{display:grid;gap:12px}
input,textarea{padding:12px;border-radius:6px;border:1px solid #ccc}
button{padding:14px;border:none;background:#222;color:white;border-radius:6px;cursor:pointer}

.map iframe{width:100%;height:350px;border:0;border-radius:10px}

footer{background:#222;color:white;text-align:center;padding:25px;margin-top:60px}

.whatsapp{position:fixed;bottom:25px;right:25px;background:#25D366;color:white;padding:16px 18px;border-radius:50%;font-size:22px;text-decoration:none;box-shadow:0 6px 15px rgba(0,0,0,.2)}
