
/* Hotfix 30.2.0 — estabilización móvil y carga */
@media (max-width: 900px) {
  html, body {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  header,
  .site-header,
  .main-header,
  [class*="header"] {
    max-width: 100vw !important;
  }

  /* Menú móvil: panel opaco, compacto y desplazable */
  header nav,
  .site-nav,
  .main-nav,
  .nav-menu,
  .mobile-menu,
  .menu-mobile,
  [class*="mobile-menu"],
  [class*="nav-menu"] {
    max-width: 100vw !important;
  }

  .mobile-menu.is-open,
  .mobile-menu.open,
  .menu-mobile.is-open,
  .menu-mobile.open,
  .nav-menu.is-open,
  .nav-menu.open,
  [class*="mobile-menu"].active,
  [class*="mobile-menu"][aria-hidden="false"],
  [class*="nav-menu"].active {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    top: var(--coop-mobile-header-height, 92px) !important;
    bottom: auto !important;
    width: 100vw !important;
    max-height: calc(100dvh - var(--coop-mobile-header-height, 92px)) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    background: #fff !important;
    opacity: 1 !important;
    z-index: 99990 !important;
    padding: 14px 22px 22px !important;
    box-shadow: 0 18px 34px rgba(3, 49, 37, .16) !important;
  }

  .mobile-menu a,
  .menu-mobile a,
  .nav-menu a,
  [class*="mobile-menu"] a,
  [class*="nav-menu"] a {
    min-height: 44px !important;
    padding: 10px 8px !important;
    margin: 0 !important;
    line-height: 1.25 !important;
  }

  .mobile-menu li,
  .menu-mobile li,
  .nav-menu li,
  [class*="mobile-menu"] li,
  [class*="nav-menu"] li {
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Evita imágenes o bloques más anchos que el teléfono */
  img, video, iframe, canvas, svg {
    max-width: 100% !important;
    height: auto;
  }

  section, .container, .wrapper, main {
    max-width: 100% !important;
  }
}

/* El cargador no puede bloquear la portada indefinidamente */
#preloader,
.preloader,
.page-loader,
.site-loader,
.loading-screen,
[class*="preloader"],
[class*="page-loader"] {
  transition: opacity .2s ease !important;
}
.coop-force-loaded-3020 #preloader,
.coop-force-loaded-3020 .preloader,
.coop-force-loaded-3020 .page-loader,
.coop-force-loaded-3020 .site-loader,
.coop-force-loaded-3020 .loading-screen,
.coop-force-loaded-3020 [class*="preloader"],
.coop-force-loaded-3020 [class*="page-loader"] {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  display: none !important;
}
