:root{
  --bg:#0B0F1A; --surface:#0F1524; --overlay:#141B2E;
  --primary:#6EE7F0; --accent:#8B5CF6;
  --text:#E6E8EF; --muted:#AAB2C8; --line:#22304A;
  --radius:18px;
}

/* Reset mínimo */
*{box-sizing:border-box} html,body{height:100%}
body{margin:0; font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,'Helvetica Neue',Arial,sans-serif; background:var(--bg); color:var(--text)}
a{color:inherit; text-decoration:none}

/* Layout base */
.container{max-width:1200px; margin:0 auto; padding:0 24px}

/* Header */
header{position:sticky; top:0; z-index:10;
  background:linear-gradient(180deg, rgba(11,15,26,.95), rgba(11,15,26,.65) 70%, rgba(11,15,26,0));
  backdrop-filter: blur(6px);}
.nav{display:flex; align-items:center; justify-content:space-between; padding:20px 0;}
.brand{font-weight:800}
.navlinks{display:flex; gap:18px; align-items:center}
.btn{display:inline-flex; align-items:center; justify-content:center; padding:10px 16px; border-radius:14px; font-weight:600; border:1px solid transparent}
.btn.primary{background:var(--primary); color:#001017; box-shadow:0 10px 24px rgba(110,231,240,.18)}
.btn.ghost{border-color:var(--line); color:var(--text)}

/* Hero */
.hero{padding:56px 0 8px; text-align:center}
.hero h1{font-size:48px; line-height:1.1; margin:0 0 10px; font-weight:800}
.hero p{margin:0; color:var(--muted)}
.tagline{
  display:inline-flex; margin:22px auto 8px; padding:12px 20px; border-radius:999px;
  background:linear-gradient(90deg, rgba(110,231,240,.18), rgba(139,92,246,.18));
  border:1px solid #1f2c46; font-weight:600; color:#DFFBFF;
  box-shadow:0 10px 24px rgba(0,0,0,.25);
}

/* Grid tiles */
.grid{display:grid; grid-template-columns:repeat(2,1fr); gap:22px; padding:30px 0 8px}
.tile{position:relative; display:block; background:var(--surface); border:1px solid rgba(255,255,255,.06); border-radius:var(--radius); padding:18px 18px 22px; min-height:190px; overflow:hidden; transition:transform .2s, box-shadow .2s}
.tile:hover{transform:translateY(-2px); box-shadow:0 22px 44px rgba(0,0,0,.25)}
.tile h3{margin:0 0 6px; font-size:18px; font-weight:800}
.tile p{margin:0; color:var(--muted); max-width:72%}
.tile .cta{position:absolute; right:18px; bottom:16px; color:var(--primary); font-weight:700}
.tile .cta.disabled{color:var(--muted); pointer-events:none}
.tile .art{position:absolute; right:10px; bottom:10px; width:38%; height:auto; pointer-events:none; filter:drop-shadow(0 12px 24px rgba(110,231,240,.18))}
.icon{width:26px; height:26px; border-radius:7px; background:linear-gradient(180deg, #203355, #1a2742); display:inline-block; margin-right:8px; vertical-align:-6px; box-shadow:inset 0 0 0 1px #2a3a5a}

/* CTA inferior y footer */
.belt{display:flex; justify-content:center; padding:28px 0 46px}
.btn.secondary{background:transparent; border:1px solid var(--line); color:var(--text)}
.btn.secondary:hover{border-color:var(--primary)}
footer{border-top:1px solid var(--line); color:var(--muted)}
.foot{display:flex; align-items:center; justify-content:space-between; padding:22px 0 32px}
.foot a{color:var(--muted)} .foot a:hover{color:var(--primary)}

@media (max-width:860px){
  .hero h1{font-size:34px}
  .grid{grid-template-columns:1fr}
  .tile p{max-width:100%}
  .tile .art{width:44%}
  .navlinks .hide-sm{display:none}
}
