/* ==========================================================================
   KitchDesigns — Animations
   ========================================================================== */

@keyframes kdFadeUp {
	from { opacity: 0; transform: translateY(24px); }
	to   { opacity: 1; transform: translateY(0); }
}
@keyframes kdFadeIn {
	from { opacity: 0; }
	to   { opacity: 1; }
}
@keyframes kdScaleIn {
	from { opacity: 0; transform: scale(.95); }
	to   { opacity: 1; transform: scale(1); }
}
@keyframes kdShimmer {
	0% { background-position: -200% 0; }
	100% { background-position: 200% 0; }
}
@keyframes kdPulse {
	0%, 100% { box-shadow: 0 0 0 0 rgba(201,169,110,0.4); }
	50%      { box-shadow: 0 0 0 12px rgba(201,169,110,0); }
}

/* Reveal-on-scroll */
.reveal {
	opacity: 0;
	transform: translateY(28px);
	transition: opacity .8s var(--ease-out), transform .8s var(--ease-out);
	will-change: transform, opacity;
}
.reveal.is-visible {
	opacity: 1;
	transform: translateY(0);
}
.reveal--delay-1 { transition-delay: .1s; }
.reveal--delay-2 { transition-delay: .2s; }
.reveal--delay-3 { transition-delay: .3s; }
.reveal--delay-4 { transition-delay: .4s; }

/* Hero entrance */
.hero h1, .hero p, .hero__actions, .hero__badge, .hero__trust {
	animation: kdFadeUp .9s var(--ease-out) both;
}
.hero__badge { animation-delay: .05s; }
.hero h1 { animation-delay: .15s; }
.hero p  { animation-delay: .35s; }
.hero__actions { animation-delay: .55s; }
.hero__trust { animation-delay: .75s; }

/* Counter — sits at final value, JS handles tween */
.stat__number { transition: color .3s var(--ease); }

/* Card hover micro-interactions handled in main.css transitions */

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after {
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .01ms !important;
		scroll-behavior: auto !important;
	}
	.reveal { opacity: 1; transform: none; }
}
