/* Componentes corporativos compartidos por las páginas provisionales. */
body.corporate-shell{
  --blue:#0b2d5c;
  --orange:#fd6604;
  --green:#92b501;
  --line:#e6eaef;
}

body.corporate-shell .header{
  position:absolute !important;
  inset:0 0 auto !important;
  z-index:50 !important;
  padding:0 16px !important;
  background:transparent !important;
}
body.corporate-shell .header-inner{
  height:78px !important;
  max-width:1220px !important;
  margin:0 auto !important;
  padding:0 24px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  background:transparent !important;
  backdrop-filter:none !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
body.corporate-shell .brand{display:flex !important;align-items:center !important;}
body.corporate-shell .brand img{width:154px !important;height:auto !important;transform:translateY(-1px);}
body.corporate-shell .nav{display:flex;align-items:center;gap:30px !important;font-size:14px !important;font-weight:700 !important;color:var(--blue) !important;}
body.corporate-shell .nav > a:not(.pill),
body.corporate-shell .nav-dropdown-toggle{padding:27px 0 24px !important;}
body.corporate-shell .nav > a:not(.pill){
  position:relative !important;
  color:var(--blue) !important;
  transform:none !important;
}
body.corporate-shell .nav > a:not(.pill)::after{
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  right:auto !important;
  bottom:16px !important;
  width:0 !important;
  height:2px !important;
  display:block !important;
  background:var(--orange) !important;
  transform:translateX(-50%) !important;
  transform-origin:center !important;
  transition:width .18s ease !important;
  box-sizing:border-box !important;
}
body.corporate-shell .nav > a:not(.pill):hover,
body.corporate-shell .nav > a:not(.pill):focus-visible{
  color:var(--orange) !important;
  transform:none !important;
}
body.corporate-shell .nav > a:not(.pill):hover::after,
body.corporate-shell .nav > a:not(.pill):focus-visible::after,
body.corporate-shell .nav > a:not(.pill).active::after{
  width:100% !important;
}
body.corporate-shell .nav > a.pill{
  min-height:40px !important;
  padding:9px 17px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:0 !important;
  border-radius:6px !important;
  box-shadow:none !important;
  color:#fff !important;
  line-height:1 !important;
  position:relative !important;
  overflow:hidden !important;
  transform:none !important;
}
body.corporate-shell .nav > a.pill.green,
body.corporate-shell .nav > a.pill.green.current-page{background:var(--green) !important;color:#fff !important;border:0 !important;box-shadow:none !important;}
body.corporate-shell .nav > a.pill.orange,
body.corporate-shell .nav > a.pill.orange.current-page{background:var(--orange) !important;color:#fff !important;border:0 !important;box-shadow:none !important;}
body.corporate-shell .nav > a.pill:hover,
body.corporate-shell .nav > a.pill:focus-visible{
  filter:brightness(.94) !important;
  transform:none !important;
}
body.corporate-shell .nav > a.pill::after{
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  right:auto !important;
  bottom:6px !important;
  width:0 !important;
  height:2px !important;
  display:block !important;
  background:#fff !important;
  transform:translateX(-50%) !important;
  transition:width .18s ease !important;
}
body.corporate-shell .nav > a.pill:hover::after,
body.corporate-shell .nav > a.pill:focus-visible::after{
  width:calc(100% - 28px) !important;
}
body.corporate-shell .nav > a.pill.green.current-page::after,
body.corporate-shell .nav > a.pill.orange.current-page::after{
  content:"" !important;
  display:block !important;
  transform:translateX(-50%) !important;
}
body.corporate-shell .nav > a.pill.green.current-page:hover,
body.corporate-shell .nav > a.pill.green.current-page:focus-visible,
body.corporate-shell .nav > a.pill.orange.current-page:hover,
body.corporate-shell .nav > a.pill.orange.current-page:focus-visible{
  color:#fff !important;
  border:0 !important;
  box-shadow:none !important;
  transform:none !important;
}
body.corporate-shell .nav-dropdown-menu{top:60px !important;}

body.corporate-shell .btn,
body.corporate-shell .btn-submit,
body.corporate-shell form button[type="submit"]{
  min-height:41px !important;
  width:auto !important;
  padding:12px 20px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:0 !important;
  border-radius:6px !important;
  box-shadow:none !important;
  font:700 13px "Avenir Next","Segoe UI",Arial,Helvetica,sans-serif !important;
  line-height:1.2 !important;
  cursor:pointer !important;
  transform:none !important;
}
body.corporate-shell .btn-orange{background:var(--orange) !important;color:#fff !important;}
body.corporate-shell .btn-dark,
body.corporate-shell .btn-submit,
body.corporate-shell form button[type="submit"]{background:var(--blue) !important;color:#fff !important;}
body.corporate-shell .btn:hover,
body.corporate-shell .btn-submit:hover,
body.corporate-shell form button[type="submit"]:hover{filter:brightness(.94) !important;}

/* La misma respuesta visual de Inicio: línea interior, sin saltos al pasar el cursor. */
body.corporate-shell .hero .btn,
body.corporate-shell section form button[type="submit"]{
  position:relative !important;
  overflow:hidden !important;
  transform:none !important;
}
body.corporate-shell .hero .btn:hover,
body.corporate-shell .hero .btn:focus-visible{
  filter:none !important;
  transform:none !important;
}
body.corporate-shell section form button[type="submit"]:hover,
body.corporate-shell section form button[type="submit"]:focus-visible{
  filter:brightness(.94) !important;
  transform:none !important;
}
body.corporate-shell section#contacto form.contact-card button[type="submit"]:hover,
body.corporate-shell section#contacto form.contact-card button[type="submit"]:focus-visible{
  filter:brightness(.94) !important;
  transform:none !important;
}
body.corporate-shell .hero .btn::after,
body.corporate-shell section form button[type="submit"]::after{
  content:"" !important;
  position:absolute !important;
  left:16px !important;
  right:16px !important;
  bottom:6px !important;
  width:auto !important;
  height:2px !important;
  display:block !important;
  background:rgba(255,255,255,.95) !important;
  transform:scaleX(0) !important;
  transform-origin:center !important;
  transition:transform .18s ease !important;
}
body.corporate-shell .hero .btn:hover::after,
body.corporate-shell .hero .btn:focus-visible::after,
body.corporate-shell section form button[type="submit"]:hover::after,
body.corporate-shell section form button[type="submit"]:focus-visible::after{
  transform:scaleX(1) !important;
}
body.corporate-shell .contact-form-master .btn-submit{justify-self:center !important;}
body.corporate-shell section#contacto.colab-contact-final form.contact-card button[type="submit"]{
  min-height:41px !important;
  height:41px !important;
  width:auto !important;
  padding:12px 20px !important;
  align-self:center !important;
  justify-self:center !important;
  border-radius:6px !important;
  font-size:13px !important;
  font-weight:700 !important;
}

/* Recurso común: mapa y tarjeta de cobertura */
body.corporate-shell .coverage-card{
  min-height:330px !important;
  display:flex !important;
  align-items:center !important;
  overflow:hidden !important;
  border:1px solid var(--line) !important;
  border-radius:12px !important;
  background:#fff !important;
  box-shadow:0 10px 28px rgba(10,46,91,.06) !important;
}
body.corporate-shell .coverage-card img{
  width:100% !important;
  height:auto !important;
  display:block !important;
}

/* Componente común: acceso flotante a WhatsApp */
body.corporate-shell .whatsapp-float{
  position:fixed !important;
  right:22px !important;
  bottom:22px !important;
  z-index:9999 !important;
  width:58px !important;
  height:58px !important;
  padding:0 !important;
  border-radius:50% !important;
  background:#25d366 !important;
  color:#fff !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  line-height:0 !important;
  box-shadow:0 8px 22px rgba(0,0,0,.18) !important;
}
body.corporate-shell .whatsapp-float.is-contact-hidden{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:none !important;
}
body.corporate-shell .whatsapp-float svg{
  width:34px !important;
  height:34px !important;
  display:block !important;
  fill:#fff !important;
  flex:none !important;
}

body.corporate-shell .footer{
  margin-top:0 !important;
  padding:31px 28px 13px !important;
  background:linear-gradient(135deg,#082c5a,#062344) !important;
  color:#fff !important;
}
body.corporate-shell .footer-grid{
  width:100% !important;
  max-width:1220px !important;
  margin:auto !important;
  display:grid !important;
  grid-template-columns:1.55fr .68fr .68fr .82fr !important;
  gap:18px !important;
}
body.corporate-shell .footer-grid > div:not(.footer-brand){justify-self:end !important;text-align:right !important;padding-left:0 !important;max-width:180px !important;}
body.corporate-shell .footer-grid > div:not(.footer-brand) h3,
body.corporate-shell .footer-grid > div:not(.footer-brand) a{text-align:right !important;}
body.corporate-shell .footer-brand img{width:150px !important;filter:brightness(0) invert(1) !important;}
body.corporate-shell .footer p{font-size:10px !important;line-height:1.55 !important;color:#e7eef7 !important;}
body.corporate-shell .footer h3{margin:0 0 9px !important;font-size:13px !important;color:#fff !important;}
body.corporate-shell .footer a{display:block;font-size:11px !important;line-height:1.75 !important;color:#eef4fb !important;}
body.corporate-shell .footer-location{display:block;font-size:11px !important;line-height:1.75 !important;color:#eef4fb !important;font-weight:400 !important;}
body.corporate-shell .socials{display:flex !important;gap:9px !important;align-items:center !important;margin-top:12px !important;}
body.corporate-shell .social-icon{display:inline-flex !important;align-items:center !important;justify-content:center !important;width:30px !important;height:30px !important;border-radius:50% !important;background:#fff !important;padding:0 !important;color:var(--blue) !important;overflow:hidden !important;}
body.corporate-shell .social-icon svg{width:17px !important;height:17px !important;display:block !important;fill:currentColor !important;}
body.corporate-shell .footer .socials .social-icon{
  cursor:pointer !important;
  pointer-events:auto !important;
  transform:none !important;
  box-shadow:none !important;
  filter:none !important;
  transition:transform .18s ease,color .18s ease,box-shadow .18s ease,filter .18s ease !important;
}
body.corporate-shell .footer .socials .social-icon:hover,
body.corporate-shell .footer .socials .social-icon:focus-visible{
  color:var(--orange) !important;
  transform:translateY(-2px) !important;
  box-shadow:0 5px 12px rgba(0,0,0,.14) !important;
  filter:none !important;
  font-weight:400 !important;
}
body.corporate-shell .footer .socials .social-icon:active{
  transform:none !important;
  box-shadow:none !important;
}
body.corporate-shell .footer-bottom{width:100% !important;max-width:1220px !important;margin:20px auto 0 !important;padding:11px 0 0 !important;border-top:1px solid rgba(255,255,255,.14) !important;display:flex !important;align-items:center !important;justify-content:space-between !important;gap:20px !important;font-size:9px !important;color:#fff !important;}
body.corporate-shell .footer-bottom > span{display:inline-flex !important;align-items:center !important;min-height:18px !important;line-height:1.4 !important;margin:0 !important;}
body.corporate-shell .footer-legal-links{white-space:nowrap !important;}
body.corporate-shell .footer-legal-links a{display:inline !important;color:inherit !important;font-size:inherit !important;font-weight:400 !important;text-decoration:none !important;}
body.corporate-shell .footer .footer-bottom .footer-legal-links a:hover,
body.corporate-shell .footer .footer-bottom .footer-legal-links a:focus-visible{
  color:#fff !important;
  font-weight:400 !important;
  text-decoration:underline !important;
}
body.corporate-shell .footer-credit{font-size:9px !important;color:rgba(255,255,255,.72) !important;white-space:nowrap !important;}
body.corporate-shell .footer-credit a{display:inline !important;margin-left:3px !important;font-size:inherit !important;line-height:inherit !important;color:rgba(255,255,255,.86) !important;font-weight:600 !important;}

@media(max-width:950px){
  body.corporate-shell .header{padding:0 !important;}
  body.corporate-shell .header-inner{height:68px !important;max-width:none !important;padding:0 22px !important;background:rgba(255,255,255,.88) !important;backdrop-filter:blur(8px) !important;}
  body.corporate-shell .brand img{width:137px !important;transform:none;}
  body.corporate-shell .menu-toggle{display:block !important;}
  body.corporate-shell .nav{display:none;position:absolute;left:16px;right:16px;top:68px;background:#fff;flex-direction:column;gap:0 !important;padding:10px 22px 18px;border:1px solid var(--line);border-top:0;border-radius:0 0 14px 14px;box-shadow:0 10px 20px rgba(0,0,0,.06);}
  body.corporate-shell .nav.open{display:flex !important;}
  body.corporate-shell .nav a{padding:12px 4px !important;width:100% !important;}
  body.corporate-shell .nav > a:not(.pill)::after{display:none !important;}
  body.corporate-shell .nav .pill{text-align:center !important;margin-top:7px !important;}
  body.corporate-shell .nav > a.pill::after,
  body.corporate-shell .nav > a.pill.green.current-page::after,
  body.corporate-shell .nav > a.pill.orange.current-page::after{display:none !important;}
  body.corporate-shell .nav-dropdown{display:block !important;width:100% !important;align-self:auto !important;}
  body.corporate-shell .nav-dropdown-toggle{width:100% !important;padding:12px 4px !important;text-align:left !important;color:var(--blue) !important;font-size:14px !important;}
  body.corporate-shell .nav-dropdown-toggle::after{display:none !important;}
  body.corporate-shell .nav-dropdown-menu{position:static !important;transform:none !important;min-width:0 !important;width:100% !important;padding:0 0 0 14px !important;border:0 !important;border-radius:0 !important;box-shadow:none !important;opacity:1 !important;visibility:visible !important;pointer-events:auto !important;display:none;}
  body.corporate-shell .nav-dropdown.open .nav-dropdown-menu{display:block !important;}
  body.corporate-shell .nav-dropdown-menu a{padding:9px 4px !important;font-size:13px !important;width:100% !important;}
  body.corporate-shell .footer-grid{grid-template-columns:1.3fr 1fr !important;}
  body.corporate-shell .coverage-card{min-height:auto !important;}
}
@media(max-width:580px){
  body.corporate-shell .header-inner{padding:0 16px !important;background:rgba(255,255,255,.90) !important;}
  body.corporate-shell .footer-grid{grid-template-columns:1fr !important;gap:22px !important;}
  body.corporate-shell .footer-grid > div:not(.footer-brand){justify-self:start !important;text-align:left !important;padding-left:0 !important;max-width:none !important;width:100% !important;}
  body.corporate-shell .footer-grid > div:not(.footer-brand) h3,
  body.corporate-shell .footer-grid > div:not(.footer-brand) a{text-align:left !important;}
  body.corporate-shell .footer-bottom{flex-direction:column !important;align-items:flex-start !important;}
  body.corporate-shell .footer-legal-links{white-space:normal !important;flex-wrap:wrap !important;}
  body.corporate-shell .footer-credit{white-space:normal !important;}
  body.corporate-shell .whatsapp-float{right:14px !important;bottom:14px !important;width:54px !important;height:54px !important;}
  body.corporate-shell .whatsapp-float svg{width:32px !important;height:32px !important;}
}
