/* Academia IA · Diseños — núcleo (v1.0.0 · 2026-09-24 · 1.12.0 · 2026-10-24: siempre animados, precio de la colección; revisión 24/10: siempre animados con aia-reposo, aia-off y pausas a propósito) */
/* Secciones fuera de pantalla: sus animaciones se pausan (vuelven a moverse al aparecer) */
.aia-off,.aia-off *,.aia-off *::before,.aia-off *::after{animation-play-state:paused!important}
/* Aviso del editor: solo se ve si el plugin NO está activo */
.aia-need,.elementor-editor-active .aia-need.aia-need{display:none!important}
.aia-marker{display:none}
/* Cinta infinita de texto (compartida por todos los diseños) */
.mq{overflow:hidden;width:100%;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.mq-track{display:flex;align-items:center;gap:28px;padding-right:28px;width:max-content;animation:mqscroll 40s linear infinite}
.mq:hover .mq-track{animation-play-state:paused}
.mq-item{white-space:nowrap}
@keyframes mqscroll{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.mq-track{animation:none}}
/* 1.12.0 · SIEMPRE ANIMADOS: los banners de oferta, checkout y «comprar ahora» (diseños 18-24 y 28, o cualquier contenedor con
   la clase aia-vivo) no entran en reposo: ni el de su diseño (html.dNN-idle) ni el del Diseño 16/17 (aia-calm, aia-rest,
   aia-fresh-on). Para que uno descanse: clase aia-reposo (en él, en un antepasado o en una parte de dentro).
   Revisión 24/10: siguen pausados fuera de pantalla (aia-off, también cuando el mismo contenedor vivo es la sección), con el mouse
   encima de una cinta que se detiene al pasar el mouse (.mq, cinta del D19, muro del D20) y las barras fijas escondidas del
   D18/D19 (sin dNN-show): esas pausas son a propósito y la regla de abajo ya no las pisa. */
html:is([class*="-idle"],.aia-calm,.aia-rest,.aia-fresh-on) .aia-vivo:not(.aia-off,.aia-off *,.aia-reposo,.aia-reposo *,.d18-sb:not(.d18-show),.d19-sb:not(.d19-show)):not(#aia-v),html:is([class*="-idle"],.aia-calm,.aia-rest,.aia-fresh-on) .aia-vivo:not(.aia-off,.aia-off *,.aia-reposo,.aia-reposo *,.d18-sb:not(.d18-show),.d19-sb:not(.d19-show)):not(#aia-v)::before,html:is([class*="-idle"],.aia-calm,.aia-rest,.aia-fresh-on) .aia-vivo:not(.aia-off,.aia-off *,.aia-reposo,.aia-reposo *,.d18-sb:not(.d18-show),.d19-sb:not(.d19-show)):not(#aia-v)::after,html:is([class*="-idle"],.aia-calm,.aia-rest,.aia-fresh-on) .aia-vivo:not(.aia-off,.aia-off *,.aia-reposo,.aia-reposo *,.d18-sb:not(.d18-show),.d19-sb:not(.d19-show)) *:not(.aia-reposo,.aia-reposo *,.d18-sb:not(.d18-show) *,.d19-sb:not(.d19-show) *,.mq:hover .mq-track,.d19-ticker:hover .d19-tk-track,.d20-trm-row:hover .d20-trm-track):not(#aia-v),html:is([class*="-idle"],.aia-calm,.aia-rest,.aia-fresh-on) .aia-vivo:not(.aia-off,.aia-off *,.aia-reposo,.aia-reposo *,.d18-sb:not(.d18-show),.d19-sb:not(.d19-show)) *:not(.aia-reposo,.aia-reposo *,.d18-sb:not(.d18-show) *,.d19-sb:not(.d19-show) *,.mq:hover .mq-track,.d19-ticker:hover .d19-tk-track,.d20-trm-row:hover .d20-trm-track):not(#aia-v)::before,html:is([class*="-idle"],.aia-calm,.aia-rest,.aia-fresh-on) .aia-vivo:not(.aia-off,.aia-off *,.aia-reposo,.aia-reposo *,.d18-sb:not(.d18-show),.d19-sb:not(.d19-show)) *:not(.aia-reposo,.aia-reposo *,.d18-sb:not(.d18-show) *,.d19-sb:not(.d19-show) *,.mq:hover .mq-track,.d19-ticker:hover .d19-tk-track,.d20-trm-row:hover .d20-trm-track):not(#aia-v)::after{animation-play-state:running!important}
/* 1.12.0 · PRECIO DE LA COLECCIÓN sin precio tachado (Diseños IA › «Precio de la colección» con el tachado vacío): se ocultan
   el precio tachado y lo que va con él (aia-p-oldbox: «Antes», la línea, la etiqueta). */
.aia-sin-tachado .aia-precio-old,.aia-sin-tachado .aia-p-old,.aia-sin-tachado .aia-p-oldbox{display:none!important}
/* 1.12.0 · PRICE TABLE con la CAMPAÑA activa (Diseños IA › «Precio de la colección» › «Mientras la campaña esté activa»): en los
   price tables (clase aia-pt; también el Price Table de Elementor Pro con esa clase) se ocultan el precio (aia-pt-precio) y/o el
   botón de comprar (aia-pt-boton), porque debajo van los banners de la oferta con su botón. Lo elige usted: precio, botón, ambos o
   ninguno. Un contenedor con la clase aia-ocultar-en-campana se oculta entero mientras dure la campaña. Nunca en el editor. */
.aia-pt-sin-precio body:not(.elementor-editor-active) .aia-pt .aia-pt-precio,body.aia-pt-sin-precio:not(.elementor-editor-active) .aia-pt .aia-pt-precio,.aia-pt-sin-precio body:not(.elementor-editor-active) .aia-pt .elementor-price-table__price,body.aia-pt-sin-precio:not(.elementor-editor-active) .aia-pt .elementor-price-table__price{display:none!important}
.aia-pt-sin-boton body:not(.elementor-editor-active) .aia-pt .aia-pt-boton,body.aia-pt-sin-boton:not(.elementor-editor-active) .aia-pt .aia-pt-boton,.aia-pt-sin-boton body:not(.elementor-editor-active) .aia-pt .elementor-price-table__footer,body.aia-pt-sin-boton:not(.elementor-editor-active) .aia-pt .elementor-price-table__footer{display:none!important}
.aia-en-campana body:not(.elementor-editor-active) .aia-ocultar-en-campana,body.aia-en-campana:not(.elementor-editor-active) .aia-ocultar-en-campana{display:none!important}
/* 1.12.0 · aia-solo-campana: se ve SOLO mientras la campaña esté activa (las «ofertas aparte» del Diseño 28: al activar la
   campaña aparecen encima del «Comprar ahora»; al desactivarla, o al terminar con «Ocultar los banners», desaparecen). El
   servidor pone aia-en-campana en <body>; el núcleo la pone y la quita en <html> y <body>. Se ven en el editor y en las galerías. */
html:not([class*="-gallery"]) body:not(.aia-en-campana):not(.elementor-editor-active) .aia-solo-campana{display:none!important}
