/* ===== TOKENS ===== */
:root{--navy:#0B1F4D;--blue:#1677FF;--sky:#66C7FF;--bg:#F5F7FA;--txt:#526071;--ink:#172033;--r:16px;--sh:0 6px 24px rgba(11,31,77,.06);--f:'Manrope','Inter',system-ui,sans-serif}
*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth;scroll-padding-top:80px}
body{font:400 17px/1.7 var(--f);color:var(--txt);background:#fff;overflow-x:hidden}
.wrap{max-width:1240px;margin:auto;padding:0 24px}
h1,h2,h3{color:var(--navy);line-height:1.15;font-weight:800}
h1{font-size:clamp(36px,5.6vw,68px);letter-spacing:-.02em;margin:16px 0 20px}
h2{font-size:clamp(30px,4vw,46px);letter-spacing:-.015em;margin-bottom:16px;max-width:820px}
h3{font-size:clamp(19px,2vw,24px);margin-bottom:8px}
a{color:var(--blue)}:focus-visible{outline:3px solid var(--sky);outline-offset:3px}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:99}
.tag{font-size:12px;font-weight:700;letter-spacing:.14em;color:var(--blue);margin-bottom:8px}.tag.lt{color:var(--sky)}
.lead{font-size:19px;max-width:560px;margin-bottom:28px}.sub{max-width:780px;margin-bottom:32px}
/* ===== BUTTONS ===== */
.btn{display:inline-block;padding:14px 24px;border-radius:9px;font-weight:700;text-decoration:none;transition:.2s;font-size:15px}
.btn-p{background:var(--blue);color:#fff;box-shadow:0 6px 18px rgba(22,119,255,.3)}.btn-p:hover{background:#0f5fd6;transform:translateY(-1px)}
.btn-s{border:1.5px solid var(--navy);color:var(--navy)}.btn-s:hover{background:var(--navy);color:#fff}
.btn-l{background:#fff;color:var(--navy)}.btn-l:hover{background:var(--sky)}
.btns{display:flex;gap:14px;flex-wrap:wrap}
/* ===== HEADER ===== */
.hdr{position:fixed;inset:0 0 auto;z-index:50;transition:.25s}
.hdr.sc{background:#fff;box-shadow:0 2px 14px rgba(11,31,77,.08)}
.hdr-in{display:flex;align-items:center;justify-content:space-between;height:74px}
.wordmark{display:flex;gap:10px;align-items:center;text-decoration:none}.wordmark span{display:flex;flex-direction:column;line-height:1}
.wordmark b{color:var(--navy);font-size:22px;font-weight:800}.wordmark small{font-size:9.5px;letter-spacing:.2em;color:var(--navy);font-weight:600}
.nav{display:flex;gap:26px;align-items:center}.nav a:not(.btn){color:var(--ink);text-decoration:none;font-weight:600;font-size:15px}.nav a:not(.btn):hover{color:var(--blue)}
.nav-cta{padding:10px 18px}
.burger{display:none;background:none;border:0;padding:10px}.burger span{display:block;width:24px;height:2px;background:var(--navy);margin:5px 0;transition:.2s}
/* ===== HERO ===== */
.hero{min-height:780px;padding:130px 0 70px;background:radial-gradient(circle at 80% 30%,#e3f1ff,transparent 55%),linear-gradient(#fff,#f2f7fd);display:flex;align-items:center}
.hero-grid,.two{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.chips,.pills,.trust ul{list-style:none;display:flex;flex-wrap:wrap;gap:10px;padding:0}.chips{margin-top:36px}
.chips li{font-size:13px;font-weight:600;color:var(--navy);border:1px solid #cfe0f5;background:#fff;padding:6px 14px;border-radius:99px}
svg{max-width:100%;height:auto}
/* ===== TRUST ===== */
.trust{border-block:1px solid #e6ecf3;background:#fff}.trust-in{display:flex;gap:28px;align-items:center;padding:22px 24px;flex-wrap:wrap}
.trust span{font-size:12px;letter-spacing:.14em;font-weight:700;color:var(--blue)}.trust li{font-weight:600;color:var(--navy);font-size:14px}.trust ul{gap:10px 28px}
/* ===== SECTIONS ===== */
.sec{padding:110px 0}.alt{background:var(--bg)}
.dark{background:linear-gradient(160deg,#08163a,var(--navy));color:#c9d6ee}.dark h2{color:#fff}.mut{max-width:520px;margin-bottom:24px}.lead.lt{color:#fff}
.grid{display:grid;gap:22px}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
.card{background:#fff;border:1px solid #e6ecf3;border-radius:var(--r);padding:28px;box-shadow:var(--sh);transition:.25s}.alt .card{border-color:transparent}
.hov:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(11,31,77,.1)}
.card a{font-weight:700;font-size:15px;text-decoration:none;display:inline-block;margin-top:14px}
.ico{display:grid;place-items:center;width:44px;height:44px;border-radius:11px;background:#eaf3ff;color:var(--blue);font-style:normal;font-size:22px;margin-bottom:16px}
.num{font-size:44px;font-weight:800;color:var(--sky);line-height:1;display:block;margin-bottom:12px}
.quote{margin-top:44px;font-size:clamp(22px,2.6vw,30px);font-weight:700;color:var(--navy);border-left:4px solid var(--blue);padding-left:22px;max-width:820px}
.pills{margin:0 0 28px}.pills li{border:1px solid rgba(102,199,255,.5);color:#fff;padding:7px 16px;border-radius:99px;font-size:14px;font-weight:600}.pills.dk li{color:var(--navy);border-color:#cfe0f5;background:#fff}
/* ===== ARCH ===== */
.arch{display:flex;flex-direction:column;gap:0;margin-top:40px}
.lay{display:flex;flex-wrap:wrap;gap:10px;align-items:center;background:#fff;border:1px solid #d9e4f2;border-radius:14px;padding:16px 22px;position:relative;margin-bottom:26px}
.lay:not(:last-child)::after{content:"↓";position:absolute;left:50%;bottom:-27px;color:var(--blue);font-weight:800;line-height:26px}
.lay b{min-width:190px;color:var(--navy)}.lay span{background:var(--bg);border-radius:8px;padding:6px 14px;font-size:14px;font-weight:600;color:var(--navy)}
.lay.core{background:var(--navy);border-color:var(--navy)}.lay.core b{color:#fff}.lay.core span{background:#12296a;color:#fff}.lay.biz{background:#eaf3ff}
/* ===== STEPS ===== */
.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:22px;margin-top:40px;position:relative}
.steps::before{content:"";position:absolute;top:22px;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--sky),var(--blue))}
.steps li{position:relative;padding-top:0}.steps .num{background:var(--bg);display:inline-block;padding-right:12px;position:relative}
/* ===== ASSESS ===== */
.assess{background:linear-gradient(135deg,#eaf3ff,#f7fbff)}
.checks{list-style:none;padding:0;columns:2;gap:24px}.checks li{padding:5px 0 5px 28px;position:relative;font-weight:600;color:var(--ink)}.checks li::before{content:"✓";position:absolute;left:0;color:var(--blue);font-weight:800}
.result h3{font-size:26px;margin-bottom:20px}
/* ===== FORM ===== */
.form{display:grid;grid-template-columns:1fr 1fr;gap:16px;background:#fff;padding:32px;border-radius:var(--r)}
label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:700;color:var(--navy)}.full{grid-column:1/-1}
input,select,textarea{font:inherit;padding:12px;border:1.5px solid #cbd6e4;border-radius:9px;color:var(--ink);background:#fff}
input:focus,select:focus,textarea:focus{border-color:var(--blue);outline:2px solid var(--sky)}
.bad{border-color:#d1291f!important}.fmsg{font-weight:700;color:var(--navy)}.fmsg.err{color:#b3261e}
button.btn{border:0;cursor:pointer;font-family:inherit}
/* ===== FOOTER ===== */
.foot{background:#08163a;color:#a9b8d4;padding:56px 0 24px;font-size:15px}.foot b{color:#fff}.foot a{color:#a9b8d4}.foot a:hover{color:#fff}
.foot-in{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}.foot nav{display:grid;grid-template-columns:1fr 1fr;gap:6px}.foot-in a{text-decoration:none}
.copy{margin-top:36px;padding-top:20px;border-top:1px solid #1e3068;font-size:13px}
/* ===== MOTION ===== */
.rv{opacity:0;transform:translateY(14px);transition:opacity .6s,transform .6s}.rv.in{opacity:1;transform:none}
.draw .ln path{stroke-dasharray:1200;stroke-dashoffset:1200;animation:d 2.2s .3s ease forwards}@keyframes d{to{stroke-dashoffset:0}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}.rv{opacity:1;transform:none}.draw .ln path{stroke-dashoffset:0}}
/* ===== RESPONSIVE ===== */
@media(max-width:1024px){.g3,.g4{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.steps::before{display:none}.nav{gap:16px}.nav a:not(.btn){font-size:14px}}
@media(max-width:860px){.burger{display:block}
 .nav{position:fixed;inset:74px 0 auto;background:#fff;flex-direction:column;align-items:flex-start;padding:20px 24px 28px;gap:16px;box-shadow:0 12px 24px rgba(11,31,77,.1);transform:translateY(-130%);transition:.3s}.nav.open{transform:none}
 .hdr.menu{background:#fff}.hero-grid,.two{grid-template-columns:1fr;gap:36px}.hero{min-height:0;padding-top:110px}.sec{padding:72px 0}.foot-in{grid-template-columns:1fr}}
@media(max-width:600px){body{font-size:16px}.g2,.g3,.g4,.steps,.form,.checks{grid-template-columns:1fr;columns:1}.btn{width:100%;text-align:center}.lay b{min-width:100%}.form{padding:22px}}

/* Logo */
.logo-img{height:36px;width:auto;display:block}.wordmark{gap:12px}
.foot-logo{width:120px;height:auto;background:#fff;padding:10px 12px;border-radius:12px;margin-bottom:12px}

.nav a{white-space:nowrap}.nav{gap:20px}.nav-cta{padding:10px 16px}
@media(max-width:1100px){.burger{display:block}.nav{position:fixed;inset:74px 0 auto;background:#fff;flex-direction:column;align-items:flex-start;padding:20px 24px 28px;gap:16px;box-shadow:0 12px 24px rgba(11,31,77,.1);transform:translateY(-130%);transition:.3s}.nav.open{transform:none}.hdr.menu{background:#fff}}

.auth{margin-top:22px;font-size:14px;color:var(--navy);border-left:3px solid var(--sky);padding-left:14px;line-height:1.5}.auth b{font-weight:800}
.recibe{margin-top:64px}.recibe>h3{margin-bottom:22px}.flow{font-weight:700;color:var(--blue);margin:14px 0 20px;font-size:15px}
.wa{position:fixed;right:18px;bottom:18px;z-index:40;background:#fff;color:var(--navy);border:1.5px solid #cfe0f5;box-shadow:var(--sh);padding:9px 16px;border-radius:99px;font-size:14px;font-weight:700;text-decoration:none}.wa:hover{border-color:var(--blue)}

/* Artículos */
.art .hdr{background:#fff;box-shadow:0 2px 14px rgba(11,31,77,.08)}
.art-hero{padding:130px 0 40px;background:linear-gradient(#fff,#f2f7fd)}.art-w{max-width:800px}.art-hero .tag a{text-decoration:none}.by{font-size:14px;margin-top:8px}
.art-body{padding-top:40px;padding-bottom:70px}.art-body h2{font-size:clamp(22px,2.6vw,30px);margin:44px 0 12px}.art-body h3{font-size:20px;margin:26px 0 8px}
.art-body p,.art-body ul{margin-bottom:16px}.art-body ul{padding-left:22px}.art-body li{margin-bottom:6px}.art-body strong{color:var(--navy)}
.diag{background:var(--navy);color:#dbe9ff;padding:18px 22px;border-radius:14px;overflow-x:auto;font:600 14px/1.7 ui-monospace,Menlo,Consolas,monospace;margin:20px 0}
.rel .card{text-decoration:none}.rel .card h3{font-size:18px}.rel span{color:var(--blue);font-weight:700;font-size:15px}
