/* V7 08/08/2026 — Contacto compacto, menú tablet, legales sin bandas y header móvil fijo */

/* =========================================================
   1) CONTACTANOS — composición más compacta
   ========================================================= */
.seccion-contacto{
  padding-top:58px!important;
  padding-bottom:68px!important;
}
.contacto-cuadricula{
  width:100%!important;
  max-width:1080px!important;
  margin:28px auto 0!important;
  grid-template-columns:minmax(320px,380px) minmax(0,660px)!important;
  gap:24px!important;
  align-items:start!important;
  justify-content:center!important;
}
.informacion-contacto{
  align-self:start!important;
  min-height:0!important;
  padding-bottom:18px!important;
}
.horario-contacto{
  margin:22px -16px 0!important;
}
.formulario-tarjeta{
  width:100%!important;
  max-width:660px!important;
  justify-self:center!important;
}
.formulario-titulo{
  padding-top:22px!important;
  padding-bottom:18px!important;
}
#formularioContacto{
  padding-top:20px!important;
  padding-bottom:24px!important;
}

/* Tablet: una sola columna, pero sin que la tarjeta ocupe todo el ancho visual. */
@media (min-width:721px) and (max-width:960px){
  .seccion-contacto{padding-top:48px!important;padding-bottom:58px!important;}
  .contacto-cuadricula{
    max-width:760px!important;
    grid-template-columns:1fr!important;
    margin-top:24px!important;
    gap:22px!important;
  }
  .informacion-contacto,.formulario-tarjeta{width:100%!important;max-width:760px!important;justify-self:center!important;}
  .horario-contacto{margin-top:20px!important;}
}

/* Móvil: conservar la composición responsive, sólo evitar altura artificial en la columna izquierda. */
@media (max-width:720px){
  .seccion-contacto{padding-top:48px!important;}
  .contacto-cuadricula{max-width:100%!important;grid-template-columns:1fr!important;margin-top:28px!important;gap:18px!important;}
  .informacion-contacto,.formulario-tarjeta{max-width:100%!important;}
  .horario-contacto{margin-top:18px!important;}
  #formularioContacto{padding:21px 16px 24px!important;}
}

/* =========================================================
   2) MAPA — tarjeta inferior más compacta SOLO PC/LAPTOP/TABLET
   ========================================================= */
@media (min-width:721px){
  .mapa-dato{
    width:min(490px,calc(100% - 44px))!important;
    min-height:70px!important;
    padding:9px 10px!important;
    grid-template-columns:42px minmax(0,1fr) auto!important;
    gap:6px!important;
  }
  .mapa-dato>span{width:42px!important;height:42px!important;}
  .mapa-dato a{min-height:38px!important;padding:0 9px!important;gap:4px!important;}
}

/* =========================================================
   3) MENÚ TABLET — menos espacio muerto entre encabezado y opciones
   ========================================================= */
@media (min-width:721px) and (max-width:1120px){
  .menu-principal{min-height:94px!important;}
  .menu-zona{
    inset:94px 0 0 0!important;
    height:calc(100dvh - 94px)!important;
    min-height:0!important;
    padding:4px max(28px,8vw) 24px!important;
    justify-content:flex-start!important;
    overflow-y:auto!important;
  }
  .menu-lista{margin-top:0!important;}
  .menu-lista a,.desplegable>button{padding-top:12px!important;padding-bottom:12px!important;}
  .portal-menu-movil{margin-top:12px!important;}
}

/* =========================================================
   4) PÁGINAS LEGALES — eliminar bandas/sombras laterales
   ========================================================= */
html:has(body.pagina-legal),
body.pagina-legal{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  background:#fff!important;
  overflow-x:hidden!important;
}
body.pagina-legal main,
body.pagina-legal .miga-global,
body.pagina-legal .legal-contenido,
body.pagina-legal .footer-gael{
  box-shadow:none!important;
  filter:none!important;
}
body.pagina-legal main{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  background:#fff!important;
}
body.pagina-legal .legal-contenido{
  background:#fff!important;
}

/* =========================================================
   5) LEGALES EN MÓVIL — encabezado siempre visible
   ========================================================= */
@media (max-width:720px){
  body.pagina-legal .encabezado{
    position:sticky!important;
    top:0!important;
    z-index:3500!important;
    width:100%!important;
    background:#fff!important;
  }
  body.pagina-legal .encabezado.fijo{padding-bottom:0!important;}
  body.pagina-legal .encabezado.fijo .menu-envuelto{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    box-shadow:0 5px 18px rgba(3,58,53,.08)!important;
  }
  body.pagina-legal .menu-zona{
    inset:88px 0 0 0!important;
    height:calc(100dvh - 88px)!important;
    padding:10px 22px 24px!important;
    justify-content:flex-start!important;
  }
}

/* =========================================================
   6) LEGALES — WhatsApp y Volver arriba garantizados
   ========================================================= */
body.pagina-legal .acciones-flotantes{
  position:fixed!important;
  right:18px!important;
  bottom:18px!important;
  z-index:5000!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:10px!important;
}
body.pagina-legal .whatsapp-flotante{
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
}
body.pagina-legal .volver-arriba,
body.pagina-legal .volver-arriba.visible{
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
  transform:none!important;
}
@media (max-width:720px){
  .contacto-cuadricula .formulario-tarjeta{width:calc(100% - 10px)!important;margin-inline:auto!important;}
}
