/* ER Scroll Rescue — Global */
/* 1) Quita locks comunes que rompen scroll */
html, body{
  overflow-y: auto !important;
  overflow-x: hidden !important;
  height: auto !important;
  position: static !important;
  -webkit-overflow-scrolling: touch !important;
  touch-action: pan-y !important;
}

/* Locks por clases típicas */
body.modal-open,
body.popup-open,
body.no-scroll,
body.elementor-popup-modal-open,
body.elementor-lightbox-open,
body.has-popup,
html.elementor-popup-modal-open{
  overflow-y: auto !important;
  position: static !important;
  height: auto !important;
}

/* 2) Evita que un overlay INVISIBLE capture eventos.
   Solo desactiva pointer-events cuando está "oculto". */
.elementor-popup-modal[aria-hidden="true"],
.elementor-lightbox[aria-hidden="true"],
.dialog-widget[aria-hidden="true"]{
  pointer-events: none !important;
}

/* 3) Contenedores de cookies: no bloquean scroll (sin ocultarlos) */
.cmplz-cookiebanner,
.complianz-cookiebanner,
.cookie-notice-container,
.cky-consent-container,
.cookieyes-banner,
#cookie-law-info-bar{
  /* Mantén visible, pero no bloquees scroll global */
  overscroll-behavior: contain !important;
}

/* 4) Si algún plugin mete overflow hidden inline, lo sobreescribe */
[style*="overflow: hidden"]{
  overflow: visible !important;
}

/* 5) Evita “rebote” que rompe scroll en móviles en algunos themes */
body{
  overscroll-behavior-y: auto !important;
}
