
:root{
  --bg:#0b0d0f;
  --text:#1f2937;
  --brand:#1e3a34; /* verde oliva base */
  --brand-2:#c2a86b; /* dorado suave */
  --muted:#6b7280;
}
*{box-sizing:border-box}
body{margin:0;font-family:Poppins,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial,sans-serif;color:var(--text);line-height:1.5;background-color:#fff}
img{max-width:100%;height:auto;display:block}
.container{width:min(1160px,92%);margin:auto}
.site-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #eee}
.nav{display:flex;align-items:center;justify-content:space-between;padding:.8rem 0}
.brand{font-family:'Playfair Display',serif;font-size:1.5rem;font-weight:700;color:var(--brand);text-decoration:none}
.menu{display:flex;gap:1rem;list-style:none;margin:0;padding:0}
.menu a{display:block;padding:.6rem .8rem;border-radius:999px;text-decoration:none;color:var(--text)}
.menu a:hover{background:rgba(30,58,52,.1)}
.menu-toggle{display:none;border:0;background:transparent;font-size:1.6rem}
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:center;padding:2rem 0}
.hero-text h1{font-family:'Playfair Display',serif;font-size:2.6rem;margin:.2rem 0}
.hero-text p{color:var(--muted);margin-bottom:1rem}
.btn{background:var(--brand);color:#fff;border:0;padding:.8rem 1.1rem;border-radius:12px;cursor:pointer;text-decoration:none;font-weight:600;box-shadow:0 8px 20px rgba(30,58,52,.18)}
.btn:hover{filter:brightness(1.05)}
.section{padding:2.5rem 0}
h2{font-family:'Playfair Display',serif;font-size:2rem;margin:0 0 1rem}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.card{background:#fff;border:1px solid #eee;border-radius:16px;padding:1rem;box-shadow:0 4px 12px rgba(0,0,0,.04)}
.video-wrap{position:relative;padding-top:56.25%;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.08)}
.video-wrap iframe{position:absolute;inset:0;width:100%;height:100%}
.gallery{columns:2 320px;column-gap:10px}
.gallery img{border-radius:14px;margin:6px 0;cursor:zoom-in;transition:transform .2s ease}
.gallery img:hover{transform:scale(1.01)}
.embed{border:1px solid #eee;border-radius:12px;overflow:hidden;background:#fafafa}
.link{display:inline-block;margin-top:.6rem;color:var(--brand);text-decoration:none;font-weight:600}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:start}
.contact-list{list-style:none;padding:0;margin:0}
.contact-list li{margin:.4rem 0}
.form{display:grid;gap:.6rem}
input,textarea{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:12px;font:inherit}
.footer{background:#0f1114;color:#e5e7eb;padding:1.2rem 0;margin-top:2rem}
.footer a{color:#e5e7eb}
.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:.8rem;flex-wrap:wrap}

.whatsapp{position:fixed;right:18px;bottom:18px;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;
  background:#25D366;color:#fff;font-size:28px;text-decoration:none;box-shadow:0 10px 30px rgba(0,0,0,.2)}
.whatsapp:hover{transform:translateY(-2px)}

.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.85);display:none;place-items:center;z-index:60;padding:2rem}
.lightbox img{max-width:min(1200px,92%);max-height:84vh;border-radius:12px}

@media (max-width:920px){
  .hero{grid-template-columns:1fr}
  .grid-3{grid-template-columns:1fr}
  .contact{grid-template-columns:1fr}
  .menu-toggle{display:block}
  .menu{position:absolute;right:4%;top:64px;background:#fff;border:1px solid #eee;border-radius:12px;padding:.4rem;display:none;flex-direction:column}
  .menu.show{display:flex}
}
