.koa-site-shell .koa-motion-section { --koa-reveal-distance: 18px; }
.koa-site-shell [data-koa-reveal] { animation: koa-reveal 700ms var(--koa-ease, cubic-bezier(.22, 1, .36, 1)) both; }
.koa-site-shell .koa-hero__geometry { transform-origin: 75% 50%; animation: koa-rings 1.4s cubic-bezier(.22, 1, .36, 1) both; }
.koa-site-shell .koa-mastery__step,
.koa-site-shell .koa-journey__step { animation: koa-step 600ms ease both; }
.koa-site-shell .koa-mastery__step:nth-child(2),
.koa-site-shell .koa-journey__step:nth-child(2) { animation-delay: 80ms; }
.koa-site-shell .koa-mastery__step:nth-child(3),
.koa-site-shell .koa-journey__step:nth-child(3) { animation-delay: 160ms; }
.koa-site-shell .koa-mastery__step:nth-child(4),
.koa-site-shell .koa-journey__step:nth-child(4) { animation-delay: 240ms; }
.koa-site-shell .koa-mastery__step:nth-child(5),
.koa-site-shell .koa-journey__step:nth-child(5) { animation-delay: 320ms; }
.koa-site-shell .koa-mastery__step:nth-child(6),
.koa-site-shell .koa-journey__step:nth-child(6) { animation-delay: 400ms; }
.koa-site-shell .koa-mastery__step:nth-child(7),
.koa-site-shell .koa-journey__step:nth-child(7) { animation-delay: 480ms; }

@keyframes koa-reveal {
	from { opacity: 0.001; transform: translateY(var(--koa-reveal-distance)); }
	to { opacity: 1; transform: none; }
}
@keyframes koa-rings {
	from { opacity: 0; transform: scale(.94) rotate(-2deg); }
	to { opacity: .34; transform: none; }
}
@keyframes koa-step {
	from { opacity: 0.001; transform: translateX(-10px); }
	to { opacity: 1; transform: none; }
}

@media (prefers-reduced-motion: reduce) {
	.koa-site-shell *,
	.koa-site-shell *::before,
	.koa-site-shell *::after,
	.koa-site-shell [data-koa-reveal],
	.koa-site-shell .koa-hero__geometry,
	.koa-site-shell .koa-mastery__step,
	.koa-site-shell .koa-journey__step {
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .01ms !important;
		scroll-behavior: auto !important;
	}
}

html.koa-force-reduced-motion .koa-site-shell *,
html.koa-force-reduced-motion .koa-site-shell *::before,
html.koa-force-reduced-motion .koa-site-shell *::after,
.koa-force-reduced-motion.koa-site-shell *,
.koa-force-reduced-motion.koa-site-shell *::before,
.koa-force-reduced-motion.koa-site-shell *::after {
	animation: none !important;
	transition: none !important;
	scroll-behavior: auto !important;
}
.koa-site-shell.koa-no-decorative-motion .koa-hero__geometry,
.koa-site-shell.koa-no-decorative-motion .koa-cta::after,
.koa-site-shell.koa-no-decorative-motion .koa-hero::after,
html.koa-force-reduced-motion .koa-site-shell .koa-hero__geometry {
	animation: none !important;
}
.koa-site-shell.koa-no-decorative-motion .koa-hero__geometry,
html.koa-force-reduced-motion .koa-site-shell .koa-hero__geometry { opacity: .26; }
