/* Shared scroll-reveal system — matches the design-handoff kit's data-reveal / data-stagger
   behavior: fade + rise into view on first intersection, then stay. Reused across every
   service/industry page (and any bespoke page that opts in), not industry-specific. */

.pg-reveal {
	opacity: 0;
	transform: translateY(30px);
	transition: opacity .6s ease, transform .6s ease;
}
.pg-reveal.is-visible {
	opacity: 1;
	transform: none;
}

.pg-stagger > * {
	opacity: 0;
	transform: translateY(30px);
	transition: opacity .6s ease, transform .6s ease;
}
.pg-stagger.is-visible > * {
	opacity: 1;
	transform: none;
}
/* stagger direct children's transition-delay up to 10; beyond that they all share the last delay */
.pg-stagger > *:nth-child(1) { transition-delay: 0s; }
.pg-stagger > *:nth-child(2) { transition-delay: .08s; }
.pg-stagger > *:nth-child(3) { transition-delay: .16s; }
.pg-stagger > *:nth-child(4) { transition-delay: .24s; }
.pg-stagger > *:nth-child(5) { transition-delay: .32s; }
.pg-stagger > *:nth-child(6) { transition-delay: .4s; }
.pg-stagger > *:nth-child(7) { transition-delay: .48s; }
.pg-stagger > *:nth-child(8) { transition-delay: .56s; }
.pg-stagger > *:nth-child(9) { transition-delay: .64s; }
.pg-stagger > *:nth-child(n+10) { transition-delay: .72s; }

@media (prefers-reduced-motion: reduce) {
	.pg-reveal, .pg-stagger > * {
		transition-duration: .01ms !important;
		transition-delay: 0s !important;
	}
}
