{/* Animated Timeline line - Desktop */}
@@ -475,7 +474,7 @@ const Events = () => {
}}
/>
-
+
{/* Animated Mobile timeline line */}
{
/>
- {timelineData.map((event, index) => {
- // Calculate when each item should appear based on scroll progress
- const itemOffset = index / (timelineData.length - 1);
- const itemProgress = useTransform(
- scrollYProgress,
- [Math.max(0, itemOffset - 0.15), Math.min(1, itemOffset + 0.05)],
- [0, 1]
- );
-
- return (
-
- {/* Timeline dot with scale animation */}
-
- {event.status === 'upcoming' && (
-
- )}
-
-
- {/* Content card */}
-
-
-
-
- {event.category} • {event.status === 'completed' ? 'Completed' : 'Upcoming'}
-
-
{event.title}
-
{event.date}
-
{event.description}
-
-
-
-
- {/* Spacer for desktop */}
-
-
- );
- })}
+ {timelineData.map((event, index) => (
+
+ ))}