/* Scroll-triggered reveal animations for the landing page */

@keyframes hero-fade-in {
	from {
		opacity: 0;
		transform: translateY(16px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
.hero-fade-in {
	animation: hero-fade-in 0.8s ease both;
}

.feature-card,
.faq-fade {
	opacity: 0;
	transform: translateY(24px);
	transition: opacity 0.6s ease, transform 0.6s ease;
}
.feature-card.in-view,
.faq-fade.in-view {
	opacity: 1;
	transform: translateY(0);
}

.plan-slide-left,
.plan-slide-right {
	opacity: 0;
	transition: opacity 0.6s ease, transform 0.6s ease;
}
.plan-slide-left {
	transform: translateX(-60px);
}
.plan-slide-right {
	transform: translateX(60px);
}
.plan-slide-left.in-view,
.plan-slide-right.in-view {
	opacity: 1;
	transform: translateX(0);
}

/* Stagger reveal order within each section */
.row.g-4 > div:nth-child(1) .feature-card,
.row.g-4.justify-content-center > div:nth-child(1) .plan-slide-left,
.accordion-item.faq-fade:nth-child(1) { transition-delay: 0s; }
.row.g-4 > div:nth-child(2) .feature-card,
.row.g-4.justify-content-center > div:nth-child(2) .plan-slide-left,
.accordion-item.faq-fade:nth-child(2) { transition-delay: 0.08s; }
.row.g-4 > div:nth-child(3) .feature-card,
.row.g-4.justify-content-center > div:nth-child(3) .plan-slide-right,
.accordion-item.faq-fade:nth-child(3) { transition-delay: 0.16s; }
.row.g-4 > div:nth-child(4) .feature-card,
.row.g-4.justify-content-center > div:nth-child(4) .plan-slide-right,
.accordion-item.faq-fade:nth-child(4) { transition-delay: 0.24s; }
.row.g-4 > div:nth-child(5) .feature-card,
.accordion-item.faq-fade:nth-child(5) { transition-delay: 0.32s; }
.row.g-4 > div:nth-child(6) .feature-card,
.accordion-item.faq-fade:nth-child(6) { transition-delay: 0.4s; }
.accordion-item.faq-fade:nth-child(7) { transition-delay: 0.48s; }
.accordion-item.faq-fade:nth-child(8) { transition-delay: 0.56s; }

@media (prefers-reduced-motion: reduce) {
	.feature-card,
	.faq-fade,
	.plan-slide-left,
	.plan-slide-right,
	.hero-fade-in {
		opacity: 1;
		transform: none;
		transition: none;
		animation: none;
	}
}
