import { Search, PenTool, Code, Rocket } from "lucide-react"

const steps = [
    {
        number: "01",
        title: "Discovery",
        description: "We dive deep into your business goals, target audience, and competition to build a solid project strategy.",
        icon: Search,
        gradient: "from-blue-500 to-cyan-400",
    },
    {
        number: "02",
        title: "Design",
        description: "Our designers create wireframes and high-fidelity mockups that bring your vision to life with pixel-perfect precision.",
        icon: PenTool,
        gradient: "from-violet-500 to-purple-400",
    },
    {
        number: "03",
        title: "Develop",
        description: "Our engineers build your product using modern tech stacks with clean code, performance, and scalability in mind.",
        icon: Code,
        gradient: "from-pink-500 to-rose-400",
    },
    {
        number: "04",
        title: "Deploy",
        description: "We launch your project with rigorous QA testing, performance optimization, and ongoing support to ensure success.",
        icon: Rocket,
        gradient: "from-amber-500 to-orange-400",
    },
]

export function ProcessTimeline() {
    return (
        <section className="py-24 bg-background" id="process">
            <div className="container">
                <div className="animate-fade-in-up text-center mb-16">
                    <p className="text-overline text-primary mb-3">Our Process</p>
                    <h2 className="sm:text-4xl mb-4">How We Work</h2>
                    <p className="text-body text-muted-foreground max-w-2xl mx-auto">
                        A proven 4-step process that takes your project from idea to launch.
                    </p>
                </div>

                {/* Desktop: horizontal timeline */}
                <div className="hidden md:grid md:grid-cols-4 gap-8 relative">
                    {/* Connecting line */}
                    <div className="absolute top-10 left-[12.5%] right-[12.5%] h-0.5 bg-border" aria-hidden="true" />

                    {steps.map((step, i) => (
                        <div key={step.number} className="animate-fade-in-up relative text-center" style={{ animationDelay: `${i * 0.12}s` }}>
                            <div className={`relative z-10 w-20 h-20 mx-auto rounded-2xl bg-gradient-to-br ${step.gradient} flex items-center justify-center text-white shadow-lg mb-6`}>
                                <step.icon className="w-8 h-8" suppressHydrationWarning />
                            </div>
                            <div className="text-xs font-bold text-primary mb-1">{step.number}</div>
                            <h3 className="font-bold mb-2">{step.title}</h3>
                            <p className="text-caption leading-relaxed">{step.description}</p>
                        </div>
                    ))}
                </div>

                {/* Mobile: vertical timeline */}
                <div className="md:hidden relative pl-12">
                    {/* Vertical line */}
                    <div className="absolute left-5 top-0 bottom-0 w-0.5 bg-border" aria-hidden="true" />

                    {steps.map((step, i) => (
                        <div key={step.number} className="animate-fade-in-up relative pb-12 last:pb-0" style={{ animationDelay: `${i * 0.12}s` }}>
                            <div className={`absolute left-[-1.75rem] z-10 w-10 h-10 rounded-xl bg-gradient-to-br ${step.gradient} flex items-center justify-center text-white shadow-lg`}>
                                <step.icon className="w-5 h-5" suppressHydrationWarning />
                            </div>
                            <div className="text-xs font-bold text-primary mb-1">{step.number}</div>
                            <h3 className="font-bold mb-2">{step.title}</h3>
                            <p className="text-caption leading-relaxed">{step.description}</p>
                        </div>
                    ))}
                </div>
            </div>
        </section>
    )
}
