21 Commits

Author SHA1 Message Date
5fe97165e6 Update src/app/page.tsx 2026-05-08 18:53:16 +00:00
29083ed278 Merge version_6 into main
Merge version_6 into main
2026-05-08 18:52:09 +00:00
437a881d64 Update theme colors 2026-05-08 18:52:06 +00:00
a30e7819f9 Merge version_5 into main
Merge version_5 into main
2026-05-08 18:50:30 +00:00
72ec4a6cae Update src/app/page.tsx 2026-05-08 18:50:27 +00:00
8a1d347648 Merge version_5 into main
Merge version_5 into main
2026-05-08 18:50:05 +00:00
ba328a4383 Update src/app/page.tsx 2026-05-08 18:50:02 +00:00
643a73b076 Merge version_4 into main
Merge version_4 into main
2026-05-08 18:48:28 +00:00
c2de0e417f Update src/app/page.tsx 2026-05-08 18:48:25 +00:00
9c9ed0e126 Merge version_3 into main
Merge version_3 into main
2026-05-08 18:46:01 +00:00
8b068a0f50 Update src/app/vso-upload/page.tsx 2026-05-08 18:45:58 +00:00
11449a1edd Merge version_2 into main
Merge version_2 into main
2026-05-08 18:43:06 +00:00
576f6ef2bf Update src/app/vso-upload/page.tsx 2026-05-08 18:43:03 +00:00
ada35d32e4 Update src/app/page.tsx 2026-05-08 18:43:03 +00:00
316eb956c0 Merge version_2 into main
Merge version_2 into main
2026-05-08 18:42:37 +00:00
17c7d4a7d9 Add src/app/vso-upload/page.tsx 2026-05-08 18:42:34 +00:00
338f2121f9 Update src/app/styles/variables.css 2026-05-08 18:42:33 +00:00
1afde0ba22 Update src/app/page.tsx 2026-05-08 18:42:33 +00:00
7047470a24 Merge version_1 into main
Merge version_1 into main
2026-05-08 18:36:06 +00:00
9d37ece9fe Merge version_1 into main
Merge version_1 into main
2026-05-08 18:35:42 +00:00
99b3806ddf Merge version_1 into main
Merge version_1 into main
2026-05-08 18:35:15 +00:00
3 changed files with 126 additions and 113 deletions

View File

