/**
 * Motion tokens + spacing-safe micro-interactions (aurora-team-motion).
 */

:root {
	--motion-duration-fast: 150ms;
	--motion-duration-base: 250ms;
	--motion-duration-slow: 400ms;
	--motion-ease: cubic-bezier(0.22, 1, 0.36, 1);
}

/* Visible without JS — GSAP enhances below-fold only when loaded */
[data-motion-reveal] {
	opacity: 1;
	transform: none;
}

/* Hero LCP contract: copy + orb always visible before JS */
[data-motion="hero-copy"] h1,
[data-motion="hero-copy"] .hero__title,
[data-motion="hero-copy"] .hero__lead,
[data-motion="hero-copy"] .hero__cta-group,
.hero__orb[data-motion="orb-float"] {
	opacity: 1;
	transform: none;
}

@media (prefers-reduced-motion: no-preference) {
	.hero__orb[data-motion="orb-float"] {
		animation: teya-orb-float 6s ease-in-out infinite;
	}
}

@keyframes teya-orb-float {
	0%,
	100% {
		transform: translateY(0);
	}
	50% {
		transform: translateY(-8px);
	}
}

@media (hover: hover) and (prefers-reduced-motion: no-preference) {
	.card-feature:hover,
	.feature-card:hover,
	.blog-card:hover,
	.teya-blog-card:hover,
	.audience-card:hover {
		transform: translateY(-2px);
		border-color: rgba(123, 47, 255, 0.35);
		transition:
			transform var(--motion-duration-base) var(--motion-ease),
			border-color var(--motion-duration-fast) var(--motion-ease);
	}
}

html.no-motion [data-motion-reveal],
html.reduced-motion [data-motion-reveal] {
	opacity: 1 !important;
	transform: none !important;
}

@media (prefers-reduced-motion: reduce) {
	:root {
		--motion-duration-fast: 0.01ms;
		--motion-duration-base: 0.01ms;
		--motion-duration-slow: 0.01ms;
	}

	.hero__orb[data-motion="orb-float"] {
		animation: none !important;
		transform: none !important;
	}

	[data-motion="hero-webgl"],
	.hero__canvas {
		display: none !important;
	}

	[data-motion-reveal] {
		opacity: 1 !important;
		transform: none !important;
	}

	.card-feature:hover,
	.feature-card:hover,
	.blog-card:hover,
	.teya-blog-card:hover,
	.audience-card:hover {
		transform: none;
	}
}
