/* AlterCV — site-wide scroll reveal (fly-up). Drop in on every page. */

/* Reduced motion: skip everything. */
@media (prefers-reduced-motion: reduce) {
  .acv-reveal, .acv-reveal > * { opacity: 1 !important; transform: none !important; transition: none !important; }
}

/* Initial hidden state */
.acv-reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity .65s cubic-bezier(0.22, 0.61, 0.36, 1),
              transform .65s cubic-bezier(0.22, 0.61, 0.36, 1);
  will-change: transform, opacity;
}
.acv-reveal.is-in {
  opacity: 1;
  transform: translateY(0);
}

/* Stagger children inside a stagger group */
.acv-stagger > * {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity .55s cubic-bezier(0.22, 0.61, 0.36, 1),
              transform .55s cubic-bezier(0.22, 0.61, 0.36, 1);
  will-change: transform, opacity;
}
.acv-stagger.is-in > * { opacity: 1; transform: translateY(0); }
.acv-stagger.is-in > *:nth-child(1) { transition-delay: 0.04s; }
.acv-stagger.is-in > *:nth-child(2) { transition-delay: 0.10s; }
.acv-stagger.is-in > *:nth-child(3) { transition-delay: 0.16s; }
.acv-stagger.is-in > *:nth-child(4) { transition-delay: 0.22s; }
.acv-stagger.is-in > *:nth-child(5) { transition-delay: 0.28s; }
.acv-stagger.is-in > *:nth-child(6) { transition-delay: 0.34s; }
.acv-stagger.is-in > *:nth-child(7) { transition-delay: 0.40s; }
.acv-stagger.is-in > *:nth-child(8) { transition-delay: 0.46s; }
.acv-stagger.is-in > *:nth-child(9) { transition-delay: 0.52s; }
.acv-stagger.is-in > *:nth-child(10) { transition-delay: 0.58s; }
.acv-stagger.is-in > *:nth-child(11) { transition-delay: 0.64s; }
.acv-stagger.is-in > *:nth-child(12) { transition-delay: 0.70s; }
