
*{box-sizing:border-box}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#333;background:#f7f7f7}
.hero{position:relative;overflow:hidden}
.hero-img{width:100%;display:block}
.hero-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:rgba(0,0,0,.55);color:#fff;padding:25px 35px;border-radius:14px;text-align:center;max-width:600px}
.hero-text h1{margin:0 0 10px;font-size:2.4rem}
.hero-text p{margin:0 0 15px;font-size:1.1rem}
.btn{display:inline-block;background:#6fbf4a;color:#fff;padding:12px 28px;border-radius:30px;text-decoration:none;font-weight:bold}
.section{padding:60px 20px;text-align:center;background:#fff;margin-bottom:15px}
.section:nth-of-type(even){background:#eef7f0}
.section h2{margin-top:0;color:#3b7f2a;font-size:2rem;margin-bottom:15px}
.section p{max-width:900px;margin:0 auto;font-size:1.05rem;line-height:1.6}
.servicios-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;max-width:1100px;margin:25px auto 0}
.servicio-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 4px 10px rgba(0,0,0,.06);text-align:left}
.servicio-card h3{color:#2f6a22;margin-top:0}
.gallery-section{background:#fff}
.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:15px;max-width:1100px;margin:25px auto 0}
.gallery img{width:100%;border-radius:12px;cursor:pointer;transition:transform .25s,box-shadow .25s}
.gallery img:hover{transform:translateY(-4px);box-shadow:0 6px 16px rgba(0,0,0,.15)}
.video-wrapper{position:relative;padding-bottom:56.25%;height:0;max-width:900px;margin:25px auto 0}
.video-wrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:14px;border:none}
.redes-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:30px;margin-top:25px}
.red-card{background:#fff;border-radius:12px;padding:15px;box-shadow:0 4px 10px rgba(0,0,0,.06)}
.red-card h3{margin-top:0;color:#2f6a22}
.contacto-bonito{background:#eef7f0}
.contacto-bonito .sub{max-width:700px;margin:10px auto 40px}
.contacto-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:25px;max-width:1000px;margin:0 auto 40px}
.contacto-card{background:#fff;border-radius:16px;padding:25px;text-align:left;box-shadow:0 8px 20px rgba(0,0,0,.08)}
.contacto-card h3{margin-top:0;color:#2f6a22}
.contact-form{display:flex;flex-direction:column;gap:12px;margin-top:10px}
.contact-form input,.contact-form textarea{width:100%;padding:12px;border-radius:8px;border:1px solid #ccc;font-size:1rem}
.contact-form button{background:#6fbf4a;color:#fff;border:none;padding:12px;border-radius:30px;font-weight:bold;cursor:pointer}
.contact-form button:hover{background:#5aa03d}
.mapa{margin:0 auto;max-width:1100px}
.mapa iframe{width:100%;height:420px;border:0;border-radius:18px;margin-top:10px}
.footer{background:#222;color:#fff;text-align:center;padding:18px 10px;font-size:.9rem}
.footer a{color:#6fbf4a;text-decoration:none}
.footer a:hover{text-decoration:underline}
.whatsapp{position:fixed;bottom:20px;right:20px;background:#25d366;color:#fff;padding:14px 20px;border-radius:50px;text-decoration:none;font-weight:bold;box-shadow:0 4px 12px rgba(0,0,0,.25);font-size:.95rem}
.whatsapp:hover{background:#1ebe5b}
@media(max-width:768px){
  .hero-text{padding:18px 20px}
  .hero-text h1{font-size:1.9rem}
}
