Merge version_13 into main #13

Merged
bender merged 6 commits from version_13 into main 2026-04-28 21:46:29 +00:00
6 changed files with 151 additions and 96 deletions

25
src/app/kontakt/page.tsx Normal file
View File

@@ -0,0 +1,25 @@
"use client";
import ReactLenis from "lenis/react";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarStyleApple from "@/components/navbar/NavbarStyleApple/NavbarStyleApple";
import ContactSplitForm from "@/components/sections/contact/ContactSplitForm";
import FooterBase from "@/components/sections/footer/FooterBase";
export default function KontaktPage() {
return (
<ThemeProvider defaultButtonVariant="text-stagger" defaultTextAnimation="entrance-slide" borderRadius="rounded" contentWidth="medium" sizing="medium" background="circleGradient" cardStyle="glass-elevated" primaryButtonStyle="gradient" secondaryButtonStyle="glass" headingFontWeight="normal">
<ReactLenis root>
<NavbarStyleApple brandName="BOLEBA" navItems={[{ name: "Start", id: "/" }, { name: "Teppichreinigung", id: "/teppichreinigung" }, { name: "Polsterreinigung", id: "/polsterreinigung" }, { name: "Maschinenvermietung", id: "/maschinenvermietung" }, { name: "Kontakt", id: "/kontakt" }]} />
<ContactSplitForm
title="Kontaktieren Sie uns"
description="Wir freuen uns auf Ihre Anfrage."
inputs={[{ name: "name", type: "text", placeholder: "Name", required: true }, { name: "email", type: "email", placeholder: "E-Mail", required: true }]}
textarea={{ name: "message", placeholder: "Beschreiben Sie Ihr Anliegen" }}
useInvertedBackground={false}
/>
<FooterBase logoText="BOLEBA" columns={[{ title: "Navigation", items: [{ label: "Startseite", href: "/" }] }]} />
</ReactLenis>
</ThemeProvider>
);
}

View File

@@ -0,0 +1,29 @@
"use client";
import ReactLenis from "lenis/react";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarStyleApple from "@/components/navbar/NavbarStyleApple/NavbarStyleApple";
import PricingCardOne from "@/components/sections/pricing/PricingCardOne";
import FooterBase from "@/components/sections/footer/FooterBase";
export default function MaschinenvermietungPage() {
return (
<ThemeProvider defaultButtonVariant="text-stagger" defaultTextAnimation="entrance-slide" borderRadius="rounded" contentWidth="medium" sizing="medium" background="circleGradient" cardStyle="glass-elevated" primaryButtonStyle="gradient" secondaryButtonStyle="glass" headingFontWeight="normal">
<ReactLenis root>
<NavbarStyleApple brandName="BOLEBA" navItems={[{ name: "Start", id: "/" }, { name: "Teppichreinigung", id: "/teppichreinigung" }, { name: "Polsterreinigung", id: "/polsterreinigung" }, { name: "Maschinenvermietung", id: "/maschinenvermietung" }, { name: "Kontakt", id: "/kontakt" }]} />
<PricingCardOne
title="Maschinenvermietung"
description="Profigeräte einfach tageweise mieten."
plans={[
{ id: "tagesmiete", badge: "Standard", price: "CHF 49/Tag", subtitle: "Reinigungsmaschine", features: ["Inklusive Anleitung", "Einfache Bedienung"] },
{ id: "wochenende", badge: "Weekend", price: "CHF 89/Weekend", subtitle: "Fr-Mo Angebot", features: ["Günstiger Wochenendtarif", "Inklusive 1L Reinigungsmittel"] },
]}
animationType="slide-up"
textboxLayout="default"
useInvertedBackground={false}
/>
<FooterBase logoText="BOLEBA" columns={[{ title: "Navigation", items: [{ label: "Startseite", href: "/" }, { label: "Kontakt", href: "/kontakt" }] }]} />
</ReactLenis>
</ThemeProvider>
);
}

View File

