/* Vexa 4.5.0 · portada (Modelo A: claro y luminoso). Tipografía Plus Jakarta Sans servida por Vexa (licencia OFL). */
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/plus-jakarta-sans-latin-400-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/plus-jakarta-sans-latin-500-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/plus-jakarta-sans-latin-600-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/plus-jakarta-sans-latin-700-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:800;font-display:swap;src:url('fonts/plus-jakarta-sans-latin-800-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:400 800;font-display:swap;src:url('fonts/plus-jakarta-sans-latin-ext-600-normal.woff2') format('woff2');unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

.lp{--ink:#0f2537;--muted:#4b6274;--soft:#6c8394;--line:#e1e9f1;--teal:#167e86;--teal2:#14a39b;
 min-height:100vh;background:#f6f9fc;color:var(--ink);font-family:'Plus Jakarta Sans',Inter,system-ui,sans-serif;overflow-x:hidden}
.lp *{box-sizing:border-box}
.lp-bg{background:radial-gradient(1200px 600px at 85% -10%,#d9f3f1 0,transparent 60%),radial-gradient(900px 500px at -10% 20%,#e3ecff 0,transparent 55%)}
.lp-nav{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 6%}
.lp-brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:20px;letter-spacing:-.02em}
.lp-brand img{height:36px;width:auto;border-radius:8px;background:#fff}
.lp-links{display:flex;flex-direction:row;gap:6px;margin:0}
.lp-links button{all:unset;cursor:pointer;color:var(--muted);font-size:14.5px;padding:8px 12px;border-radius:9px}
.lp-links button:hover{color:var(--ink);background:#ffffffaa}
.lp-links button:focus-visible,.lp-btn:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
.lp-nav-actions{display:flex;gap:10px}
.lp-btn{border-radius:12px;padding:12px 20px;font:600 14.5px 'Plus Jakarta Sans',Inter,sans-serif;border:1px solid transparent;cursor:pointer;transition:transform .15s,box-shadow .15s,background .15s;white-space:nowrap}
.lp-btn:hover{transform:translateY(-1px)}
.lp-ghost{background:#fff;border-color:#dbe5ee;color:var(--ink)}
.lp-dark{background:var(--ink);color:#fff;box-shadow:0 10px 24px #0f253733}
.lp-teal{background:linear-gradient(135deg,var(--teal2),var(--teal));color:#fff;box-shadow:0 14px 30px #167e8640}
.lp-teal:hover{box-shadow:0 18px 36px #167e8655}
.lp-hero{display:grid;grid-template-columns:1fr 1.05fr;gap:60px;align-items:center;padding:56px 6% 100px;max-width:1500px;margin:0 auto}
.lp-pill{display:inline-flex;gap:8px;align-items:center;background:#fff;border:1px solid #d8eceb;color:#0f6b6f;border-radius:999px;padding:7px 14px 7px 8px;font-size:13px;font-weight:600;box-shadow:0 4px 14px #0f25370d}
.lp-pill b{background:var(--teal);color:#fff;border-radius:999px;padding:3px 9px;font-size:11.5px}
.lp h1{font-family:'Plus Jakarta Sans',Inter,sans-serif;font-size:clamp(40px,5vw,66px);line-height:1.02;letter-spacing:-.045em;margin:22px 0 20px;font-weight:800;color:var(--ink)}
.lp h1 em{font-style:normal;background:linear-gradient(90deg,var(--teal),#2a78d6);-webkit-background-clip:text;background-clip:text;color:transparent}
.lp-lead{font-size:18.5px;line-height:1.6;color:var(--muted);max-width:540px;margin:0 0 30px}
.lp-cta{display:flex;gap:12px;flex-wrap:wrap}
.lp-checks{list-style:none;padding:0;margin:22px 0 0;display:flex;gap:18px;flex-wrap:wrap;font-size:13px;color:var(--soft)}
.lp-checks li:before{content:"✓ ";color:var(--teal);font-weight:800}
.lp-app{position:relative;margin:0;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 40px 90px #0f25371f,0 4px 14px #0f25370f;animation:lp-rise .7s ease both .1s}
.lp-app-top{display:flex;gap:7px;padding:13px 16px;border-bottom:1px solid #eef3f7;background:#fbfcfe;border-radius:22px 22px 0 0}
.lp-app-top i{width:10px;height:10px;border-radius:50%;background:#e2e8ef}
.lp-app-body{display:grid;grid-template-columns:150px 1fr;border-radius:0 0 22px 22px;overflow:hidden}
.lp-side{background:#142f46;color:#c9d9e6;padding:16px 12px;font-size:12px;display:flex;flex-direction:column;gap:6px}
.lp-side b{color:#fff;font-size:14px;margin-bottom:10px}.lp-side span{padding:7px 9px;border-radius:8px}.lp-side .on{background:#24516b;color:#fff}
.lp-main{padding:18px}
.lp-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.lp-kpis>div{border:1px solid #e6eef5;border-radius:12px;padding:11px}
.lp-kpis small{font-size:10.5px;color:var(--soft)}.lp-kpis strong{display:block;font-size:22px;margin-top:3px}
.lp-kpis em{font-style:normal;font-size:10.5px;color:#0f6b4d}.lp-kpis em.muted{color:var(--soft)}
.lp-chart{margin-top:12px;border:1px solid #e6eef5;border-radius:12px;padding:12px;height:150px;display:flex;align-items:flex-end;gap:7px}
.lp-chart i{flex:1;background:linear-gradient(#1fb3a9,var(--teal));border-radius:4px 4px 0 0;transform-origin:bottom;animation:lp-grow .8s cubic-bezier(.2,.8,.2,1) both}
.lp-chart i:nth-child(n){animation-delay:calc(var(--i,0) * 40ms)}
.lp-float{position:absolute;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 40px #0f25371f;padding:12px 14px;font-size:12.5px;color:var(--ink)}
.lp-f1{left:-54px;bottom:-34px;width:236px;display:flex;flex-direction:column;gap:4px;animation:lp-float 6s ease-in-out infinite}
.lp-f1 b{font-size:13px}.lp-bar{display:block;height:6px;border-radius:6px;background:#e9f0f6;overflow:hidden;margin-top:4px}.lp-bar i{display:block;height:100%;background:#1baf7a}
.lp-ok{color:#0f6b4d;font-weight:600}
.lp-f2{right:-24px;top:-30px;display:flex;gap:10px;align-items:center;animation:lp-float 7s ease-in-out infinite .8s}
.lp-f2 small{display:block;color:var(--soft)}
.lp-ic,.lp-step-ic,.lp-card-ic{display:grid;place-items:center;border-radius:10px;background:#e6f4f3;color:var(--teal)}
.lp-ic{width:34px;height:34px}
.lp svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.lp-app figcaption{position:absolute;right:14px;bottom:-26px;font-size:11px;color:#9aabb8}
.lp-section{padding:80px 6% 90px;max-width:1500px;margin:0 auto}
.lp-kicker{color:var(--teal);font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.lp h2{font-family:'Plus Jakarta Sans',Inter,sans-serif;font-size:clamp(28px,3.2vw,40px);letter-spacing:-.035em;margin:10px 0 40px;max-width:640px;line-height:1.1;color:var(--ink);font-weight:800}
.lp-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.lp-steps article,.lp-grid article{background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px;box-shadow:0 10px 30px #0f25370a;position:relative;transition:transform .2s,box-shadow .2s}
.lp-steps article:hover,.lp-grid article:hover{transform:translateY(-3px);box-shadow:0 18px 40px #0f253714}
.lp-n{position:absolute;right:22px;top:20px;font-size:44px;font-weight:800;color:#edf3f8;letter-spacing:-.04em}
.lp-step-ic{width:44px;height:44px;border-radius:13px;background:var(--ink);color:#fff;margin-bottom:16px}
.lp-steps h3{margin:0 0 8px;font-size:19px;font-family:inherit}.lp-steps p,.lp-grid p{margin:0;color:var(--muted);line-height:1.55;font-size:15px}
.lp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px}
.lp-grid article{padding:22px}.lp-card-ic{width:40px;height:40px}
.lp-grid h4{margin:12px 0 6px;font-size:16px;font-family:inherit}.lp-grid p{font-size:14px}
.lp-footer{background:var(--ink);color:#b9cad8;padding:34px 6%;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:14px}
@keyframes lp-rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes lp-grow{from{transform:scaleY(.15);opacity:.4}to{transform:none;opacity:1}}
@keyframes lp-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@media (prefers-reduced-motion:reduce){.lp-app,.lp-chart i,.lp-f1,.lp-f2{animation:none}.lp-btn:hover,.lp-steps article:hover,.lp-grid article:hover{transform:none}}
@media (max-width:1100px){.lp-hero{grid-template-columns:1fr;gap:70px;padding-bottom:80px}.lp-app{max-width:720px}.lp-grid{grid-template-columns:repeat(2,1fr)}.lp-links{display:none}}
@media (max-width:700px){
 .lp-nav{padding:16px 5%}.lp-brand{font-size:17px}.lp-brand img{height:30px}.lp-nav-actions .lp-ghost{display:none}
 .lp-hero{padding:28px 5% 70px;gap:56px}.lp-lead{font-size:16.5px}.lp-cta .lp-btn{flex:1;text-align:center}
 .lp-app-body{grid-template-columns:1fr}.lp-side{display:none}.lp-kpis strong{font-size:18px}.lp-chart{height:110px}
 .lp-f1{left:12px;bottom:-40px;width:210px}.lp-f2{right:10px;top:-34px}
 .lp-section{padding:60px 5%}.lp-steps,.lp-grid{grid-template-columns:1fr}
}

/* Pantalla de ingreso con el mismo estilo */
.login-screen{background:radial-gradient(900px 500px at 85% 0,#d9f3f1 0,transparent 60%),radial-gradient(700px 400px at 0 100%,#e3ecff 0,transparent 55%),#f6f9fc}
.login-card{border:1px solid #e1e9f1;border-radius:22px;box-shadow:0 40px 90px #0f25371f;font-family:'Plus Jakarta Sans',Inter,sans-serif;padding:34px}
.login-card h1{font-family:'Plus Jakarta Sans',Inter,sans-serif;font-weight:800;letter-spacing:-.03em;color:#0f2537}
.login-card input{border-radius:10px}
.login-card button[type=submit]{border-radius:12px;background:linear-gradient(135deg,#14a39b,#167e86);border:0;color:#fff;box-shadow:0 12px 26px #167e8640}
.lp .lp-footer{background:#0f2537;color:#b9cad8;padding:34px 6%;font-size:14px;border:0;margin:0}
.login-card input{border:1px solid #dbe5ee!important;padding:11px 12px;font:inherit;font-size:14px;box-sizing:border-box;width:100%}
.login-card input:focus{outline:2px solid #167e8655;border-color:#167e86!important}
.login-card button[type=submit]{box-sizing:border-box;width:100%;text-align:center;padding:13px;font-weight:600;font-size:15px;margin-left:0;margin-right:0}
