/* =========================================================
   DV SOLUCIONES - lpnav.css
   Barra blanca + megamenú para las páginas de v2/ que usan Bootstrap
   (index, quiénes somos, contacto, proyectos, blog, etc.).
   Autónomo: no depende de lp.css. Usa JS/lpmenu.js.
   ========================================================= */
.lp-header{position:sticky;top:0;z-index:1030;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px max(16px,calc((100% - 1240px)/2 + 16px));background:#fff;color:#17262f;font-family:"Nunito Sans",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;box-shadow:0 1px 0 #dbe4e8,0 6px 18px rgba(23,38,47,.08)}
.lp-header *,.lp-header *::before,.lp-header *::after{box-sizing:border-box}
.lp-header .lp-logo{display:block;flex:none}
.lp-header .lp-logo img{display:block;width:auto;height:36px}
.lp-header__actions{display:flex;align-items:center;gap:10px}
.lp-phone{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;min-height:44px;padding:0 12px;color:#17262f;text-decoration:none;font-weight:800;border:1.5px solid #c9d6dc;border-radius:999px;white-space:nowrap}
.lp-phone:hover{background:#f0f5f7;color:#17262f}
.lp-phone svg{flex:none}
.lp-phone__txt{display:none}
.lp-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:999px;background:#fa801f;color:#17262f;font-weight:800;text-decoration:none;white-space:nowrap;box-shadow:0 6px 16px rgba(250,128,31,.3)}
.lp-btn:hover{background:#ff8f3a;color:#17262f}
.lp-btn--sm{min-height:40px;padding:0 16px;font-size:.95rem}
@media (min-width:640px){.lp-phone__txt{display:inline}}

/* tarjetas del megamenú */
.dv-mega__grid{display:grid;grid-template-columns:1fr;gap:10px}
.dv-mega__it{display:flex;align-items:flex-start;gap:12px;padding:12px;border:1.5px solid var(--dv-border,#dbe4e8);border-radius:14px;color:var(--dv-navy,#17262f);text-decoration:none;transition:border-color .2s,box-shadow .2s,transform .2s}
.dv-mega__it:hover,.dv-mega__it:focus-visible{border-color:var(--dv-orange,#fa801f);box-shadow:0 8px 20px rgba(250,128,31,.18);color:var(--dv-navy,#17262f)}
.dv-mega__it.is-current{border-color:var(--dv-orange,#fa801f);background:rgba(250,128,31,.07)}
.dv-mega__ico{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:12px;background:var(--dv-gray-100,#f0f5f7);color:var(--dv-orange,#fa801f)}
.dv-mega__ico svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.dv-mega__txt b{display:block;font-weight:800;font-size:1rem;line-height:1.25}
.dv-mega__txt span{display:block;margin-top:2px;font-size:.85rem;line-height:1.35;color:#5d6e77}
.dv-mega__foot{display:flex;flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--dv-border,#dbe4e8);font-size:.92rem;font-weight:700}
.dv-mega__foot a{color:var(--dv-teal,#05828c);font-weight:800;text-decoration:none}
.dv-mega__foot a:hover{color:var(--dv-orange,#fa801f)}
.dv-mega__it{font-family:inherit}
.dv-mega__foot span{color:#17262f}

/* menú */
.lpm-burger{display:inline-grid;place-items:center;flex:none;width:44px;height:44px;padding:0;border:1.5px solid #c9d6dc;border-radius:999px;background:#fff;color:#17262f;cursor:pointer}
.lpm-burger:hover{background:#f0f5f7}
.lpm-burger svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.lpm-burger .lpm-x{display:none}
.lpm-open .lpm-burger .lpm-x{display:block}
.lpm-open .lpm-burger .lpm-bars{display:none}

.lpm-nav{display:none}
.lpm-open .lpm-nav{display:block;position:absolute;top:100%;left:0;right:0;max-height:calc(100svh - 140px);overflow:auto;padding:8px 12px 12px;background:#fff;border-top:1px solid #dbe4e8;box-shadow:0 18px 30px rgba(23,38,47,.18)}
.lpm-link,.lpm-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:46px;padding:0 12px;border:0;background:none;color:#17262f;font-family:inherit;font-weight:800;font-size:1rem;line-height:1.2;text-align:left;text-decoration:none;cursor:pointer;border-radius:10px}
.lpm-link:hover,.lpm-toggle:hover{background:#f0f5f7}
.lpm-link:focus-visible,.lpm-toggle:focus-visible,.lpm-burger:focus-visible{outline:2px solid #fa801f;outline-offset:2px}
.lpm-toggle svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.lpm-toggle[aria-expanded="true"] svg{transform:rotate(180deg)}
.lpm-mega[hidden]{display:none}
.lpm-mega{color:#17262f;padding:6px 0 4px}
.lpm-mega .dv-mega__foot{padding-left:4px;padding-right:4px}

@media (min-width:1200px){
  .lpm-burger{display:none}
  .lpm-nav,.lpm-open .lpm-nav{display:flex;position:static;align-items:center;gap:2px;max-height:none;overflow:visible;padding:0;background:none;border:0;box-shadow:none;margin:0 auto}
  .lpm-item{position:static}
  .lpm-link,.lpm-toggle{width:auto;gap:6px;min-height:44px;padding:0 12px;font-size:.95rem;white-space:nowrap}
  .lpm-toggle[aria-expanded="true"]{background:#f0f5f7}
  .lp-phone__txt{white-space:nowrap}
  .lpm-mega{position:absolute;left:50%;top:calc(100% - 2px);width:min(1100px,calc(100vw - 32px));transform:translateX(-50%);padding:20px;border:1px solid #dbe4e8;border-radius:16px;background:#fff;box-shadow:0 18px 44px rgba(23,38,47,.22)}
}
@media (max-width:420px){
  .lp-header{gap:6px;padding-left:12px;padding-right:12px}
  .lp-header .lp-logo img{height:26px}
  .lp-header__actions{gap:6px}
  .lp-btn--sm{padding:0 12px}
}
@media (max-width:375px){.lp-header .lp-logo img{height:22px}}

.lpm-link[aria-current="page"]{color:#fa801f}
.lpm-mega .dv-mega__grid{display:grid}

@media (min-width:992px){
  .lpm-mega .dv-mega__grid{grid-template-columns:repeat(6,1fr)}
  .dv-mega__it{flex-direction:column;gap:8px}
  .dv-mega__it:hover{transform:translateY(-2px)}
  .dv-mega__foot{flex-direction:row;justify-content:space-between;align-items:center}
}
