new pages created

This commit is contained in:
2025-12-06 00:56:15 +05:30
parent e87bdd45a1
commit 670db0c07a
52 changed files with 4761 additions and 278 deletions

231
HRMS.html Normal file
View File

@@ -0,0 +1,231 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>HRMS - Winixco</title>
<script src="https://cdn.tailwindcss.com"></script>
</head>
<body class="bg-gray-50 text-gray-800">
<!-- HERO SECTION -->
<!-- HERO -->
<section class="bg-white py-24">
<div class="max-w-6xl mx-auto px-6 grid md:grid-cols-2 gap-12 items-center">
<div>
<h1 class="text-4xl md:text-5xl font-extrabold leading-tight text-gray-900">
Modern HRMS Designed for the Workplace of Tomorrow
</h1>
<p class="mt-6 text-lg text-gray-600">
Manage your entire workforce — hiring, onboarding, attendance, payroll, performance & HR automation — all in one unified platform.
</p>
<div class="mt-10 flex gap-4">
<a href="#" class="bg-blue-600 text-white px-8 py-3 rounded-xl text-lg font-semibold hover:bg-blue-700">
Book a Demo
</a>
<a href="#" class="border border-gray-400 px-8 py-3 rounded-xl text-lg font-semibold hover:border-black">
Download Brochure
</a>
</div>
</div>
<div>
<img src="https://images.unsplash.com/photo-1551836022-4c4c79ecde51"
class="rounded-2xl shadow-xl">
</div>
</div>
</section>
<!-- VALUE PROPOSITION -->
<section class="py-20 bg-gray-50">
<div class="max-w-6xl mx-auto px-6 text-center">
<h2 class="text-3xl md:text-4xl font-bold text-gray-900">A Central HR Hub for Your Entire Organization</h2>
<p class="mt-4 text-gray-600 max-w-3xl mx-auto">
Streamline HR operations, automate repetitive tasks, enhance employee experience and stay compliant — with a secure, scalable HRMS built for fast-growing companies.
</p>
</div>
</section>
<!-- MODULES OVERVIEW -->
<section class="py-20 bg-white">
<div class="max-w-6xl mx-auto px-6">
<h3 class="text-2xl md:text-3xl font-bold text-gray-900 mb-10">HRMS Modules Overview</h3>
<div class="grid md:grid-cols-3 gap-8">
<div class="p-8 bg-gray-50 rounded-2xl hover:bg-gray-100 transition">
<h4 class="text-xl font-semibold mb-2">Employee Database</h4>
<p class="text-gray-600">Centralized staff records, documents, job history & reporting structure.</p>
</div>
<div class="p-8 bg-gray-50 rounded-2xl hover:bg-gray-100 transition">
<h4 class="text-xl font-semibold mb-2">Attendance & Leaves</h4>
<p class="text-gray-600">Biometric/Geo attendance, leave requests, shift scheduling & approvals.</p>
</div>
<div class="p-8 bg-gray-50 rounded-2xl hover:bg-gray-100 transition">
<h4 class="text-xl font-semibold mb-2">Payroll Management</h4>
<p class="text-gray-600">Auto salary generation, ESI/PF/Professional Tax, payslips & compliance.</p>
</div>
<div class="p-8 bg-gray-50 rounded-2xl hover:bg-gray-100 transition">
<h4 class="text-xl font-semibold mb-2">Performance Reviews</h4>
<p class="text-gray-600">Goal setting, KRAs, feedback cycles, review workflows & appraisals.</p>
</div>
<div class="p-8 bg-gray-50 rounded-2xl hover:bg-gray-100 transition">
<h4 class="text-xl font-semibold mb-2">Recruitment & Onboarding</h4>
<p class="text-gray-600">Track applicants, generate offer letters, digital onboarding & document verification.</p>
</div>
<div class="p-8 bg-gray-50 rounded-2xl hover:bg-gray-100 transition">
<h4 class="text-xl font-semibold mb-2">Expense Claims</h4>
<p class="text-gray-600">Employee reimbursements, approvals, workflows & tracking.</p>
</div>
</div>
</div>
</section>
<!-- HR AUTOMATION ADVANTAGES -->
<section class="py-20 bg-blue-50">
<div class="max-w-6xl mx-auto px-6">
<h3 class="text-center text-3xl font-bold text-gray-900 mb-12">Why Companies Choose Our HRMS</h3>
<div class="grid md:grid-cols-2 lg:grid-cols-3 gap-10">
<div class="p-6 bg-white rounded-2xl shadow">
<h4 class="text-xl font-semibold">Reduce Manual Work</h4>
<p class="mt-2 text-gray-600">Automate payroll, attendance, appraisal cycles + reminders.</p>
</div>
<div class="p-6 bg-white rounded-2xl shadow">
<h4 class="text-xl font-semibold">Improve Employee Engagement</h4>
<p class="mt-2 text-gray-600">Self-service portal for attendance, leaves, announcements & payslips.</p>
</div>
<div class="p-6 bg-white rounded-2xl shadow">
<h4 class="text-xl font-semibold">Transparent HR Policies</h4>
<p class="mt-2 text-gray-600">Define leave policies, approvals & workflows with clarity.</p>
</div>
<div class="p-6 bg-white rounded-2xl shadow">
<h4 class="text-xl font-semibold">Accurate Payroll Every Month</h4>
<p class="mt-2 text-gray-600">No errors, no delays. 100% compliant payroll.</p>
</div>
<div class="p-6 bg-white rounded-2xl shadow">
<h4 class="text-xl font-semibold">Better Decision Making</h4>
<p class="mt-2 text-gray-600">HR dashboards for attrition, performance, productivity & attendance.</p>
</div>
<div class="p-6 bg-white rounded-2xl shadow">
<h4 class="text-xl font-semibold">Secure, Scalable & Cloud-Based</h4>
<p class="mt-2 text-gray-600">Encrypted data, role-based access, audit logs & backups.</p>
</div>
</div>
</div>
</section>
<!-- PROCESS WORKFLOW -->
<section class="py-24 bg-white">
<div class="max-w-6xl mx-auto px-6">
<h3 class="text-3xl font-bold text-center mb-14">How HRMS Works</h3>
<div class="grid md:grid-cols-4 gap-6 text-center">
<div class="p-6 bg-gray-50 rounded-xl">
<h4 class="font-bold text-xl mb-2">1. Hire</h4>
<p class="text-gray-600">Recruit talent, screen resumes & generate offer letters.</p>
</div>
<div class="p-6 bg-gray-50 rounded-xl">
<h4 class="font-bold text-xl mb-2">2. Onboard</h4>
<p class="text-gray-600">Paperless joining, document upload & role assignment.</p>
</div>
<div class="p-6 bg-gray-50 rounded-xl">
<h4 class="font-bold text-xl mb-2">3. Manage</h4>
<p class="text-gray-600">Attendance, leaves, payroll, shifts & employee lifecycle.</p>
</div>
<div class="p-6 bg-gray-50 rounded-xl">
<h4 class="font-bold text-xl mb-2">4. Evaluate</h4>
<p class="text-gray-600">Review performance, track goals & run appraisal cycles.</p>
</div>
</div>
</div>
</section>
<!-- HR ANALYTICS -->
<section class="py-20 bg-gray-900 text-white">
<div class="max-w-6xl mx-auto px-6">
<h3 class="text-3xl font-bold text-center mb-12">HR Analytics & Insights</h3>
<div class="grid md:grid-cols-4 gap-8 text-center">
<div>
<h4 class="text-4xl font-bold">98%</h4>
<p class="text-gray-300 mt-1">Payroll Accuracy</p>
</div>
<div>
<h4 class="text-4xl font-bold">45%</h4>
<p class="text-gray-300 mt-1">Less Manual HR Work</p>
</div>
<div>
<h4 class="text-4xl font-bold">80%</h4>
<p class="text-gray-300 mt-1">Faster Hiring</p>
</div>
<div>
<h4 class="text-4xl font-bold">60%</h4>
<p class="text-gray-300 mt-1">Improved Productivity</p>
</div>
</div>
</div>
</section>
<!-- FAQ -->
<section class="py-20 bg-gray-50">
<div class="max-w-4xl mx-auto px-6">
<h3 class="text-3xl font-bold text-center mb-10">Frequently Asked Questions</h3>
<div class="space-y-6">
<details class="p-6 bg-white rounded-xl shadow">
<summary class="text-lg font-semibold cursor-pointer">Is this HRMS suitable for small companies?</summary>
<p class="mt-3 text-gray-600">Yes. It supports startups, SMEs, agencies and large enterprises.</p>
</details>
<details class="p-6 bg-white rounded-xl shadow">
<summary class="text-lg font-semibold cursor-pointer">Can employees access their own portal?</summary>
<p class="mt-3 text-gray-600">Yes, via web and mobile — for attendance, leaves, payslips & updates.</p>
</details>
<details class="p-6 bg-white rounded-xl shadow">
<summary class="text-lg font-semibold cursor-pointer">Does it integrate with biometric devices?</summary>
<p class="mt-3 text-gray-600">Yes. Fingerprint, RFID, QR and geo-attendance are supported.</p>
</details>
</div>
</div>
</section>
<!-- FINAL CTA -->
<section class="py-20 bg-gradient-to-r from-blue-600 to-blue-700 text-white text-center">
<div class="max-w-4xl mx-auto px-6">
<h2 class="text-3xl md:text-4xl font-bold mb-6">Ready to Upgrade Your HR Operations?</h2>
<p class="text-blue-100 text-lg mb-10">Automate, simplify and scale your HR with a powerful, cloud-based HRMS.</p>
<a href="#" class="bg-white text-blue-700 px-10 py-3 rounded-xl font-semibold shadow hover:shadow-lg">Book a Demo</a>
</div>
</section>
</body>
</html>

View File

