/* ================================
   Future Value Group – main.css
   Paleta y estilo base
   ================================ */

/* TIPOS: en tu <head> ya tenés:
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600;800&family=Playfair+Display:wght@600;700&display=swap" rel="stylesheet">
*/

:root{
  /* Colores (del logo) */
  --bg:#0e1a2b;           /* navy profundo */
  --surface:#0f1524;      /* panel oscuro */
  --card:#0f1726;         /* tarjeta/gradiente */
  --ink:#f5f7fa;          /* texto principal */
  --muted:#b8c2cf;        /* texto secundario */
  --brand:#b4985c;        /* dorado */
  --brand-2:#e5d2a3;      /* dorado claro */
  --line:rgba(255,255,255,.10);

  /* Layout */
  --wrap:1120px;
  --radius:16px;
  --shadow:0 8px 24px rgba(0,0,0,.24);
}

*{box-sizing:border-box}
html,body{height:100%}
html,body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

img{max-width:100%;height:auto;display:block}
a{text-decoration:none;color:var(--brand)}
a:hover{filter:brightness(1.12)}
p{margin:0 0 12px}

.wrap{max-width:var(--wrap);margin:0 auto;padding:0 22px}

/* ================================
   Header / Nav
   ================================ */
header.site-header{
  position:sticky;top:0;z-index:50;
  backdrop-filter:saturate(1.1) blur(8px);
  background:rgba(14,26,43,.70);
  border-bottom:1px solid var(--line);
  transition:box-shadow .2s ease, background .2s ease;
}
header.site-header.is-scrolled{box-shadow:var(--shadow);background:rgba(14,26,43,.82)}

.navbar{display:flex;align-items:center;gap:16px;min-height:64px}
.logo{display:flex;align-items:center;gap:10px;font-weight:800;}
.logo img{height:34px;width:auto;border-radius:8px}

.spacer{flex:1}

.nav-links{display:flex;gap:8px;align-items:center}
.nav-links a{
  color:var(--ink);
  padding:8px 12px;
  border-radius:12px;
  border:1px solid transparent;
}
.nav-links a:hover{border-color:var(--line)}
.nav-links a.active{border-bottom:2px solid var(--brand)}

.btn-cta{
  background:linear-gradient(90deg,var(--brand),var(--brand-2));
  color:#111;font-weight:800;border:none;
  padding:10px 14px;border-radius:12px;
}

/* Mobile menu */
.menu-toggle{
  display:none;
  padding:8px 12px;border-radius:12px;
  border:1px solid var(--line);
  background:transparent;color:var(--ink);
}

/* ================================
   Hero
   ================================ */
.hero{padding:72px 0 28px}
.hero h1{
  font-family:'Playfair Display',Georgia,Times,serif;
  font-weight:700;
  font-size:clamp(28px,5vw,56px);
  line-height:1.12;margin:10px 0 12px;
}
.hero p{color:var(--muted);max-width:760px}
.gold-line{height:2px;background:var(--brand);width:120px;margin:16px 0;border-radius:2px}

.kpis{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.kpi{padding:10px 12px;border:1px dashed var(--line);border-radius:12px;color:var(--muted)}

/* ================================
   Sections / Cards
   ================================ */
section{padding:40px 0}
.section-title{font-size:26px;margin:0 0 12px;font-weight:800}

.grid{
  display:grid;gap:18px;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
}

.card{
  background:linear-gradient(180deg,var(--card),#0c1422);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:18px;transition:transform .15s ease,border-color .15s ease;
}
.card:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.14)}
.card h3{
  font-family:'Playfair Display',Georgia,Times,serif;margin:.2rem 0 .3rem
}
.card p{color:var(--muted)}

/* Proceso / Steps */
.steps{
  display:grid;gap:16px;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
}
.step{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px}
.badge{display:inline-block;background:var(--brand);color:#111;padding:4px 10px;border-radius:999px;font-weight:800;font-size:12px}

/* Casos */
.cases{
  display:grid;gap:16px;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
}
.case{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px}
.case small{color:var(--muted)}

/* ================================
   Formularios
   ================================ */
form{display:grid;gap:10px}
label{font-weight:600}
input,textarea,select{
  background:var(--surface);
  border:1px solid var(--line);
  color:var(--ink);
  padding:10px 12px;border-radius:12px;
  outline:none;
}
input::placeholder,textarea::placeholder{color:#99a7b6}
button, .btn{
  cursor:pointer;border:none;
  padding:12px 16px;border-radius:12px;
  background:linear-gradient(90deg,var(--brand),var(--brand-2));
  color:#111;font-weight:800;
}

/* ================================
   Footer
   ================================ */
footer.site-footer{
  padding:28px 0;margin-top:24px;
  color:var(--muted);border-top:1px solid var(--line)
}

/* ================================
   Utils
   ================================ */
.hidden{display:none!important}
.center{text-align:center}
.mt-0{margin-top:0}.mb-0{margin-bottom:0}
.mt-16{margin-top:16px}.mb-16{margin-bottom:16px}

/* ================================
   Responsive
   ================================ */
@media (max-width:880px){
  .nav-links{display:none}
  .menu-toggle{display:inline-block}
  nav[aria-expanded="true"] .nav-links{
    display:grid;gap:8px;
    position:absolute;left:22px;right:22px;top:64px;
    background:var(--surface);
    border:1px solid var(--line);
    border-radius:12px;padding:10px;
  }
}

/* ================================
   Animaciones sutiles
   ================================ */
.reveal{opacity:0;transform:translateY(10px);transition:opacity .4s ease, transform .4s ease}
.reveal.is-in{opacity:1;transform:none}

/* ================================
   404 básico (por si no carga el CSS principal)
   ================================ */
.center-404{min-height:70vh;display:grid;place-items:center;text-align:center;padding:24px}