@@ -12,7 +12,7 @@ import FaqDouble from "@/components/sections/faq/FaqDouble";
import FeatureCardTen from "@/components/sections/feature/FeatureCardTen";
import ContactSplitForm from "@/components/sections/contact/ContactSplitForm";
import FooterBase from "@/components/sections/footer/FooterBase";
import { Sparkles, Truck, Languages, Award, Phone, Star, ShieldCheck } from "lucide-react";
import { Sparkles, Truck, Award, Phone, Star, ShieldCheck } from "lucide-react";
export default function BolebaPage() {
return (
@@ -22,11 +22,11 @@ export default function BolebaPage() {
<NavbarStyleApple
brandName="BOLEBA"
navItems={[
{ name: "Startseite", id: "hero" },
{ name: "Leistungen", id: "services" },
{ name: "Über uns", id: "about" },
{ name: "Erfolge", id: "metrics" },
{ name: "Kontakt", id: "contact" },
{ name: "Startseite", id: "/" },
{ name: "Teppichreinigung", id: "/teppichreinigung" },
{ name: "Polsterreinigung", id: "/polsterreinigung" },
{ name: "Maschinenvermietung", id: "/maschinenvermietung" },
{ name: "Kontakt", id: "/kontakt" },
]}
/>
</div>
@@ -38,7 +38,7 @@ export default function BolebaPage() {
description="Wir machen es Ihnen einfach: Wir holen Ihre Orientteppiche und Polstermöbel kostenlos ab (ab CHF 400) bequemer geht Teppichreinigung in der Schweiz nicht."
background={{ variant: "plain" }}
buttons={[
{ text: "Jetzt Offerte anfragen", href: "#contact" },
{ text: "Jetzt Offerte anfragen", href: "/kontakt" },
{ text: "0800 265 322 — Gratis anrufen", href: "tel:0800265322" },
]}
imageSrc="http://img.b2bpic.net/free-photo/water-drop-texture-background-blue-design_53876-142875.jpg"
@@ -73,7 +73,7 @@ export default function BolebaPage() {
features={[
{ title: "Teppichreinigung", description: "Schonende Reinigung von Orientteppichen und Perserteppichen.", imageSrc: "http://img.b2bpic.net/free-photo/side-view-people-cleaning-building_23-2150454497.jpg" },
{ title: "Polsterreinigung", description: "Professionelle Reinigung Ihrer Sofas und Sessel.", imageSrc: "http://img.b2bpic.net/free-photo/barista-prepares-coffee-coffee-holder-gloved-hands_1157-47296.jpg" },
{ title: "Teppichlagerung", description: "Sichere, klimagerechte Lagerung.", imageSrc: "http://img.b2bpic.net/free-photo/young-man-moving-new-home_23-2149242114.jpg" },
{ title: "Maschinenvermietung", description: "Profigeräte zur Eigenreinigung mieten.", imageSrc: "http://img.b2bpic.net/free-photo/young-man-moving-new-home_23-2149242114.jpg" },
]}
gridVariant="three-columns-all-equal-width"
animationType="slide-up"
@@ -82,97 +82,12 @@ export default function BolebaPage() {
/>
</div>
<div id="metrics" data-section="metrics">
<MetricCardEleven
title="Von Basel in die ganze Schweiz."
description="Ab CHF 400 Auftragswert holen wir Ihre Teppiche kostenlos ab."
metrics={[
{ id: "1", value: "30", title: "Jahre Erfahrung", description: "Seit 1997 in Basel.", imageSrc: "http://img.b2bpic.net/free-photo/office-supplies-black-table_171337-13072.jpg" },
{ id: "2", value: "5", title: "Sprachen", description: "DE, EN, FR, IT, ES.", imageSrc: "http://img.b2bpic.net/free-photo/business-people-meeting-conference-seminar-sharing-strategy-concept_53876-13741.jpg" },
{ id: "3", value: "100%", title: "Service", description: "Ganze Schweiz abgedeckt.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=1wideh" },
]}
animationType="slide-up"
textboxLayout="default"
useInvertedBackground={false}
/>
</div>
<div id="process" data-section="process">
<FeatureCardTen
title="Kostenloser Abholservice"
description="So einfach bringen Sie Ihren Teppich zu uns."
features={[
{
title: "Schritt für Schritt", description: "Ihr Teppich ist bei uns in besten Händen.", media: { imageSrc: "http://img.b2bpic.net/free-vector/parcel-icons-collection_1284-580.jpg" },
items: [
{ icon: Phone, text: "Sie rufen an oder senden eine Anfrage" },
{ icon: Truck, text: "Wir holen Ihren Teppich direkt ab" },
{ icon: Sparkles, text: "Fachgerecht gereinigt zurück" }
],
reverse: false
}
]}
animationType="slide-up"
textboxLayout="split"
useInvertedBackground={false}
/>
</div>
<div id="testimonials" data-section="testimonials">
<TestimonialCardOne
title="Was unsere Kunden sagen."
description="Erfahrung zählt. Überzeugen Sie sich selbst."
testimonials={[
{ id: "1", name: "Maria K.", role: "Kundin", company: "Basel", rating: 5 },
{ id: "2", name: "Thomas B.", role: "Kunde", company: "Zürich", rating: 5 },
{ id: "3", name: "Sarah M.", role: "Kundin", company: "Luzern", rating: 5 },
]}
gridVariant="three-columns-all-equal-width"
animationType="slide-up"
textboxLayout="default"
useInvertedBackground={false}
/>
</div>
<div id="faq" data-section="faq">
<FaqDouble
title="Häufige Fragen"
description="Antworten auf Ihre Anliegen rund um die Reinigung."
faqs={[
{ id: "1", title: "Wie funktioniert der Abholservice?", content: "Wir vereinbaren einen Termin, holen Ihren Teppich ab und liefern ihn sauber zurück." },
{ id: "2", title: "Welche Teppiche reinigen Sie?", content: "Wir reinigen alle Arten, von Orient bis Modern." },
{ id: "3", title: "Wie lange dauert die Reinigung?", content: "In der Regel 3-7 Werktage nach Erhalt des Teppichs." },
{ id: "4", title: "Gibt es einen Mindestbestellwert für die kostenlose Abholung?", content: "Ja, wir bieten die kostenlose Abholung ab einem Auftragswert von CHF 400 an. Kleinere Aufträge können gerne nach Terminvereinbarung bei uns vorbeigebracht werden." },
{ id: "5", title: "Was kosten Ihre Dienstleistungen?", content: "Unsere Preise richten sich nach Art, Grösse und Verschmutzungsgrad Ihres Teppichs. Typische Standardreinigungen starten ab CHF 29 pro Quadratmeter. Für eine verbindliche Offerte kontaktieren Sie uns bitte kurz wir erstellen Ihnen gerne ein individuelles Angebot." }
]}
faqsAnimation="slide-up"
textboxLayout="split"
useInvertedBackground={false}
/>
</div>
<div id="contact" data-section="contact">
<ContactSplitForm
title="Erhalten Sie jetzt eine unverbindliche Offerte"
description="Wir beraten Sie gerne unverbindlich. Füllen Sie einfach das Formular aus."
inputs={[
{ name: "name", type: "text", placeholder: "Name", required: true },
{ name: "email", type: "email", placeholder: "E-Mail", required: true },
{ name: "phone", type: "tel", placeholder: "Telefonnummer" },
]}
textarea={{ name: "message", placeholder: "Beschreiben Sie Ihr Anliegen..." }}
buttonText="Anfrage senden"
imageSrc="http://img.b2bpic.net/free-photo/joyful-young-blonde-call-centre-girl-wearing-headset-sitting-desk-with-work-tools-looking-side-showing-thumbs-up-isolated-pink-wall_141793-113253.jpg"
useInvertedBackground={false}
/>
</div>
<div id="footer" data-section="footer">
<FooterBase
logoText="BOLEBA G. POLONI"
columns={[
{ title: "Services", items: [{ label: "Teppichreinigung", href: "#services" }, { label: "Polsterreinigung", href: "#services" }] },
{ title: "Kontakt", items: [{ label: "0800 265 322", href: "tel:0800265322" }, { label: "Basel", href: "#" }] },
{ title: "Services", items: [{ label: "Teppichreinigung", href: "/teppichreinigung" }, { label: "Polsterreinigung", href: "/polsterreinigung" }, { label: "Maschinenvermietung", href: "/maschinenvermietung" }] },
{ title: "Kontakt", items: [{ label: "0800 265 322", href: "tel:0800265322" }, { label: "Kontaktformular", href: "/kontakt" }] },
{ title: "Info", items: [{ label: "Datenschutz", href: "#" }, { label: "Impressum", href: "#" }] },
]}
/>
@@ -180,4 +95,4 @@ export default function BolebaPage() {
</ReactLenis>
</ThemeProvider>
);
}
}

View File

@@ -0,0 +1,29 @@
"use client";
import ReactLenis from "lenis/react";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarStyleApple from "@/components/navbar/NavbarStyleApple/NavbarStyleApple";
import PricingCardOne from "@/components/sections/pricing/PricingCardOne";
import FooterBase from "@/components/sections/footer/FooterBase";
export default function PolsterreinigungPage() {
return (
<ThemeProvider defaultButtonVariant="text-stagger" defaultTextAnimation="entrance-slide" borderRadius="rounded" contentWidth="medium" sizing="medium" background="circleGradient" cardStyle="glass-elevated" primaryButtonStyle="gradient" secondaryButtonStyle="glass" headingFontWeight="normal">
<ReactLenis root>
<NavbarStyleApple brandName="BOLEBA" navItems={[{ name: "Start", id: "/" }, { name: "Teppichreinigung", id: "/teppichreinigung" }, { name: "Polsterreinigung", id: "/polsterreinigung" }, { name: "Maschinenvermietung", id: "/maschinenvermietung" }, { name: "Kontakt", id: "/kontakt" }]} />
<PricingCardOne
title="Polsterreinigung Preisliste"
description="Ihr Sofa strahlt wieder wie neu."
plans={[
{ id: "sessel", badge: "Small", price: "CHF 80", subtitle: "Sessel", features: ["Fleckenbehandlung", "Tiefenreinigung"] },
{ id: "sofa", badge: "Medium", price: "CHF 180", subtitle: "Standard Sofa", features: ["Fleckenbehandlung", "Geruchsentfernung", "Schutzimprägnierung"] },
]}
animationType="slide-up"
textboxLayout="default"
useInvertedBackground={false}
/>
<FooterBase logoText="BOLEBA" columns={[{ title: "Navigation", items: [{ label: "Startseite", href: "/" }, { label: "Kontakt", href: "/kontakt" }] }]} />
</ReactLenis>
</ThemeProvider>
);
}

View File

@@ -0,0 +1,28 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarStyleApple from "@/components/navbar/NavbarStyleApple/NavbarStyleApple";
import FooterBase from "@/components/sections/footer/FooterBase";
import ContactSplitForm from "@/components/sections/contact/ContactSplitForm";
export default function Teppichlagerung() {
return (
<ThemeProvider>
<NavbarStyleApple brandName="BOLEBA" navItems={[{ name: "Start", id: "/" }, { name: "Teppichreinigung", id: "/teppichreinigung" }, { name: "Polsterreinigung", id: "/polsterreinigung" }, { name: "Teppichlagerung", id: "/teppichlagerung" }]} />
<main className="pt-24">
<div className="container mx-auto px-4">
<h1 className="text-4xl font-bold mb-6">Sichere Teppichlagerung</h1>
<p className="text-lg mb-8">Für Umzüge, Renovierungen oder saisonale Wechsel bieten wir Ihnen eine klimagerechte und sichere Lagerung Ihrer Teppiche.</p>
<h2 className="text-2xl font-semibold mb-4">Lagerbedingungen</h2>
<ul className="list-disc pl-6 mb-8">
<li>Temperaturkontrollierte Räume</li>
<li>Schutz vor Feuchtigkeit und Schädlingen</li>
<li>Versicherte Einlagerung</li>
</ul>
</div>
<ContactSplitForm title="Platzbedarf für Ihre Teppiche?" description="Wir lagern Ihre wertvollen Stücke sicher ein." inputs={[{ name: "name", type: "text", placeholder: "Name" }, { name: "email", type: "email", placeholder: "E-Mail" }]} />
</main>
<FooterBase logoText="BOLEBA" columns={[]} />
</ThemeProvider>
);
}

View File

@@ -0,0 +1,29 @@
"use client";
import ReactLenis from "lenis/react";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarStyleApple from "@/components/navbar/NavbarStyleApple/NavbarStyleApple";
import PricingCardOne from "@/components/sections/pricing/PricingCardOne";
import FooterBase from "@/components/sections/footer/FooterBase";
export default function TeppichreinigungPage() {
return (
<ThemeProvider defaultButtonVariant="text-stagger" defaultTextAnimation="entrance-slide" borderRadius="rounded" contentWidth="medium" sizing="medium" background="circleGradient" cardStyle="glass-elevated" primaryButtonStyle="gradient" secondaryButtonStyle="glass" headingFontWeight="normal">
<ReactLenis root>
<NavbarStyleApple brandName="BOLEBA" navItems={[{ name: "Start", id: "/" }, { name: "Teppichreinigung", id: "/teppichreinigung" }, { name: "Polsterreinigung", id: "/polsterreinigung" }, { name: "Maschinenvermietung", id: "/maschinenvermietung" }, { name: "Kontakt", id: "/kontakt" }]} />
<PricingCardOne
title="Teppichreinigung Preisliste"
description="Transparente Preise für höchste Qualität."
plans={[
{ id: "standard", badge: "Basis", price: "CHF 29/m²", subtitle: "Standard Teppiche", features: ["Entstaubung", "Tiefenreinigung", "Gratis-Abholung ab CHF 400"] },
{ id: "orient", badge: "Premium", price: "CHF 45/m²", subtitle: "Orient- & Seidenteppiche", features: ["Handwäsche", "Wollschutz", "Gratis-Abholung ab CHF 400"] },
]}
animationType="slide-up"
textboxLayout="default"
useInvertedBackground={false}
/>
<FooterBase logoText="BOLEBA" columns={[{ title: "Navigation", items: [{ label: "Startseite", href: "/" }, { label: "Kontakt", href: "/kontakt" }] }]} />
</ReactLenis>
</ThemeProvider>
);
}