
/* =========================================================
   V28 — MISMO NAVBAR + FOOTER DE INDEX.PHP EN TODAS LAS PÁGINAS
   ========================================================= */

body.internal-index-shell{
  --vp-red:#b40000;
  --vp-red-dark:#b40000;
  --vp-ink:#1d2630;
  --vp-muted:#6d7782;
  --header-strip-h:31px;
  --navbar-h:140px;
  --vp-shell-gutter:clamp(88px,6.45vw,124px);

  margin:0!important;
  overflow-x:hidden!important;
}

/* HEADER OFFSET */
body.internal-index-shell .internal-v16-main{
  padding-top:calc(var(--header-strip-h) + var(--navbar-h))!important;
}

/* TOP STRIP */
body.internal-index-shell .top-strip{
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  height:var(--header-strip-h)!important;
  z-index:1040!important;
  background:#fff!important;
  border:0!important;
  box-shadow:none!important;
  transform:translateY(0);
  transition:transform .22s ease-in-out;
}
body.internal-index-shell .top-strip.is-hidden{
  transform:translateY(-100%)!important;
  pointer-events:none!important;
}
body.internal-index-shell .top-strip .container-xl{
  height:100%!important;
  max-width:1480px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:19px!important;
  padding-left:24px!important;
  padding-right:24px!important;
  font-family:"Roboto",sans-serif!important;
  font-size:.72rem!important;
  font-weight:500!important;
  color:#5d6670!important;
  white-space:nowrap!important;
}
body.internal-index-shell .top-strip .info{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
}
body.internal-index-shell .top-strip .info i{
  color:var(--vp-red)!important;
}
body.internal-index-shell .top-socials{
  display:flex!important;
  gap:7px!important;
}
body.internal-index-shell .top-socials a{
  width:25px!important;
  height:25px!important;
  display:grid!important;
  place-items:center!important;
  color:#26313a!important;
  background:#fff!important;
  border:1px solid #dcdfe3!important;
  border-radius:5px!important;
}

/* NAVBAR */
body.internal-index-shell .main-nav{
  position:fixed!important;
  top:var(--header-strip-h)!important;
  left:0!important;
  right:0!important;
  z-index:1045!important;
  height:var(--navbar-h)!important;
  background:#fff!important;
  border:0!important;
  box-shadow:none!important;
  transition:transform .22s ease-in-out,height .22s ease-in-out!important;
}
body.internal-index-shell .main-nav.compact{
  transform:translateY(calc(-1 * var(--header-strip-h)))!important;
  height:100px!important;
}
body.internal-index-shell .main-nav .container-xl{
  height:100%!important;
  max-width:1480px!important;
  padding-left:24px!important;
  padding-right:24px!important;
}
body.internal-index-shell .brand-wrap{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  min-width:310px!important;
  width:310px!important;
  height:100%!important;
  overflow:visible!important;
}
body.internal-index-shell .brand-logo{
  position:absolute!important;
  left:0!important;
  top:50%!important;
  height:146px!important;
  width:auto!important;
  max-width:none!important;
  object-fit:contain!important;
  transform:translateY(calc(-50% - 12px))!important;
  transition:height .28s ease,transform .28s ease!important;
}
body.internal-index-shell .main-nav.compact .brand-logo{
  height:64px!important;
  transform:translateY(-50%)!important;
}
body.internal-index-shell #mainMenu{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex:1 1 auto;
}
body.internal-index-shell #mainMenu .navbar-nav{
  margin-left:auto!important;
  margin-right:18px!important;
  gap:38px!important;
}
body.internal-index-shell .main-nav .nav-link{
  position:relative!important;
  color:#44505b!important;
  font-family:"Roboto",sans-serif!important;
  font-weight:600!important;
  font-size:.91rem!important;
  text-transform:uppercase!important;
  letter-spacing:.01em!important;
  padding:60px 0 54px!important;
  white-space:nowrap!important;
}
body.internal-index-shell .main-nav.compact .nav-link{
  padding:22px 0!important;
}
body.internal-index-shell .main-nav .nav-link:hover,
body.internal-index-shell .main-nav .nav-link.active{
  color:var(--vp-red)!important;
}
body.internal-index-shell .main-nav .nav-link.active::after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:32px!important;
  height:2px!important;
  background:var(--vp-red)!important;
  border-radius:3px!important;
}
body.internal-index-shell .main-nav.compact .nav-link.active::after{
  bottom:11px!important;
}
body.internal-index-shell .btn-contact-nav{
  margin-left:20px!important;
  flex:0 0 auto!important;
  border:0!important;
  border-radius:6px!important;
  background:linear-gradient(180deg,#b40000,#b40000)!important;
  color:#fff!important;
  font-family:"Roboto",sans-serif!important;
  font-weight:700!important;
  font-size:.82rem!important;
  padding:10px 17px!important;
  box-shadow:0 3px 7px rgba(180,0,0,.24)!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
}
body.internal-index-shell .main-nav .dropdown-menu{
  border:0!important;
  border-radius:8px!important;
  box-shadow:0 12px 30px rgba(19,28,38,.14)!important;
}
body.internal-index-shell .main-nav .dropdown-item{
  font-family:"Roboto",sans-serif!important;
  font-size:.85rem!important;
  padding:10px 16px!important;
}
body.internal-index-shell .main-nav .dropdown-item:hover{
  color:var(--vp-red)!important;
  background:#fff5f5!important;
}

/* MISMO MARGEN VISUAL DEL INDEX DESDE 14" */
@media (min-width:1366px){
  body.internal-index-shell .top-strip,
  body.internal-index-shell .main-nav{
    left:var(--vp-shell-gutter)!important;
    right:var(--vp-shell-gutter)!important;
    width:auto!important;
  }
  body.internal-index-shell .top-strip .container-xl,
  body.internal-index-shell .main-nav .container-xl{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding-left:0!important;
    padding-right:0!important;
  }
}
@media (min-width:1200px) and (max-width:1499.98px){
  body.internal-index-shell .brand-wrap{
    min-width:255px!important;
    width:255px!important;
  }
  body.internal-index-shell #mainMenu .navbar-nav{
    margin-right:12px!important;
    gap:28px!important;
  }
  body.internal-index-shell .btn-contact-nav{
    margin-left:16px!important;
    font-size:.84rem!important;
    padding:10px 12px!important;
  }
}

