/**
 * CVH-166 BATCH-A · Optimización rendimiento almas
 * Aditivo sobre cvh-almas-global.css (v1) + cvh-almas-global-v2.css.
 * NO cambia el número de almas ni el look visual.
 * Solo optimiza compositing GPU + reduce paints + respeta prefers-reduced-motion.
 */

/* Contain + content-visibility: cada alma se aísla del layout global.
   Las almas fuera de viewport no calculan animation. */
.cvh-alma,
.cvh-home-ember {
  contain: layout paint style;
  content-visibility: auto;
  contain-intrinsic-size: 40px 100px;
  pointer-events: none;
  /* Promote to composite layer (GPU) sin re-paint constante */
  will-change: transform, opacity;
  transform: translateZ(0);
  backface-visibility: hidden;
}

/* En pantallas pequeñas (móvil <480), reducir todavía más el compositing */
@media (max-width: 480px) {
  .cvh-alma,
  .cvh-home-ember {
    contain-intrinsic-size: 20px 60px;
  }
}

/* Respeto explícito a prefers-reduced-motion: ocultar almas para usuarios sensibles.
   NO afecta a la mayoría; solo activa cuando el sistema lo pide. */
@media (prefers-reduced-motion: reduce) {
  .cvh-alma,
  .cvh-home-ember {
    display: none !important;
  }
}

/* prefers-reduced-data (Save Data): también ocultar */
@media (prefers-reduced-data: reduce) {
  .cvh-alma,
  .cvh-home-ember {
    display: none !important;
  }
}

/* En impresión: ocultar */
@media print {
  .cvh-alma,
  .cvh-home-ember {
    display: none !important;
  }
}
