feat: add AnimatedCounter component and update stats section with hero asset color adjustment
This commit is contained in:
@@ -4,6 +4,7 @@ import { useState, useEffect } from 'react';
|
||||
import { useRouter } from 'next/navigation';
|
||||
import Image from 'next/image';
|
||||
import HeroBackground3D from '@/components/ui/3d/HeroBackground3D';
|
||||
import AnimatedCounter from '@/components/ui/AnimatedCounter';
|
||||
import CardIcon3D from '@/components/ui/3d/CardIcon3D';
|
||||
import { Zap, ArrowRight, Bike, Wallet, Leaf, ShieldCheck, MapPin, Truck, ChevronRight, BarChart3, BatteryCharging, Clock, Activity } from 'lucide-react';
|
||||
|
||||
@@ -117,24 +118,34 @@ export default function LandingPage() {
|
||||
<div className="absolute top-24 -right-24 w-96 h-96 bg-emerald-500/20 rounded-full blur-3xl mix-blend-screen pointer-events-none"></div>
|
||||
</section>
|
||||
|
||||
{/* Stats Section (Overlapping Hero) */}
|
||||
<section className="relative z-20 max-w-5xl mx-auto px-4 sm:px-6 lg:px-8 -mt-12 mb-20">
|
||||
<div className="bg-white rounded-2xl shadow-2xl p-6 lg:p-10 grid grid-cols-2 lg:grid-cols-4 gap-8 divide-x divide-slate-100 border border-slate-100">
|
||||
<div className="text-center px-4">
|
||||
<div className="text-3xl lg:text-4xl font-black text-accent mb-2">500+</div>
|
||||
<div className="text-slate-500 font-medium text-sm">Active Riders</div>
|
||||
</div>
|
||||
<div className="text-center px-4">
|
||||
<div className="text-3xl lg:text-4xl font-black text-accent mb-2">200+</div>
|
||||
<div className="text-slate-500 font-medium text-sm">EV Fleet Size</div>
|
||||
</div>
|
||||
<div className="text-center px-4">
|
||||
<div className="text-3xl lg:text-4xl font-black text-accent mb-2">18%</div>
|
||||
<div className="text-slate-500 font-medium text-sm">Avg. Investor ROI</div>
|
||||
</div>
|
||||
<div className="text-center px-4">
|
||||
<div className="text-3xl lg:text-4xl font-black text-accent mb-2">50k+</div>
|
||||
<div className="text-slate-500 font-medium text-sm">Deliveries Done</div>
|
||||
{/* Stats Section */}
|
||||
<section className="py-12 lg:py-16 bg-white border-b border-slate-100">
|
||||
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
|
||||
<div className="grid grid-cols-2 md:grid-cols-4 gap-8 divide-x divide-slate-100">
|
||||
<div className="flex flex-col items-center justify-center text-center px-2">
|
||||
<h3 className="text-4xl md:text-5xl font-black text-slate-900 mb-2">
|
||||
<AnimatedCounter end={500} suffix="+" />
|
||||
</h3>
|
||||
<p className="text-xs sm:text-sm font-semibold text-slate-500 uppercase tracking-wider">Active Riders</p>
|
||||
</div>
|
||||
<div className="flex flex-col items-center justify-center text-center px-2">
|
||||
<h3 className="text-4xl md:text-5xl font-black text-slate-900 mb-2">
|
||||
<AnimatedCounter end={200} suffix="+" />
|
||||
</h3>
|
||||
<p className="text-xs sm:text-sm font-semibold text-slate-500 uppercase tracking-wider">EV Fleet Size</p>
|
||||
</div>
|
||||
<div className="flex flex-col items-center justify-center text-center px-2">
|
||||
<h3 className="text-4xl md:text-5xl font-black text-slate-900 mb-2 text-accent">
|
||||
<AnimatedCounter end={18} suffix="%" />
|
||||
</h3>
|
||||
<p className="text-xs sm:text-sm font-semibold text-slate-500 uppercase tracking-wider">Avg. Investor ROI</p>
|
||||
</div>
|
||||
<div className="flex flex-col items-center justify-center text-center px-2">
|
||||
<h3 className="text-4xl md:text-5xl font-black text-slate-900 mb-2">
|
||||
<AnimatedCounter end={50} suffix="k+" />
|
||||
</h3>
|
||||
<p className="text-xs sm:text-sm font-semibold text-slate-500 uppercase tracking-wider">Deliveries Done</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
@@ -166,7 +177,8 @@ export default function LandingPage() {
|
||||
</button>
|
||||
</div>
|
||||
|
||||
{/* Service 2 */}
|
||||
{/* Service 2 - FICO Investment - User will redesign this section */}
|
||||
{/*
|
||||
<div className="group bg-white rounded-3xl p-8 shadow-sm hover:shadow-2xl transition-all duration-300 border border-slate-100 relative overflow-hidden flex flex-col h-full">
|
||||
<div className="absolute top-0 right-0 w-32 h-32 bg-investor/10 rounded-bl-full -mr-8 -mt-8 transition-transform group-hover:scale-110"></div>
|
||||
<div className="w-16 h-16 bg-investor/10 rounded-2xl flex items-center justify-center mb-6 relative z-10 text-investor group-hover:bg-investor group-hover:text-white transition-colors">
|
||||
@@ -174,14 +186,15 @@ export default function LandingPage() {
|
||||
</div>
|
||||
<h4 className="text-2xl font-bold text-slate-900 mb-3 relative z-10">FICO Investment</h4>
|
||||
<p className="text-slate-600 mb-8 flex-grow relative z-10">Invest in fractional EV ownership. Let us manage the fleet while you enjoy guaranteed monthly returns.</p>
|
||||
{/* <button
|
||||
<button
|
||||
onClick={() => handleLogin('investor@email.com')}
|
||||
disabled={loading}
|
||||
className="inline-flex items-center gap-2 text-investor font-bold group-hover:translate-x-2 transition-transform relative z-10"
|
||||
>
|
||||
Login as Investor <ChevronRight className="w-5 h-5" />
|
||||
</button> */}
|
||||
</button>
|
||||
</div>
|
||||
*/}
|
||||
|
||||
{/* Service 3 */}
|
||||
<div className="group bg-white rounded-3xl p-8 shadow-sm hover:shadow-2xl transition-all duration-300 border border-slate-100 relative overflow-hidden flex flex-col h-full">
|
||||
|
||||
Reference in New Issue
Block a user