:root{
  --vp-bg:#061225;--vp-bg2:#0a1a31;--vp-panel:#0d203b;--vp-line:rgba(148,163,184,.18);
  --vp-text:#f8fafc;--vp-muted:#a8b6ca;--vp-blue:#2563eb;--vp-violet:#6d45e8;--vp-cyan:#06b6d4;
  --vp-shadow:0 28px 70px rgba(2,8,23,.26);--vp-radius:26px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'Plus Jakarta Sans',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--vp-text);background:var(--vp-bg);-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}button,input{font:inherit}
.vp-shell{min-height:100vh;background:radial-gradient(circle at 10% 8%,rgba(37,99,235,.24),transparent 30%),radial-gradient(circle at 92% 28%,rgba(6,182,212,.14),transparent 28%),linear-gradient(145deg,#051020,#08172b 58%,#081428)}
.vp-nav{height:78px;padding:0 clamp(20px,4vw,68px);display:flex;align-items:center;justify-content:space-between;gap:24px;position:sticky;top:0;z-index:30;background:rgba(5,16,32,.86);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.07)}
.vp-logo img{display:block;width:210px;max-height:52px;object-fit:contain;object-position:left center}.vp-nav-links{display:flex;align-items:center;gap:26px;color:#b9c5d6;font-size:14px;font-weight:700}.vp-nav-links a:hover{color:white}.vp-nav-actions{display:flex;gap:10px;align-items:center}.vp-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:13px;padding:12px 20px;font-weight:800;cursor:pointer;transition:.22s ease}.vp-btn-primary{background:linear-gradient(135deg,#2467e9,#6548e8);color:white;box-shadow:0 12px 30px rgba(37,99,235,.28)}.vp-btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(37,99,235,.38)}.vp-btn-soft{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.11);color:#eef5ff}.vp-btn-soft:hover{background:rgba(255,255,255,.12)}
.vp-hero{min-height:680px;padding:90px clamp(20px,5vw,80px) 76px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);gap:54px;align-items:center;position:relative;overflow:hidden}.vp-hero:after{content:'';position:absolute;width:460px;height:460px;border-radius:50%;right:-180px;top:40px;background:linear-gradient(145deg,rgba(37,99,235,.2),rgba(109,69,232,.08));filter:blur(1px)}
.vp-eyebrow{display:inline-flex;align-items:center;gap:9px;padding:8px 13px;border:1px solid rgba(96,165,250,.24);background:rgba(37,99,235,.1);border-radius:999px;color:#a8d7ff;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.vp-eyebrow-dot{width:7px;height:7px;border-radius:50%;background:#22d3ee;box-shadow:0 0 0 5px rgba(34,211,238,.1)}.vp-hero h1{font-size:clamp(44px,5.6vw,76px);line-height:1.02;letter-spacing:-.055em;margin:24px 0 22px;max-width:850px}.vp-hero h1 span{background:linear-gradient(90deg,#60a5fa,#67e8f9 45%,#a78bfa);-webkit-background-clip:text;background-clip:text;color:transparent}.vp-hero p{font-size:18px;line-height:1.78;color:#b3c0d2;max-width:680px;margin:0}.vp-hero-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:34px}.vp-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:46px;max-width:680px}.vp-kpi{padding:18px 20px;border-radius:16px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.045)}.vp-kpi strong{display:block;font-size:25px}.vp-kpi span{display:block;margin-top:2px;font-size:12px;color:#8fa1b9}
.vp-hero-visual{position:relative;z-index:2}.vp-visual-card{border:1px solid rgba(255,255,255,.1);border-radius:30px;padding:22px;background:linear-gradient(145deg,rgba(14,36,65,.92),rgba(10,24,45,.95));box-shadow:0 38px 80px rgba(0,0,0,.34);transform:perspective(1000px) rotateY(-4deg)}.vp-windowbar{display:flex;gap:6px;margin-bottom:20px}.vp-windowbar i{width:9px;height:9px;border-radius:50%;background:#334155}.vp-windowbar i:nth-child(1){background:#fb7185}.vp-windowbar i:nth-child(2){background:#fbbf24}.vp-windowbar i:nth-child(3){background:#34d399}.vp-preview-top{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:4px 4px 18px}.vp-preview-brand{display:flex;align-items:center;gap:13px}.vp-preview-brand img{width:48px;height:48px;object-fit:contain}.vp-preview-brand b{display:block;font-size:15px}.vp-preview-brand small{color:#7f93ad}.vp-preview-pill{font-size:11px;font-weight:800;padding:8px 10px;border-radius:999px;background:rgba(34,197,94,.12);color:#8cf1b1}.vp-preview-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.vp-preview-stat{min-height:126px;border-radius:18px;padding:20px;background:linear-gradient(135deg,rgba(37,99,235,.23),rgba(15,23,42,.48));border:1px solid rgba(255,255,255,.08)}.vp-preview-stat:nth-child(2){background:linear-gradient(135deg,rgba(16,185,129,.18),rgba(15,23,42,.48))}.vp-preview-stat:nth-child(3){background:linear-gradient(135deg,rgba(245,158,11,.17),rgba(15,23,42,.48))}.vp-preview-stat:nth-child(4){background:linear-gradient(135deg,rgba(109,69,232,.22),rgba(15,23,42,.48))}.vp-preview-stat span{font-size:11px;text-transform:uppercase;color:#8fa3bb;font-weight:800}.vp-preview-stat strong{display:block;font-size:31px;margin-top:18px}.vp-preview-line{margin-top:13px;height:7px;border-radius:10px;background:rgba(255,255,255,.08);overflow:hidden}.vp-preview-line:before{content:'';display:block;width:68%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#3b82f6,#22d3ee)}
.vp-section{padding:90px clamp(20px,5vw,80px)}.vp-section-light{background:#f3f7fc;color:#0b1b32}.vp-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:38px}.vp-section-kicker{color:#3674ef;font-weight:900;font-size:12px;letter-spacing:.09em;text-transform:uppercase}.vp-section h2{font-size:clamp(32px,3.2vw,48px);line-height:1.08;letter-spacing:-.035em;margin:8px 0 0}.vp-section-desc{max-width:600px;color:#66758d;line-height:1.7}.vp-company-tools{display:flex;gap:12px;align-items:center}.vp-search{width:min(390px,100%);position:relative}.vp-search input{width:100%;height:50px;padding:0 18px 0 46px;border-radius:14px;border:1px solid #d9e2ef;background:white;outline:none;color:#0b1b32;box-shadow:0 7px 22px rgba(15,23,42,.04)}.vp-search input:focus{border-color:#6aa0ff;box-shadow:0 0 0 4px rgba(37,99,235,.08)}.vp-search svg{position:absolute;left:16px;top:15px;width:20px;height:20px;stroke:#7890ad}
.vp-company-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.vp-company-card{min-height:292px;border-radius:24px;position:relative;overflow:hidden;padding:26px;display:flex;flex-direction:column;justify-content:space-between;color:white;box-shadow:0 18px 42px rgba(15,23,42,.12);transition:.25s ease;isolation:isolate}.vp-company-card:before{content:'';position:absolute;inset:0;background:linear-gradient(140deg,var(--brand,#1d4ed8) 0%,#0c1c35 68%,#071324 100%);z-index:-3}.vp-company-card:after{content:'';position:absolute;width:260px;height:260px;border-radius:50%;right:-100px;top:-100px;background:rgba(255,255,255,.12);box-shadow:-125px 130px 0 -42px rgba(255,255,255,.055);z-index:-2}.vp-company-card:hover{transform:translateY(-6px);box-shadow:0 28px 58px rgba(15,23,42,.2)}.vp-company-logo{height:72px;max-width:190px;object-fit:contain;object-position:left center;filter:drop-shadow(0 8px 14px rgba(0,0,0,.18));margin-bottom:20px}.vp-company-initial{font-size:38px;font-weight:900;margin-bottom:20px}.vp-company-type{font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:#bed1eb;font-weight:800}.vp-company-card h3{font-size:23px;line-height:1.15;margin:6px 0 8px}.vp-company-meta{font-size:13px;color:#c3d0e2;min-height:20px}.vp-company-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px}.vp-company-access{font-weight:900;font-size:13px;display:flex;align-items:center;gap:8px}.vp-company-arrow{width:42px;height:42px;border-radius:13px;background:rgba(255,255,255,.13);display:flex;align-items:center;justify-content:center;font-size:20px}.vp-company-empty{grid-column:1/-1;text-align:center;padding:46px;border-radius:24px;background:white;border:1px solid #dce5f0;color:#66758d}
.vp-features{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.vp-feature{padding:25px;border:1px solid rgba(255,255,255,.08);border-radius:20px;background:rgba(255,255,255,.04)}.vp-feature-icon{width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,rgba(37,99,235,.22),rgba(109,69,232,.25));display:flex;align-items:center;justify-content:center;font-size:20px;margin-bottom:20px}.vp-feature h3{font-size:17px;margin:0 0 9px}.vp-feature p{margin:0;color:#91a2b8;font-size:13.5px;line-height:1.7}.vp-cta{margin:0 clamp(20px,5vw,80px) 80px;border-radius:28px;padding:44px clamp(26px,5vw,64px);background:linear-gradient(120deg,#133669,#2549a4 55%,#6845d5);display:flex;align-items:center;justify-content:space-between;gap:26px;box-shadow:var(--vp-shadow)}.vp-cta h2{font-size:clamp(28px,3vw,44px);margin:0 0 8px}.vp-cta p{margin:0;color:#d5e4f6}.vp-footer{border-top:1px solid rgba(255,255,255,.08);padding:32px clamp(20px,5vw,80px);display:flex;justify-content:space-between;align-items:center;gap:20px;color:#7f91aa;font-size:12px}.vp-footer img{width:150px;opacity:.9}
/* company login */
.vp-login-page{min-height:100vh;display:grid;grid-template-columns:minmax(400px,1.02fr) minmax(420px,.98fr);background:#f4f7fb;color:#0b1b32}.vp-login-brand{min-height:100vh;padding:54px clamp(34px,5vw,78px);position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,#061428 0%,#0a2142 58%,var(--brand,#2563eb) 150%);color:white}.vp-login-brand:before{content:'';position:absolute;width:520px;height:520px;border-radius:50%;right:-210px;top:-150px;background:color-mix(in srgb,var(--brand,#2563eb) 34%,transparent)}.vp-login-brand:after{content:'';position:absolute;width:330px;height:330px;border-radius:50%;left:-170px;bottom:-160px;background:rgba(109,69,232,.18)}.vp-login-brand>*{position:relative;z-index:2}.vp-login-victoria img{width:210px;display:block}.vp-login-company-logo{max-width:270px;max-height:120px;object-fit:contain;object-position:left center;filter:drop-shadow(0 10px 20px rgba(0,0,0,.25));margin:50px 0 22px}.vp-login-company-name{font-size:clamp(34px,4vw,55px);line-height:1.05;letter-spacing:-.04em;margin:0 0 14px}.vp-login-brand p{max-width:560px;color:#b8c7db;line-height:1.72}.vp-login-points{display:grid;gap:11px;margin-top:30px}.vp-login-point{display:flex;align-items:center;gap:11px;color:#dbe8f7;font-size:13px}.vp-login-point i{width:26px;height:26px;border-radius:9px;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;font-style:normal}.vp-login-brand-footer{font-size:12px;color:#7f94af}.vp-login-form-side{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:46px 28px}.vp-login-box{width:min(450px,100%)}.vp-login-back{display:inline-flex;gap:8px;align-items:center;color:#6b7d94;font-size:13px;font-weight:700;margin-bottom:34px}.vp-login-box h1{font-size:34px;letter-spacing:-.04em;margin:0 0 9px}.vp-login-sub{color:#75859a;margin:0 0 30px;line-height:1.6}.vp-login-alert{padding:12px 14px;border-radius:13px;background:#fff1f2;border:1px solid #fecdd3;color:#be123c;font-size:13px;margin-bottom:18px}.vp-field{margin-bottom:17px}.vp-field label{display:block;font-size:12px;font-weight:800;color:#34455a;margin-bottom:7px}.vp-input-wrap{position:relative}.vp-input-wrap input{width:100%;height:52px;border:1.5px solid #dce4ee;border-radius:14px;background:white;padding:0 46px 0 44px;font-size:14px;outline:none;transition:.2s}.vp-input-wrap input:focus{border-color:var(--brand,#2563eb);box-shadow:0 0 0 4px color-mix(in srgb,var(--brand,#2563eb) 10%,transparent)}.vp-input-icon{position:absolute;left:15px;top:15px;color:#8b9ab0}.vp-eye{position:absolute;right:14px;top:13px;border:0;background:none;color:#718196;cursor:pointer;font-size:20px}.vp-login-submit{width:100%;height:52px;border:0;border-radius:14px;background:linear-gradient(135deg,var(--brand,#2563eb),#6047df);color:white;font-weight:900;cursor:pointer;box-shadow:0 13px 28px color-mix(in srgb,var(--brand,#2563eb) 23%,transparent)}.vp-login-note{margin-top:22px;padding-top:20px;border-top:1px solid #e3e9f1;color:#8896a8;text-align:center;font-size:12px}
.vp-super-badge{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border-radius:999px;background:#fff1f2;color:#e11d48;font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.vp-super-brand{background:linear-gradient(145deg,#070c16,#111b30 58%,#471427 145%)}
@media(max-width:1050px){.vp-nav-links{display:none}.vp-hero{grid-template-columns:1fr;padding-top:64px}.vp-hero-visual{max-width:720px}.vp-company-grid{grid-template-columns:repeat(2,1fr)}.vp-features{grid-template-columns:repeat(2,1fr)}.vp-login-page{grid-template-columns:1fr}.vp-login-brand{min-height:auto;padding:35px 28px}.vp-login-brand-main{display:grid;grid-template-columns:170px 1fr;gap:28px;align-items:center}.vp-login-company-logo{margin:20px 0;max-width:160px}.vp-login-points,.vp-login-brand-footer{display:none}.vp-login-form-side{min-height:auto;padding:42px 24px}}
@media(max-width:680px){.vp-nav{height:68px;padding:0 16px}.vp-logo img{width:160px}.vp-nav-actions .vp-btn-soft{display:none}.vp-nav-actions .vp-btn{padding:10px 13px;font-size:12px}.vp-hero{padding:56px 18px 58px;min-height:auto}.vp-hero h1{font-size:42px}.vp-hero p{font-size:15px}.vp-kpis{grid-template-columns:1fr}.vp-visual-card{transform:none}.vp-section{padding:64px 18px}.vp-section-head{display:block}.vp-company-tools{margin-top:20px}.vp-company-grid,.vp-features{grid-template-columns:1fr}.vp-company-card{min-height:260px}.vp-cta{margin:0 18px 55px;padding:32px 24px;display:block}.vp-cta .vp-btn{margin-top:20px}.vp-footer{padding:26px 18px;display:block;text-align:center}.vp-footer img{margin:0 auto 12px}.vp-login-brand-main{display:block}.vp-login-company-logo{max-height:80px;margin:24px 0 12px}.vp-login-company-name{font-size:30px}.vp-login-form-side{padding:32px 18px}.vp-login-box h1{font-size:29px}}

/* =========================================================
   Victoria IA v2.15.18 — Portal Público Premium Plus
   ========================================================= */
.vp-nav{height:92px;padding:0 clamp(24px,4vw,72px)}
.vp-logo img{width:270px;max-height:66px}
.vp-nav-links{gap:31px;font-size:14px}
.vp-hero{min-height:760px;padding:102px clamp(24px,5vw,84px) 88px;background-image:linear-gradient(90deg,rgba(5,16,32,.98) 0%,rgba(5,16,32,.90) 43%,rgba(5,16,32,.56) 72%,rgba(5,16,32,.82) 100%),var(--vp-hero-image,url('../img/public-hero-bg.svg'));background-size:cover;background-position:center right;background-repeat:no-repeat}
.vp-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 68%,rgba(5,16,32,.86));pointer-events:none}
.vp-hero>div{position:relative;z-index:2}
.vp-hero h1{max-width:790px;text-shadow:0 18px 50px rgba(0,0,0,.28)}
.vp-hero p{color:#c2d0e2}
.vp-hero-visual{filter:drop-shadow(0 30px 55px rgba(0,0,0,.28))}
.vp-visual-card{background:linear-gradient(145deg,rgba(9,32,59,.86),rgba(8,23,43,.95));backdrop-filter:blur(10px)}
.vp-section-platform{position:relative;background-image:linear-gradient(90deg,rgba(5,16,32,.94),rgba(5,16,32,.84)),var(--vp-platform-image,url('../img/platform-bg.svg'));background-size:cover;background-position:center;background-repeat:no-repeat;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06)}
.vp-section-platform .vp-section-desc{color:#aabbd0}.vp-section-platform .vp-feature{background:rgba(10,30,55,.74);border-color:rgba(148,163,184,.16);backdrop-filter:blur(8px);box-shadow:0 18px 42px rgba(0,0,0,.16)}
.vp-section-platform .vp-feature:hover{transform:translateY(-4px);border-color:rgba(96,165,250,.32);background:rgba(13,38,70,.82)}
.vp-feature{transition:.22s ease}.vp-feature-icon{box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}
.vp-company-preview-note{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:28px;padding:18px 20px;border:1px solid #dce5f0;border-radius:18px;background:#fff;color:#51647d}.vp-company-preview-note strong{color:#0b1b32}.vp-company-preview-note .vp-btn{white-space:nowrap}
.vp-directory-hero{padding:70px clamp(20px,5vw,80px) 48px;background:linear-gradient(125deg,rgba(7,24,46,.98),rgba(14,49,91,.92)),url('../img/public-hero-bg.svg');background-size:cover;background-position:center;position:relative;overflow:hidden}.vp-directory-hero h1{font-size:clamp(38px,5vw,64px);letter-spacing:-.05em;margin:16px 0 12px}.vp-directory-hero p{max-width:760px;color:#b9c7da;line-height:1.75}.vp-directory-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;margin-top:28px;align-items:center}.vp-directory-search{position:relative;max-width:760px}.vp-directory-search input{width:100%;height:58px;border:1px solid rgba(255,255,255,.15);border-radius:17px;padding:0 18px 0 50px;background:rgba(255,255,255,.09);color:white;outline:none;backdrop-filter:blur(12px)}.vp-directory-search input::placeholder{color:#a7b7cc}.vp-directory-search input:focus{border-color:#60a5fa;box-shadow:0 0 0 4px rgba(59,130,246,.13)}.vp-directory-search svg{position:absolute;left:17px;top:18px;width:22px;height:22px;stroke:#9cb5d2}.vp-directory-count{padding:13px 17px;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.07);color:#cfdaea;font-size:13px;font-weight:700}
.vp-directory-section{background:#f3f7fc;color:#0b1b32;padding:55px clamp(20px,5vw,80px) 82px;min-height:55vh}.vp-directory-empty{padding:54px 25px;border:1px dashed #cbd7e6;border-radius:22px;background:white;text-align:center;color:#66758d}.vp-pagination{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap;margin-top:36px}.vp-page-link{min-width:42px;height:42px;padding:0 13px;display:flex;align-items:center;justify-content:center;border-radius:12px;border:1px solid #dce5ef;background:#fff;color:#445770;font-size:13px;font-weight:800}.vp-page-link:hover{border-color:#84aef8;color:#1d4ed8}.vp-page-link.active{background:linear-gradient(135deg,#2563eb,#6847e7);border-color:transparent;color:#fff;box-shadow:0 10px 20px rgba(37,99,235,.22)}.vp-page-link.disabled{opacity:.45;pointer-events:none}
.vp-login-brand{background-image:linear-gradient(145deg,rgba(4,18,36,.93),rgba(7,38,72,.89) 58%,color-mix(in srgb,var(--brand,#2563eb) 70%,#071a31) 155%),url('../img/login-bg.svg');background-size:cover;background-position:center}
.vp-login-victoria img{width:265px;max-height:72px;object-fit:contain;object-position:left center}.vp-login-company-logo{max-width:300px;max-height:130px;margin:34px 0 20px}.vp-login-brand-main{margin:auto 0}.vp-login-brand-copy{max-width:620px}.vp-login-company-name{font-size:clamp(38px,4.4vw,62px)}.vp-login-brand p{font-size:15px}.vp-login-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:28px}.vp-login-trust>div{padding:13px;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.06);font-size:11px;color:#dce8f8}.vp-login-trust b{display:block;font-size:13px;color:white;margin-bottom:3px}.vp-login-box{width:min(480px,100%);padding:34px;border:1px solid #e1e8f1;border-radius:24px;background:#fff;box-shadow:0 28px 68px rgba(15,23,42,.10)}.vp-login-back{margin-bottom:25px}.vp-login-switch{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:20px;padding:12px 14px;border-radius:14px;background:#f4f7fb;color:#62748b;font-size:12px}.vp-login-switch a{color:#2563eb;font-weight:900}.vp-login-submit{height:56px;font-size:14px}.vp-login-form-side{background:radial-gradient(circle at 95% 5%,rgba(37,99,235,.08),transparent 28%),#f4f7fb}
.vp-super-brand{background-image:linear-gradient(145deg,rgba(5,9,18,.95),rgba(15,25,45,.92) 58%,rgba(73,20,39,.78)),url('../img/login-bg.svg')}
.vp-footer-pro{border-top:1px solid rgba(255,255,255,.08);background:#050f1e}.vp-footer-main{padding:58px clamp(20px,5vw,80px) 44px;display:grid;grid-template-columns:1.45fr .8fr .8fr 1fr;gap:42px}.vp-footer-brand img{width:245px;max-height:62px;object-fit:contain;object-position:left center}.vp-footer-brand p{max-width:420px;color:#8498b3;line-height:1.75;font-size:13px}.vp-footer-title{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#c8d7ea;font-weight:900;margin-bottom:18px}.vp-footer-links{display:grid;gap:11px}.vp-footer-links a,.vp-footer-links span{color:#8498b3;font-size:13px}.vp-footer-links a:hover{color:white}.vp-footer-contact a{display:flex;gap:9px;align-items:flex-start}.vp-footer-contact b{color:#d7e5f6;font-weight:800}.vp-footer-bottom{padding:20px clamp(20px,5vw,80px);border-top:1px solid rgba(255,255,255,.07);display:flex;align-items:center;justify-content:space-between;gap:20px;color:#6f829c;font-size:11px}.vp-footer-bottom strong{color:#a9bbd1}
.vp-mini-company-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.vp-directory-back{display:inline-flex;align-items:center;gap:8px;color:#b8c8dc;font-weight:800;font-size:13px}.vp-directory-back:hover{color:white}
@media(max-width:1100px){.vp-logo img{width:230px}.vp-footer-main{grid-template-columns:1.2fr 1fr 1fr}.vp-footer-contact{grid-column:1/-1}.vp-login-trust{display:none}}
@media(max-width:760px){.vp-nav{height:76px;padding:0 16px}.vp-logo img{width:188px}.vp-nav-actions .vp-btn-primary{padding:10px 13px}.vp-hero{min-height:auto;padding:64px 18px 60px;background-position:64% center}.vp-hero-visual{display:none}.vp-mini-company-grid{grid-template-columns:1fr}.vp-company-preview-note{display:block}.vp-company-preview-note .vp-btn{margin-top:14px;width:100%}.vp-directory-toolbar{grid-template-columns:1fr}.vp-directory-count{justify-self:start}.vp-footer-main{grid-template-columns:1fr;padding:46px 20px 30px;gap:30px}.vp-footer-brand img{width:215px}.vp-footer-bottom{display:block;text-align:center;line-height:1.8}.vp-login-box{padding:25px 20px;border-radius:20px}.vp-login-victoria img{width:215px}.vp-login-company-logo{max-width:190px;max-height:90px}.vp-login-brand{padding:28px 20px}.vp-login-company-name{font-size:34px}.vp-login-brand-main{margin:20px 0}.vp-login-form-side{padding:28px 16px}.vp-login-switch{display:block}.vp-login-switch a{display:inline-block;margin-top:6px}}

/* =========================================================
   Victoria IA v2.15.18.1 — Hotfix Tamaño de Logos Públicos
   El asset horizontal se usa recortado, sin espacio transparente.
   ========================================================= */
.vp-nav{min-height:96px}
.vp-logo{display:flex;align-items:center;flex:0 0 auto}
.vp-logo img{width:310px;max-width:310px;height:auto;max-height:74px;object-fit:contain;object-position:left center}

.vp-login-victoria{display:flex;align-items:center;min-height:82px}
.vp-login-victoria img{width:335px;max-width:100%;height:auto;max-height:82px;object-fit:contain;object-position:left center}
.vp-login-company-logo{max-width:340px;max-height:150px;height:auto;object-fit:contain;object-position:left center}

.vp-footer-brand img{width:270px;max-height:68px;height:auto;object-fit:contain;object-position:left center}

@media(max-width:1100px){
  .vp-logo img{width:270px;max-width:270px;max-height:64px}
  .vp-login-victoria img{width:300px;max-height:74px}
  .vp-login-company-logo{max-width:290px;max-height:130px}
}
@media(max-width:760px){
  .vp-nav{min-height:78px;height:78px}
  .vp-logo img{width:210px;max-width:210px;max-height:50px}
  .vp-login-victoria{min-height:58px}
  .vp-login-victoria img{width:245px;max-height:58px}
  .vp-login-company-logo{max-width:230px;max-height:105px}
  .vp-footer-brand img{width:235px;max-height:58px}
}


/* =========================================================
   Victoria IA v2.16.4 — Cards públicas + Hero compacto
   ========================================================= */

/* El fondo configurado desde Superadmin ahora sí se usa. */
.vp-company-card:before{
  background-image:
    linear-gradient(135deg,rgba(7,23,45,.72) 0%,rgba(7,24,47,.78) 48%,rgba(4,15,30,.93) 100%),
    var(--company-bg,linear-gradient(140deg,var(--brand,#1d4ed8) 0%,#0c1c35 68%,#071324 100%));
  background-size:cover,cover;
  background-position:center,center;
  background-repeat:no-repeat,no-repeat;
  transform:scale(1.01);
}
.vp-company-card:after{
  background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.025));
  box-shadow:-125px 130px 0 -42px rgba(255,255,255,.045);
  opacity:.72;
}
.vp-company-card:hover:before{transform:scale(1.045)}
.vp-company-card:before{transition:transform .4s ease}
.vp-company-logo{position:relative;z-index:2}
.vp-company-card h3,.vp-company-meta,.vp-company-type,.vp-company-bottom,.vp-company-initial{position:relative;z-index:2}
.vp-company-card h3{text-shadow:0 3px 18px rgba(0,0,0,.35)}
.vp-company-meta{color:#d8e5f5}

/* Hero: mantiene impacto, pero entra mejor en la primera pantalla. */
.vp-hero{
  min-height:640px;
  padding:68px clamp(24px,5vw,84px) 54px;
  grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr);
  gap:42px;
  background-position:center 44%;
}
.vp-hero h1{
  font-size:clamp(44px,5.15vw,70px);
  margin:18px 0 18px;
  max-width:760px;
}
.vp-hero p{font-size:17px;line-height:1.68;max-width:670px}
.vp-hero-actions{margin-top:26px}
.vp-kpis{margin-top:30px;gap:10px}
.vp-kpi{padding:14px 17px}
.vp-kpi strong{font-size:23px}
.vp-visual-card{padding:19px;border-radius:27px;transform:perspective(1000px) rotateY(-2deg)}
.vp-preview-stat{min-height:112px;padding:17px}
.vp-preview-stat strong{font-size:28px;margin-top:14px}
.vp-preview-line{margin-top:10px}

@media(max-width:1100px){
  .vp-hero{min-height:600px;padding-top:58px;padding-bottom:48px;grid-template-columns:1fr;}
  .vp-hero-visual{max-width:700px}
}
@media(max-width:760px){
  .vp-hero{min-height:auto;padding:48px 18px 46px;background-position:60% center}
  .vp-hero h1{font-size:40px;margin-top:16px}
  .vp-kpis{margin-top:24px}
}

/* ============================================================
   Victoria v2.16.5 · Login Premium Refinado
   ============================================================ */
.vp-login-refined{grid-template-columns:minmax(520px,1.08fr) minmax(500px,.92fr);background:#eef3f9}
.vp-login-refined .vp-login-brand{padding:38px clamp(38px,5vw,74px) 28px;background-image:linear-gradient(145deg,rgba(4,18,36,.90),rgba(7,30,58,.88) 56%,color-mix(in srgb,var(--brand,#2563eb) 48%,#071426) 150%),var(--vp-login-image,url('../img/login-bg.svg'));background-size:cover;background-position:center}
.vp-login-refined .vp-login-brand:before{width:420px;height:420px;right:-145px;top:-125px;opacity:.72}
.vp-login-refined .vp-login-brand:after{width:280px;height:280px;left:-120px;bottom:-130px;opacity:.65}
.vp-login-brand-top{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:70px}
.vp-login-brand-top .vp-login-victoria{min-height:0}
.vp-login-brand-top .vp-login-victoria img{width:290px;max-height:68px}
.vp-login-context{padding:9px 13px;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:rgba(255,255,255,.07);font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#d9e7f7;backdrop-filter:blur(10px)}
.vp-login-brand-main{display:flex;align-items:center;margin:auto 0;padding:28px 0}
.vp-login-brand-copy{max-width:650px}
.vp-login-company-identity{display:flex;align-items:center;gap:18px;margin-bottom:22px}
.vp-login-company-mark{width:112px;height:82px;border-radius:20px;display:flex;align-items:center;justify-content:flex-start;overflow:hidden}
.vp-login-company-mark img{max-width:112px;max-height:82px;object-fit:contain;object-position:left center;filter:drop-shadow(0 12px 22px rgba(0,0,0,.26))}
.vp-login-company-mark span{font-size:34px;font-weight:900;color:white}
.vp-login-company-caption{display:flex;flex-direction:column;gap:8px}
.vp-login-company-caption .vp-eyebrow{margin:0;width:max-content}
.vp-login-company-caption>span:last-child{font-size:12px;color:#c2d2e6;font-weight:700}
.vp-login-refined .vp-login-company-name{font-size:clamp(40px,4.25vw,64px);line-height:1.02;max-width:620px;margin-bottom:16px}
.vp-login-lead{font-size:15px!important;line-height:1.72!important;color:#c4d4e8!important;max-width:590px!important;margin:0!important}
.vp-login-refined .vp-login-points{margin-top:26px;gap:10px}
.vp-login-refined .vp-login-point{align-items:flex-start}
.vp-login-refined .vp-login-point i{flex:0 0 28px;width:28px;height:28px;border-radius:10px;background:rgba(255,255,255,.09);margin-top:1px}
.vp-login-refined .vp-login-point span{display:block}
.vp-login-refined .vp-login-point strong{display:block;color:#fff;font-size:12px;line-height:1.25}
.vp-login-refined .vp-login-point small{display:block;color:#99aec7;font-size:10.5px;line-height:1.45;margin-top:2px}
.vp-login-refined .vp-login-trust{margin-top:24px;gap:9px}
.vp-login-refined .vp-login-trust>div{padding:12px 13px;background:rgba(4,14,29,.32);backdrop-filter:blur(12px)}
.vp-login-refined .vp-login-trust span{display:block;color:#8fa5c0;font-size:10px}
.vp-login-refined .vp-login-brand-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;color:#839bb7;border-top:1px solid rgba(255,255,255,.08);padding-top:18px}

.vp-login-refined .vp-login-form-side{padding:34px clamp(26px,4vw,64px);background:radial-gradient(circle at 90% 10%,rgba(37,99,235,.08),transparent 26%),linear-gradient(180deg,#f7f9fc 0%,#eef3f9 100%)}
.vp-login-form-wrap{width:min(520px,100%)}
.vp-login-form-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px;padding:0 4px}
.vp-login-form-head .vp-login-back{margin:0}
.vp-login-secure{font-size:10px;font-weight:900;letter-spacing:.04em;color:#059669;text-transform:uppercase}
.vp-login-refined .vp-login-box{width:100%;padding:30px;border-radius:28px;border:1px solid #dfe7f0;box-shadow:0 26px 70px rgba(15,23,42,.10)}
.vp-login-selected{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 13px;border-radius:16px;background:#f4f7fb;border:1px solid #e5ebf2;margin-bottom:25px}
.vp-login-selected-mark{width:48px;height:48px;border-radius:13px;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid #e2e8f0}
.vp-login-selected-mark img{max-width:42px;max-height:42px;object-fit:contain}
.vp-login-selected-mark span{font-weight:900;color:#264a78}
.vp-login-selected small{display:block;color:#8390a1;font-size:10px;margin-bottom:2px}
.vp-login-selected strong{display:block;color:#15243a;font-size:12px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vp-login-selected>a{font-size:11px;font-weight:900;color:#2563eb}
.vp-login-form-title{margin-bottom:24px}
.vp-login-form-kicker{display:inline-flex;padding:7px 10px;border-radius:999px;background:#eaf1ff;color:#2563eb;font-weight:900;font-size:10px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:13px}
.vp-login-form-title h1{font-size:35px!important;margin:0 0 8px!important}
.vp-login-refined .vp-login-sub{margin-bottom:0}
.vp-login-refined .vp-field{margin-bottom:16px}
.vp-login-refined .vp-input-wrap input{height:56px;border-radius:15px;background:#fbfdff}
.vp-login-refined .vp-login-submit{height:58px;border-radius:15px;display:flex;align-items:center;justify-content:center;gap:10px;font-size:14px}
.vp-login-refined .vp-login-submit span{font-size:18px;transition:transform .2s ease}
.vp-login-refined .vp-login-submit:hover span{transform:translateX(4px)}
.vp-login-help{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding-top:17px;border-top:1px solid #e7edf4;font-size:10.5px;color:#94a0b0}
.vp-login-help span:first-child{font-weight:800;color:#59697e}
.vp-login-form-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:14px;padding:0 6px;color:#8a98aa;font-size:10.5px}
.vp-login-form-footer a{font-weight:800;color:#52677e}

/* Superadmin refinement */
.vp-super-login .vp-super-brand{background-image:linear-gradient(145deg,rgba(4,8,18,.94),rgba(12,24,44,.90) 56%,rgba(67,18,39,.80)),var(--vp-login-image,url('../img/login-bg.svg'))}
.vp-super-context{border-color:rgba(251,113,133,.23);color:#fecdd3;background:rgba(225,29,72,.10)}
.vp-super-identity{display:flex;align-items:center;gap:16px;margin-bottom:22px}
.vp-super-shield{width:76px;height:76px;border-radius:22px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10);display:flex;align-items:center;justify-content:center;backdrop-filter:blur(12px)}
.vp-super-shield img{width:58px;height:58px;object-fit:contain}
.vp-super-identity>div:last-child{display:flex;flex-direction:column;align-items:flex-start;gap:7px}
.vp-super-identity small{font-size:10px;color:#9db0c6;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.vp-super-kicker{background:#fff0f3;color:#e11d48}
.vp-super-submit{background:linear-gradient(135deg,#e11d48,#7046e7)!important;box-shadow:0 13px 28px rgba(225,29,72,.20)!important}
.vp-super-selected .vp-login-selected-mark{background:#fff5f7}

@media(max-width:1100px){
  .vp-login-refined{grid-template-columns:1fr}
  .vp-login-refined .vp-login-brand{min-height:auto;padding:26px 28px}
  .vp-login-brand-main{padding:26px 0 14px}
  .vp-login-brand-copy{max-width:none}
  .vp-login-company-identity{margin-bottom:14px}
  .vp-login-refined .vp-login-company-name{font-size:38px;max-width:none}
  .vp-login-lead{max-width:760px!important}
  .vp-login-refined .vp-login-points{grid-template-columns:repeat(3,1fr);display:grid;gap:12px}
  .vp-login-refined .vp-login-trust,.vp-login-refined .vp-login-brand-footer{display:none}
  .vp-login-refined .vp-login-form-side{min-height:auto;padding:32px 24px 48px}
  .vp-login-form-wrap{width:min(600px,100%)}
}
@media(max-width:760px){
  .vp-login-brand-top .vp-login-victoria img{width:215px;max-height:54px}
  .vp-login-context{display:none}
  .vp-login-refined .vp-login-brand{padding:22px 20px}
  .vp-login-company-mark{width:82px;height:62px}
  .vp-login-company-mark img{max-width:82px;max-height:62px}
  .vp-login-refined .vp-login-company-name{font-size:31px}
  .vp-login-lead{font-size:13px!important}
  .vp-login-refined .vp-login-points{grid-template-columns:1fr;gap:8px}
  .vp-login-refined .vp-login-point small{display:none}
  .vp-login-refined .vp-login-form-side{padding:22px 14px 34px}
  .vp-login-refined .vp-login-box{padding:22px 18px;border-radius:22px}
  .vp-login-form-head{margin-bottom:12px}
  .vp-login-secure{display:none}
  .vp-login-selected{grid-template-columns:42px minmax(0,1fr)}
  .vp-login-selected-mark{width:42px;height:42px}
  .vp-login-selected>a{grid-column:2}
  .vp-login-form-title h1{font-size:29px!important}
  .vp-login-help,.vp-login-form-footer{display:block;line-height:1.6}
  .vp-login-help span,.vp-login-form-footer span,.vp-login-form-footer a{display:block}
}
