
:root{
  --olive:#a9b48a;
  --olive-dark:#7f8b61;
  --brown:#6b4f3a;
  --bg:#f7f8f6;
  --text:#2b2b2b;
  --muted:#6c6c6c;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--text);background:var(--bg);scroll-behavior:smooth}
a{color:var(--brown);text-decoration:none}
a:hover{text-decoration:underline}
.header{
  position:sticky;top:0;z-index:40;background:#ffffffee;backdrop-filter:saturate(180%) blur(10px);
  border-bottom:1px solid #e6e6e6;
}
.container{max-width:1100px;margin:0 auto;padding:0 16px}
.nav{display:flex;align-items:center;justify-content:space-between;padding:10px 0}
.logo{display:flex;align-items:center;gap:10px}
.logo img{width:36px;height:36px;border-radius:8px}
.brand{font-weight:700;letter-spacing:.5px}
.menu a{margin-left:16px;font-weight:600}
.hero{position:relative;display:grid;min-height:72vh;place-items:center;background:#000;overflow:hidden}
.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55;filter:grayscale(.1)}
.hero .overlay{position:relative;z-index:1;text-align:center;color:#fff;padding:40px 16px}
.badge{display:inline-block;background:var(--olive-dark);padding:6px 12px;border-radius:999px;font-size:.9rem;font-weight:600;letter-spacing:.2px}
h1{font-size:clamp(32px,6vw,58px);margin:14px 0 10px;line-height:1.05;letter-spacing:.4px}
.lead{font-size:clamp(16px,2.6vw,20px);opacity:.95}
.btn{display:inline-block;margin-top:18px;padding:12px 18px;border-radius:14px;background:#fff;color:#1a1a1a;font-weight:700;border:2px solid transparent;transition:.2s}
.btn:hover{transform:translateY(-2px);border-color:#fff;background:transparent;color:#fff}
.section{padding:56px 0}
.section.alt{background:#fff}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{background:#fff;border-radius:18px;padding:22px;box-shadow:0 8px 24px rgba(0,0,0,.06);border:1px solid #eee;transition:transform .2s}
.card:hover{transform:translateY(-4px)}
.card h3{margin:8px 0 6px}
.card p{color:var(--muted);margin:0}
.gallery{columns:1;column-gap:14px}
.gallery a{display:block;margin-bottom:14px;border-radius:14px;overflow:hidden;border:1px solid #eee;background:#fff}
.gallery img{width:100%;display:block;transition:transform .2s}
.gallery a:hover img{transform:scale(1.03)}
@media(min-width:700px){.gallery{columns:2}}
@media(min-width:1000px){.gallery{columns:3}}

.video-wrap{position:relative;padding-top:56.25%;border-radius:18px;overflow:hidden;border:1px solid #eee;background:#000}
.video-wrap iframe{position:absolute;inset:0;width:100%;height:100%}

.contact{display:grid;grid-template-columns:1.2fr .8fr;gap:24px}
@media(max-width:860px){.contact{grid-template-columns:1fr;gap:12px}}
.input{width:100%;padding:12px 14px;border:1px solid #ddd;border-radius:12px;margin-bottom:12px;font-size:16px;background:#fff}
textarea.input{min-height:120px;resize:vertical}
.submit{background:var(--olive);border:0;color:#fff;padding:12px 16px;border-radius:12px;font-weight:700;cursor:pointer}
.submit:hover{background:var(--olive-dark)}

.footer{padding:24px 0;border-top:1px solid #eaeaea;background:#fff}
.small{font-size:14px;color:var(--muted)}
.whatsapp-float{
  position:fixed;right:18px;bottom:18px;width:58px;height:58px;border-radius:50%;
  background:#25D366;display:grid;place-items:center;box-shadow:0 12px 24px rgba(0,0,0,.2);z-index:60;
}
.whatsapp-float img{width:30px;height:30px;filter:invert(1)}
.fade-in{opacity:0;transform:translateY(12px);animation:fade .8s ease forwards}
@keyframes fade{to{opacity:1;transform:none}}
.fb-wrapper{border:1px solid #eee;border-radius:18px;overflow:hidden;background:#fff}
.badges{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.badges span{background:#eef1e7;color:#5f6a46;font-weight:700;font-size:12px;padding:6px 10px;border-radius:999px}
