/*
Theme Name: ElevTheme (Oficial v2)
Text Domain: elevtheme
*/

:root{
  --brand:#1D3A5B;     /* Azul Elev */
  --brand-dark:#0B223A;
  --ink:#0F172A;
  --muted:#64748B;
  --bg:#FFFFFF;
  --card:#F8FAFC;
  --wa:#2BD165;
}

/* Reset & base */
*{box-sizing:border-box}
html,body{margin:0;scroll-behavior:smooth}
body{font-family:'Montserrat',system-ui,-apple-system,Segoe UI,Roboto,Arial;background:var(--bg);color:var(--ink)}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}

.container{width:min(1120px,100% - 2rem);margin-inline:auto}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:.6rem;padding:.9rem 1.25rem;border-radius:1rem;
  font-weight:600;border:1px solid transparent;transition:.25s;background:var(--brand);color:#fff;
  box-shadow:0 8px 18px rgba(29,58,91,.18)}
.btn:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(29,58,91,.25);background:var(--brand-dark)}
.btn.secondary{background:#fff;color:var(--brand);border-color:var(--brand)}
.btn.whats{background:var(--wa);color:#fff;border-color:transparent}
.btn.whats:hover{filter:saturate(110%)}

/* Header */
header.site-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #E2E8F0}
.nav{display:flex;align-items:center;justify-content:space-between;padding:1.1rem 0}
.brand{display:flex;align-items:center;gap:.8rem}
.brand img{height:46px;width:auto}
.menu{display:flex;align-items:center;gap:1.2rem}
.menu a{font-weight:600;color:var(--brand);text-decoration:none;padding:.25rem .2rem;border-radius:.5rem}
.menu a:hover{color:var(--brand-dark)}
.cta{margin-left:.75rem}
.hamb{display:none;cursor:pointer;border:1px solid #E2E8F0;border-radius:.7rem;padding:.5rem;background:#fff}
.hamb span{display:block;width:22px;height:2px;background:#0b1e33;margin:5px 2px;border-radius:2px}

@media(max-width:980px){
  .menu{display:none;position:absolute;left:0;right:0;top:72px;background:#fff;border-bottom:1px solid #E2E8F0;
    padding:1rem 1rem 1.25rem;flex-direction:column;align-items:flex-start}
  .menu.open{display:flex}
  .hamb{display:block}
  .cta{margin:0}
}

/* Hero */
.hero{position:relative;min-height:72vh;display:grid;place-items:center}
.hero .overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,.20) 40%,rgba(0,0,0,.15))}
.hero .content{position:relative;color:#fff;padding:2.25rem 0}
.headline{font-weight:800;letter-spacing:.2px;font-size:clamp(30px,5vw,56px);line-height:1.05;margin:0 0 1rem;text-shadow:0 2px 8px rgba(0,0,0,.35)}
.sub{font-size:clamp(16px,2.2vw,21px);opacity:.98;max-width:760px;text-shadow:0 1px 6px rgba(0,0,0,.35)}
.actions{display:flex;gap:.75rem;flex-wrap:wrap}

/* Sections */
.section{padding:4.2rem 0}
.title{font-size:clamp(26px,4vw,38px);margin:0 0 1rem;font-weight:800;color:#0b1e33}
.lead{color:var(--muted);max-width:860px}

/* Cards / gallery */
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem;margin-top:1.5rem}
.tile{position:relative;overflow:hidden;border-radius:1.2rem;border:1px solid #E2E8F0;background:#fff;box-shadow:0 4px 18px rgba(2,6,23,.06)}
.tile img{height:260px;width:100%;object-fit:cover;transition:transform .5s ease}
.tile:hover img{transform:scale(1.03)}
.tile .cap{padding:.9rem;font-weight:600;color:#0b1e33;border-top:1px solid #EEF2F7}

@media(max-width:980px){.gallery{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.gallery{grid-template-columns:1fr}.tile img{height:220px}}

/* Features */
.features{padding:4rem 0;background:linear-gradient(180deg,#fff,#F8FAFC)}

/* Forms */
.card{background:var(--card);border:1px solid #E2E8F0;border-radius:1.2rem;padding:1.25rem;box-shadow:0 1px 0 rgba(15,23,42,.03)}
input,select,textarea{width:100%;padding:.8rem 1rem;border:1px solid #D7DEE7;border-radius:.9rem;font:inherit}
textarea{min-height:160px}

/* Footer */
footer.site-footer{background:#0B223A;color:#C9D6E5}
footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:1.5rem;padding:2.5rem 0}
footer a{color:#C9D6E5;opacity:.9}
footer a:hover{opacity:1}
footer .copyright{border-top:1px solid #17324E;padding:1.2rem 0;color:#9DB2C6}
@media(max-width:860px){footer .cols{grid-template-columns:1fr}}

/* WhatsApp FAB */
.whats{position:fixed;right:18px;bottom:18px;height:56px;width:56px;border-radius:50%;display:grid;place-items:center;background:var(--wa);color:#fff;box-shadow:0 8px 18px rgba(0,0,0,.18)}
.whats svg{width:28px;height:28px;display:block}

/* Reveal */
.reveal{opacity:0;transform:translateY(16px);transition:all .6s ease}
.reveal.show{opacity:1;transform:none}

/* HERO FIX + FADE-IN */
.hero {
  background-image: url('assets/fachada.jpg');
  background-position: center 25% !important;
  background-size: cover !important;
  background-repeat: no-repeat;
  animation: heroFadeIn 1.8s ease-in-out forwards;
  opacity: 0;
}
@keyframes heroFadeIn {
  0% { opacity: 0; transform: scale(1.02); }
  100% { opacity: 1; transform: scale(1.0); }
}
