import * as React from "react"; import { motion, useReducedMotion, type Variants } from "motion/react"; const easeOut = [0.22, 1, 0.36, 1] as const; /** Fade + rise on mount. Respects prefers-reduced-motion. */ export function FadeIn({ children, delay = 0, y = 8, className, }: { children: React.ReactNode; delay?: number; y?: number; className?: string; }) { const reduce = useReducedMotion(); return ( {children} ); } /** Stagger container — pair with . */ export const staggerContainer: Variants = { hidden: {}, show: { transition: { staggerChildren: 0.06 } }, }; export const staggerItem: Variants = { hidden: { opacity: 0, y: 10 }, show: { opacity: 1, y: 0, transition: { duration: 0.4, ease: easeOut } }, }; export function Stagger({ children, className }: { children: React.ReactNode; className?: string }) { const reduce = useReducedMotion(); return ( {children} ); } export function StaggerItem({ children, className }: { children: React.ReactNode; className?: string }) { const reduce = useReducedMotion(); return {children}; } export { motion };