@@ -1,40 +1,45 @@
import React from 'react'; import React from "react";
import { motion, Variants } from 'framer-motion'; import { motion, Variants } from "framer-motion";
import { Button } from '@/components/ui/button'; import { Button } from "@/components/ui/button";
import { Badge } from '@/components/ui/badge'; import { Badge } from "@/components/ui/badge";
import { ArrowRight, CheckCircle, Users, Target, Award, Sparkles } from 'lucide-react'; import {
import { home } from '@/services/Constants'; ArrowRight,
CheckCircle,
Users,
Target,
Award,
Sparkles,
} from "lucide-react";
import { home } from "@/services/Constants";
const AboutUs: React.FC = () => { const AboutUs: React.FC = () => {
const containerVariants: Variants = {
const containerVariants:Variants = {
hidden: { opacity: 0 }, hidden: { opacity: 0 },
visible: { visible: {
opacity: 1, opacity: 1,
transition: { transition: {
staggerChildren: 0.2, staggerChildren: 0.2,
delayChildren: 0.3 delayChildren: 0.3,
} },
} },
}; };
const itemVariants:Variants = { const itemVariants: Variants = {
hidden: { opacity: 0, y: 20 }, hidden: { opacity: 0, y: 20 },
visible: { visible: {
opacity: 1, opacity: 1,
y: 0, y: 0,
transition: { duration: 0.6, ease: "easeOut" } transition: { duration: 0.6, ease: "easeOut" },
} },
}; };
const imageVariants:Variants = { const imageVariants: Variants = {
hidden: { opacity: 0, scale: 0.8 }, hidden: { opacity: 0, scale: 0.8 },
visible: { visible: {
opacity: 1, opacity: 1,
scale: 1, scale: 1,
transition: { duration: 0.8, ease: "easeOut" } transition: { duration: 0.8, ease: "easeOut" },
} },
}; };
return ( return (
@@ -59,7 +64,9 @@ const AboutUs: React.FC = () => {
<div className="w-24 h-24 mx-auto mb-4 bg-gradient-to-br from-blue-500 to-purple-600 rounded-2xl flex items-center justify-center"> <div className="w-24 h-24 mx-auto mb-4 bg-gradient-to-br from-blue-500 to-purple-600 rounded-2xl flex items-center justify-center">
<Users className="w-12 h-12 text-white" /> <Users className="w-12 h-12 text-white" />
</div> </div>
<p className="text-gray-600 font-medium">Team Collaboration</p> <p className="text-gray-600 font-medium">
Team Collaboration
</p>
</div> </div>
</div> </div>
</motion.div> </motion.div>
@@ -107,7 +114,7 @@ const AboutUs: React.FC = () => {
<motion.div <motion.div
animate={{ animate={{
scale: [1, 1.2, 1], scale: [1, 1.2, 1],
rotate: [0, 90, 0] rotate: [0, 90, 0],
}} }}
transition={{ duration: 20, repeat: Infinity, ease: "linear" }} transition={{ duration: 20, repeat: Infinity, ease: "linear" }}
className="absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-64 h-64 bg-blue-100 rounded-full blur-3xl opacity-30 -z-10" className="absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-64 h-64 bg-blue-100 rounded-full blur-3xl opacity-30 -z-10"
@@ -162,7 +169,9 @@ const AboutUs: React.FC = () => {
className="text-center p-4 rounded-xl bg-gradient-to-br from-gray-50 to-blue-50 border border-gray-100" className="text-center p-4 rounded-xl bg-gradient-to-br from-gray-50 to-blue-50 border border-gray-100"
> >
<stat.icon className="w-8 h-8 mx-auto mb-2 text-blue-600" /> <stat.icon className="w-8 h-8 mx-auto mb-2 text-blue-600" />
<p className="text-2xl font-bold text-gray-900">{stat.value}</p> <p className="text-2xl font-bold text-gray-900">
{stat.value}
</p>
<p className="text-xs text-gray-600 mt-1">{stat.label}</p> <p className="text-xs text-gray-600 mt-1">{stat.label}</p>
</motion.div> </motion.div>
))} ))}

View File

@@ -1,12 +1,9 @@
"use client"; "use client";
import React, { } from "react"; import React from "react";
import { motion } from "framer-motion"; import { motion } from "framer-motion";
import AnimatedSection from "./Animated"; import AnimatedSection from "./Animated";
import { home } from "@/services/Constants"; import { home } from "@/services/Constants";
// Benefits Section
const Benefits = () => { const Benefits = () => {
return ( return (
<section <section
@@ -19,27 +16,31 @@ const Benefits = () => {
</div> </div>
<div className="max-w-7xl mx-auto px-4 relative z-10"> <div className="max-w-7xl mx-auto px-4 relative z-10">
{/* Heading */}
<AnimatedSection className="text-center mb-16"> <AnimatedSection className="text-center mb-16">
<h2 className="text-4xl md:text-5xl font-bold mb-6"> <h2 className="text-4xl md:text-5xl font-bold mb-6">
Why Choose TalentFlow? Why Choose Winixco?
</h2> </h2>
<p className="text-xl text-purple-100 max-w-3xl mx-auto"> <p className="text-xl text-purple-100 max-w-3xl mx-auto">
Experience the future of recruitment with our innovative platform Winixco helps companies stay efficient, connected, and future-ready.
With automation, accuracy, and real-time syncing, every department works smarter not harder.
</p> </p>
</AnimatedSection> </AnimatedSection>
{/* Feature Cards */}
<div className="grid md:grid-cols-2 lg:grid-cols-4 gap-8"> <div className="grid md:grid-cols-2 lg:grid-cols-4 gap-8">
{home.benefits.map((benefit, index) => ( {home.benefits.map((feature, index) => (
<AnimatedSection key={index}> <AnimatedSection key={index}>
<motion.div <motion.div
whileHover={{ scale: 1.05 }} whileHover={{ scale: 1.05 }}
className="text-center p-8 rounded-2xl bg-white/10 backdrop-blur-lg border border-white/20 hover:bg-white/20 transition-all" className="text-center p-8 rounded-2xl bg-white/10 backdrop-blur-lg border border-white/20 hover:bg-white/20 transition-all"
> >
<div className="w-16 h-16 mx-auto mb-6 rounded-full bg-white/20 flex items-center justify-center"> <div className="w-16 h-16 mx-auto mb-6 rounded-full bg-white/20 flex items-center justify-center">
<div className="text-white">{benefit.icon}</div> <span className="text-white">{feature.icon}</span>
</div> </div>
<h3 className="text-xl font-bold mb-3">{benefit.title}</h3>
<p className="text-purple-100">{benefit.description}</p> <h3 className="text-xl font-bold mb-3">{feature.title}</h3>
<p className="text-purple-100">{feature.description}</p>
</motion.div> </motion.div>
</AnimatedSection> </AnimatedSection>
))} ))}
@@ -49,4 +50,4 @@ const Benefits = () => {
); );
}; };
export default Benefits export default Benefits;

View File

@@ -1,12 +1,9 @@
"use client"; "use client";
import React, { } from "react"; import React from "react";
import { motion } from "framer-motion"; import { motion } from "framer-motion";
import { import { ArrowRight } from "lucide-react";
ArrowRight,
} from "lucide-react";
import { Button } from "@/components/ui/button"; import { Button } from "@/components/ui/button";
// CTA Section // CTA Section
const CTA = () => { const CTA = () => {
return ( return (
@@ -21,10 +18,16 @@ const CTA = () => {
<div className="relative z-10 max-w-4xl mx-auto px-4"> <div className="relative z-10 max-w-4xl mx-auto px-4">
<h2 className="text-4xl md:text-6xl font-bold mb-6"> <h2 className="text-4xl md:text-6xl font-bold mb-6">
Ready to Transform Your Hiring? Transform the way your business
<span className="bg-gradient-to-r from-pink-400 to-yellow-300 bg-clip-text text-transparent">
{" "}
hires, manages & grows
</span>
</h2> </h2>
<p className="text-lg md:text-xl text-purple-100 mb-10"> <p className="text-lg md:text-xl text-purple-100 mb-10">
Join 10,000+ HR teams using TalentFlow to hire smarter and faster Winixco brings HRMS, ATS & CRM together so your teams stay aligned,
productive and future-ready.
</p> </p>
<div className="flex flex-col sm:flex-row gap-4 justify-center"> <div className="flex flex-col sm:flex-row gap-4 justify-center">
@@ -32,19 +35,25 @@ const CTA = () => {
size="lg" size="lg"
className="px-10 py-6 text-lg bg-white text-purple-700 font-bold rounded-xl shadow-lg hover:text-white hover:shadow-2xl hover:scale-105 transition-transform" className="px-10 py-6 text-lg bg-white text-purple-700 font-bold rounded-xl shadow-lg hover:text-white hover:shadow-2xl hover:scale-105 transition-transform"
> >
Start Free Trial <ArrowRight className="ml-2 w-5 h-5" /> {" "}
</Button> Start Free Trial <ArrowRight className="ml-2 w-5 h-5" />{" "}
</Button>{" "}
<Button <Button
size="lg" size="lg"
variant="outline" variant="outline"
className="border-2 text-purple-700 px-10 py-6 text-lg font-bold rounded-xl hover:bg-white/10 transition-all" className="border-2 text-purple-700 px-10 py-6 text-lg font-bold rounded-xl hover:bg-white/10 transition-all"
> >
Book a Demo {" "}
Book a Demo{" "}
</Button> </Button>
</div> </div>
<p className="mt-6 text-sm text-purple-200">
No credit card required · Quick setup · Cancel anytime
</p>
</div> </div>
</section> </section>
); );
}; };
export default CTA export default CTA;

View File

@@ -1,5 +1,5 @@
"use client"; "use client";
import React, { } from "react"; import React from "react";
import { motion } from "framer-motion"; import { motion } from "framer-motion";
import { Card, CardContent } from "@/components/ui/card"; import { Card, CardContent } from "@/components/ui/card";
import AnimatedSection from "./Animated"; import AnimatedSection from "./Animated";
@@ -18,14 +18,14 @@ const Features = () => {
POWERFUL FEATURES POWERFUL FEATURES
</span> </span>
<h2 className="text-4xl md:text-5xl font-bold mb-6"> <h2 className="text-4xl md:text-5xl font-bold mb-6">
Everything You Need to{" "} All-in-One ATS, HRMS & CRP{" "}
<span className="bg-gradient-to-r from-purple-600 to-pink-600 bg-clip-text text-transparent"> <span className="bg-gradient-to-r from-purple-600 to-pink-600 bg-clip-text text-transparent">
Hire Smarter Solutions
</span> </span>
</h2> </h2>
<p className="text-xl text-gray-600 max-w-3xl mx-auto"> <p className="text-xl text-gray-600 max-w-3xl mx-auto">
Our comprehensive ATS platform combines cutting-edge AI with Explore features across all our products designed to scale your
intuitive design to revolutionize your recruitment process. hiring success.
</p> </p>
</AnimatedSection> </AnimatedSection>
@@ -60,4 +60,4 @@ const Features = () => {
); );
}; };
export default Features export default Features;

View File

@@ -1,79 +1,69 @@
"use client"; "use client";
import React, { } from "react"; import React from "react";
import { motion } from "framer-motion"; import { motion } from "framer-motion";
import { import { Check, ArrowRight, PlayCircle, Users, UserCog, Briefcase } from "lucide-react";
Check,
ArrowRight,
PlayCircle,
} from "lucide-react";
import { Button } from "@/components/ui/button"; import { Button } from "@/components/ui/button";
import { home } from "@/services/Constants"; import { home } from "@/services/Constants";
const Hero = () => { const Hero = () => {
return ( return (
<section className="relative pt-32 pb-20 px-4 overflow-hidden bg-gradient-to-br from-purple-50 via-pink-50 to-blue-50"> <section className="relative pt-32 pb-24 px-4 overflow-hidden bg-gradient-to-br from-purple-50 via-pink-50 to-blue-50">
{/* Animated Background Elements */} {/* Background Animation */}
<div className="absolute inset-0 overflow-hidden"> <div className="absolute inset-0 overflow-hidden">
<motion.div <motion.div
animate={{ animate={{ scale: [1, 1.2, 1], rotate: [0, 90, 0] }}
scale: [1, 1.2, 1],
rotate: [0, 90, 0],
}}
transition={{ duration: 20, repeat: Infinity }} transition={{ duration: 20, repeat: Infinity }}
className="absolute -top-20 -left-20 w-72 h-72 bg-purple-300 rounded-full mix-blend-multiply filter blur-3xl opacity-30" className="absolute -top-20 -left-20 w-72 h-72 bg-purple-300 rounded-full mix-blend-multiply blur-3xl opacity-30"
/> />
<motion.div <motion.div
animate={{ animate={{ scale: [1.2, 1, 1.2], rotate: [90, 0, 90] }}
scale: [1.2, 1, 1.2],
rotate: [90, 0, 90],
}}
transition={{ duration: 25, repeat: Infinity }} transition={{ duration: 25, repeat: Infinity }}
className="absolute top-40 -right-20 w-96 h-96 bg-pink-300 rounded-full mix-blend-multiply filter blur-3xl opacity-30" className="absolute top-40 -right-20 w-96 h-96 bg-pink-300 rounded-full mix-blend-multiply blur-3xl opacity-30"
/> />
<motion.div <motion.div
animate={{ animate={{ scale: [1, 1.3, 1], rotate: [0, -90, 0] }}
scale: [1, 1.3, 1],
rotate: [0, -90, 0],
}}
transition={{ duration: 30, repeat: Infinity }} transition={{ duration: 30, repeat: Infinity }}
className="absolute -bottom-20 left-1/2 w-96 h-96 bg-blue-300 rounded-full mix-blend-multiply filter blur-3xl opacity-30" className="absolute -bottom-20 left-1/2 w-96 h-96 bg-blue-300 rounded-full mix-blend-multiply blur-3xl opacity-30"
/> />
</div> </div>
<div className="max-w-7xl mx-auto relative z-10"> <div className="max-w-7xl mx-auto relative z-10 text-center">
<div className="text-center max-w-4xl mx-auto"> {/* Badge */}
<motion.div <motion.span
initial={{ opacity: 0, y: 20 }} initial={{ opacity: 0, y: 20 }}
animate={{ opacity: 1, y: 0 }} animate={{ opacity: 1, y: 0 }}
transition={{ duration: 0.6 }} transition={{ duration: 0.6 }}
className="inline-block px-4 py-2 bg-purple-100 text-purple-700 rounded-full text-sm font-semibold mb-6"
> >
<span className="inline-block px-4 py-2 bg-purple-100 text-purple-700 rounded-full text-sm font-semibold mb-6"> 🚀 All-In-One Talent & Workforce Platform
AI-Powered Recruitment Platform </motion.span>
</span>
</motion.div>
{/* Title */}
<motion.h1 <motion.h1
initial={{ opacity: 0, y: 20 }} initial={{ opacity: 0, y: 20 }}
animate={{ opacity: 1, y: 0 }} animate={{ opacity: 1, y: 0 }}
transition={{ duration: 0.6, delay: 0.1 }} transition={{ duration: 0.6, delay: 0.1 }}
className="text-5xl md:text-7xl font-bold mb-6 leading-tight" className="text-4xl md:text-6xl font-extrabold mb-6 leading-tight"
> >
Hire Top Talent{" "} Build Powerful{" "}
<span className="bg-gradient-to-r from-purple-600 via-pink-600 to-blue-600 bg-clip-text text-transparent"> <span className="bg-gradient-to-r from-purple-600 via-pink-600 to-blue-600 bg-clip-text text-transparent">
10x Faster ATS, HRMS & CRM
</span> </span>{" "}
Solutions
</motion.h1> </motion.h1>
{/* Subtext */}
<motion.p <motion.p
initial={{ opacity: 0, y: 20 }} initial={{ opacity: 0, y: 20 }}
animate={{ opacity: 1, y: 0 }} animate={{ opacity: 1, y: 0 }}
transition={{ duration: 0.6, delay: 0.2 }} transition={{ duration: 0.6, delay: 0.2 }}
className="text-xl md:text-2xl text-gray-600 mb-10 leading-relaxed" className="text-xl md:text-2xl text-gray-600 mb-10 max-w-3xl mx-auto"
> >
The world's most intelligent ATS that automates screening, Winixco helps organizations simplify hiring, manage employees,
scheduling, and hiring. Join 10,000+ companies who trust TalentFlow. and enhance client relationships all in one platform.
</motion.p> </motion.p>
{/* CTA Buttons */}
<motion.div <motion.div
initial={{ opacity: 0, y: 20 }} initial={{ opacity: 0, y: 20 }}
animate={{ opacity: 1, y: 0 }} animate={{ opacity: 1, y: 0 }}
@@ -82,10 +72,9 @@ const Hero = () => {
> >
<Button <Button
size="lg" size="lg"
className="bg-gradient-to-r from-purple-600 to-pink-600 hover:from-purple-700 hover:to-pink-700 text-white px-8 py-6 text-lg font-semibold rounded-xl shadow-xl hover:shadow-2xl transform hover:scale-105 transition-all" className="bg-gradient-to-r from-purple-600 to-pink-600 text-white px-8 py-6 text-lg font-semibold rounded-xl shadow-xl hover:scale-105 transition-all"
> >
Start Free Trial Book a Demo <ArrowRight className="ml-2 w-5 h-5" />
<ArrowRight className="ml-2 w-5 h-5" />
</Button> </Button>
<Button <Button
size="lg" size="lg"
@@ -93,41 +82,63 @@ const Hero = () => {
className="px-8 py-6 text-lg font-semibold rounded-xl border-2 hover:bg-gray-50" className="px-8 py-6 text-lg font-semibold rounded-xl border-2 hover:bg-gray-50"
> >
<PlayCircle className="mr-2 w-5 h-5" /> <PlayCircle className="mr-2 w-5 h-5" />
Watch Demo Watch Overview
</Button> </Button>
</motion.div> </motion.div>
{/* Trust checklist */}
<motion.div <motion.div
initial={{ opacity: 0 }} initial={{ opacity: 0 }}
animate={{ opacity: 1 }} animate={{ opacity: 1 }}
transition={{ duration: 0.6, delay: 0.4 }} transition={{ duration: 0.6, delay: 0.4 }}
className="mt-8 flex items-center justify-center gap-2 text-sm text-gray-600" className="mt-8 flex justify-center gap-4 text-gray-600 text-sm"
> >
<Check className="w-5 h-5 text-green-500" /> <Check className="w-5 h-5 text-green-500" /> No credit card required
<span>No credit card required</span>
<span className="mx-2"></span> <span className="mx-2"></span>
<Check className="w-5 h-5 text-green-500" /> <Check className="w-5 h-5 text-green-500" /> 14-day free trial
<span>14-day free trial</span> </motion.div>
{/* Product Highlight Cards */}
<motion.div
initial={{ opacity: 0, y: 40 }}
animate={{ opacity: 1, y: 0 }}
transition={{ duration: 0.7, delay: 0.45 }}
className="mt-20 grid grid-cols-1 md:grid-cols-3 gap-6"
>
{[
{ icon: Users, title: "ATS", desc: "Automate hiring, AI screening & smoother interviews." },
{ icon: UserCog, title: "HRMS", desc: "Employee onboarding, payroll & performance." },
{ icon: Briefcase, title: "CRM", desc: "Manage clients & strengthen candidate relationships." },
].map((item, i) => (
<motion.div
key={i}
whileHover={{ scale: 1.05 }}
className="bg-white p-6 rounded-2xl shadow-lg border border-purple-100"
>
<item.icon className="w-10 h-10 text-purple-600 mx-auto mb-4" />
<h3 className="text-xl font-bold mb-2">{item.title}</h3>
<p className="text-gray-600 text-sm">{item.desc}</p>
</motion.div>
))}
</motion.div> </motion.div>
</div>
{/* Stats Section */} {/* Stats Section */}
<motion.div <motion.div
initial={{ opacity: 0, y: 40 }} initial={{ opacity: 0, y: 40 }}
animate={{ opacity: 1, y: 0 }} animate={{ opacity: 1, y: 0 }}
transition={{ duration: 0.8, delay: 0.5 }} transition={{ duration: 0.8, delay: 0.55 }}
className="mt-20 grid grid-cols-2 md:grid-cols-4 gap-8" className="mt-16 grid grid-cols-2 md:grid-cols-4 gap-8"
> >
{home.stats.map((stat, index) => ( {home.stats.map((stat, index) => (
<motion.div <motion.div
key={index} key={index}
whileHover={{ scale: 1.05 }} whileHover={{ scale: 1.05 }}
className="text-center p-6 rounded-2xl bg-white/80 backdrop-blur-sm shadow-lg" className="text-center p-6 bg-white/80 backdrop-blur-sm rounded-2xl shadow-lg"
> >
<div className="text-4xl md:text-5xl font-bold bg-gradient-to-r from-purple-600 to-pink-600 bg-clip-text text-transparent mb-2"> <div className="text-4xl font-bold bg-gradient-to-r from-purple-600 to-pink-600 bg-clip-text text-transparent mb-2">
{stat.value} {stat.value}
</div> </div>
<div className="text-gray-600 font-medium">{stat.label}</div> <div className="text-gray-700 font-medium">{stat.label}</div>
</motion.div> </motion.div>
))} ))}
</motion.div> </motion.div>
@@ -136,4 +147,4 @@ const Hero = () => {
); );
}; };
export default Hero export default Hero;

View File

@@ -0,0 +1,107 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import { Briefcase, Users, ClipboardCheck, UserPlus, DollarSign, Handshake } from "lucide-react";
const steps = [
{
icon: <Briefcase className="w-10 h-10" />,
title: "Post Jobs in 1 Click",
desc: "Publish roles across multiple job boards instantly.",
},
{
icon: <Users className="w-10 h-10" />,
title: "Track Applications",
desc: "View, filter & collaborate on candidates with smart ATS.",
},
{
icon: <ClipboardCheck className="w-10 h-10" />,
title: "Hire Smarter",
desc: "Shortlist, schedule interviews & make quick decisions.",
},
{
icon: <UserPlus className="w-10 h-10" />,
title: "Onboard to Employee",
desc: "Convert hires seamlessly into HRMS — no data re-entry!",
},
{
icon: <DollarSign className="w-10 h-10" />,
title: "Manage HR & Payroll",
desc: "Attendance, payroll & performance in one place.",
},
{
icon: <Handshake className="w-10 h-10" />,
title: "Nurture Clients & Grow",
desc: "Built-in CRM to boost retention, sales & business scale.",
},
];
const HowItWorks = () => {
return (
<section className="py-32 bg-gradient-to-br from-purple-600 to-pink-600 text-white text-center relative overflow-hidden">
<motion.div
animate={{ opacity: [0.4, 0.6, 0.4], scale: [1, 1.1, 1] }}
transition={{ duration: 10, repeat: Infinity }}
className="absolute bg-white rounded-full blur-3xl opacity-20 w-[28rem] h-[28rem] -top-20 -right-20"
/>
<motion.div
animate={{ opacity: [0.4, 0.6, 0.4], scale: [1, 1.05, 1] }}
transition={{ duration: 12, repeat: Infinity }}
className="absolute bg-pink-300 rounded-full blur-3xl opacity-20 w-[26rem] h-[26rem] -bottom-20 -left-20"
/>
<div className="relative max-w-6xl mx-auto px-6 z-10">
<motion.h2
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
transition={{ duration: 0.6 }}
className="text-4xl md:text-6xl font-extrabold mb-6"
>
How It <span className="text-yellow-300">Works</span>
</motion.h2>
<motion.p
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
transition={{ duration: 0.6, delay: 0.2 }}
className="max-w-3xl mx-auto text-lg md:text-xl text-purple-200 mb-16"
>
Winixco connects your hiring, HR and CRM workflows into one powerful operating system from job posting to payroll & business growth.
</motion.p>
{/* Steps */}
<div className="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-10">
{steps.map((step, i) => (
<motion.div
key={i}
initial={{ opacity: 0, y: 40 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
transition={{ delay: i * 0.15 }}
className="bg-white/10 backdrop-blur-xl p-6 rounded-2xl shadow-lg hover:scale-105 transition transform"
>
<div className="flex justify-center mb-4 text-yellow-300">
{step.icon}
</div>
<h3 className="text-xl font-bold mb-2">{step.title}</h3>
<p className="text-sm text-purple-200">{step.desc}</p>
</motion.div>
))}
</div>
<motion.p
whileInView={{ opacity: 1 }}
initial={{ opacity: 0 }}
transition={{ delay: 0.9 }}
className="mt-12 text-sm text-purple-200"
>
Complete the loop. Grow endlessly. 💼
</motion.p>
</div>
</section>
);
};
export default HowItWorks;

View File

@@ -0,0 +1,254 @@
"use client"
import React, { useState } from "react";
import { motion } from "framer-motion";
import { Button } from "@/components/ui/button";
import { Card, CardContent } from "@/components/ui/card";
import { Badge } from "@/components/ui/badge";
import { ArrowRight, CheckCircle, Sparkles } from "lucide-react";
import {
home,
Module,
ModuleCardProps,
ModuleFeature,
} from "@/services/Constants";
import { useRouter } from "next/navigation";
const ModuleCard: React.FC<ModuleCardProps> = ({ module, index }) => {
const [isHovered, setIsHovered] = useState<boolean>(false);
const router = useRouter();
const handleClick = (): void => {
router.push(module.route);
};
return (
<motion.div
initial={{ opacity: 0, y: 30 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
transition={{ delay: index * 0.2, duration: 0.6 }}
onMouseEnter={() => setIsHovered(true)}
onMouseLeave={() => setIsHovered(false)}
>
<Card
className={`bg-gradient-to-br ${module.bgColor} border-2 border-transparent hover:border-gray-200 transition-all duration-500 cursor-pointer group h-full ${module.hoverColor} overflow-hidden relative`}
onClick={handleClick}
>
<CardContent className="p-8 md:p-10 relative z-10">
{/* Icon and Badge */}
<div className="flex items-start justify-between mb-6">
<motion.div
animate={{
scale: isHovered ? 1.1 : 1,
rotate: isHovered ? 5 : 0,
}}
transition={{ duration: 0.3 }}
className={`w-20 h-20 bg-gradient-to-br ${module.color} rounded-2xl flex items-center justify-center shadow-lg`}
>
<module.icon className="w-10 h-10 text-white" />
</motion.div>
<motion.div
initial={{ scale: 0 }}
animate={{ scale: 1 }}
transition={{ delay: index * 0.2 + 0.3 }}
>
<Badge className={`${module.accentColor} bg-white border-2`}>
New
</Badge>
</motion.div>
</div>
{/* Image */}
<motion.div
className="mb-6 rounded-2xl overflow-hidden shadow-lg h-48 relative"
animate={{
y: isHovered ? -10 : 0,
scale: isHovered ? 1.05 : 1,
}}
transition={{ duration: 0.4 }}
>
<img
src={module.imageUrl}
alt={module.title}
className="w-full h-full object-cover"
/>
<div
className={`absolute inset-0 bg-gradient-to-t ${module.color} opacity-20 group-hover:opacity-30 transition-opacity`}
/>
</motion.div>
{/* Title */}
<h3
className="text-2xl md:text-3xl font-bold text-gray-900 mb-4 group-hover:text-transparent group-hover:bg-gradient-to-r group-hover:bg-clip-text"
style={{
backgroundImage: `linear-gradient(to right, var(--tw-gradient-stops))`,
}}
>
{module.title}
</h3>
{/* Description */}
<p className="text-gray-700 mb-3 leading-relaxed">
{module.description}
</p>
<p className="text-gray-600 text-sm mb-6 leading-relaxed">
{module.subDescription}
</p>
{/* Features Grid */}
<div className="grid grid-cols-2 gap-3 mb-6">
{module.features.map((feature: ModuleFeature, idx: number) => (
<motion.div
key={idx}
initial={{ opacity: 0, x: -10 }}
whileInView={{ opacity: 1, x: 0 }}
viewport={{ once: true }}
transition={{ delay: index * 0.2 + idx * 0.1 }}
className="flex items-center gap-2 bg-white/60 backdrop-blur-sm rounded-lg p-3"
>
<feature.icon className={`w-4 h-4 ${module.accentColor}`} />
<span className="text-sm font-medium text-gray-700">
{feature.label}
</span>
</motion.div>
))}
</div>
{/* CTA Button */}
<motion.div whileHover={{ x: 5 }} transition={{ duration: 0.2 }}>
<Button
className={`w-full bg-gradient-to-r ${module.color} hover:shadow-xl text-white font-semibold group-hover:scale-105 transition-transform`}
size="lg"
>
Learn More
<ArrowRight className="ml-2 w-5 h-5 group-hover:translate-x-1 transition-transform" />
</Button>
</motion.div>
{/* Checkmark for Completeness */}
<motion.div
initial={{ scale: 0, rotate: -180 }}
whileInView={{ scale: 1, rotate: 0 }}
viewport={{ once: true }}
transition={{ delay: index * 0.2 + 0.5, type: "spring" }}
className="absolute top-4 right-4 w-8 h-8 bg-green-500 rounded-full flex items-center justify-center shadow-lg"
>
<CheckCircle className="w-5 h-5 text-white" />
</motion.div>
</CardContent>
{/* Decorative Elements */}
<motion.div
animate={{
scale: isHovered ? 1.5 : 1,
opacity: isHovered ? 0.3 : 0.1,
}}
transition={{ duration: 0.5 }}
className={`absolute -bottom-10 -right-10 w-40 h-40 bg-gradient-to-br ${module.color} rounded-full blur-3xl`}
/>
</Card>
</motion.div>
);
};
const ModulesSection: React.FC = () => {
return (
<section className="py-16 md:py-24 bg-gradient-to-b from-white via-gray-50 to-white relative overflow-hidden">
{/* Background Decorative Elements */}
<div className="absolute inset-0 overflow-hidden pointer-events-none">
<motion.div
animate={{
scale: [1, 1.2, 1],
rotate: [0, 90, 0],
}}
transition={{ duration: 20, repeat: Infinity, ease: "linear" }}
className="absolute top-1/4 left-0 w-96 h-96 bg-blue-100 rounded-full blur-3xl opacity-20"
/>
<motion.div
animate={{
scale: [1.2, 1, 1.2],
rotate: [90, 0, 90],
}}
transition={{ duration: 25, repeat: Infinity, ease: "linear" }}
className="absolute bottom-1/4 right-0 w-96 h-96 bg-purple-100 rounded-full blur-3xl opacity-20"
/>
</div>
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 relative z-10">
{/* Header */}
<motion.div
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
className="text-center mb-16"
>
<Badge className="mb-4 px-6 py-2 bg-purple-100 text-purple-700 border-0">
<Sparkles className="w-4 h-4 mr-2 inline" />
{home.module.badge}
</Badge>
<h2 className="text-4xl md:text-5xl lg:text-6xl font-bold text-gray-900 mb-6">
{home.module.title}{" "}
<span className="bg-gradient-to-r from-purple-600 via-pink-600 to-blue-600 bg-clip-text text-transparent">
Offers
</span>{" "}
</h2>
<p className="text-lg md:text-xl text-gray-600 max-w-3xl mx-auto">
{home.module.subtitle}
</p>
</motion.div>
{/* Modules Grid */}
<div className="grid lg:grid-cols-3 gap-8">
{home.module.modules.map((module: Module, index: number) => (
<ModuleCard key={module.id} module={module} index={index} />
))}
</div>
{/* Bottom CTA Section */}
<motion.div
initial={{ opacity: 0, y: 30 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
transition={{ delay: 0.6 }}
className="mt-16 text-center"
>
<Card className="bg-gradient-to-r from-blue-600 via-purple-600 to-pink-600 border-0 max-w-4xl mx-auto">
<CardContent className="p-8 md:p-12">
<h3 className="text-3xl md:text-4xl font-bold text-white mb-4">
Ready to Transform Your Business?
</h3>
<p className="text-lg text-blue-100 mb-8">
Get started with all three modules and experience seamless
integration
</p>
<div className="flex flex-col sm:flex-row gap-4 justify-center">
<Button
size="lg"
className="bg-white text-blue-600 hover:bg-gray-100 font-semibold"
>
Start Free Trial
<Sparkles className="ml-2 w-5 h-5" />
</Button>
<Button
size="lg"
variant="outline"
className="border-2 border-white bg-white hover:bg-white/10"
>
Schedule Demo
<ArrowRight className="ml-2 w-5 h-5" />
</Button>
</div>
</CardContent>
</Card>
</motion.div>
</div>
</section>
);
};
export default ModulesSection;

View File

@@ -30,7 +30,7 @@ const Testimonials = () => {
<h2 className="text-4xl md:text-5xl font-bold mb-6"> <h2 className="text-4xl md:text-5xl font-bold mb-6">
Loved by{" "} Loved by{" "}
<span className="bg-gradient-to-r from-purple-600 to-pink-600 bg-clip-text text-transparent"> <span className="bg-gradient-to-r from-purple-600 to-pink-600 bg-clip-text text-transparent">
Hiring Teams Our Clients
</span> </span>
</h2> </h2>
<p className="text-xl text-gray-600 max-w-3xl mx-auto"> <p className="text-xl text-gray-600 max-w-3xl mx-auto">

170
app/(public)/about/page.tsx Normal file
View File

@@ -0,0 +1,170 @@
"use client";
import { motion } from "framer-motion";
import { Users, Target, Lightbulb, ShieldCheck, Linkedin } from "lucide-react";
import Image from "next/image";
import Link from "next/link";
const leaders = [
{
name: "Amit Sharma",
role: "Founder & CEO",
image: "https://images.unsplash.com/photo-1595152772835-219674b2a8a6?crop=faces&fit=crop&w=400&q=80",
linkedin: "#",
},
{
name: "Neha Verma",
role: "Head of Product",
image: "https://images.unsplash.com/photo-1595152772835-219674b2a8a6?crop=faces&fit=crop&w=400&q=80",
linkedin: "#",
},
{
name: "Rahul Mehta",
role: "CTO",
image: "https://images.unsplash.com/photo-1595152772835-219674b2a8a6?crop=faces&fit=crop&w=400&q=80",
linkedin: "#",
},
];
export default function AboutUs() {
return (
<div className="min-h-screen bg-gray-50 text-gray-900">
{/* HERO */}
<section className="py-28 bg-gradient-to-r from-blue-600 to-purple-600 text-white text-center">
<motion.h1
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
className="text-5xl font-bold mb-6"
>
Empowering Businesses with Smart CRM Innovation
</motion.h1>
<motion.p
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
className="text-xl max-w-3xl mx-auto"
>
We help companies build stronger customer relationships through intelligent automation and seamless workflows.
</motion.p>
</section>
{/* OUR MISSION / VISION */}
<section className="py-20 max-w-7xl mx-auto px-6 grid md:grid-cols-2 gap-12">
<motion.div
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
className="bg-white p-10 rounded-3xl shadow-xl border"
>
<Target className="w-12 h-12 text-blue-600 mb-4" />
<h3 className="text-3xl font-semibold mb-3">Our Mission</h3>
<p className="text-gray-600 text-lg leading-relaxed">
To simplify customer management through powerful yet user-friendly CRM tools,
enabling businesses of every size to scale faster and smarter.
</p>
</motion.div>
<motion.div
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
className="bg-white p-10 rounded-3xl shadow-xl border"
>
<Lightbulb className="w-12 h-12 text-purple-600 mb-4" />
<h3 className="text-3xl font-semibold mb-3">Our Vision</h3>
<p className="text-gray-600 text-lg leading-relaxed">
To be a global leader in CRM innovation transforming how teams connect,
collaborate and grow with their customers.
</p>
</motion.div>
</section>
{/* COMPANY STORY TIMELINE */}
<section className="py-24 bg-white">
<div className="text-center mb-16">
<h2 className="text-4xl font-bold text-gray-900 mb-4">Our Journey</h2>
<p className="text-gray-600 text-lg max-w-3xl mx-auto">
From a small team with a big dream to a growing global technology partner.
</p>
</div>
<div className="relative max-w-5xl mx-auto px-6">
<div className="absolute left-1/2 -ml-0.5 h-full border-l-2 border-blue-300"></div>
{[
{ year: "2021", text: "Founded with a mission to reinvent CRM efficiency." },
{ year: "2022", text: "Launched our first CRM suite for SMEs." },
{ year: "2023", text: "Expanded to enterprise CRM solutions across industries." },
{ year: "2024", text: "Serving customers globally with AI-powered CRM intelligence." },
].map((item, i) => (
<motion.div
key={i}
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
className={`mb-16 flex items-center gap-8 ${
i % 2 === 0 ? "flex-row" : "flex-row-reverse"
}`}
>
<div className="bg-blue-600 text-white rounded-full w-16 h-16 flex items-center justify-center font-semibold text-xl shadow-2xl">
{item.year}
</div>
<p className="bg-gray-100 rounded-2xl p-6 shadow-md text-lg text-gray-700 max-w-md">
{item.text}
</p>
</motion.div>
))}
</div>
</section>
{/* LEADERSHIP SECTION */}
<section className="py-24 max-w-7xl mx-auto px-6">
<div className="text-center mb-12">
<h2 className="text-4xl font-bold mb-3">Leadership Team</h2>
<p className="text-gray-600 text-lg">
Guiding our mission with innovation and excellence.
</p>
</div>
<div className="grid md:grid-cols-3 gap-12">
{leaders.map((leader, idx) => (
<motion.div
key={idx}
initial={{ opacity: 0, scale: 0.9 }}
whileInView={{ opacity: 1, scale: 1 }}
className="text-center bg-white p-6 rounded-2xl shadow-lg"
>
<Image
src={leader.image}
width={200}
height={200}
alt={leader.name}
className="rounded-full mx-auto mb-4 object-cover"
/>
<h3 className="text-xl font-semibold">{leader.name}</h3>
<p className="text-gray-500 mb-3">{leader.role}</p>
<Link
href={leader.linkedin}
className="inline-flex items-center gap-2 text-blue-600 hover:text-blue-800"
>
<Linkedin size={18} /> Connect
</Link>
</motion.div>
))}
</div>
</section>
{/* CTA */}
<section className="py-24 bg-gradient-to-r from-purple-600 to-blue-600 text-center text-white">
<h2 className="text-4xl font-bold mb-4">We Grow Together</h2>
<p className="text-lg max-w-2xl mx-auto mb-8">
Become part of a story thats transforming the future of CRM.
</p>
<Link
href="/careers"
className="bg-white text-blue-700 px-8 py-3 rounded-full text-lg font-semibold hover:shadow-xl transition"
>
Explore Careers
</Link>
</section>
</div>
);
}

View File

@@ -0,0 +1,65 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import {
CheckCircle,
} from "lucide-react";
import { atsPageData } from "@/services/Constants";
// Benefits Section Component
const BenefitsSection: React.FC = () => {
return (
<section className="py-20 bg-gradient-to-b from-gray-50 to-white">
<div className="max-w-6xl mx-auto px-4 sm:px-6 lg:px-8">
<motion.h2
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
className="text-3xl md:text-4xl font-bold text-gray-900 text-center mb-12"
>
{atsPageData.benefits.title}
</motion.h2>
<div className="grid md:grid-cols-2 gap-10">
<div className="space-y-6">
{atsPageData.benefits.leftColumn.map((benefit, index) => (
<motion.div
key={index}
initial={{ opacity: 0, x: -20 }}
whileInView={{ opacity: 1, x: 0 }}
viewport={{ once: true }}
transition={{ delay: index * 0.1, duration: 0.6 }}
className="flex gap-4 items-start"
>
<CheckCircle className="w-6 h-6 text-blue-600 flex-shrink-0 mt-1" />
<p className="text-gray-700 text-lg">{benefit.text}</p>
</motion.div>
))}
</div>
<div className="space-y-6">
{atsPageData.benefits.rightColumn.map((benefit, index) => (
<motion.div
key={index}
initial={{ opacity: 0, x: 20 }}
whileInView={{ opacity: 1, x: 0 }}
viewport={{ once: true }}
transition={{ delay: index * 0.1, duration: 0.6 }}
className="flex gap-4 items-start"
>
<CheckCircle className="w-6 h-6 text-blue-600 flex-shrink-0 mt-1" />
<p className="text-gray-700 text-lg">{benefit.text}</p>
</motion.div>
))}
</div>
</div>
</div>
</section>
);
};
export default BenefitsSection

View File

@@ -0,0 +1,54 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import { Button } from "@/components/ui/button";
import {
ArrowRight,
Sparkles,
} from "lucide-react";
import { atsPageData } from "@/services/Constants";
// CTA Section Component
const CtaSection: React.FC = () => {
return (
<section className="py-20 bg-gradient-to-br from-blue-600 via-purple-600 to-pink-600">
<div className="max-w-4xl mx-auto px-4 sm:px-6 lg:px-8 text-center">
<motion.div
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
transition={{ duration: 0.6 }}
>
<h2 className="text-3xl md:text-4xl lg:text-5xl font-bold text-white mb-6">
{atsPageData.cta.title}
</h2>
<p className="text-lg md:text-xl text-white/90 mb-10 max-w-2xl mx-auto">
{atsPageData.cta.description}
</p>
<div className="flex flex-col sm:flex-row gap-4 justify-center">
<Button
size="lg"
className="bg-white text-blue-700 hover:bg-gray-100 font-semibold px-8 py-6 text-lg shadow-xl"
>
{atsPageData.cta.primaryButton}
<Sparkles className="ml-2 w-5 h-5" />
</Button>
<Button
size="lg"
variant="outline"
className="border-2 border-white hover:bg-white/10 font-semibold px-8 py-6 text-lg"
>
{atsPageData.cta.secondaryButton}
<ArrowRight className="ml-2 w-5 h-5" />
</Button>
</div>
</motion.div>
</div>
</section>
);
};
export default CtaSection

View File

@@ -0,0 +1,57 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import {
Accordion,
AccordionContent,
AccordionItem,
AccordionTrigger,
} from "@/components/ui/accordion";
import { atsPageData } from "@/services/Constants";
// FAQ Section Component
const FaqSection: React.FC = () => {
return (
<section className="py-20 bg-white">
<div className="max-w-4xl mx-auto px-4 sm:px-6 lg:px-8">
<motion.h2
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
className="text-3xl md:text-4xl font-bold text-gray-900 text-center mb-12"
>
{atsPageData.faqs.title}
</motion.h2>
<motion.div
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
transition={{ delay: 0.2 }}
>
<Accordion type="single" collapsible className="space-y-4">
{atsPageData.faqs.items.map((faq, index) => (
<AccordionItem
key={index}
value={`item-${index}`}
className="bg-white border border-gray-200 rounded-xl px-6 shadow-sm hover:shadow-md transition-shadow"
>
<AccordionTrigger className="text-lg font-semibold text-gray-900 hover:text-blue-600 py-6">
{faq.question}
</AccordionTrigger>
<AccordionContent className="text-gray-600 pb-6">
{faq.answer}
</AccordionContent>
</AccordionItem>
))}
</Accordion>
</motion.div>
</div>
</section>
);
};
export default FaqSection

View File

@@ -0,0 +1,51 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import { Card, CardContent } from "@/components/ui/card";
import { atsPageData } from "@/services/Constants";
// Features Section Component
const FeaturesSection: React.FC = () => {
return (
<section className="py-20 bg-white">
<div className="max-w-6xl mx-auto px-4 sm:px-6 lg:px-8">
<motion.h2
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
className="text-3xl md:text-4xl font-bold text-gray-900 text-center mb-14"
>
{atsPageData.features.title}
</motion.h2>
<div className="grid md:grid-cols-2 lg:grid-cols-3 gap-8">
{atsPageData.features.items.map((feature, index) => (
<motion.div
key={index}
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
transition={{ delay: index * 0.1, duration: 0.6 }}
whileHover={{ y: -8, scale: 1.02 }}
>
<Card className="h-full hover:shadow-xl transition-all duration-300 border-0 shadow-lg">
<CardContent className="p-8">
<div className="text-5xl mb-4">{feature.icon}</div>
<h3 className="text-xl font-semibold mb-3 text-gray-900">
{feature.title}
</h3>
<p className="text-gray-600">{feature.description}</p>
</CardContent>
</Card>
</motion.div>
))}
</div>
</div>
</section>
);
};
export default FeaturesSection

View File

@@ -0,0 +1,81 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import { Button } from "@/components/ui/button";
import { Badge } from "@/components/ui/badge";
import {
PlayCircle,
ArrowRight,
Sparkles,
} from "lucide-react";
import { atsPageData } from "@/services/Constants";
const HeroSection: React.FC = () => {
return (
<section className="relative py-24 md:py-32 bg-gradient-to-br from-purple-50 via-pink-50 to-blue-50 overflow-hidden">
{/* Background Animation */}
<div className="absolute inset-0 overflow-hidden">
<motion.div
animate={{
scale: [1, 1.2, 1],
rotate: [0, 90, 0],
}}
transition={{ duration: 20, repeat: Infinity, ease: "linear" }}
className="absolute -top-1/2 -left-1/2 w-full h-full bg-blue-500/20 rounded-full blur-3xl"
/>
<motion.div
animate={{
scale: [1.2, 1, 1.2],
rotate: [90, 0, 90],
}}
transition={{ duration: 25, repeat: Infinity, ease: "linear" }}
className="absolute -bottom-1/2 -right-1/2 w-full h-full bg-purple-500/20 rounded-full blur-3xl"
/>
</div>
<div className="max-w-6xl mx-auto px-4 sm:px-6 lg:px-8 text-center relative z-10">
<motion.div
initial={{ opacity: 0, y: 20 }}
animate={{ opacity: 1, y: 0 }}
transition={{ duration: 0.6 }}
>
<Badge className="mb-6 px-6 py-2 bg-purple-100 text-purple-700 border-white/30 backdrop-blur-sm text-sm font-semibold">
<Sparkles className="w-4 h-4 mr-2 inline" />
{atsPageData.hero.badge}
</Badge>
<h1 className="text-4xl md:text-5xl lg:text-6xl font-extrabold leading-tight mb-6 bg-gradient-to-r from-purple-600 via-pink-600 to-blue-600 bg-clip-text text-transparent">
{atsPageData.hero.title}
</h1>
<p className="text-lg md:text-xl opacity-90 max-w-3xl mx-auto mb-10">
{atsPageData.hero.subtitle}
</p>
<div className="flex flex-col sm:flex-row gap-4 justify-center items-center">
<Button
size="lg"
className="bg-white text-blue-700 hover:bg-gray-100 font-semibold px-8 py-6 text-lg shadow-xl"
>
{atsPageData.hero.primaryCta}
<ArrowRight className="ml-2 w-5 h-5" />
</Button>
<Button
size="lg"
variant="outline"
className="border-2 border-white hover:bg-white/10 font-semibold px-8 py-6 text-lg"
>
<PlayCircle className="mr-2 w-5 h-5" />
{atsPageData.hero.secondaryCta}
</Button>
</div>
</motion.div>
</div>
</section>
);
};
export default HeroSection

View File

@@ -0,0 +1,62 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import { Card, CardContent } from "@/components/ui/card";
import {
Sparkles,
} from "lucide-react";
import { atsPageData } from "@/services/Constants";
// Overview Section Component
const OverviewSection: React.FC = () => {
return (
<section className="py-20 bg-white">
<div className="max-w-6xl mx-auto px-4 sm:px-6 lg:px-8">
<motion.div
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
transition={{ duration: 0.6 }}
className="text-center mb-12"
>
<h2 className="text-3xl md:text-4xl font-bold text-gray-900 mb-4">
{atsPageData.overview.title}
</h2>
<p className="text-lg text-gray-600 max-w-3xl mx-auto">
{atsPageData.overview.description}
</p>
</motion.div>
<div className="grid md:grid-cols-3 gap-8">
{atsPageData.overview.items.map((item, index) => (
<motion.div
key={index}
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
transition={{ delay: index * 0.2, duration: 0.6 }}
>
<Card className="h-full hover:shadow-xl transition-shadow duration-300 border-0 shadow-lg">
<CardContent className="p-8">
<div className="w-16 h-16 bg-gradient-to-br from-blue-500 to-purple-500 rounded-2xl flex items-center justify-center mb-6">
<Sparkles className="w-8 h-8 text-white" />
</div>
<h3 className="text-xl font-semibold mb-3 text-gray-900">
{item.title}
</h3>
<p className="text-gray-600">{item.description}</p>
</CardContent>
</Card>
</motion.div>
))}
</div>
</div>
</section>
);
};
export default OverviewSection

View File

@@ -0,0 +1,49 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import { Card, CardContent } from "@/components/ui/card";
import { atsPageData } from "@/services/Constants";
// Workflow Section Component
const WorkflowSection: React.FC = () => {
return (
<section className="py-20 bg-gradient-to-b from-gray-50 to-white">
<div className="max-w-6xl mx-auto px-4 sm:px-6 lg:px-8">
<motion.h2
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
className="text-3xl md:text-4xl font-bold text-gray-900 text-center mb-14"
>
{atsPageData.workflow.title}
</motion.h2>
<div className="grid md:grid-cols-2 lg:grid-cols-4 gap-8">
{atsPageData.workflow.steps.map((step, index) => (
<motion.div
key={index}
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
transition={{ delay: index * 0.15, duration: 0.6 }}
>
<Card className="h-full hover:shadow-xl transition-shadow duration-300 border-0 shadow-lg text-center">
<CardContent className="p-8">
<div className="text-6xl mb-4">{step.emoji}</div>
<h3 className="text-xl font-semibold mb-3 text-gray-900">
{step.title}
</h3>
<p className="text-gray-600">{step.description}</p>
</CardContent>
</Card>
</motion.div>
))}
</div>
</div>
</section>
);
};
export default WorkflowSection

25
app/(public)/ats/page.tsx Normal file
View File

@@ -0,0 +1,25 @@
import BenefitsSection from "./_components/Benefits";
import CtaSection from "./_components/CTA";
import FaqSection from "./_components/FAQ";
import FeaturesSection from "./_components/Features";
import HeroSection from "./_components/Hero";
import OverviewSection from "./_components/Overview";
import WorkflowSection from "./_components/WorkFlow";
// Main ATS Page Component
const ATSPage: React.FC = () => {
return (
<div className="min-h-screen bg-white">
<HeroSection />
<OverviewSection />
<BenefitsSection />
<FeaturesSection />
<WorkflowSection />
<FaqSection />
<CtaSection />
</div>
);
};
export default ATSPage;

133
app/(public)/blogs/page.tsx Normal file
View File

@@ -0,0 +1,133 @@
"use client";
import { motion } from "framer-motion";
import { Calendar, ArrowRight, User } from "lucide-react";
import { Button } from "@/components/ui/button";
const BLOGS = [
{
title: "Why CRM is Essential for Scaling Modern Businesses",
description:
"Discover how CRM solutions boost growth, streamline communication & maximise revenue.",
author: "Sandip Chowdhury",
date: "Dec 05, 2025",
image:
"https://images.unsplash.com/photo-1556155092-8707de31f9c4?w=800&q=80",
readTime: "5 min read",
},
{
title: "How Automation Improves Sales Team Productivity",
description:
"Learn why automation is becoming a must-have feature for sales operations.",
author: "Priya Sharma",
date: "Nov 28, 2025",
image:
"https://images.unsplash.com/photo-1581091226825-a6a2a5aee158?w=800&q=80",
readTime: "4 min read",
},
{
title: "Top CRM Trends to Watch Out in 2026",
description:
"AI-driven CRMs, predictive analytics & more see what the future holds.",
author: "Arjun Patel",
date: "Oct 15, 2025",
image:
"https://images.unsplash.com/photo-1533750349088-cd871a92f312?w=800&q=80",
readTime: "6 min read",
},
];
export default function BlogPage() {
return (
<main className="bg-white">
{/* HERO */}
<section className="py-24 px-6 text-center bg-gradient-to-b from-purple-600 via-blue-600 to-indigo-700 text-white">
<motion.h1
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
className="text-4xl md:text-6xl font-extrabold"
>
Insights & Resources for Your Growth
</motion.h1>
<p className="mt-4 text-lg opacity-90 max-w-2xl mx-auto">
Explore the latest blogs, guides, and articles to help your business scale smarter.
</p>
</section>
{/* Blog List */}
<section className="py-20 px-6 max-w-7xl mx-auto">
<div className="grid sm:grid-cols-2 lg:grid-cols-3 gap-10">
{BLOGS.map((blog, i) => (
<motion.div
key={i}
initial={{ opacity: 0, y: 30 }}
whileInView={{ opacity: 1, y: 0 }}
transition={{ delay: i * 0.1 }}
className="rounded-2xl overflow-hidden bg-white shadow-md hover:shadow-2xl transition-all duration-300 hover:-translate-y-2"
>
<div>
<img
src={blog.image}
alt={blog.title}
className="w-full h-52 object-cover"
/>
</div>
<div className="p-6">
<h3 className="text-lg font-bold text-gray-900">
{blog.title}
</h3>
<p className="text-gray-600 text-sm mt-2 line-clamp-2">
{blog.description}
</p>
<div className="flex items-center gap-3 text-gray-500 text-xs mt-4">
<User className="w-4 h-4" />
<span>{blog.author}</span>
<span></span>
<Calendar className="w-4 h-4" />
<span>{blog.date}</span>
</div>
<div className="mt-6 flex justify-between items-center">
<span className="text-xs text-purple-600 font-medium">
{blog.readTime}
</span>
<Button
variant="outline"
size="sm"
className="text-purple-700 border-purple-200 hover:bg-purple-100"
>
Read More
<ArrowRight className="ml-2 w-4 h-4" />
</Button>
</div>
</div>
</motion.div>
))}
</div>
</section>
{/* CTA */}
<section className="py-20 text-center bg-gray-50 px-6">
<motion.h2
initial={{ opacity: 0, scale: 0.9 }}
whileInView={{ opacity: 1, scale: 1 }}
className="text-3xl md:text-4xl font-bold text-gray-900"
>
Want More Industry Insights?
</motion.h2>
<p className="text-gray-600 max-w-2xl mx-auto mt-4">
Subscribe to our newsletter and stay updated with the latest trends.
</p>
<div className="mt-8">
<Button
size="lg"
className="bg-purple-600 hover:bg-purple-700 text-white text-lg px-10"
>
Subscribe Now
</Button>
</div>
</section>
</main>
);
}

View File

@@ -0,0 +1,149 @@
"use client";
import { motion } from "framer-motion";
import { Briefcase, Users, Target, HeartHandshake, ArrowRight } from "lucide-react";
import Link from "next/link";
const openRoles = [
{
title: "Frontend Developer",
department: "Engineering",
type: "Full Time",
location: "Remote / India",
},
{
title: "Backend Developer",
department: "Engineering",
type: "Full Time",
location: "Remote",
},
{
title: "Sales Executive",
department: "Sales & Marketing",
type: "Full Time",
location: "Kolkata, India",
},
{
title: "UI/UX Designer",
department: "Design",
type: "Full Time",
location: "Remote",
},
];
export default function Careers() {
return (
<div className="min-h-screen bg-gray-50 text-gray-900">
{/* HERO */}
<section className="py-24 text-center bg-gradient-to-r from-blue-600 to-purple-600 text-white">
<motion.h1
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
className="text-5xl font-bold mb-6"
>
Build Your Future With Us
</motion.h1>
<motion.p
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
className="text-xl max-w-2xl mx-auto"
>
Join a passionate team shaping the future of CRM solutions across the globe.
</motion.p>
</section>
{/* CULTURE SECTION */}
<section className="py-20 max-w-7xl mx-auto px-6">
<div className="text-center mb-16">
<h2 className="text-4xl font-bold mb-4">Life at Our Company</h2>
<p className="text-gray-600 text-lg max-w-3xl mx-auto">
A culture built to encourage creativity, innovation, and collaboration.
</p>
</div>
<div className="grid md:grid-cols-3 gap-10">
{[
{
icon: <Users className="w-10 h-10 text-blue-600" />,
title: "Collaborative Team",
desc: "Work with talented individuals who uplift each other every day.",
},
{
icon: <Target className="w-10 h-10 text-purple-600" />,
title: "Performance Driven",
desc: "We believe in rewarding effort, creativity & dedication.",
},
{
icon: <HeartHandshake className="w-10 h-10 text-pink-600" />,
title: "People First",
desc: "We focus on employee happiness, growth, and well-being.",
},
].map((item, i) => (
<motion.div
key={i}
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
className="bg-white p-8 rounded-2xl shadow-lg text-center"
>
<div className="mb-4 flex justify-center">{item.icon}</div>
<h3 className="text-xl font-semibold mb-2">{item.title}</h3>
<p className="text-gray-600">{item.desc}</p>
</motion.div>
))}
</div>
</section>
{/* OPEN ROLES */}
<section className="py-20 bg-white">
<div className="max-w-7xl mx-auto px-6">
<div className="text-center mb-16">
<h2 className="text-4xl font-bold mb-3">Open Positions</h2>
<p className="text-gray-600 text-lg">
Were looking for dreamers, doers & problem solvers.
</p>
</div>
<div className="grid md:grid-cols-2 gap-10">
{openRoles.map((role, index) => (
<motion.div
key={index}
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
className="p-6 rounded-xl shadow-md border bg-gray-50 hover:shadow-xl transition"
>
<h3 className="text-2xl font-semibold mb-2">{role.title}</h3>
<p className="text-gray-600 mb-4">{role.department}</p>
<div className="flex justify-between items-center text-sm text-gray-500 mb-6">
<span>{role.type}</span>
<span>{role.location}</span>
</div>
<Link
href="/apply"
className="text-blue-600 font-medium flex items-center gap-2 hover:gap-3 transition-all"
>
Apply Now <ArrowRight className="w-4 h-4" />
</Link>
</motion.div>
))}
</div>
</div>
</section>
{/* CTA SECTION */}
<section className="py-24 text-center bg-gradient-to-r from-purple-600 to-blue-600 text-white">
<h2 className="text-4xl font-bold mb-6">Didnt find a suitable role?</h2>
<p className="text-xl max-w-2xl mx-auto mb-8">
We are always looking for great talent. Send us your resume!
</p>
<Link
href="/contact"
className="bg-white text-purple-700 hover:text-purple-900 px-8 py-3 rounded-full text-lg font-semibold shadow-lg hover:shadow-xl transition"
>
Contact Us
</Link>
</section>
</div>
);
}

View File

@@ -0,0 +1,88 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import { CalendarCheck, Send, CheckCircle } from "lucide-react";
import { Button } from "@/components/ui/button";
const features = [
"Personalized walkthrough of ATS, HRMS & CRM",
"Explore dashboards, workflows & automation",
"Pricing, setup & integration guidance",
"Ask anything tailored to your business needs",
];
const BookDemoSection = () => {
return (
<section className="relative py-24 px-6 bg-white overflow-hidden">
{/* Background Glow */}
<motion.div
className="absolute inset-0 opacity-30 pointer-events-none"
animate={{ scale: [1, 1.05, 1] }}
transition={{ duration: 14, repeat: Infinity }}
>
</motion.div>
<div className="relative z-10 max-w-5xl mx-auto text-center">
<motion.h2
initial={{ opacity: 0, y: 20 }}
animate={{ opacity: 1, y: 0 }}
className="text-4xl md:text-6xl font-extrabold text-gray-900"
>
🗓 Book a Demo or{" "}
<span className="bg-gradient-to-r from-purple-600 to-pink-600 bg-clip-text text-transparent">
Consultation
</span>
</motion.h2>
<motion.p
initial={{ opacity: 0, y: 10 }}
animate={{ opacity: 1, y: 0 }}
className="mt-6 text-lg md:text-xl text-gray-600 max-w-3xl mx-auto"
>
Want to see how Winixco can improve hiring, HR operations or client
management? Get your free 1-on-1 demo our team responds within 12 hours.
</motion.p>
{/* Feature List */}
<motion.div
initial={{ opacity: 0, y: 20 }}
animate={{ opacity: 1, y: 0 }}
className="grid gap-4 md:grid-cols-2 max-w-2xl mx-auto mt-10 text-left"
>
{features.map((item, index) => (
<div key={index} className="flex items-center gap-3">
<CheckCircle className="text-purple-600 w-6 h-6" />
<p className="text-gray-700 font-medium">{item}</p>
</div>
))}
</motion.div>
{/* CTA Buttons */}
<motion.div
initial={{ opacity: 0, y: 20 }}
animate={{ opacity: 1, y: 0 }}
className="flex flex-col sm:flex-row gap-5 justify-center mt-12"
>
<Button
size="lg"
className="px-9 py-6 text-lg rounded-xl font-bold shadow-xl bg-purple-600 text-white hover:bg-purple-700 hover:scale-105 transition-transform"
>
<CalendarCheck className="mr-2 w-5 h-5" />
Book My Demo
</Button>
<Button
variant="outline"
size="lg"
className="px-9 py-6 text-lg rounded-xl font-bold border-2 text-purple-700 hover:bg-purple-100 transition-all"
>
<Send className="mr-2 w-5 h-5" />
Contact Sales
</Button>
</motion.div>
</div>
</section>
);
};
export default BookDemoSection;

View File

@@ -0,0 +1,98 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import { CheckCircle, Rocket, Shield, Zap, MessageCircle, Calendar, Clock } from "lucide-react";
import Link from "next/link";
// Feature data
const features = [
{ text: "Fast and transparent customer support", icon: Rocket },
{ text: "Simple onboarding and quick implementation", icon: Zap },
{ text: "Scalable modules for startups to enterprises", icon: CheckCircle },
{ text: "Custom features built on request", icon: MessageCircle },
{ text: "Secure, cloud-based infrastructure", icon: Shield },
{ text: "Real-time analytics and reporting", icon: Clock }, // New feature added
];
const ChooseWinixco = () => {
return (
<section className="py-24 px-6 bg-white">
<div className="max-w-6xl mx-auto text-center">
{/* Title */}
<motion.h2
initial={{ opacity: 0, y: 25 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
className="text-4xl md:text-5xl font-bold text-gray-900"
>
Why Businesses{" "}
<span className="bg-gradient-to-r from-purple-600 to-pink-600 bg-clip-text text-transparent">
Choose Winixco
</span>
</motion.h2>
{/* Feature Grid */}
<div className="grid md:grid-cols-2 lg:grid-cols-3 gap-8 mt-14 justify-center">
{features.map((item, index) => (
<motion.div
key={index}
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
transition={{ delay: index * 0.1 }}
viewport={{ once: true }}
className="bg-white border border-gray-200 p-6 rounded-2xl shadow-sm hover:shadow-lg transition-all duration-300 flex items-center gap-4"
>
<item.icon className="w-8 h-8 text-purple-600" />
<p className="text-lg text-gray-700 font-medium">{item.text}</p>
</motion.div>
))}
</div>
</div>
</section>
);
};
// Contact CTA Section
const WeLoveToHearFromYou = () => {
return (
<section className="py-24 px-6 bg-white">
<motion.div
initial={{ opacity: 0, y: 25 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
className="max-w-4xl mx-auto text-center bg-white p-12 rounded-3xl shadow-xl"
>
{/* Title */}
<h2 className="text-4xl md:text-5xl font-bold text-gray-900">
📣 Wed Love to Hear From You
</h2>
<p className="text-gray-600 mt-6 text-lg">
Your message helps us understand your business better and deliver the right solution.
Lets build something powerful for your organisation.
</p>
{/* CTA Buttons */}
<div className="mt-10 flex flex-wrap justify-center gap-6">
<Link
href="#contact"
className="px-8 py-4 text-lg font-semibold rounded-xl bg-purple-600 hover:bg-purple-700 text-white transition-all hover:scale-105"
>
👉 Send Message
</Link>
<Link
href="#book-demo"
className="px-8 py-4 text-lg font-semibold rounded-xl border-2 border-purple-600 text-purple-700 hover:bg-purple-50 transition-all hover:scale-105"
>
👉 Book a Demo
</Link>
</div>
</motion.div>
</section>
);
};
export { ChooseWinixco, WeLoveToHearFromYou };

View File

@@ -1,46 +1,77 @@
"use client" "use client";
import React from 'react'; import React from "react";
import { motion } from 'framer-motion'; import { motion } from "framer-motion";
import { CONTACT_DATA } from '@/services/Constants'; import { CONTACT_DATA } from "@/services/Constants";
const GetInTouch: React.FC = () => {
return (
<section className="relative py-24 px-6 overflow-hidden">
{/* Background Gradient Blobs */}
// Get In Touch Component
const GetInTouch: React.FC = () => (
<motion.div <motion.div
className="absolute inset-0 pointer-events-none opacity-30"
animate={{ scale: [1, 1.08, 1] }}
transition={{ duration: 18, repeat: Infinity }}
>
</motion.div>
<div className="relative z-10 max-w-6xl mx-auto text-center">
{/* Title */}
<motion.h2
initial={{ opacity: 0, y: 20 }} initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }} whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }} viewport={{ once: true }}
className="bg-gray-50 rounded-3xl p-8 md:p-12 mb-20" className="text-4xl md:text-5xl font-extrabold text-gray-900"
> >
<div className="text-center mb-12">
<h2 className="text-3xl md:text-4xl font-bold text-gray-900 mb-4">
{CONTACT_DATA.getInTouch.title} {CONTACT_DATA.getInTouch.title}
</h2> <span className="block mt-2 bg-gradient-to-r from-purple-600 to-pink-600 bg-clip-text text-transparent">
<p className="text-gray-600 max-w-2xl mx-auto"> Lets Connect
</span>
</motion.h2>
<motion.p
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
className="mt-6 text-lg text-gray-600 max-w-2xl mx-auto"
>
{CONTACT_DATA.getInTouch.description} {CONTACT_DATA.getInTouch.description}
</p> </motion.p>
</div>
<div className="grid md:grid-cols-3 gap-8"> {/* Contact Methods */}
<div className="grid sm:grid-cols-2 md:grid-cols-3 gap-8 mt-16">
{CONTACT_DATA.getInTouch.methods.map((method, index) => ( {CONTACT_DATA.getInTouch.methods.map((method, index) => (
<motion.div <motion.div
key={index} key={index}
initial={{ opacity: 0, y: 20 }} initial={{ opacity: 0, y: 25 }}
whileInView={{ opacity: 1, y: 0 }} whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }} viewport={{ once: true }}
transition={{ delay: index * 0.1 }} transition={{ delay: index * 0.15 }}
className="text-center" whileHover={{ scale: 1.05 }}
className="p-8 bg-white/70 backdrop-blur-lg rounded-2xl shadow-lg hover:shadow-2xl transition-all cursor-pointer"
> >
<div className={`w-16 h-16 mx-auto mb-4 bg-white rounded-2xl shadow-md flex items-center justify-center ${method.color}`}> {/* Icon */}
<method.icon className="w-8 h-8" /> <div
className={`w-14 h-14 mx-auto mb-5 rounded-xl flex items-center justify-center shadow-md ${method.color} `}
>
<method.icon className="w-7 h-7" />
</div> </div>
<h3 className="text-xl font-bold text-gray-900 mb-2">{method.title}</h3>
<h3 className="text-xl font-bold text-gray-900 mb-2">
{method.title}
</h3>
<p className="text-gray-600 text-sm mb-2">{method.description}</p> <p className="text-gray-600 text-sm mb-2">{method.description}</p>
<p className={`font-semibold ${method.color}`}>{method.contact}</p>
<p className="font-semibold text-purple-700">{method.contact}</p>
</motion.div> </motion.div>
))} ))}
</div> </div>
</motion.div>
);
export default GetInTouch </div>
</section>
);
};
export default GetInTouch;

View File

@@ -2,30 +2,46 @@
import React from "react"; import React from "react";
import { motion } from "framer-motion"; import { motion } from "framer-motion";
import { Badge } from "@/components/ui/badge"; import { Badge } from "@/components/ui/badge";
import { CONTACT_DATA } from "@/services/Constants";
const HeroSection: React.FC = () => ( const HeroSection: React.FC = () => (
<section className="relative overflow-hidden py-24">
{/* Animated Background Glow */}
<motion.div <motion.div
initial={{ opacity: 0, y: 20 }} className="absolute inset-0 opacity-20 pointer-events-none"
animate={{ opacity: 1, y: 0 }} animate={{ scale: [1, 1.05, 1] }}
className="text-center mb-16 mt-10" transition={{ duration: 10, repeat: Infinity }}
> >
<Badge className="mb-4 px-4 py-2 bg-purple-100 text-purple-700"> <div className="absolute w-96 h-96 bg-purple-400 blur-3xl rounded-full -top-10 -left-10"></div>
{CONTACT_DATA.hero.badge} <div className="absolute w-80 h-80 bg-pink-400 blur-3xl rounded-full bottom-0 right-0"></div>
</motion.div>
{/* Content */}
<motion.div
initial={{ opacity: 0, y: 30 }}
animate={{ opacity: 1, y: 0 }}
className="relative z-10 text-center px-6 max-w-4xl mx-auto"
>
<Badge className="mb-5 px-6 py-3 bg-purple-100 text-purple-700 tracking-wide">
#1 CUSTOMER SUPPORT
</Badge> </Badge>
<h1 className="text-4xl md:text-5xl lg:text-6xl font-bold text-gray-900 mb-6">
{CONTACT_DATA.hero.title}{" "} <h1 className="text-4xl md:text-6xl font-extrabold text-gray-900 leading-tight">
Were Here to Help You{" "}
<span className="bg-gradient-to-r from-purple-600 to-pink-600 bg-clip-text text-transparent"> <span className="bg-gradient-to-r from-purple-600 to-pink-600 bg-clip-text text-transparent">
us Transform Your Business
</span> </span>
</h1> </h1>
<p className="text-lg md:text-xl text-gray-600 mb-2 max-w-3xl mx-auto">
{CONTACT_DATA.hero.description} <p className="text-lg md:text-xl mt-6 text-gray-600 max-w-3xl mx-auto leading-relaxed">
Whether you're exploring our ATS, HRMS, or CRM solutions or need
support for your existing account our team is ready with fast, expert guidance.
</p> </p>
<p className="text-lg md:text-xl text-gray-600 max-w-3xl mx-auto">
{CONTACT_DATA.hero.subtitle} <p className="text-lg md:text-xl mt-3 text-gray-700 max-w-3xl mx-auto font-medium">
Lets Connect & Grow Together.
</p> </p>
</motion.div> </motion.div>
</section>
); );
export default HeroSection; export default HeroSection;

View File

@@ -0,0 +1,72 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import { BadgeCheck, Handshake, Globe, Layers } from "lucide-react";
import { Button } from "@/components/ui/button";
const partnerships = [
"White-label & reseller partnership",
"Revenue-sharing models",
"API-based integrations",
"Custom enterprise solutions",
];
const PartnerWithUsSection = () => {
return (
<section className="relative py-24 px-6 bg-white overflow-hidden">
<motion.div
className="absolute inset-0 opacity-20 pointer-events-none"
animate={{ scale: [1, 1.08, 1] }}
transition={{ duration: 14, repeat: Infinity }}
>
<div className="absolute w-96 h-96 bg-purple-300 blur-[120px] rounded-full -top-10 -left-10"></div>
<div className="absolute w-80 h-80 bg-pink-400 blur-[130px] rounded-full bottom-0 right-0"></div>
</motion.div>
<div className="relative z-10 max-w-6xl mx-auto text-center">
<motion.h2
initial={{ opacity: 0, y: 25 }}
animate={{ opacity: 1, y: 0 }}
className="text-4xl md:text-5xl font-extrabold text-gray-900"
>
🤝 Partner With{" "}
<span className="bg-gradient-to-r from-purple-600 to-pink-600 bg-clip-text text-transparent">
Winixco
</span>
</motion.h2>
<p className="mt-6 text-lg text-gray-600 max-w-3xl mx-auto">
Winixco empowers recruitment agencies, IT firms, HR consultants and
SaaS resellers to expand their service offerings & grow revenue.
</p>
<div className="grid md:grid-cols-2 gap-6 max-w-3xl mx-auto mt-10 text-left">
{partnerships.map((item, index) => (
<motion.div
key={index}
initial={{ opacity: 0, x: 20 }}
animate={{ opacity: 1, x: 0 }}
transition={{ delay: index * 0.1 }}
className="flex items-center gap-3"
>
<BadgeCheck className="text-purple-600 w-6 h-6" />
<p className="text-gray-700 font-medium">{item}</p>
</motion.div>
))}
</div>
<motion.div
initial={{ opacity: 0, scale: 0.9 }}
animate={{ opacity: 1, scale: 1 }}
className="mt-12"
>
<Button className="px-10 py-5 text-lg bg-purple-600 text-white font-bold rounded-xl shadow-lg hover:bg-purple-700 hover:scale-105 transition-all">
Become a Partner
</Button>
</motion.div>
</div>
</section>
);
};
export default PartnerWithUsSection;

View File

@@ -0,0 +1,73 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import { Wrench, Clock, Zap, HelpCircle } from "lucide-react";
import { Button } from "@/components/ui/button";
const supportPoints = [
"ATS, HRMS & CRM module setup guidance",
"Integrations including email, SSO & APIs",
"Troubleshooting & bug resolution",
"Custom workflow or feature implementation",
];
const TechnicalSupportSection = () => {
return (
<section className="relative py-24 px-6 bg-white overflow-hidden">
{/* Glow */}
<motion.div
className="absolute inset-0 opacity-25 pointer-events-none"
animate={{ scale: [1, 1.05, 1] }}
transition={{ duration: 14, repeat: Infinity }}
>
</motion.div>
<div className="relative z-10 max-w-6xl mx-auto">
<div className="text-center">
<motion.h2
initial={{ opacity: 0, y: 25 }}
animate={{ opacity: 1, y: 0 }}
className="text-4xl md:text-5xl font-extrabold text-gray-900"
>
🛠 Technical Support &{" "}
<span className="bg-gradient-to-r from-purple-600 to-pink-600 bg-clip-text text-transparent">
Assistance
</span>
</motion.h2>
<p className="mt-6 text-lg text-gray-600 max-w-3xl mx-auto">
Already using Winixco? Were here to ensure everything works seamlessly
fast responses & expert support guaranteed.
</p>
</div>
{/* Support Features */}
<div className="grid md:grid-cols-2 gap-6 max-w-3xl mx-auto mt-12">
{supportPoints.map((item, index) => (
<motion.div
key={index}
initial={{ opacity: 0, x: -20 }}
animate={{ opacity: 1, x: 0 }}
transition={{ delay: index * 0.1 }}
className="flex items-center gap-3"
>
<HelpCircle className="text-purple-600 w-6 h-6" />
<p className="text-gray-700 font-medium">{item}</p>
</motion.div>
))}
</div>
<div className="text-center mt-12">
<Button
variant="outline"
className="px-10 py-5 text-lg font-bold text-purple-700 border-2 rounded-xl hover:bg-purple-100 transition-all"
>
Contact Support
</Button>
</div>
</div>
</section>
);
};
export default TechnicalSupportSection;

View File

@@ -1,29 +1,15 @@
"use client" "use client"
import React, { useState } from 'react'; import React from 'react';
import { motion } from 'framer-motion';
import { Button } from '@/components/ui/button';
import { Card, CardContent } from '@/components/ui/card';
import { Badge } from '@/components/ui/badge';
import { Input } from '@/components/ui/input';
import { Textarea } from '@/components/ui/textarea';
import {
Headphones,
LifeBuoy,
Mail,
MessageSquare,
Phone,
MapPin,
Send,
CheckCircle,
Users,
Star
} from 'lucide-react';
import HeroSection from './_components/HeroSection'; import HeroSection from './_components/HeroSection';
import QuickActions from './_components/QuickActions'; import QuickActions from './_components/QuickActions';
import GetInTouch from './_components/GetInTouch'; import GetInTouch from './_components/GetInTouch';
import GlobalOffices from './_components/GlobalOffices'; import GlobalOffices from './_components/GlobalOffices';
import ContactForm from './_components/ContactForm'; import ContactForm from './_components/ContactForm';
import HappyCustomers from './_components/HappyCustomers'; import HappyCustomers from './_components/HappyCustomers';
import BookDemoSection from './_components/BookDemo';
import PartnerWithUsSection from './_components/PartnerWithUs';
import TechnicalSupportSection from './_components/TechnicalSupport';
import { ChooseWinixco, WeLoveToHearFromYou } from './_components/ChooseWinixco';
// Main Contact Page Component // Main Contact Page Component
export default function ContactUsPage() { export default function ContactUsPage() {
@@ -31,10 +17,13 @@ export default function ContactUsPage() {
<div className="min-h-screen bg-white"> <div className="min-h-screen bg-white">
<div className="px-4 sm:px-4 lg:px-10 py-16 md:py-24"> <div className="px-4 sm:px-4 lg:px-10 py-16 md:py-24">
<HeroSection /> <HeroSection />
<QuickActions />
<GetInTouch /> <GetInTouch />
<GlobalOffices /> <BookDemoSection />
<PartnerWithUsSection />
<TechnicalSupportSection />
<ContactForm /> <ContactForm />
<ChooseWinixco />
<WeLoveToHearFromYou />
<HappyCustomers /> <HappyCustomers />
</div> </div>
</div> </div>

View File

@@ -0,0 +1,68 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import {
Card,
CardContent,
} from "@/components/ui/card";
import { Badge } from "@/components/ui/badge";
import { crm } from "@/services/Constants";
const CRMAdvantages: React.FC = () => {
return (
<section className="py-20 px-4 bg-gradient-to-br from-blue-50 via-purple-50 to-pink-50">
<div className="container mx-auto max-w-7xl">
<motion.div
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
className="text-center mb-16"
>
<Badge className="mb-4 bg-blue-100 text-blue-700 border-blue-200">
Why Choose Us
</Badge>
<h2 className="text-4xl md:text-5xl font-bold text-gray-900 mb-4">
Why Companies Choose{" "}
<span className="bg-gradient-to-r from-blue-600 to-purple-600 bg-clip-text text-transparent">
Our CRM
</span>
</h2>
<p className="text-xl text-gray-600 max-w-3xl mx-auto">
Boost sales performance, strengthen customer relationships, and grow faster with a modern CRM solution.
</p>
</motion.div>
<div className="grid md:grid-cols-2 lg:grid-cols-3 gap-8">
{crm.CRM_ADVANTAGES.map((advantage, idx) => (
<motion.div
key={idx}
initial={{ opacity: 0, scale: 0.9 }}
whileInView={{ opacity: 1, scale: 1 }}
viewport={{ once: true }}
transition={{ delay: idx * 0.1 }}
>
<Card className="bg-white border-2 border-gray-100 hover:border-purple-300 hover:shadow-2xl transition-all duration-300 h-full group">
<CardContent className="pt-8">
<div className="w-14 h-14 rounded-xl bg-gradient-to-br from-blue-500 to-purple-600 flex items-center justify-center mb-4 group-hover:scale-110 transition-transform shadow-md">
<div className="text-white">{advantage.icon}</div>
</div>
<h3 className="text-xl font-bold text-gray-900 mb-3 group-hover:text-blue-600 transition-colors">
{advantage.title}
</h3>
<p className="text-gray-600 leading-relaxed">
{advantage.description}
</p>
</CardContent>
</Card>
</motion.div>
))}
</div>
</div>
</section>
);
};
export default CRMAdvantages

View File

@@ -0,0 +1,75 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import { Button } from "@/components/ui/button";
import { BarChart3 } from "lucide-react";
import { crm } from "@/services/Constants";
const CRMAnalytics: React.FC = () => {
return (
<section className="py-20 px-4 bg-gradient-to-br from-purple-600 to-pink-600 text-white relative overflow-hidden">
<div className="absolute inset-0 bg-[url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjAiIGhlaWdodD0iNjAiIHZpZXdCb3g9IjAgMCA2MCA2MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxnIGZpbGw9IiNmZmZmZmYiIGZpbGwtb3BhY2l0eT0iMC4wNSI+PHBhdGggZD0iTTM2IDE4YzAtOS45NC04LjA2LTE4LTE4LTE4UzAgOC4wNiAwIDE4czguMDYgMTggMTggMTggMTgtOC4wNiAxOC0xOCIvPjwvZz48L2c+PC9zdmc+')] opacity-30"></div>
<div className="container mx-auto max-w-7xl relative z-10">
<motion.div
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
className="text-center mb-16"
>
<div className="w-16 h-16 mx-auto mb-6 rounded-2xl bg-gradient-to-br from-blue-400 to-purple-500 flex items-center justify-center shadow-2xl">
<BarChart3 className="w-8 h-8 text-white" />
</div>
<h2 className="text-4xl md:text-5xl font-bold mb-4">
CRM Analytics & Insights
</h2>
<p className="text-xl text-blue-100 max-w-3xl mx-auto">
Real-time customer and sales intelligence that helps you close more
deals and grow faster
</p>
</motion.div>
<div className="grid md:grid-cols-2 lg:grid-cols-4 gap-8">
{crm.ANALYTICS_STATS.map((stat, idx) => (
<motion.div
key={idx}
initial={{ opacity: 0, scale: 0.5 }}
whileInView={{ opacity: 1, scale: 1 }}
viewport={{ once: true }}
transition={{ delay: idx * 0.1, type: "spring" }}
className="text-center"
>
<div className="bg-white/10 backdrop-blur-lg rounded-2xl p-8 border border-white/20 hover:bg-white/20 transition-all duration-300 hover:scale-105">
<div className="text-6xl font-extrabold mb-3 bg-gradient-to-r from-blue-300 to-purple-300 text-blue-100 bg-clip-text ">
{stat.value}
</div>
<div className="text-blue-100 text-lg font-medium">
{stat.label}
</div>
</div>
</motion.div>
))}
</div>
<motion.div
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
className="mt-12 text-center"
>
<Button
size="lg"
className="bg-white text-blue-700 hover:bg-blue-50 text-lg px-8 py-6 shadow-xl"
>
<BarChart3 className="mr-2" /> View Full Analytics Dashboard
</Button>
</motion.div>
</div>
</section>
);
};
export default CRMAnalytics;

View File

@@ -0,0 +1,67 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import { Badge } from "@/components/ui/badge";
import {
Accordion,
AccordionContent,
AccordionItem,
AccordionTrigger,
} from "@/components/ui/accordion";
import { crm, hrms } from "@/services/Constants";
const FAQSection: React.FC = () => {
return (
<section className="py-20 px-4 bg-gradient-to-br from-gray-50 to-blue-50">
<div className="container mx-auto max-w-4xl">
<motion.div
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
className="text-center mb-16"
>
<Badge className="mb-4 bg-purple-100 text-purple-700 border-purple-200">
FAQ
</Badge>
<h2 className="text-4xl md:text-5xl font-bold text-gray-900 mb-4">
Frequently Asked{" "}
<span className="bg-gradient-to-r from-blue-600 to-purple-600 bg-clip-text text-transparent">
Questions
</span>
</h2>
<p className="text-xl text-gray-600">
Everything you need to know about our CRM Software
</p>
</motion.div>
<Accordion type="single" collapsible className="space-y-4">
{crm.CRM_FAQ.map((faq, idx) => (
<motion.div
key={idx}
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
transition={{ delay: idx * 0.1 }}
>
<AccordionItem
value={`item-${idx}`}
className="bg-white border-2 border-gray-100 rounded-xl px-6 hover:border-blue-300 transition-all shadow-sm hover:shadow-md"
>
<AccordionTrigger className="text-left hover:text-blue-600 text-lg font-semibold py-6">
{faq.question}
</AccordionTrigger>
<AccordionContent className="text-gray-600 text-base leading-relaxed pb-6">
{faq.answer}
</AccordionContent>
</AccordionItem>
</motion.div>
))}
</Accordion>
</div>
</section>
);
};
export default FAQSection

View File

@@ -0,0 +1,69 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import { Button } from "@/components/ui/button";
import { crm } from "@/services/Constants";
const FinalCTA: React.FC = () => {
return (
<section className="relative py-24 px-6 bg-gradient-to-r from-blue-600 via-purple-600 to-pink-600 text-white overflow-hidden">
{/* Animated Background Pattern */}
<motion.div
aria-hidden
className="absolute inset-0 opacity-20 pointer-events-none"
animate={{ scale: [1, 1.05, 1], opacity: [0.2, 0.35, 0.2] }}
transition={{ duration: 10, repeat: Infinity }}
style={{
backgroundImage:
"radial-gradient(circle at center, rgba(255,255,255,0.25) 0, transparent 60%)",
}}
/>
<div className="relative z-10 max-w-4xl mx-auto text-center">
{/* Title */}
<motion.h2
initial={{ opacity: 0, y: 25 }}
whileInView={{ opacity: 1, y: 0 }}
transition={{ duration: 0.7 }}
viewport={{ once: true }}
className="text-3xl md:text-4xl font-extrabold"
>
{crm.FINAL_CTA.title}
</motion.h2>
{/* Subtitle */}
<motion.p
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
transition={{ duration: 0.6, delay: 0.2 }}
viewport={{ once: true }}
className="text-lg mt-4 text-white/90 max-w-2xl mx-auto"
>
{crm.FINAL_CTA.subtitle}
</motion.p>
{/* CTA Button */}
<motion.div
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
transition={{ duration: 0.6, delay: 0.3 }}
viewport={{ once: true }}
className="mt-10"
>
<Button
size="lg"
className="px-10 py-6 text-lg font-semibold bg-white text-blue-700 hover:bg-gray-100 hover:scale-105 transition-all rounded-xl shadow-lg"
>
{crm.FINAL_CTA.ctaText}
</Button>
</motion.div>
</div>
</section>
);
};
export default FinalCTA

View File

@@ -0,0 +1,108 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import { Button } from "@/components/ui/button";
import { Badge } from "@/components/ui/badge";
import {
CheckCircle,
Download,
ArrowRight,
Sparkles,
UserCheck,
} from "lucide-react";
import { crm } from "@/services/Constants";
// Components
const CRMHero: React.FC = () => {
return (
<section className="relative py-24 px-4 overflow-hidden">
<div className="absolute inset-0 bg-gradient-to-br from-blue-50 via-white to-purple-50"></div>
<div className="absolute inset-0 bg-[url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjAiIGhlaWdodD0iNjAiIHZpZXdCb3g9IjAgMCA2MCA2MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxnIGZpbGw9IiM4YjViZjYiIGZpbGwtb3BhY2l0eT0iMC4wMyI+PHBhdGggZD0iTTM2IDE4YzAtOS45NC04LjA2LTE4LTE4LTE4UzAgOC4wNiAwIDE4czguMDYgMTggMTggMTggMTgtOC4wNiAxOC0xOCIvPjwvZz48L2c+PC9zdmc+')] opacity-40"></div>
<div className="container mx-auto max-w-7xl relative z-10">
<div className="grid lg:grid-cols-2 gap-12 items-center">
<motion.div
initial={{ opacity: 0, x: -30 }}
animate={{ opacity: 1, x: 0 }}
transition={{ duration: 0.8 }}
>
<Badge className="mb-6 bg-blue-100 text-blue-700 border-blue-200 px-4 py-2 hover:bg-blue-200">
<Sparkles className="w-4 h-4 inline mr-2" />
Next-Generation crm Platform
</Badge>
<h1 className="text-5xl md:text-6xl lg:text-6xl font-extrabold leading-tight text-gray-900 mb-6">
<span className="bg-gradient-to-r from-blue-600 via-purple-600 to-pink-600 bg-clip-text text-transparent">
A Powerful CRM
</span>
<br />
<span className="text-gray-900">to Manage Leads, Customers & Sales Growth</span>
</h1>
<p className="text-xl text-gray-600 mb-8 leading-relaxed">
{crm.hero.subtitle}
</p>
<div className="flex flex-col sm:flex-row gap-4">
<Button
size="lg"
className="bg-gradient-to-r from-blue-600 to-purple-600 hover:from-blue-700 hover:to-purple-700 text-lg px-8 py-6 shadow-lg hover:shadow-xl transition-all"
>
{crm.hero.ctaPrimary} <ArrowRight className="ml-2 w-5 h-5" />
</Button>
<Button
size="lg"
variant="outline"
className="border-2 border-gray-300 hover:border-blue-600 hover:bg-blue-50 text-gray-700 text-lg px-8 py-6"
>
<Download className="mr-2 w-5 h-5" /> {crm.hero.ctaSecondary}
</Button>
</div>
<div className="mt-8 flex items-center gap-6 text-sm text-gray-600">
<div className="flex items-center gap-2">
<CheckCircle className="w-5 h-5 text-green-600" />
<span>Free 14-day trial</span>
</div>
<div className="flex items-center gap-2">
<CheckCircle className="w-5 h-5 text-green-600" />
<span>No credit card required</span>
</div>
</div>
</motion.div>
<motion.div
initial={{ opacity: 0, x: 30 }}
animate={{ opacity: 1, x: 0 }}
transition={{ duration: 0.8, delay: 0.2 }}
className="relative"
>
<div className="relative">
<div className="absolute inset-0 bg-gradient-to-br from-blue-400 to-purple-600 rounded-3xl blur-2xl opacity-20"></div>
<img
src={crm.hero.heroImage}
alt="crm Dashboard"
className="relative rounded-3xl shadow-2xl w-full h-auto transform hover:scale-105 transition-transform duration-500"
/>
<div className="absolute -bottom-6 -right-6 bg-white rounded-2xl shadow-xl p-6 max-w-xs">
<div className="flex items-center gap-3">
<div className="w-12 h-12 bg-gradient-to-br from-green-400 to-emerald-600 rounded-xl flex items-center justify-center">
<UserCheck className="w-7 h-7 text-white" />
</div>
<div>
<div className="text-2xl font-bold text-gray-900">16K+</div>
<div className="text-sm text-gray-600">Active Users</div>
</div>
</div>
</div>
</div>
</motion.div>
</div>
</div>
</section>
);
};
export default CRMHero

View File

@@ -0,0 +1,73 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import {
Card,
CardDescription,
CardHeader,
CardTitle,
} from "@/components/ui/card";
import { Badge } from "@/components/ui/badge";
import { crm } from "@/services/Constants";
const ModulesOverview: React.FC = () => {
return (
<section className="py-20 px-4 bg-white">
<div className="container mx-auto max-w-7xl">
<motion.div
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
className="text-center mb-16"
>
<Badge className="mb-4 bg-purple-100 text-purple-700 border-purple-200">
Core CRM Features
</Badge>
<h2 className="text-4xl md:text-5xl font-bold text-gray-900 mb-4">
CRM{" "}
<span className="bg-gradient-to-r from-blue-600 to-purple-600 bg-clip-text text-transparent">
Modules Overview
</span>
</h2>
<p className="text-xl text-gray-600 max-w-3xl mx-auto">
Smart tools to manage leads, improve customer relationships, and
accelerate sales growth.
</p>
</motion.div>
<div className="grid md:grid-cols-2 lg:grid-cols-3 gap-8">
{crm.CRM_MODULES.map((module, idx) => (
<motion.div
key={idx}
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
transition={{ delay: idx * 0.1 }}
>
<Card className="bg-gradient-to-br from-white to-gray-50 border-2 border-gray-100 hover:border-blue-300 hover:shadow-xl transition-all duration-300 h-full group">
<CardHeader>
<div
className={`w-16 h-16 rounded-2xl bg-gradient-to-br ${module.color} flex items-center justify-center mb-4 group-hover:scale-110 transition-transform shadow-lg`}
>
<div className="text-white">{module.icon}</div>
</div>
<CardTitle className="text-2xl mb-3 text-gray-900 group-hover:text-blue-600 transition-colors">
{module.title}
</CardTitle>
<CardDescription className="text-gray-600 text-base leading-relaxed">
{module.description}
</CardDescription>
</CardHeader>
</Card>
</motion.div>
))}
</div>
</div>
</section>
);
};
export default ModulesOverview;

View File

@@ -0,0 +1,30 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import { crm, hrms } from "@/services/Constants";
const ValueProposition: React.FC = () => {
return (
<section className="py-20 px-4 bg-gradient-to-br from-gray-50 to-blue-50">
<div className="container mx-auto max-w-6xl">
<motion.div
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
className="text-center"
>
<h2 className="text-4xl md:text-5xl font-bold text-gray-900 mb-6">
{crm.VALUE_PROPOSITION.title}
</h2>
<p className="text-xl text-gray-600 max-w-4xl mx-auto leading-relaxed">
{crm.VALUE_PROPOSITION.description}
</p>
</motion.div>
</div>
</section>
);
};
export default ValueProposition

View File

@@ -0,0 +1,77 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import {
Card,
CardContent,
} from "@/components/ui/card";
import { Badge } from "@/components/ui/badge";
import {
ArrowRight,
} from "lucide-react";
import { crm } from "@/services/Constants";
const WorkflowProcess: React.FC = () => {
return (
<section className="py-24 px-4 bg-white">
<div className="container mx-auto max-w-7xl">
<motion.div
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
className="text-center mb-16"
>
<Badge className="mb-4 bg-green-100 text-green-700 border-green-200">
Simple Process
</Badge>
<h2 className="text-4xl md:text-5xl font-bold text-gray-900 mb-4">
How{" "}
<span className="bg-gradient-to-r from-blue-600 to-purple-600 bg-clip-text text-transparent">
CRM Works
</span>
</h2>
<p className="text-xl text-gray-600 max-w-3xl mx-auto">
Four simple steps to revolutionize your CRM Software
</p>
</motion.div>
<div className="grid md:grid-cols-2 lg:grid-cols-4 gap-6">
{crm.WORKFLOW_STEPS.map((step, idx) => (
<motion.div
key={idx}
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
transition={{ delay: idx * 0.15 }}
className="relative"
>
<Card className="bg-gradient-to-br from-gray-50 to-white border-2 border-gray-100 hover:border-blue-300 hover:shadow-xl transition-all duration-300 h-full">
<CardContent className="pt-8 text-center">
<div className="w-16 h-16 mx-auto mb-4 rounded-full bg-gradient-to-br from-blue-600 to-purple-600 flex items-center justify-center text-white text-2xl font-bold shadow-lg">
{step.step}
</div>
<h3 className="text-2xl font-bold text-gray-900 mb-3">
{step.title}
</h3>
<p className="text-gray-600 leading-relaxed">
{step.description}
</p>
</CardContent>
</Card>
{idx < crm.WORKFLOW_STEPS.length - 1 && (
<div className="hidden lg:block absolute top-1/2 -right-3 transform -translate-y-1/2 z-10">
<ArrowRight className="w-6 h-6 text-blue-400" />
</div>
)}
</motion.div>
))}
</div>
</div>
</section>
);
};
export default WorkflowProcess

26
app/(public)/crm/page.tsx Normal file
View File

@@ -0,0 +1,26 @@
import CRMAdvantages from "./_components/Advantages";
import FAQSection from "./_components/FAQ";
import FinalCTA from "./_components/FinalCTA";
import CRMHero from "./_components/Hero";
import CRMAnalytics from "./_components/CRMAnalytics";
import ModulesOverview from "./_components/Modules";
import ValueProposition from "./_components/Value";
import WorkflowProcess from "./_components/WorkFlow";
// Main ATS Page Component
const CRMPage: React.FC = () => {
return (
<div className="min-h-screen bg-white">
<CRMHero />
<ValueProposition />
<ModulesOverview />
<CRMAdvantages />
<WorkflowProcess />
<CRMAnalytics />
<FAQSection />
<FinalCTA />
</div>
);
};
export default CRMPage;

View File

@@ -0,0 +1,122 @@
"use client";
import { motion } from "framer-motion";
import {
Sparkles,
Layers,
BarChart3,
Users,
CheckCircle2,
ShieldCheck,
Workflow,
LineChart,
WorkflowIcon,
} from "lucide-react";
import { Button } from "@/components/ui/button";
const FEATURES_DATA = [
{
icon: Users,
title: "Smart Candidate Management",
description:
"Track candidates effortlessly with pipeline stages, auto tagging & resume parsing.",
},
{
icon: Layers,
title: "Unified ATS + CRM Platform",
description:
"Manage hiring, leads & clients under one powerful and connected workspace.",
},
{
icon: CheckCircle2,
title: "Automated Workflows",
description:
"Reduce manual tasks with automated approvals, reminders & email triggers.",
},
{
icon: WorkflowIcon,
title: "Task & Team Collaboration",
description:
"Assign tasks, manage roles, and collaborate with real-time updates.",
},
{
icon: ShieldCheck,
title: "Role-Based Access",
description:
"Secure & compliant access controls to protect sensitive data.",
},
{
icon: BarChart3,
title: "Analytics & Insights",
description:
"Get real-time dashboards for hiring performance and revenue growth.",
},
];
export default function FeaturesPage() {
return (
<main className="bg-white">
{/* HERO */}
<section className="py-24 text-center px-6 bg-gradient-to-b from-white to-blue-50">
<motion.h1
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
className="text-4xl md:text-6xl font-extrabold text-gray-900"
>
Powerful Features to Turbocharge Your{" "}
<span className="bg-gradient-to-r from-blue-600 to-purple-600 bg-clip-text text-transparent">
Hiring & CRM
</span>
</motion.h1>
<p className="mt-4 text-lg text-gray-600 max-w-2xl mx-auto">
Everything you need to streamline recruitment, manage clients and
scale your business all in one platform.
</p>
</section>
{/* FEATURE GRID */}
<section className="py-20 px-6 max-w-7xl mx-auto">
<motion.div
initial={{ opacity: 0 }}
whileInView={{ opacity: 1 }}
className="grid sm:grid-cols-2 lg:grid-cols-3 gap-10"
>
{FEATURES_DATA.map((feature, i) => (
<motion.div
key={i}
initial={{ opacity: 0, y: 30 }}
whileInView={{ opacity: 1, y: 0 }}
transition={{ delay: i * 0.1 }}
className="p-8 bg-white rounded-3xl border shadow-sm hover:shadow-xl transition-all duration-300 hover:-translate-y-2"
>
<div className="w-14 h-14 rounded-xl bg-gradient-to-br from-blue-500 to-purple-600 text-white flex items-center justify-center shadow-md mb-5">
<feature.icon className="w-7 h-7" />
</div>
<h3 className="text-xl font-semibold text-gray-900 mb-2">
{feature.title}
</h3>
<p className="text-gray-600">{feature.description}</p>
</motion.div>
))}
</motion.div>
</section>
{/* CTA STRIP */}
<section className="py-20 bg-gradient-to-r from-blue-700 to-purple-700 text-white text-center px-6">
<motion.h2
initial={{ opacity: 0, scale: 0.95 }}
whileInView={{ opacity: 1, scale: 1 }}
className="text-3xl md:text-4xl font-bold mb-4"
>
Experience The Future of Hiring & Client Management
</motion.h2>
<p className="text-lg max-w-2xl mx-auto opacity-90 mb-8">
Try Winixco now and transform the way your business grows.
</p>
<Button size="lg" className="text-lg bg-white text-blue-700 hover:bg-blue-100">
Book a Live Demo
</Button>
</section>
</main>
);
}

View File

@@ -0,0 +1,69 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import {
Card,
CardContent,
} from "@/components/ui/card";
import { Badge } from "@/components/ui/badge";
import { hrms } from "@/services/Constants";
const HRMSAdvantages: React.FC = () => {
return (
<section className="py-20 px-4 bg-gradient-to-br from-blue-50 via-purple-50 to-pink-50">
<div className="container mx-auto max-w-7xl">
<motion.div
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
className="text-center mb-16"
>
<Badge className="mb-4 bg-blue-100 text-blue-700 border-blue-200">
Why Choose Us
</Badge>
<h2 className="text-4xl md:text-5xl font-bold text-gray-900 mb-4">
Why Companies Choose{" "}
<span className="bg-gradient-to-r from-blue-600 to-purple-600 bg-clip-text text-transparent">
Our HRMS
</span>
</h2>
<p className="text-xl text-gray-600 max-w-3xl mx-auto">
Transform your HR operations with cutting-edge automation and
intelligence
</p>
</motion.div>
<div className="grid md:grid-cols-2 lg:grid-cols-3 gap-8">
{hrms.HRMS_ADVANTAGES.map((advantage, idx) => (
<motion.div
key={idx}
initial={{ opacity: 0, scale: 0.9 }}
whileInView={{ opacity: 1, scale: 1 }}
viewport={{ once: true }}
transition={{ delay: idx * 0.1 }}
>
<Card className="bg-white border-2 border-gray-100 hover:border-purple-300 hover:shadow-2xl transition-all duration-300 h-full group">
<CardContent className="pt-8">
<div className="w-14 h-14 rounded-xl bg-gradient-to-br from-blue-500 to-purple-600 flex items-center justify-center mb-4 group-hover:scale-110 transition-transform shadow-md">
<div className="text-white">{advantage.icon}</div>
</div>
<h3 className="text-xl font-bold text-gray-900 mb-3 group-hover:text-blue-600 transition-colors">
{advantage.title}
</h3>
<p className="text-gray-600 leading-relaxed">
{advantage.description}
</p>
</CardContent>
</Card>
</motion.div>
))}
</div>
</div>
</section>
);
};
export default HRMSAdvantages

View File

@@ -0,0 +1,67 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import { Badge } from "@/components/ui/badge";
import {
Accordion,
AccordionContent,
AccordionItem,
AccordionTrigger,
} from "@/components/ui/accordion";
import { hrms } from "@/services/Constants";
const FAQSection: React.FC = () => {
return (
<section className="py-20 px-4 bg-gradient-to-br from-gray-50 to-blue-50">
<div className="container mx-auto max-w-4xl">
<motion.div
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
className="text-center mb-16"
>
<Badge className="mb-4 bg-purple-100 text-purple-700 border-purple-200">
FAQ
</Badge>
<h2 className="text-4xl md:text-5xl font-bold text-gray-900 mb-4">
Frequently Asked{" "}
<span className="bg-gradient-to-r from-blue-600 to-purple-600 bg-clip-text text-transparent">
Questions
</span>
</h2>
<p className="text-xl text-gray-600">
Everything you need to know about our HRMS platform
</p>
</motion.div>
<Accordion type="single" collapsible className="space-y-4">
{hrms.HRMS_FAQ.map((faq, idx) => (
<motion.div
key={idx}
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
transition={{ delay: idx * 0.1 }}
>
<AccordionItem
value={`item-${idx}`}
className="bg-white border-2 border-gray-100 rounded-xl px-6 hover:border-blue-300 transition-all shadow-sm hover:shadow-md"
>
<AccordionTrigger className="text-left hover:text-blue-600 text-lg font-semibold py-6">
{faq.question}
</AccordionTrigger>
<AccordionContent className="text-gray-600 text-base leading-relaxed pb-6">
{faq.answer}
</AccordionContent>
</AccordionItem>
</motion.div>
))}
</Accordion>
</div>
</section>
);
};
export default FAQSection

View File

@@ -0,0 +1,69 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import { Button } from "@/components/ui/button";
import { hrms } from "@/services/Constants";
const FinalCTA: React.FC = () => {
return (
<section className="relative py-24 px-6 bg-gradient-to-r from-blue-600 via-purple-600 to-pink-600 text-white overflow-hidden">
{/* Animated Background Pattern */}
<motion.div
aria-hidden
className="absolute inset-0 opacity-20 pointer-events-none"
animate={{ scale: [1, 1.05, 1], opacity: [0.2, 0.35, 0.2] }}
transition={{ duration: 10, repeat: Infinity }}
style={{
backgroundImage:
"radial-gradient(circle at center, rgba(255,255,255,0.25) 0, transparent 60%)",
}}
/>
<div className="relative z-10 max-w-4xl mx-auto text-center">
{/* Title */}
<motion.h2
initial={{ opacity: 0, y: 25 }}
whileInView={{ opacity: 1, y: 0 }}
transition={{ duration: 0.7 }}
viewport={{ once: true }}
className="text-3xl md:text-4xl font-extrabold"
>
{hrms.FINAL_CTA.title}
</motion.h2>
{/* Subtitle */}
<motion.p
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
transition={{ duration: 0.6, delay: 0.2 }}
viewport={{ once: true }}
className="text-lg mt-4 text-white/90 max-w-2xl mx-auto"
>
{hrms.FINAL_CTA.subtitle}
</motion.p>
{/* CTA Button */}
<motion.div
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
transition={{ duration: 0.6, delay: 0.3 }}
viewport={{ once: true }}
className="mt-10"
>
<Button
size="lg"
className="px-10 py-6 text-lg font-semibold bg-white text-blue-700 hover:bg-gray-100 hover:scale-105 transition-all rounded-xl shadow-lg"
>
{hrms.FINAL_CTA.ctaText}
</Button>
</motion.div>
</div>
</section>
);
};
export default FinalCTA

View File

@@ -0,0 +1,77 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import { Button } from "@/components/ui/button";
import {
BarChart3,
} from "lucide-react";
import { hrms } from "@/services/Constants";
const HRAnalytics: React.FC = () => {
return (
<section className="py-20 px-4 bg-gradient-to-br from-purple-600 to-pink-600 text-white relative overflow-hidden">
<div className="absolute inset-0 bg-[url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjAiIGhlaWdodD0iNjAiIHZpZXdCb3g9IjAgMCA2MCA2MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxnIGZpbGw9IiNmZmZmZmYiIGZpbGwtb3BhY2l0eT0iMC4wNSI+PHBhdGggZD0iTTM2IDE4YzAtOS45NC04LjA2LTE4LTE4LTE4UzAgOC4wNiAwIDE4czguMDYgMTggMTggMTggMTgtOC4wNiAxOC0xOCIvPjwvZz48L2c+PC9zdmc+')] opacity-30"></div>
<div className="container mx-auto max-w-7xl relative z-10">
<motion.div
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
className="text-center mb-16"
>
<div className="w-16 h-16 mx-auto mb-6 rounded-2xl bg-gradient-to-br from-blue-400 to-purple-500 flex items-center justify-center shadow-2xl">
<BarChart3 className="w-8 h-8 text-white" />
</div>
<h2 className="text-4xl md:text-5xl font-bold mb-4">
HR Analytics & Insights
</h2>
<p className="text-xl text-blue-100 max-w-3xl mx-auto">
Real-time data that drives better HR decisions
</p>
</motion.div>
<div className="grid md:grid-cols-2 lg:grid-cols-4 gap-8">
{hrms.ANALYTICS_STATS.map((stat, idx) => (
<motion.div
key={idx}
initial={{ opacity: 0, scale: 0.5 }}
whileInView={{ opacity: 1, scale: 1 }}
viewport={{ once: true }}
transition={{ delay: idx * 0.1, type: "spring" }}
className="text-center"
>
<div className="bg-white/10 backdrop-blur-lg rounded-2xl p-8 border border-white/20 hover:bg-white/20 transition-all duration-300 hover:scale-105">
<div className="text-6xl font-extrabold mb-3 bg-gradient-to-r from-blue-300 to-purple-300 text-blue-100 bg-clip-text ">
{stat.value}
</div>
<div className="text-blue-100 text-lg font-medium">
{stat.label}
</div>
</div>
</motion.div>
))}
</div>
<motion.div
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
className="mt-12 text-center"
>
<Button
size="lg"
className="bg-white text-blue-700 hover:bg-blue-50 text-lg px-8 py-6 shadow-xl"
>
<BarChart3 className="mr-2" /> View Full Analytics Dashboard
</Button>
</motion.div>
</div>
</section>
);
};
export default HRAnalytics

View File

@@ -0,0 +1,108 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import { Button } from "@/components/ui/button";
import { Badge } from "@/components/ui/badge";
import {
CheckCircle,
Download,
ArrowRight,
Sparkles,
UserCheck,
} from "lucide-react";
import { hrms } from "@/services/Constants";
// Components
const HRMSHero: React.FC = () => {
return (
<section className="relative py-24 px-4 overflow-hidden">
<div className="absolute inset-0 bg-gradient-to-br from-blue-50 via-white to-purple-50"></div>
<div className="absolute inset-0 bg-[url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjAiIGhlaWdodD0iNjAiIHZpZXdCb3g9IjAgMCA2MCA2MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxnIGZpbGw9IiM4YjViZjYiIGZpbGwtb3BhY2l0eT0iMC4wMyI+PHBhdGggZD0iTTM2IDE4YzAtOS45NC04LjA2LTE4LTE4LTE4UzAgOC4wNiAwIDE4czguMDYgMTggMTggMTggMTgtOC4wNiAxOC0xOCIvPjwvZz48L2c+PC9zdmc+')] opacity-40"></div>
<div className="container mx-auto max-w-7xl relative z-10">
<div className="grid lg:grid-cols-2 gap-12 items-center">
<motion.div
initial={{ opacity: 0, x: -30 }}
animate={{ opacity: 1, x: 0 }}
transition={{ duration: 0.8 }}
>
<Badge className="mb-6 bg-blue-100 text-blue-700 border-blue-200 px-4 py-2 hover:bg-blue-200">
<Sparkles className="w-4 h-4 inline mr-2" />
Next-Generation HRMS Platform
</Badge>
<h1 className="text-5xl md:text-6xl lg:text-7xl font-extrabold leading-tight text-gray-900 mb-6">
<span className="bg-gradient-to-r from-blue-600 via-purple-600 to-pink-600 bg-clip-text text-transparent">
Modern HRMS
</span>
<br />
<span className="text-gray-900">Designed for Tomorrow</span>
</h1>
<p className="text-xl text-gray-600 mb-8 leading-relaxed">
{hrms.hero.subtitle}
</p>
<div className="flex flex-col sm:flex-row gap-4">
<Button
size="lg"
className="bg-gradient-to-r from-blue-600 to-purple-600 hover:from-blue-700 hover:to-purple-700 text-lg px-8 py-6 shadow-lg hover:shadow-xl transition-all"
>
{hrms.hero.ctaPrimary} <ArrowRight className="ml-2 w-5 h-5" />
</Button>
<Button
size="lg"
variant="outline"
className="border-2 border-gray-300 hover:border-blue-600 hover:bg-blue-50 text-gray-700 text-lg px-8 py-6"
>
<Download className="mr-2 w-5 h-5" /> {hrms.hero.ctaSecondary}
</Button>
</div>
<div className="mt-8 flex items-center gap-6 text-sm text-gray-600">
<div className="flex items-center gap-2">
<CheckCircle className="w-5 h-5 text-green-600" />
<span>Free 14-day trial</span>
</div>
<div className="flex items-center gap-2">
<CheckCircle className="w-5 h-5 text-green-600" />
<span>No credit card required</span>
</div>
</div>
</motion.div>
<motion.div
initial={{ opacity: 0, x: 30 }}
animate={{ opacity: 1, x: 0 }}
transition={{ duration: 0.8, delay: 0.2 }}
className="relative"
>
<div className="relative">
<div className="absolute inset-0 bg-gradient-to-br from-blue-400 to-purple-600 rounded-3xl blur-2xl opacity-20"></div>
<img
src={hrms.hero.heroImage}
alt="HRMS Dashboard"
className="relative rounded-3xl shadow-2xl w-full h-auto transform hover:scale-105 transition-transform duration-500"
/>
<div className="absolute -bottom-6 -right-6 bg-white rounded-2xl shadow-xl p-6 max-w-xs">
<div className="flex items-center gap-3">
<div className="w-12 h-12 bg-gradient-to-br from-green-400 to-emerald-600 rounded-xl flex items-center justify-center">
<UserCheck className="w-7 h-7 text-white" />
</div>
<div>
<div className="text-2xl font-bold text-gray-900">10K+</div>
<div className="text-sm text-gray-600">Active Users</div>
</div>
</div>
</div>
</div>
</motion.div>
</div>
</div>
</section>
);
};
export default HRMSHero

View File

@@ -0,0 +1,73 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import {
Card,
CardDescription,
CardHeader,
CardTitle,
} from "@/components/ui/card";
import { Badge } from "@/components/ui/badge";
import { hrms } from "@/services/Constants";
const ModulesOverview: React.FC = () => {
return (
<section className="py-20 px-4 bg-white">
<div className="container mx-auto max-w-7xl">
<motion.div
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
className="text-center mb-16"
>
<Badge className="mb-4 bg-purple-100 text-purple-700 border-purple-200">
Core Modules
</Badge>
<h2 className="text-4xl md:text-5xl font-bold text-gray-900 mb-4">
HRMS{" "}
<span className="bg-gradient-to-r from-blue-600 to-purple-600 bg-clip-text text-transparent">
Modules Overview
</span>
</h2>
<p className="text-xl text-gray-600 max-w-3xl mx-auto">
Comprehensive HR management tools to streamline every aspect of your
workforce operations
</p>
</motion.div>
<div className="grid md:grid-cols-2 lg:grid-cols-3 gap-8">
{hrms.HRMS_MODULES.map((module, idx) => (
<motion.div
key={idx}
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
transition={{ delay: idx * 0.1 }}
>
<Card className="bg-gradient-to-br from-white to-gray-50 border-2 border-gray-100 hover:border-blue-300 hover:shadow-xl transition-all duration-300 h-full group">
<CardHeader>
<div
className={`w-16 h-16 rounded-2xl bg-gradient-to-br ${module.color} flex items-center justify-center mb-4 group-hover:scale-110 transition-transform shadow-lg`}
>
<div className="text-white">{module.icon}</div>
</div>
<CardTitle className="text-2xl mb-3 text-gray-900 group-hover:text-blue-600 transition-colors">
{module.title}
</CardTitle>
<CardDescription className="text-gray-600 text-base leading-relaxed">
{module.description}
</CardDescription>
</CardHeader>
</Card>
</motion.div>
))}
</div>
</div>
</section>
);
};
export default ModulesOverview

View File

@@ -0,0 +1,30 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import { hrms } from "@/services/Constants";
const ValueProposition: React.FC = () => {
return (
<section className="py-20 px-4 bg-gradient-to-br from-gray-50 to-blue-50">
<div className="container mx-auto max-w-6xl">
<motion.div
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
className="text-center"
>
<h2 className="text-4xl md:text-5xl font-bold text-gray-900 mb-6">
{hrms.VALUE_PROPOSITION.title}
</h2>
<p className="text-xl text-gray-600 max-w-4xl mx-auto leading-relaxed">
{hrms.VALUE_PROPOSITION.description}
</p>
</motion.div>
</div>
</section>
);
};
export default ValueProposition

View File

@@ -0,0 +1,77 @@
"use client";
import React from "react";
import { motion } from "framer-motion";
import {
Card,
CardContent,
} from "@/components/ui/card";
import { Badge } from "@/components/ui/badge";
import {
ArrowRight,
} from "lucide-react";
import { hrms } from "@/services/Constants";
const WorkflowProcess: React.FC = () => {
return (
<section className="py-24 px-4 bg-white">
<div className="container mx-auto max-w-7xl">
<motion.div
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
className="text-center mb-16"
>
<Badge className="mb-4 bg-green-100 text-green-700 border-green-200">
Simple Process
</Badge>
<h2 className="text-4xl md:text-5xl font-bold text-gray-900 mb-4">
How{" "}
<span className="bg-gradient-to-r from-blue-600 to-purple-600 bg-clip-text text-transparent">
HRMS Works
</span>
</h2>
<p className="text-xl text-gray-600 max-w-3xl mx-auto">
Four simple steps to revolutionize your HR management
</p>
</motion.div>
<div className="grid md:grid-cols-2 lg:grid-cols-4 gap-6">
{hrms.WORKFLOW_STEPS.map((step, idx) => (
<motion.div
key={idx}
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
viewport={{ once: true }}
transition={{ delay: idx * 0.15 }}
className="relative"
>
<Card className="bg-gradient-to-br from-gray-50 to-white border-2 border-gray-100 hover:border-blue-300 hover:shadow-xl transition-all duration-300 h-full">
<CardContent className="pt-8 text-center">
<div className="w-16 h-16 mx-auto mb-4 rounded-full bg-gradient-to-br from-blue-600 to-purple-600 flex items-center justify-center text-white text-2xl font-bold shadow-lg">
{step.step}
</div>
<h3 className="text-2xl font-bold text-gray-900 mb-3">
{step.title}
</h3>
<p className="text-gray-600 leading-relaxed">
{step.description}
</p>
</CardContent>
</Card>
{idx < hrms.WORKFLOW_STEPS.length - 1 && (
<div className="hidden lg:block absolute top-1/2 -right-3 transform -translate-y-1/2 z-10">
<ArrowRight className="w-6 h-6 text-blue-400" />
</div>
)}
</motion.div>
))}
</div>
</div>
</section>
);
};
export default WorkflowProcess

View File

@@ -0,0 +1,26 @@
import HRMSAdvantages from "./_components/Advantages";
import FAQSection from "./_components/FAQ";
import FinalCTA from "./_components/FinalCTA";
import HRMSHero from "./_components/Hero";
import HRAnalytics from "./_components/HRAnalytics";
import ModulesOverview from "./_components/Modules";
import ValueProposition from "./_components/Value";
import WorkflowProcess from "./_components/WorkFlow";
// Main ATS Page Component
const HRMSPage: React.FC = () => {
return (
<div className="min-h-screen bg-white">
<HRMSHero />
<ValueProposition />
<ModulesOverview />
<HRMSAdvantages />
<WorkflowProcess />
<HRAnalytics />
<FAQSection />
<FinalCTA />
</div>
);
};
export default HRMSPage;

View File

@@ -10,6 +10,8 @@ import Pricing from "./_homeComponents/Pricing";
import FAQ from "./_homeComponents/FAQ"; import FAQ from "./_homeComponents/FAQ";
import CTA from "./_homeComponents/CTA"; import CTA from "./_homeComponents/CTA";
import AboutUs from "./_homeComponents/About"; import AboutUs from "./_homeComponents/About";
import ModulesSection from "./_homeComponents/Modules";
import HowItWorks from "./_homeComponents/HowItWorks";
export default function Page() { export default function Page() {
return ( return (
@@ -18,9 +20,11 @@ export default function Page() {
<CompanySlider /> <CompanySlider />
<Features /> <Features />
<AboutUs /> <AboutUs />
<ModulesSection />
<Benefits /> <Benefits />
<Testimonials /> <Testimonials />
<Pricing /> <Pricing />
<HowItWorks />
<FAQ /> <FAQ />
<CTA /> <CTA />
</div> </div>

202
ats.html Normal file
View File

@@ -0,0 +1,202 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Applicant Tracking System - Winixco</title>
<script src="https://cdn.tailwindcss.com"></script>
</head>
<body class="bg-gray-50 text-gray-800">
<!-- HERO SECTION -->
<section class="py-24 bg-gradient-to-br from-blue-600 to-blue-800 text-white">
<div class="max-w-6xl mx-auto px-6 text-center">
<h1 class="text-5xl font-extrabold leading-tight">Modern Applicant Tracking System</h1>
<p class="mt-4 text-lg opacity-90">
Streamline hiring, automate workflows, and find qualified candidates faster with our AI-powered ATS.
</p>
<a href="#demo"
class="mt-6 inline-block bg-white text-blue-700 font-semibold px-8 py-3 rounded-full shadow hover:bg-gray-100 transition">
Book a Free Demo
</a>
</div>
</section>
<!-- MODULE OVERVIEW -->
<section class="py-20">
<div class="max-w-6xl mx-auto px-6">
<h2 class="text-3xl font-bold text-gray-900 text-center">What This ATS Gives You</h2>
<p class="mt-4 text-center text-gray-600 max-w-3xl mx-auto">
Winixco ATS helps recruiters and HR teams manage job openings, track applicants,
collaborate with hiring managers, and automate end-to-end hiring workflows.
</p>
<div class="grid md:grid-cols-3 gap-8 mt-12">
<div class="p-6 bg-white shadow rounded-3xl">
<h3 class="font-semibold text-xl">AI-Powered Hiring</h3>
<p class="mt-2 text-gray-600">Save time with automated resume parsing and smart matching.</p>
</div>
<div class="p-6 bg-white shadow rounded-3xl">
<h3 class="font-semibold text-xl">Centralized Database</h3>
<p class="mt-2 text-gray-600">Store, manage, and search candidates effortlessly.</p>
</div>
<div class="p-6 bg-white shadow rounded-3xl">
<h3 class="font-semibold text-xl">Real-time Collaboration</h3>
<p class="mt-2 text-gray-600">Share feedback and updates across your recruitment team.</p>
</div>
</div>
</div>
</section>
<!-- KEY POINTS -->
<section class="py-20 bg-gray-100">
<div class="max-w-6xl mx-auto px-6">
<h2 class="text-3xl font-bold text-gray-900 text-center">Why Companies Choose Winixco ATS</h2>
<div class="grid md:grid-cols-2 gap-10 mt-12">
<div class="space-y-4">
<div class="flex gap-4 items-start">
<span class="text-blue-600 text-2xl"></span>
<p>Reduce manual hiring work by up to 70% with automation.</p>
</div>
<div class="flex gap-4 items-start">
<span class="text-blue-600 text-2xl"></span>
<p>Get highly accurate candidate matches using AI.</p>
</div>
<div class="flex gap-4 items-start">
<span class="text-blue-600 text-2xl"></span>
<p>Collaborate effectively using notes, stages, and scoring.</p>
</div>
</div>
<div class="space-y-4">
<div class="flex gap-4 items-start">
<span class="text-blue-600 text-2xl"></span>
<p>Built for teams, agencies, and growing companies.</p>
</div>
<div class="flex gap-4 items-start">
<span class="text-blue-600 text-2xl"></span>
<p>Fast, clean, secure, and mobile-friendly UI.</p>
</div>
<div class="flex gap-4 items-start">
<span class="text-blue-600 text-2xl"></span>
<p>Powerful reporting & analytics dashboards.</p>
</div>
</div>
</div>
</div>
</section>
<!-- CORE FEATURES -->
<section class="py-20">
<div class="max-w-6xl mx-auto px-6">
<h2 class="text-3xl font-bold text-gray-900 text-center">Core Features & Benefits</h2>
<div class="grid md:grid-cols-3 gap-10 mt-14">
<div class="p-6 bg-white shadow rounded-3xl">
<h3 class="font-semibold text-xl">🤖 AI Resume Parsing</h3>
<p class="text-gray-600 mt-2">Extract skills, experience, job titles & contact details automatically.</p>
</div>
<div class="p-6 bg-white shadow rounded-3xl">
<h3 class="font-semibold text-xl">📂 Pipeline Stages</h3>
<p class="text-gray-600 mt-2">Move candidates across New → Shortlisted → Interview → Selected.</p>
</div>
<div class="p-6 bg-white shadow rounded-3xl">
<h3 class="font-semibold text-xl">👥 Team Collaboration</h3>
<p class="text-gray-600 mt-2">Share candidate updates, feedback, notes, and evaluations.</p>
</div>
<div class="p-6 bg-white shadow rounded-3xl">
<h3 class="font-semibold text-xl">⚙️ Workflow Automation</h3>
<p class="text-gray-600 mt-2">Automate follow-ups, reminders, and status updates.</p>
</div>
<div class="p-6 bg-white shadow rounded-3xl">
<h3 class="font-semibold text-xl">📩 Email + WhatsApp</h3>
<p class="text-gray-600 mt-2">Send messages directly to candidates from one dashboard.</p>
</div>
<div class="p-6 bg-white shadow rounded-3xl">
<h3 class="font-semibold text-xl">📊 Analytics & Reports</h3>
<p class="text-gray-600 mt-2">Track hiring performance, job efficiency, and recruiter KPIs.</p>
</div>
</div>
</div>
</section>
<!-- HOW IT WORKS -->
<section class="py-20 bg-gray-100">
<div class="max-w-6xl mx-auto px-6">
<h2 class="text-3xl font-bold text-gray-900 text-center">How It Works</h2>
<div class="grid md:grid-cols-4 gap-8 mt-14">
<div class="text-center p-6 bg-white shadow rounded-3xl">
<div class="text-4xl">1</div>
<h3 class="font-semibold mt-3">Create Job</h3>
<p class="text-gray-600 mt-2">Post job with required skills & description.</p>
</div>
<div class="text-center p-6 bg-white shadow rounded-3xl">
<div class="text-4xl">2</div>
<h3 class="font-semibold mt-3">Collect Candidates</h3>
<p class="text-gray-600 mt-2">Upload CVs or get direct applications.</p>
</div>
<div class="text-center p-6 bg-white shadow rounded-3xl">
<div class="text-4xl">3</div>
<h3 class="font-semibold mt-3">Shortlist & Interview</h3>
<p class="text-gray-600 mt-2">Move through stages and collect feedback.</p>
</div>
<div class="text-center p-6 bg-white shadow rounded-3xl">
<div class="text-4xl">4</div>
<h3 class="font-semibold mt-3">Hire & Close</h3>
<p class="text-gray-600 mt-2">Select the best candidate and close the job.</p>
</div>
</div>
</div>
</section>
<!-- FAQ -->
<section class="py-20">
<div class="max-w-4xl mx-auto px-6">
<h2 class="text-3xl font-bold text-gray-900 text-center">Frequently Asked Questions</h2>
<div class="mt-12 space-y-6">
<details class="p-6 bg-white shadow rounded-xl">
<summary class="font-semibold text-lg cursor-pointer">What is an ATS?</summary>
<p class="mt-3 text-gray-600">An Applicant Tracking System helps organizations manage hiring end-to-end.</p>
</details>
<details class="p-6 bg-white shadow rounded-xl">
<summary class="font-semibold text-lg cursor-pointer">Can I use this ATS for multiple companies?</summary>
<p class="mt-3 text-gray-600">Yes, if you enable multi-company access for agencies or franchises.</p>
</details>
<details class="p-6 bg-white shadow rounded-xl">
<summary class="font-semibold text-lg cursor-pointer">Does it support email and WhatsApp?</summary>
<p class="mt-3 text-gray-600">Yes, you can communicate directly with candidates from the dashboard.</p>
</details>
<details class="p-6 bg-white shadow rounded-xl">
<summary class="font-semibold text-lg cursor-pointer">Is resume parsing automatic?</summary>
<p class="mt-3 text-gray-600">Yes, uploaded CVs are auto-scanned and structured into candidate profiles.</p>
</details>
</div>
</div>
</section>
</body>
</html>

236
crp.html Normal file
View File

@@ -0,0 +1,236 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>CRM Winixco</title>
<script src="https://cdn.tailwindcss.com"></script>
</head>
<body class="bg-gray-50 text-gray-900">
<!-- HERO -->
<section class="py-24 bg-white">
<div class="max-w-6xl mx-auto px-6 grid md:grid-cols-2 gap-12 items-center">
<div>
<h1 class="text-4xl md:text-5xl font-extrabold leading-tight">
A Powerful CRM to Manage Leads, Customers & Sales Growth
</h1>
<p class="mt-6 text-lg text-gray-600">
Track leads, manage pipelines, automate follow-ups, handle customer communication and close deals faster — all from one smart CRM system.
</p>
<div class="mt-10 flex gap-4">
<a href="#" class="bg-blue-600 text-white px-8 py-3 rounded-xl text-lg font-semibold hover:bg-blue-700">
Book a Demo
</a>
<a href="#" class="border border-gray-400 px-8 py-3 rounded-xl text-lg font-semibold hover:border-black">
View Pricing
</a>
</div>
</div>
<div>
<img src="https://images.unsplash.com/photo-1560264280-88b68371db39"
class="rounded-2xl shadow-xl">
</div>
</div>
</section>
<!-- VALUE PROPOSITION -->
<section class="py-20 bg-gray-50">
<div class="max-w-6xl mx-auto px-6 text-center">
<h2 class="text-3xl md:text-4xl font-bold">Your Entire Customer Journey in One Dashboard</h2>
<p class="mt-4 text-gray-600 max-w-3xl mx-auto">
Automate lead capturing, follow-ups, sales tracking, and team collaboration with a CRM designed to scale with your business.
</p>
</div>
</section>
<!-- MODULES OVERVIEW -->
<section class="py-20 bg-white">
<div class="max-w-6xl mx-auto px-6">
<h3 class="text-2xl md:text-3xl font-bold mb-12">CRM Modules Overview</h3>
<div class="grid md:grid-cols-3 gap-8">
<div class="p-8 bg-gray-50 rounded-2xl hover:bg-gray-100 transition">
<h4 class="text-xl font-semibold mb-2">Lead Management</h4>
<p class="text-gray-600">Capture, tag, assign and track leads from multiple sources.</p>
</div>
<div class="p-8 bg-gray-50 rounded-2xl hover:bg-gray-100 transition">
<h4 class="text-xl font-semibold mb-2">Sales Pipeline</h4>
<p class="text-gray-600">Move leads through deal stages like New, Follow-up, Meeting, Closed.</p>
</div>
<div class="p-8 bg-gray-50 rounded-2xl hover:bg-gray-100 transition">
<h4 class="text-xl font-semibold mb-2">Customer Database</h4>
<p class="text-gray-600">Store all client profiles, communication history, files & notes.</p>
</div>
<div class="p-8 bg-gray-50 rounded-2xl hover:bg-gray-100 transition">
<h4 class="text-xl font-semibold mb-2">Task & Follow-ups</h4>
<p class="text-gray-600">Automated reminders for calls, meetings and follow-ups.</p>
</div>
<div class="p-8 bg-gray-50 rounded-2xl hover:bg-gray-100 transition">
<h4 class="text-xl font-semibold mb-2">Quotation & Invoicing</h4>
<p class="text-gray-600">Generate proposals, estimates, and invoices instantly.</p>
</div>
<div class="p-8 bg-gray-50 rounded-2xl hover:bg-gray-100 transition">
<h4 class="text-xl font-semibold mb-2">Reports & Analytics</h4>
<p class="text-gray-600">Sales performance, lead sources, activity logs & revenue forecasting.</p>
</div>
</div>
</div>
</section>
<!-- ADVANTAGES -->
<section class="py-20 bg-blue-50">
<div class="max-w-6xl mx-auto px-6">
<h3 class="text-center text-3xl font-bold mb-12">Why Businesses Choose Our CRM</h3>
<div class="grid md:grid-cols-2 lg:grid-cols-3 gap-10">
<div class="p-6 bg-white rounded-2xl shadow">
<h4 class="text-xl font-semibold">Close Deals Faster</h4>
<p class="mt-2 text-gray-600">Structured pipelines ensure no lead is lost or ignored.</p>
</div>
<div class="p-6 bg-white rounded-2xl shadow">
<h4 class="text-xl font-semibold">Better Customer Engagement</h4>
<p class="mt-2 text-gray-600">Track every call, meeting, email & WhatsApp message.</p>
</div>
<div class="p-6 bg-white rounded-2xl shadow">
<h4 class="text-xl font-semibold">Improve Team Productivity</h4>
<p class="mt-2 text-gray-600">Assign tasks and monitor sales team performance.</p>
</div>
<div class="p-6 bg-white rounded-2xl shadow">
<h4 class="text-xl font-semibold">360° Customer View</h4>
<p class="mt-2 text-gray-600">One place for deals, notes, documents & communication.</p>
</div>
<div class="p-6 bg-white rounded-2xl shadow">
<h4 class="text-xl font-semibold">Reduce Manual Work</h4>
<p class="mt-2 text-gray-600">Auto reminders, follow-ups, email sending & workflow automation.</p>
</div>
<div class="p-6 bg-white rounded-2xl shadow">
<h4 class="text-xl font-semibold">Data-Driven Sales Decisions</h4>
<p class="mt-2 text-gray-600">Track KPIs, conversion rates & revenue progress.</p>
</div>
</div>
</div>
</section>
<!-- PROCESS / FLOW -->
<section class="py-24 bg-white">
<div class="max-w-6xl mx-auto px-6">
<h3 class="text-3xl font-bold text-center mb-14">How CRM Helps You Manage Customers</h3>
<div class="grid md:grid-cols-4 gap-6 text-center">
<div class="p-6 bg-gray-50 rounded-xl">
<h4 class="font-bold text-xl mb-2">1. Capture</h4>
<p class="text-gray-600">Collect leads from website, WhatsApp, social media, calls & ads.</p>
</div>
<div class="p-6 bg-gray-50 rounded-xl">
<h4 class="font-bold text-xl mb-2">2. Qualify</h4>
<p class="text-gray-600">Assign leads, add tags, score and filter prospects.</p>
</div>
<div class="p-6 bg-gray-50 rounded-xl">
<h4 class="font-bold text-xl mb-2">3. Engage</h4>
<p class="text-gray-600">Send proposals, schedule meetings & track follow-ups.</p>
</div>
<div class="p-6 bg-gray-50 rounded-xl">
<h4 class="font-bold text-xl mb-2">4. Close</h4>
<p class="text-gray-600">Close deals, generate invoices & manage customers.</p>
</div>
</div>
</div>
</section>
<!-- ANALYTICS -->
<section class="py-20 bg-gray-900 text-white">
<div class="max-w-6xl mx-auto px-6">
<h3 class="text-3xl font-bold text-center mb-12">CRM Performance Insights</h3>
<div class="grid md:grid-cols-4 gap-8 text-center">
<div>
<h4 class="text-4xl font-bold">70%</h4>
<p class="text-gray-300 mt-1">Faster Lead Response</p>
</div>
<div>
<h4 class="text-4xl font-bold">50%</h4>
<p class="text-gray-300 mt-1">Increase in Productivity</p>
</div>
<div>
<h4 class="text-4xl font-bold">2x</h4>
<p class="text-gray-300 mt-1">More Deal Closures</p>
</div>
<div>
<h4 class="text-4xl font-bold">90%</h4>
<p class="text-gray-300 mt-1">Better Customer Retention</p>
</div>
</div>
</div>
</section>
<!-- FAQ -->
<section class="py-20 bg-gray-50">
<div class="max-w-4xl mx-auto px-6">
<h3 class="text-3xl font-bold text-center mb-10">FAQs About Our CRM</h3>
<div class="space-y-6">
<details class="p-6 bg-white rounded-xl shadow">
<summary class="text-lg font-semibold cursor-pointer">Who is this CRM built for?</summary>
<p class="mt-3 text-gray-600">Agencies, software companies, real estate, education, medical, retail & service businesses.</p>
</details>
<details class="p-6 bg-white rounded-xl shadow">
<summary class="text-lg font-semibold cursor-pointer">Can I integrate WhatsApp & Email?</summary>
<p class="mt-3 text-gray-600">Yes, automated follow-ups, email templates & WhatsApp API supported.</p>
</details>
<details class="p-6 bg-white rounded-xl shadow">
<summary class="text-lg font-semibold cursor-pointer">Can I track sales team performance?</summary>
<p class="mt-3 text-gray-600">Yes, with activity logs, deal tracking & team reporting.</p>
</details>
</div>
</div>
</section>
<!-- CTA -->
<section class="py-20 bg-gradient-to-r from-blue-600 to-blue-700 text-white text-center">
<div class="max-w-4xl mx-auto px-6">
<h2 class="text-3xl md:text-4xl font-bold mb-6">Ready to Grow Your Business with CRM?</h2>
<p class="text-blue-100 text-lg mb-10">Start managing your customers and sales pipeline like a pro.</p>
<a href="#" class="bg-white text-blue-700 px-10 py-3 rounded-xl font-semibold shadow hover:shadow-lg">
Book a Demo
</a>
</div>
</section>
</body>
</html>

View File

@@ -7,6 +7,10 @@ const nextConfig: NextConfig = {
protocol: "https", protocol: "https",
hostname: "www.alucoildesign.com", hostname: "www.alucoildesign.com",
}, },
{
protocol: "https",
hostname: "images.unsplash.com",
},
{ {
protocol: "https", protocol: "https",
hostname: "lh3.googleusercontent.com", hostname: "lh3.googleusercontent.com",

File diff suppressed because it is too large Load Diff

View File

@@ -1,4 +0,0 @@
// utils/slugify.ts
export const slugifyJob = (id: string, title: string) => {
return `${id}-${title.toLowerCase().replace(/\s+/g, "-").replace(/\//g, "-")}`;
};