:root { --bg:#030712; --bg2:#111827; --txt:#e5e7eb; --sub:#9ca3af; --mut:#6b7280; --acc:#a78bfa; --acc2:#7c3aed; --borde:rgba(255,255,255,.1); }
* { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; }
body { background:var(--bg); color:var(--txt); font:16px/1.65 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif; }
.wrap { max-width:1040px; margin:0 auto; padding:0 20px; }
section { padding:64px 0; border-top:1px solid var(--borde); }
h2 { font-size:clamp(1.6rem,4vw,2rem); color:#fff; margin:10px 0 24px; line-height:1.2; }
h3 { color:#fff; font-size:1.25rem; margin-bottom:6px; }
a { color:inherit; }
.eyebrow { color:var(--acc); font:600 12px ui-monospace,monospace; letter-spacing:.2em; text-transform:uppercase; }
.texto p { color:#d1d5db; max-width:780px; margin-bottom:14px; }
.texto strong { color:#fff; }

.hero { padding:88px 0 64px; background:radial-gradient(640px 420px at 85% 0,rgba(124,58,237,.22),transparent),linear-gradient(var(--bg2),var(--bg)); }
.hero h1 { font-size:clamp(2.4rem,7vw,4rem); color:#fff; line-height:1.05; margin:14px 0 20px; }
.hero .bajada { font-size:clamp(1.1rem,2.6vw,1.35rem); color:#d1d5db; max-width:720px; }
.volver { display:inline-block; color:var(--sub); text-decoration:none; font-size:.9rem; margin-bottom:28px; }
.volver:hover { color:#fff; }

.ctas { display:flex; flex-wrap:wrap; gap:12px; margin-top:32px; }
.btn { display:inline-block; text-decoration:none; border-radius:999px; padding:12px 24px; font-weight:600; font-size:.95rem; }
.btn-1 { background:var(--acc2); color:#fff; }
.btn-1:hover { background:#6d28d9; }
.btn-2 { border:1px solid rgba(255,255,255,.25); color:#fff; }
.btn-2:hover { background:rgba(255,255,255,.08); }

.kpis { display:grid; grid-template-columns:repeat(2,1fr); gap:14px; margin-top:44px; }
@media (min-width:900px) { .kpis { grid-template-columns:repeat(4,1fr); } }
.kpi { background:rgba(255,255,255,.04); border:1px solid var(--borde); border-radius:16px; padding:20px; }
.kpi b { display:block; font-size:clamp(1.6rem,4.5vw,2.2rem); color:#fff; line-height:1.15; white-space:nowrap; }
.kpi span { color:var(--sub); font-size:.9rem; }
.kpi.destacado { background:rgba(124,58,237,.14); border-color:rgba(167,139,250,.4); }
.kpi.destacado b { color:var(--acc); }
.fuente { color:var(--mut); font-size:.82rem; margin-top:12px; }

.datos { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:20px; margin-top:36px; padding:22px 0; border-block:1px solid var(--borde); }
.datos small { display:block; color:var(--mut); font-size:12px; text-transform:uppercase; letter-spacing:.08em; }
.datos b { font-weight:500; font-size:.95rem; }

.cuentas { display:grid; gap:18px; }
@media (min-width:860px) { .cuentas { grid-template-columns:1fr 1fr; } }
.cuenta { border:1px solid var(--borde); border-radius:18px; padding:26px; background:rgba(255,255,255,.03); display:flex; flex-direction:column; }
.cuenta .rubro { color:var(--acc); font-size:.85rem; font-weight:600; }
.cuenta .meta { color:var(--mut); font-size:.85rem; margin-bottom:14px; }
.cuenta p { color:#d1d5db; margin-bottom:12px; }
.cuenta ul { padding-left:20px; color:#d1d5db; margin-bottom:12px; }
.cuenta li { margin-bottom:6px; }
.cuenta .pie { margin-top:auto; padding-top:10px; }
.link { color:var(--acc); font-weight:600; text-decoration:none; }
.link:hover { text-decoration:underline; }
.chip { display:inline-block; font-size:.78rem; padding:2px 10px; border-radius:999px; background:rgba(255,255,255,.07); border:1px solid var(--borde); color:var(--sub); margin:0 6px 6px 0; }

.pasos { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:12px; counter-reset:paso; }
.paso { border:1px solid var(--borde); border-radius:14px; padding:18px; background:rgba(124,58,237,.06); }
.paso::before { counter-increment:paso; content:counter(paso); display:inline-grid; place-items:center; width:26px; height:26px; border-radius:50%; background:var(--acc); color:#111; font-weight:700; font-size:.8rem; margin-bottom:10px; }
.paso b { display:block; color:#fff; margin-bottom:4px; }
.paso span { color:var(--sub); font-size:.9rem; }

.suma { display:grid; gap:14px; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); }
.item { border-left:3px solid var(--acc2); padding:4px 0 4px 16px; }
.item b { display:block; color:#fff; margin-bottom:4px; }
.item p { color:var(--sub); font-size:.95rem; }

/* Embudo horizontal: el ancho de cada barra lo da --pct */
.embudo { display:grid; gap:10px; max-width:780px; margin:8px 0 18px; }
.barra { position:relative; border-radius:10px; background:rgba(255,255,255,.04); overflow:hidden; }
.barra::before { content:""; position:absolute; inset:0 auto 0 0; width:var(--pct); background:linear-gradient(90deg,rgba(124,58,237,.55),rgba(167,139,250,.35)); }
.barra div { position:relative; display:flex; justify-content:space-between; gap:12px; padding:10px 14px; font-size:.95rem; }
.barra b { color:#fff; }
.barra.perdida::before { background:linear-gradient(90deg,rgba(239,68,68,.5),rgba(239,68,68,.25)); }

.tabla { width:100%; max-width:780px; border-collapse:collapse; font-size:.95rem; margin-bottom:12px; }
.tabla th, .tabla td { text-align:left; padding:10px 12px; border-bottom:1px solid var(--borde); }
.tabla th { color:var(--mut); font-size:12px; text-transform:uppercase; letter-spacing:.08em; font-weight:600; }
.tabla td:first-child { color:#d1d5db; }
.tabla td b { color:var(--acc); }

.formacion p { color:#d1d5db; max-width:760px; }
.aviso { border:1px solid rgba(250,204,21,.3); background:rgba(250,204,21,.06); border-radius:14px; padding:16px 18px; color:#d1d5db; max-width:780px; }

.contacto { text-align:center; background:radial-gradient(520px 300px at 50% 100%,rgba(124,58,237,.18),transparent); }
.contacto p { color:#d1d5db; max-width:620px; margin:0 auto; }
.contacto .ctas { justify-content:center; }
footer { text-align:center; color:var(--mut); font-size:.8rem; padding:28px 0 40px; }
