
:root{
  --bg:#0b0c10;
  --bg-2:#101217;
  --text:#f5f7fa;
  --muted:#cbd5e1;
  --primary:#e0b200; /* dorado sutil */
  --accent:#2dd4bf;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:Poppins,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--text);scroll-behavior:smooth}
img{max-width:100%;display:block}

.site-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:16px 20px;background:var(--bg-2);position:sticky;top:0;z-index:10;border-bottom:1px solid rgba(255,255,255,.08)}
.brand{display:flex;align-items:center;gap:14px}
.logo{width:52px;height:52px;object-fit:cover;border-radius:50%;border:2px solid rgba(255,255,255,.1)}
.titles h1{font-size:1.25rem;margin:0}
.tag{margin:2px 0 0 0;color:var(--muted);font-size:.9rem}
.top-nav a{color:var(--text);text-decoration:none;margin:0 10px;opacity:.9}
.top-nav a:hover{color:var(--primary)}

.hero{position:relative;min-height:58vh;display:grid}
.hero-img{width:100%;height:58vh;object-fit:cover;filter:grayscale(20%) brightness(0.8)}
.hero-overlay{position:absolute;inset:0;display:grid;place-content:center;gap:14px;text-align:center;padding:18px;background:linear-gradient(to top, rgba(0,0,0,.55), rgba(0,0,0,.25) 40%, transparent)}
.hero-overlay h2{font-size:clamp(1.6rem,3vw,3rem);margin:0}
.hero-overlay p{max-width:820px;margin:0 auto;color:var(--muted)}
.btn{display:inline-block;padding:12px 18px;border-radius:999px;text-decoration:none;transition:.2s ease;border:1px solid transparent}
.btn.primary{background:var(--primary);color:#1a1a1a;font-weight:600}
.btn.outline{border-color:rgba(255,255,255,.35);color:var(--text)}
.btn:hover{transform:translateY(-1px);filter:brightness(1.05)}

.section{padding:56px 18px;max-width:1100px;margin:0 auto}
.section h3{font-size:1.6rem;margin:0 0 18px 0}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.card{background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:18px;backdrop-filter:blur(6px)}

.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.g-img{border-radius:14px;cursor:pointer;transition:.2s}
.g-img:hover{transform:scale(1.01)}

.social-embeds{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}
.social-card{background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:18px}
.fb-container{width:100%;overflow:hidden}
.ig-placeholder{height:260px;border:1px dashed rgba(255,255,255,.25);border-radius:12px;display:grid;place-content:center;color:var(--muted)}

.video-wrap{position:relative;max-width:960px;margin:0 auto;border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:#000}
.yt{position:relative;width:100%;aspect-ratio:16/9;display:block}

.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;align-items:start}
.contact-form{display:grid;gap:12px}
.contact-form input,.contact-form textarea{width:100%;padding:12px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.03);color:var(--text)}
.contact-form button{justify-self:start}

.site-footer{padding:30px 18px;text-align:center;border-top:1px solid rgba(255,255,255,.08);background:var(--bg-2)}
.site-footer a{color:var(--primary)}

.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.8);display:none;align-items:center;justify-content:center;padding:20px;z-index:100}
.lightbox img{max-width:min(100%,1000px);max-height:85vh;border-radius:12px}
.lightbox .close{position:absolute;top:14px;right:16px;font-size:40px;background:none;border:none;color:white;cursor:pointer}

.wa-float{position:fixed;right:16px;bottom:16px;background:#25D366;border-radius:50%;width:58px;height:58px;display:grid;place-content:center;box-shadow:0 10px 30px rgba(0,0,0,.35);z-index:50}
.wa-ico{width:30px;height:30px;fill:#fff}

.fade-in{opacity:0;transform:translateY(10px);animation:fade .7s ease forwards}
.fade-in-slow{opacity:0;transform:translateY(10px);animation:fade 1.2s ease forwards}
@keyframes fade{to{opacity:1;transform:none}}

@media (max-width:560px){
  .hero-img{height:48vh}
}