/* FOOTER = INDEX */
body.internal-index-shell .home-footer{
  width:100%!important;
  background:#192128!important;
  color:#d7dde2!important;
  padding:42px 0 0!important;
  font-family:"Roboto",sans-serif!important;
  margin:0!important;
}
body.internal-index-shell .home-footer>.container-xl{
  width:100%!important;
  max-width:1480px!important;
  padding-left:24px!important;
  padding-right:24px!important;
}
body.internal-index-shell .footer-grid{
  display:grid!important;
  grid-template-columns:1.35fr .75fr .9fr 1.35fr .7fr!important;
  gap:42px!important;
  align-items:start!important;
  padding-bottom:32px!important;
}
body.internal-index-shell .footer-brand img{
  height:86px!important;
  width:auto!important;
  max-width:190px!important;
  object-fit:contain!important;
  margin-bottom:16px!important;
}
body.internal-index-shell .footer-brand p{
  font-size:.84rem!important;
  line-height:1.6!important;
  color:#b8c1c9!important;
  margin:0!important;
  max-width:285px!important;
}
body.internal-index-shell .home-footer h3{
  font-size:.92rem!important;
  color:#fff!important;
  font-weight:700!important;
  margin:0 0 14px!important;
}
body.internal-index-shell .home-footer ul{
  padding:0!important;
  margin:0!important;
  list-style:none!important;
}
body.internal-index-shell .home-footer li{
  margin:0 0 7px!important;
}
body.internal-index-shell .home-footer li a,
body.internal-index-shell .home-footer a{
  font-size:.81rem!important;
  line-height:1.5!important;
  color:#c7cfd6!important;
  text-decoration:none!important;
}
body.internal-index-shell .home-footer a:hover{
  color:#fff!important;
}
body.internal-index-shell .contact-line{
  display:flex!important;
  align-items:flex-start!important;
  gap:9px!important;
  margin-bottom:9px!important;
  color:#d1d7dc!important;
  font-size:.82rem!important;
  line-height:1.45!important;
}
body.internal-index-shell .contact-line i{
  color:#fff!important;
  font-size:.86rem!important;
  margin-top:2px!important;
}
body.internal-index-shell .footer-social{
  display:flex!important;
  gap:10px!important;
  flex-wrap:wrap!important;
}
body.internal-index-shell .footer-social a{
  width:36px!important;
  height:36px!important;
  border-radius:7px!important;
  border:1px solid #58636d!important;
  display:grid!important;
  place-items:center!important;
  color:#fff!important;
  font-size:1rem!important;
}
body.internal-index-shell .footer-bottom{
  border-top:1px solid rgba(255,255,255,.11)!important;
  padding:14px 0 16px!important;
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:20px!important;
  color:#9fa8b0!important;
  font-size:.72rem!important;
}
body.internal-index-shell .footer-bottom span{
  font-size:.72rem!important;
}

