/* NUVA – mejoras de conversión y animaciones (compartido por todas las páginas) */
:root{--nv-navy:#0B263F;--nv-navy2:#0E2E4C;--nv-teal:#0F766E;--nv-tealb:#14B8A6;--nv-mint:#47EBD9;--nv-blue:#1A6DAF;--nv-line:#D3E0EA;--nv-body:#4A6480;--nv-ease:cubic-bezier(.22,.61,.36,1)}

/* ---------- Transiciones entre páginas ---------- */
@view-transition{navigation:auto}
::view-transition-old(root){animation:nv-vt-out .2s ease both}
::view-transition-new(root){animation:nv-vt-in .32s var(--nv-ease) both}
@keyframes nv-vt-out{to{opacity:0}}
@keyframes nv-vt-in{from{opacity:0}}
html.nv-leaving body{opacity:0!important;transform:translateY(-6px);transition:opacity .18s ease,transform .18s ease}

/* ---------- Entrada al cargar y al hacer scroll ---------- */
html.nv-js body{transition:opacity .35s ease}
.nv-rv{opacity:0;transform:translateY(18px)}
.nv-rv.nv-in{opacity:1;transform:none;transition:opacity .7s var(--nv-ease),transform .7s var(--nv-ease);transition-delay:var(--nv-d,0ms)}
@media (prefers-reduced-motion:reduce){
  ::view-transition-old(root),::view-transition-new(root){animation:none}
  .nv-rv{opacity:1;transform:none}
  html.nv-leaving body{opacity:1!important;transform:none}
}

/* ---------- Botones propios ---------- */
.nv-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:inherit;font-weight:700;font-size:14px;line-height:1.2;padding:14px 22px;text-decoration:none;border:0;border-left:3px solid transparent;cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease}
.nv-btn:active{transform:scale(.98)}
.nv-btn-mint{background:var(--nv-mint);color:#06203A;border-left-color:var(--nv-teal)}
.nv-btn-mint:hover{background:#7FF3E6}
.nv-btn-teal{background:var(--nv-teal);color:#fff;border-left-color:var(--nv-navy)}
.nv-btn-teal:hover{background:var(--nv-navy);color:var(--nv-mint)}
.nv-btn-ghost{background:transparent;color:#C1D3E3;border:1px solid #2A5074}
.nv-btn-ghost:hover{background:#10375C;color:#fff}
.nv-btn-line{background:#fff;color:var(--nv-navy);border:1px solid var(--nv-line);border-left:3px solid var(--nv-tealb)}
.nv-btn-line:hover{border-color:var(--nv-teal);color:var(--nv-teal)}
.nv-btn svg{flex:none}

/* ---------- Home: hero con oferta clara ---------- */
.nv-hero-lead{margin:0 0 24px;font-size:16px;line-height:1.6;color:#C7D3DE;max-width:52ch}
.nv-hero-ctas{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 30px}
.nv-pain-label{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#7FB3D8;margin:0 0 12px}
.nv-cat-cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px 18px;margin-top:22px;padding:18px 20px;background:#F4F8FB;border:1px solid var(--nv-line)}
.nv-cat-cta p{margin:0;font-size:14px;color:var(--nv-body);flex:1 1 240px}
.nv-seo-visible{background:#fff}
.nv-seo-visible h2{margin:22px 0 8px;font-size:17px;font-weight:700;color:var(--nv-navy)}
.nv-seo-visible h2:first-of-type{margin-top:0}
.nv-seo-visible p{margin:0;font-size:14px;line-height:1.7;color:var(--nv-body);max-width:90ch}

/* ---------- Páginas de producto: CTA arriba ---------- */
.nv-top-cta{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 10px}
.nv-top-cta .nv-btn{border-radius:8px;font-size:14.5px}
.nv-trust{display:flex;flex-wrap:wrap;gap:6px 16px;margin:6px 0 26px;padding:0;list-style:none;font-size:12.5px;color:#5B6B7B}
.nv-trust li{display:flex;align-items:center;gap:6px;margin:0!important;padding:0!important}
.nv-trust li::before{content:"";width:7px;height:7px;border-radius:99px;background:var(--nv-tealb);flex:none}
.cta-box .nv-btn{border-radius:8px;margin:10px 0 0 8px}

/* ---------- Modal de cotización / catálogo ---------- */
.nv-modal{position:fixed;inset:0;z-index:2147483600;display:flex;align-items:center;justify-content:center;padding:16px;visibility:hidden;pointer-events:none}
.nv-modal.nv-open{visibility:visible;pointer-events:auto}
.nv-modal__bg{position:absolute;inset:0;background:rgba(6,20,34,.62);opacity:0;transition:opacity .25s ease}
.nv-modal.nv-open .nv-modal__bg{opacity:1}
.nv-modal__box{position:relative;width:100%;max-width:470px;max-height:calc(100dvh - 32px);overflow:auto;background:#fff;border-top:4px solid var(--nv-tealb);box-shadow:0 24px 60px rgba(0,0,0,.3);font-family:"Poppins",system-ui,sans-serif;color:var(--nv-navy);opacity:0;transform:translateY(22px) scale(.98);transition:opacity .28s var(--nv-ease),transform .28s var(--nv-ease)}
.nv-modal.nv-open .nv-modal__box{opacity:1;transform:none}
.nv-modal__in{padding:26px 24px 22px}
.nv-modal__x{position:absolute;top:8px;right:8px;width:38px;height:38px;border:0;background:transparent;font-size:26px;line-height:1;color:#6B7F93;cursor:pointer}
.nv-modal__x:hover{color:var(--nv-navy)}
.nv-eyebrow{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--nv-teal);margin:0 0 8px}
.nv-modal h3{margin:0 0 6px;font-size:22px;line-height:1.2;font-weight:700;letter-spacing:-.02em;padding-right:24px}
.nv-modal__sub{margin:0 0 18px;font-size:13.5px;line-height:1.55;color:var(--nv-body)}
.nv-form{display:grid;gap:12px}
.nv-row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:460px){.nv-row2{grid-template-columns:1fr}}
.nv-f label{display:block;font-size:12px;font-weight:600;color:#33506B;margin:0 0 5px}
.nv-f label small{font-weight:400;color:#7A8FA3}
.nv-f input,.nv-f textarea{width:100%;box-sizing:border-box;font:inherit;font-size:15px;color:var(--nv-navy);background:#F6F9FB;border:1px solid var(--nv-line);border-radius:0;padding:11px 12px;outline:none;transition:border-color .15s ease,background .15s ease}
.nv-f textarea{min-height:84px;resize:vertical}
.nv-f input:focus,.nv-f textarea:focus{border-color:var(--nv-teal);background:#fff}
.nv-chips{display:flex;flex-wrap:wrap;gap:8px}
.nv-chip{font:inherit;font-size:13px;font-weight:600;padding:8px 14px;border:1px solid var(--nv-line);background:#fff;color:#33506B;cursor:pointer}
.nv-chip[aria-pressed="true"]{background:var(--nv-navy);border-color:var(--nv-navy);color:#fff}
.nv-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.nv-err{display:none;margin:0;font-size:13px;color:#B42318;background:#FEF3F2;border:1px solid #FECDCA;padding:9px 11px}
.nv-err.nv-show{display:block}
.nv-form .nv-btn{width:100%;padding:15px 20px;font-size:15px}
.nv-form .nv-btn[disabled]{opacity:.6;cursor:wait}
.nv-legal{margin:2px 0 0;font-size:11.5px;line-height:1.5;color:#7A8FA3;text-align:center}
.nv-or{display:flex;align-items:center;gap:10px;margin:4px 0 0;font-size:12px;color:#7A8FA3}
.nv-or::before,.nv-or::after{content:"";flex:1;height:1px;background:var(--nv-line)}
.nv-wa-alt{display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px;font-weight:600;color:var(--nv-teal);text-decoration:none;padding:6px}
.nv-wa-alt:hover{text-decoration:underline}
.nv-done{text-align:center;padding:8px 0 4px}
.nv-done__ic{width:58px;height:58px;margin:0 auto 14px;border-radius:99px;background:#E6F7F4;color:var(--nv-teal);display:flex;align-items:center;justify-content:center;animation:nv-pop .45s var(--nv-ease) both}
@keyframes nv-pop{from{transform:scale(.5);opacity:0}}
.nv-done .nv-btn{width:100%;margin-top:8px}
.nv-done .nv-modal__sub{margin-bottom:14px}

/* ---------- Barra fija en celular ---------- */
.nv-mbar{position:fixed;left:0;right:0;bottom:0;z-index:2147482000;display:none;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(11,38,63,.97);box-shadow:0 -6px 20px rgba(0,0,0,.18);transform:translateY(110%);transition:transform .35s var(--nv-ease)}
.nv-mbar.nv-show{transform:none}
.nv-mbar .nv-btn{flex:1;padding:13px 10px;font-size:14px}
.nv-mbar .nv-btn-wa{background:#25D366;color:#06301A;border-left-color:#128C4B}
@media (max-width:760px){
  .nv-mbar{display:flex}
  body.nv-has-mbar{padding-bottom:74px!important}
  body.nv-has-mbar #zcw-wrap,body.nv-lift-chat #zcw-wrap{bottom:86px!important}
}
body.nv-modal-open .nv-mbar{transform:translateY(110%)}
/* ---------- Aviso de cookies ---------- */
.nv-cookie{position:fixed;left:16px;right:16px;bottom:16px;z-index:2147483500;max-width:600px;margin:0 auto;background:#fff;border:1px solid var(--nv-line);border-top:3px solid var(--nv-tealb);box-shadow:0 14px 40px rgba(6,20,34,.22);padding:16px 18px;font-family:"Poppins",system-ui,sans-serif;display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center;transform:translateY(160%);transition:transform .45s var(--nv-ease)}
.nv-cookie.nv-show{transform:none}
.nv-cookie p{margin:0;flex:1 1 280px;font-size:13px;line-height:1.55;color:#33506B}
.nv-cookie a{color:var(--nv-teal);font-weight:600}
.nv-cookie__b{display:flex;gap:8px;flex:0 0 auto}
.nv-cookie .nv-btn{padding:10px 18px;font-size:13.5px}
body.nv-cookie-open .nv-mbar{transform:translateY(110%)!important}
body.nv-cookie-open #zcw-wrap{display:none}
@media (max-width:760px){.nv-cookie{left:10px;right:10px;bottom:10px}.nv-cookie__b{width:100%}.nv-cookie .nv-btn{flex:1}}
body.nv-modal-open{overflow:hidden}
body.nv-modal-open #zcw-wrap{display:none}
