/* Barra fija de contacto en móvil (includes/contacto-movil.php). Solo < 992 px: la ocultan las clases d-lg-none. */
:root { --igd-barra-alto: 56px; }
.barra-contacto {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 1030; /* bajo Marissa (1040) y el aviso de cookies (1080) */
  display: flex; gap: 8px;
  padding: 8px 12px calc(8px + env(safe-area-inset-bottom, 0px));
  background: #0D2278; box-shadow: 0 -4px 16px rgba(13,34,120,.25);
}
.barra-contacto-btn {
  flex: 1 1 0; display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  min-height: 40px; border-radius: 4px; font-family: Barlow, Inter, sans-serif; font-weight: 600; font-size: 1rem;
  text-decoration: none; color: #fff; background: #719BE2;
}
.barra-contacto-btn:hover, .barra-contacto-btn:focus-visible { color: #0D2278; background: #fff; outline: none; }
.barra-contacto-wa { background: transparent; border: 1px solid #719BE2; }
/* Espacio al final de la página para que la barra no tape el pie. */
.barra-contacto-espacio { height: calc(var(--igd-barra-alto) + env(safe-area-inset-bottom, 0px)); background: #091759; }
/* El botón de Marissa sube por encima de la barra (en teléfono su panel abierto ocupa toda la pantalla, z-index 1040,
   y tapa la barra); en tableta el panel abierto se acorta para caber sobre ella. */
@media (max-width: 991.98px) {
  .barra-contacto ~ .asis { bottom: calc(var(--igd-barra-alto) + 12px + env(safe-area-inset-bottom, 0px)); }
}
@media (min-width: 576px) and (max-width: 991.98px) {
  .barra-contacto ~ .asis .asis-panel { max-height: min(620px, calc(100vh - var(--igd-barra-alto) - 52px)); }
}