@@ -2,10 +2,10 @@
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import ContactSplitForm from '@/components/sections/contact/ContactSplitForm';
import FaqSplitText from '@/components/sections/faq/FaqSplitText';
import ContactCenter from '@/components/sections/contact/ContactCenter';
import FaqDouble from '@/components/sections/faq/FaqDouble';
import FeatureCardSix from '@/components/sections/feature/FeatureCardSix';
import FooterBaseCard from '@/components/sections/footer/FooterBaseCard';
import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis';
import HeroOverlayTestimonial from '@/components/sections/hero/HeroOverlayTestimonial';
import NavbarStyleFullscreen from '@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen';
import PricingCardOne from '@/components/sections/pricing/PricingCardOne';
@@ -31,7 +31,6 @@ export default function LandingPage() {
<NavbarStyleFullscreen
navItems={[
{ name: "Home", id: "hero" },
{ name: "Over ons", id: "about" },
{ name: "Tarief", id: "pricing" },
{ name: "Contact", id: "contact" },
]}
@@ -43,122 +42,52 @@ export default function LandingPage() {
<HeroOverlayTestimonial
title="Laat je VSO controleren door arbeidsrecht juristen"
description="Een VSO kan grote gevolgen hebben voor je WW-rechten, vergoeding en toekomst. Voor €399,99 weet je binnen 24 uur waar je op moet letten en waar mogelijk nog winst te behalen valt. Voorkom dat je te snel tekent."
testimonials={[
{ name: "Sarah", handle: "@sarah", testimonial: "Zeer deskundig advies gekregen over mijn VSO.", rating: 5, imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=kmc9e0" },
{ name: "Mark", handle: "@mark", testimonial: "Binnen 24 uur een volledig rapport in handen.", rating: 5, imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=ormt4d" },
{ name: "Emma", handle: "@emma", testimonial: "Duidelijke uitleg en goede onderhandelingstips.", rating: 5, imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=ymgwl9" },
{ name: "David", handle: "@david", testimonial: "Professioneel, snel en zeer betrouwbaar.", rating: 5, imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=xx38jl" },
{ name: "Sophie", handle: "@sophie", testimonial: "Heeft me enorm geholpen met mijn ontslagregeling.", rating: 5, imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=67sig2" }
]}
buttons={[{ text: "Start mijn VSO-controle", href: "/vso-upload" }]}
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3DRLqekDrDgj7cwgtaTSZZ1Xtzm/professional-lawyer-workspace-with-a-leg-1778265275322-d0f181ab.png?_wi=1"
avatars={[
{ src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3DRLqekDrDgj7cwgtaTSZZ1Xtzm/professional-lawyer-workspace-with-a-leg-1778265275322-d0f181ab.png", alt: "Sarah" },
{ src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3DRLqekDrDgj7cwgtaTSZZ1Xtzm/team-of-professional-employment-law-juri-1778265285450-d91fc9bf.png", alt: "Mark" },
{ src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3DRLqekDrDgj7cwgtaTSZZ1Xtzm/person-reviewing-a-contract-with-a-pen-i-1778265293919-177c8824.png", alt: "Emma" },
{ src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=kmc9e0", alt: "David" },
{ src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=ormt4d", alt: "Sophie" }
]}
avatarText="Vertrouwd door 500+ professionals"
testimonials={[]}
/>
</div>
<div id="about" data-section="about">
<TextAbout
useInvertedBackground={false}
title="Juridische expertise bij jouw ontslag"
/>
</div>
<div id="features" data-section="features">
<FeatureCardSix
textboxLayout="default"
useInvertedBackground={false}
features={[
{ title: "Deskundig team", description: "Juristen met uitgebreide ervaring in het arbeidsrecht staan voor je klaar.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3DRLqekDrDgj7cwgtaTSZZ1Xtzm/team-of-professional-employment-law-juri-1778265285450-d91fc9bf.png", imageAlt: "Jurist team" },
{ title: "Snelheid", description: "Binnen 24 uur ontvang je onze bevindingen, aandachtspunten en winstkansen.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3DRLqekDrDgj7cwgtaTSZZ1Xtzm/professional-lawyer-workspace-with-a-leg-1778265275322-d0f181ab.png?_wi=2", imageAlt: "Snelheid" },
{ title: "Transparant", description: "Wij werken met duidelijke afspraken en een vaste prijs, zonder verrassingen.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3DRLqekDrDgj7cwgtaTSZZ1Xtzm/person-reviewing-a-contract-with-a-pen-i-1778265293919-177c8824.png?_wi=1", imageAlt: "Transparantie" }
]}
title="Waarom kiezen voor VSO Controle?"
description="Voorkom dat je te snel tekent. Laat je VSO eerst controleren door juristen met ervaring in het arbeidsrecht."
/>
</div>
<div id="pricing" data-section="pricing">
<PricingCardOne
animationType="depth-3d"
textboxLayout="default"
useInvertedBackground={false}
plans={[
{
id: "standard", badge: "Populair", price: "€399,99", subtitle: "Volledige VSO controle binnen 24 uur", features: ["Volledige controle van je VSO", "Bevindingen binnen 24 uur", "Check op WW-risicos", "Check op einddatum en opzegtermijn", "Check op transitievergoeding", "Check op vakantiedagen", "Check op concurrentiebeding", "Check op finale kwijting", "Praktische uitleg in gewone taal", "Onderhandelingsruimte indicatie"]
}
]}
title="VSO Controle — €399,99"
description="Laat je vaststellingsovereenkomst controleren door juristen met ervaring in het arbeidsrecht. Binnen 24 uur ontvang je onze bevindingen, aandachtspunten en waar mogelijk winst te behalen valt."
buttons={[{ text: "Start mijn VSO-controle", href: "/vso-upload" }]}
/>
</div>
<div id="testimonials" data-section="testimonials">
<TestimonialCardSixteen
animationType="slide-up"
textboxLayout="default"
useInvertedBackground={false}
testimonials={[
{ id: "1", name: "Sarah", role: "Marketing", company: "GrowthCo", rating: 5, imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=ppugbe" },
{ id: "2", name: "Mark", role: "IT", company: "TechLab", rating: 5, imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=hm68zn" },
{ id: "3", name: "Emma", role: "Sales", company: "BusinessInc", rating: 5, imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=62fn3x" },
{ id: "4", name: "David", role: "Design", company: "ArtStudio", rating: 5, imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=76v8od" },
{ id: "5", name: "Sophie", role: "Finance", company: "MoneyCorp", rating: 5, imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=19q1l9" }
]}
kpiItems={[
{ value: "100%", label: "Transparant" },
{ value: "24u", label: "Snelle service" },
{ value: "Expert", label: "Arbeidsrecht" }
]}
title="Wat klanten over ons zeggen"
description="Betrouwbare juridische ondersteuning op maat."
/>
</div>
<div id="about" data-section="about"><TextAbout title="Juridische expertise bij jouw ontslag" useInvertedBackground={false} /></div>
<div id="features" data-section="features"><FeatureCardSix textboxLayout="default" title="Waarom kiezen voor VSO Controle?" description="Voorkom dat je te snel tekent." features={[]} useInvertedBackground={false} /></div>
<div id="pricing" data-section="pricing"><PricingCardOne animationType="depth-3d" textboxLayout="default" plans={[]} title="VSO Controle" description="Kies je pakket." useInvertedBackground={false} /></div>
<div id="testimonials" data-section="testimonials"><TestimonialCardSixteen animationType="slide-up" textboxLayout="default" useInvertedBackground={false} title="Klantverhalen" description="Wat anderen zeggen." testimonials={[]} kpiItems={[{value:"100%", label:"Success"},{value:"24u", label:"Snelheid"},{value:"Expert", label:"Kennis"}]} /></div>
<div id="faq" data-section="faq">
<FaqSplitText
useInvertedBackground={false}
<FaqDouble
useInvertedBackground={false}
faqs={[
{ id: "q1", title: "Wat gebeurt er als ik mijn VSO upload?", content: "Onze juristen beoordelen jouw VSO direct en sturen je binnen 24 uur de bevindingen toe." },
{ id: "q2", title: "Kan ik de factuur declareren?", content: "Vaak is dit mogelijk. Wij bieden een duidelijke factuur die je kunt overleggen aan je werkgever als juridische kosten." },
{ id: "q3", title: "Is mijn data veilig?", content: "Wij gaan uiterst vertrouwelijk om met jouw persoonlijke documenten." }
]}
sideTitle="Veelgestelde vragen"
faqsAnimation="slide-up"
{ id: "1", title: "Wat is een VSO?", content: "Een VSO is een vaststellingsovereenkomst waarin de afspraken over je ontslag worden vastgelegd." },
{ id: "2", title: "Waarom laten controleren?", content: "Wij controleren of je vergoeding optimaal is en of je recht op WW behouden blijft." },
{ id: "3", title: "Hoe lang duurt het?", content: "Je krijgt binnen 24 uur na uploaden van je document een uitgebreide controle terug." }
]}
title="Veelgestelde vragen"
description="Hier vind je antwoorden op de meest gestelde vragen over onze controle service."
faqsAnimation="slide-up"
textboxLayout="default"
/>
</div>
<div id="contact" data-section="contact">
<ContactSplitForm
useInvertedBackground={false}
title="Direct contact opnemen"
description="Heb je vragen of wil je direct geholpen worden?"
inputs={[
{ name: "name", type: "text", placeholder: "Je naam", required: true },
{ name: "email", type: "email", placeholder: "E-mailadres", required: true }
]}
textarea={{ name: "message", placeholder: "Stel hier je vraag", rows: 4, required: true }}
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3DRLqekDrDgj7cwgtaTSZZ1Xtzm/person-reviewing-a-contract-with-a-pen-i-1778265293919-177c8824.png?_wi=2"
<ContactCenter
tag="Contact"
title="Heb je nog vragen?"
description="Laat hier je gegevens achter en wij nemen zo snel mogelijk contact met je op."
background={{ variant: 'radial-gradient' }}
useInvertedBackground={true}
/>
</div>
<div id="footer" data-section="footer">
<FooterBaseCard
<FooterLogoEmphasis
logoText="VSO Controle"
columns={[
{ title: "Diensten", items: [{ label: "VSO Controle", href: "#pricing" }] },
{ title: "Legal", items: [{ label: "Privacy Policy", href: "#" }, { label: "Terms of Use", href: "#" }] }
{
items: [
{ label: "Over ons", href: "/over" },
{ label: "Contact", href: "/contact" },
{ label: "Privacy", href: "/privacy" }
]
}
]}
/>
</div>
</ReactLenis>
</ThemeProvider>
);
}
}

View File

@@ -10,15 +10,15 @@
--accent: #ffffff;
--background-accent: #ffffff; */
--background: #f7f6f7;
--card: #ffffff;
--foreground: #0c1325;
--primary-cta: #0b07ff;
--primary-cta-text: #f7f6f7;
--secondary-cta: #ffffff;
--secondary-cta-text: #0c1325;
--accent: #93b7ff;
--background-accent: #a8bae8;
--background: #ffffff;
--card: #f9f9f9;
--foreground: #000f06e6;
--primary-cta: #0a7039;
--primary-cta-text: #ffffff;
--secondary-cta: #f9f9f9;
--secondary-cta-text: #000f06e6;
--accent: #e2e2e2;
--background-accent: #c4c4c4;
/* text sizing - set by ThemeProvider */
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);

View File

@@ -0,0 +1,84 @@
"use client";
import { useState } from 'react';
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ButtonHoverMagnetic from "@/components/button/ButtonHoverMagnetic/ButtonHoverMagnetic";
export default function VsoUploadPage() {
const [step, setStep] = useState(1);
const [isSubmitted, setIsSubmitted] = useState(false);
const steps = [
"Persoonlijke gegevens", "Gegevens werkgever", "Salaris en arbeidsvoorwaarden",
"Reden van beëindiging", "Ziekte en arbeidsongeschiktheid", "De voorgestelde VSO",
"Wat wil jij bereiken", "Upload documenten", "Controle en akkoord"
];
const handleSubmit = () => {
setIsSubmitted(true);
};
const themeProps = {
defaultButtonVariant: "bounce-effect" as const,
defaultTextAnimation: "entrance-slide" as const,
borderRadius: "rounded" as const,
contentWidth: "medium" as const,
sizing: "medium" as const,
background: "circleGradient" as const,
cardStyle: "glass-elevated" as const,
primaryButtonStyle: "gradient" as const,
secondaryButtonStyle: "glass" as const,
headingFontWeight: "normal" as const,
};
if (isSubmitted) {
return (
<ThemeProvider {...themeProps}>
<div className="min-h-screen flex items-center justify-center p-8">
<div className="max-w-md text-center">
<h1 className="text-3xl font-bold mb-4">Bedankt!</h1>
<p>Je aanvraag is verzonden. We nemen binnen 24 uur contact met je op.</p>
</div>
</div>
</ThemeProvider>
);
}
return (
<ThemeProvider {...themeProps}>
<div className="max-w-3xl mx-auto py-20 px-6">
<div className="mb-8">
<div className="h-2 bg-gray-200 rounded-full">
<div className="h-2 bg-primary-cta rounded-full" style={{ width: `${(step / steps.length) * 100}%` }}></div>
</div>
<p className="mt-2 text-sm">Stap {step} van {steps.length}: {steps[step - 1]}</p>
</div>
<div className="bg-card p-8 rounded-lg">
<h2 className="text-2xl mb-6">{steps[step - 1]}</h2>
<div className="space-y-4">
{step === 8 ? (
<div className="p-6 border-2 border-dashed border-accent rounded-lg text-center">
<p className="mb-2 font-medium">Upload je documenten</p>
<p className="text-sm text-foreground/70 mb-4">
Je kunt hier de vaststellingsovereenkomst, loonstroken, arbeidsovereenkomst en andere relevante documenten uploaden.
</p>
<input type="file" multiple className="w-full p-3 border rounded" />
</div>
) : (
<input className="w-full p-3 border rounded" placeholder="Vul hier je gegevens in..." />
)}
</div>
<div className="mt-8 flex gap-4">
{step > 1 && <ButtonHoverMagnetic text="Vorige" onClick={() => setStep(step - 1)} />}
{step < steps.length ? (
<ButtonHoverMagnetic text="Volgende" onClick={() => setStep(step + 1)} />
) : (
<ButtonHoverMagnetic text="Versturen" onClick={handleSubmit} />
)}
</div>
</div>
</div>
</ThemeProvider>
);
}