:root{
  --bg:#0d1117; --panel:#161b22; --borde:#2d333b;
  --txt:#e6edf3; --txt2:#9aa4af; --acento:#4f8ef7; --acento2:#2ea86f;
}
*{margin:0;padding:0;box-sizing:border-box}
body{background:var(--bg);color:var(--txt);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.6}
a{color:var(--acento)}
.wrap{max-width:860px;margin:0 auto;padding:0 20px}
header{padding:26px 0;border-bottom:1px solid var(--borde)}
.logo{font-size:22px;font-weight:800;letter-spacing:.5px;color:var(--txt);text-decoration:none}
.logo span{color:var(--acento)}
.hero{padding:70px 0 50px;text-align:center}
.hero h1{font-size:34px;line-height:1.25;font-weight:800;max-width:640px;margin:0 auto 18px}
.hero h1 em{color:var(--acento);font-style:normal}
.hero p{color:var(--txt2);font-size:17px;max-width:560px;margin:0 auto}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;padding:10px 0 50px}
.card{background:var(--panel);border:1px solid var(--borde);border-radius:12px;padding:22px}
.card .ico{font-size:26px;margin-bottom:10px}
.card h3{font-size:16px;margin-bottom:6px}
.card p{color:var(--txt2);font-size:14px}
.sec{padding:40px 0;border-top:1px solid var(--borde)}
.sec h2{font-size:22px;margin-bottom:14px}
.sec p{color:var(--txt2);max-width:640px}
.contacto{background:var(--panel);border:1px solid var(--borde);border-radius:12px;padding:26px;margin:10px 0 50px}
.contacto h2{font-size:20px;margin-bottom:10px}
.contacto a{text-decoration:none;font-weight:600}
.dato{margin:6px 0;color:var(--txt2)}
.dato b{color:var(--txt)}
footer{border-top:1px solid var(--borde);padding:24px 0;color:var(--txt2);font-size:13px;text-align:center}
footer a{color:var(--txt2);margin:0 8px}
.legal{padding-top:40px;padding-bottom:60px}
.legal h1{font-size:28px;line-height:1.3;margin-bottom:6px}
.legal .fecha{color:var(--txt2);font-size:14px;margin-bottom:28px}
.legal h2{font-size:19px;margin:28px 0 10px}
.legal p,.legal li{color:var(--txt2);margin-bottom:10px}
.legal ul{padding-left:22px;margin-bottom:10px}
.legal b{color:var(--txt)}
.legal .caja{background:var(--panel);border:1px solid var(--borde);border-radius:12px;padding:18px 20px;margin:16px 0}
@media (max-width:520px){.hero h1{font-size:26px}.legal h1{font-size:23px}}
