/* LIMPIEZA MENÚ MÓVIL ALADDÍN */
@media (max-width: 768px){
  .main-nav{position:relative !important; z-index:2000 !important;}
  .icon-menu{position:relative !important; z-index:2001 !important; pointer-events:auto !important;}
  .menu{position:absolute !important; top:40px !important; left:0 !important; width:100% !important; height:0 !important; overflow:hidden !important; transform:none !important; z-index:2002 !important;}
  .menu.mostrar{height:364px !important; overflow:visible !important;}
  .banner2{z-index:auto !important;}
  .banner2:before{z-index:0 !important; pointer-events:none !important;}
  .banner2__degradado,.banner2__cta{pointer-events:none !important;}
  .banner2__cta a{pointer-events:auto !important;}
  .aladdin-intro.is-hidden{display:none !important;}
}

/* ==========================================================================
   ALADDÍN 2026 · MÓVIL · CORRECCIÓN DE MENÚ
   Sustituye al anterior aladdin-mobile-2026.css.
   IMPORTANTE: no modifica header, logo, menú ni navegación.
   ========================================================================== */

@media (max-width: 768px) {

  html, body {
    overflow-x: hidden;
  }

  /* --------------------------------------------------------------
     BANNER
     -------------------------------------------------------------- */

  .banner2--aladdin,
  .banner2 {
    width: 100%;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: hidden;
  }

  .banner2--aladdin .banner__img2,
  .banner2 .banner__img2 {
    display: block;
    width: 100%;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center center !important;
  }

  .banner2__degradado {
    height: 42%;
  }

  .banner2__cta {
    left: 50%;
    bottom: 9px;
    width: calc(100% - 24px);
    transform: translateX(-50%);
  }

  .banner2__cta span {
    display: none;
  }

  .banner2__boton {
    min-height: 40px;
    padding: 0 16px;
    font-size: 12px;
  }

  /* --------------------------------------------------------------
     BLOQUE COMÚN ARTXART
     No tocamos sus estilos base, solo limitamos ancho si hiciera falta.
     -------------------------------------------------------------- */

  .group--color {
    max-width: calc(100% - 28px);
    margin-left: auto;
    margin-right: auto;
  }

  /* --------------------------------------------------------------
     HERO AZUL
     -------------------------------------------------------------- */

  .aladdin-estreno-2026 {
    width: calc(100% - 20px);
    margin: 22px auto 30px;
    padding: 20px 16px;
    grid-template-columns: 1fr;
    gap: 20px;
    border-radius: 16px;
  }

  .aladdin-estreno-2026__cartel img {
    width: min(230px, 72vw);
    max-width: none;
    margin: 0 auto;
  }

  .aladdin-estreno-2026__info {
    text-align: center;
  }

  .aladdin-estreno-2026__info h1 {
    font-size: 34px;
    line-height: .98;
  }

  .aladdin-estreno-2026__info h1 span {
    margin-top: 6px;
    font-size: .72em;
  }

  .aladdin-estreno-2026__lead {
    font-size: 14px;
    line-height: 1.5;
  }

  .aladdin-estreno-2026__datos {
    text-align: left;
  }

  .aladdin-estreno-2026__acciones {
    flex-direction: column;
  }

  .aladdin-estreno-2026__acciones .btn-estreno {
    width: 100%;
  }

  /* --------------------------------------------------------------
     FECHAS
     -------------------------------------------------------------- */

  .aladdin-fechas-strip {
    width: calc(100% - 20px);
    margin: -8px auto 24px;
    padding: 14px;
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .aladdin-fechas-strip__intro {
    text-align: center;
  }

  .aladdin-fechas-strip__fechas {
    grid-template-columns: repeat(4, 1fr);
    gap: 7px;
  }

  .aladdin-fechas-strip__fechas div {
    min-height: 62px;
  }

  /* --------------------------------------------------------------
     MOTIVOS
     -------------------------------------------------------------- */

  .aladdin-razones {
    width: calc(100% - 20px);
    margin-bottom: 28px;
  }

  .aladdin-razones__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
  }

  .aladdin-razones article {
    padding: 13px 8px;
  }

  .aladdin-razones strong {
    font-size: 17px;
  }

  /* --------------------------------------------------------------
     TRÁILER
     -------------------------------------------------------------- */

  .aladdin-trailer {
    width: calc(100% - 20px);
    margin: 28px auto;
    padding: 20px 14px;
    border-radius: 15px;
  }

  .aladdin-trailer__cabecera h2 {
    font-size: 31px;
  }

  .aladdin-trailer__cabecera p {
    font-size: 13px;
  }

  .aladdin-trailer .video_intro {
    width: 100% !important;
    margin-bottom: 16px !important;
  }

  .aladdin-trailer .texto1_aladdin {
    width: 100% !important;
    text-align: left;
    font-size: 14px;
  }

  .aladdin-trailer .aladdin-cta-intermedia {
    width: 100%;
    padding: 15px;
    flex-direction: column;
    text-align: center;
  }

  .aladdin-trailer .aladdin-cta-intermedia .btn-estreno {
    width: 100%;
  }

  /* --------------------------------------------------------------
     ESPECTÁCULO + CARTEL
     -------------------------------------------------------------- */

  .aladdin-espectaculo-bloque {
    width: calc(100% - 20px);
    margin-bottom: 28px;
    padding: 20px 15px;
    grid-template-columns: 1fr;
    gap: 20px;
    border-radius: 15px;
  }

  .aladdin-espectaculo-bloque__texto > p {
    font-size: 14px;
  }

  .aladdin-equipo-creativo {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .nombre-persona {
    white-space: normal;
  }

  .aladdin-espectaculo-bloque__visual img {
    width: min(290px, 80vw);
    height: auto;
    min-height: 0;
    margin: 0 auto;
    object-fit: contain;
  }

  /* --------------------------------------------------------------
     SINOPSIS Y ELENCO
     -------------------------------------------------------------- */

  .aladdin-seccion {
    width: calc(100% - 20px);
    margin-bottom: 28px;
    padding: 20px 15px;
    border-radius: 15px;
  }

  .aladdin-seccion__titulo h2 {
    font-size: 31px;
  }

  .aladdin-seccion .texto4_aladdin,
  .aladdin-seccion--elenco .texto5_aladdin {
    font-size: 14px;
  }

  .aladdin-seccion--elenco .texto5_aladdin {
    columns: 1;
  }

  /* --------------------------------------------------------------
     CTA FINAL
     -------------------------------------------------------------- */

  .aladdin-cta-final {
    width: calc(100% - 20px);
    margin: 30px auto;
    padding: 28px 16px;
  }

  .aladdin-cta-final h2 {
    font-size: 30px;
  }

  .aladdin-cta-final .btn-estreno {
    width: 100%;
  }

  /* --------------------------------------------------------------
     GALERÍA
     -------------------------------------------------------------- */

  .aladdin-galeria-cabecera {
    width: calc(100% - 20px);
    margin: 28px auto 14px;
  }

  .galeria_aladdin .container--flex {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 5px;
    padding: 0 5px;
  }

  .galeria_aladdin .column {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .gallery__img {
    width: 100%;
    height: auto;
    display: block;
    margin-bottom: 5px;
  }

  /* --------------------------------------------------------------
     BOTÓN FLOTANTE
     -------------------------------------------------------------- */

  .aladdin-ticket-float {
    right: 10px;
    bottom: 10px;
    min-height: 40px;
    padding: 0 14px;
    font-size: 12px;
  }

  /* --------------------------------------------------------------
     INTRO CINEMATOGRÁFICA
     -------------------------------------------------------------- */

  .aladdin-intro__interior {
    width: calc(100% - 34px);
  }

  .aladdin-intro__interior strong {
    font-size: clamp(54px, 22vw, 88px);
  }

  .aladdin-intro__interior em {
    font-size: 17px;
  }
}

@media (max-width: 420px) {

  .aladdin-fechas-strip__fechas {
    grid-template-columns: repeat(2, 1fr);
  }

  .galeria_aladdin .container--flex {
    grid-template-columns: 1fr;
  }
}