/* FOOTER INTERNO ALINEADO A LA MISMA LÍNEA DEL INDEX */
@media (min-width:1366px){
  body.internal-index-shell .home-footer>.container-xl{
    width:100%!important;
    max-width:none!important;
    padding-left:calc(var(--vp-shell-gutter) + 28px)!important;
    padding-right:calc(var(--vp-shell-gutter) + 28px)!important;
  }
}
@media (min-width:1920px){
  body.internal-index-shell .home-footer>.container-xl{
    padding-left:calc((100vw - 1672px)/2 + 28px)!important;
    padding-right:calc((100vw - 1672px)/2 + 28px)!important;
  }
}

/* FLOTANTES = INDEX */
body.internal-index-shell .float-stack{
  position:fixed!important;
  right:20px!important;
  bottom:20px!important;
  z-index:1060!important;
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  align-items:center!important;
}
body.internal-index-shell .floating-btn{
  width:48px!important;
  height:48px!important;
  border-radius:50%!important;
  border:0!important;
  display:grid!important;
  place-items:center!important;
  color:#fff!important;
  box-shadow:0 8px 22px rgba(0,0,0,.18)!important;
}
body.internal-index-shell .whatsapp{
  background:#25D366!important;
  font-size:1.5rem!important;
}
body.internal-index-shell .scrolltop{
  background:#232c33!important;
  font-size:1rem!important;
  opacity:0;
  pointer-events:none;
}
body.internal-index-shell .scrolltop.show{
  opacity:1!important;
  pointer-events:auto!important;
}

/* RESPONSIVE */
@media (max-width:991.98px){
  body.internal-index-shell{
    --navbar-h:92px;
    --header-strip-h:0px;
  }
  body.internal-index-shell .top-strip{
    display:none!important;
  }
  body.internal-index-shell .main-nav{
    top:0!important;
    height:92px!important;
  }
  body.internal-index-shell .main-nav.compact{
    transform:none!important;
    height:78px!important;
  }
  body.internal-index-shell .main-nav .container-xl{
    padding-left:18px!important;
    padding-right:18px!important;
  }
  body.internal-index-shell .brand-wrap{
    min-width:120px!important;
    width:120px!important;
  }
  body.internal-index-shell .brand-logo{
    height:82px!important;
    transform:translateY(-50%)!important;
  }
  body.internal-index-shell .main-nav.compact .brand-logo{
    height:66px!important;
  }
  body.internal-index-shell #mainMenu{
    display:block;
    background:#fff!important;
    padding:14px 18px 20px!important;
    border-radius:0 0 12px 12px!important;
    box-shadow:0 14px 30px rgba(19,28,38,.12)!important;
  }
  body.internal-index-shell #mainMenu .navbar-nav{
    gap:0!important;
    margin:0!important;
  }
  body.internal-index-shell .main-nav .nav-link,
  body.internal-index-shell .main-nav.compact .nav-link{
    padding:11px 3px!important;
    font-size:.88rem!important;
  }
  body.internal-index-shell .main-nav .nav-link.active::after{
    bottom:4px!important;
    left:3px!important;
    right:auto!important;
    width:28px!important;
  }
  body.internal-index-shell .btn-contact-nav{
    width:100%!important;
    justify-content:center!important;
    margin:8px 0 0!important;
  }
  body.internal-index-shell .footer-grid{
    grid-template-columns:1fr 1fr!important;
    gap:30px!important;
  }
}
@media (max-width:767.98px){
  body.internal-index-shell .home-footer>.container-xl{
    padding-left:18px!important;
    padding-right:18px!important;
  }
  body.internal-index-shell .footer-grid{
    grid-template-columns:1fr!important;
  }
  body.internal-index-shell .footer-bottom{
    flex-direction:column!important;
    align-items:flex-start!important;
  }
}
