Compare commits

..

44 Commits

Author SHA1 Message Date
bcb9515753 Update src/app/page.tsx 2026-05-02 19:04:58 +00:00
d63953448c Merge version_21 into main
Merge version_21 into main
2026-05-02 19:02:57 +00:00
9882f0276b Update src/app/page.tsx 2026-05-02 19:02:54 +00:00
de93359051 Merge version_20 into main
Merge version_20 into main
2026-05-02 19:01:21 +00:00
90694af9ea Update src/app/page.tsx 2026-05-02 19:01:18 +00:00
1514bc3599 Merge version_19 into main
Merge version_19 into main
2026-05-02 19:00:31 +00:00
3d22ad47f0 Update src/app/page.tsx 2026-05-02 19:00:28 +00:00
b373f48028 Merge version_18 into main
Merge version_18 into main
2026-05-02 18:58:33 +00:00
e8ecfd2988 Update src/app/page.tsx 2026-05-02 18:58:30 +00:00
28e683f0f3 Merge version_17 into main
Merge version_17 into main
2026-05-02 18:53:31 +00:00
969533d115 Update src/app/page.tsx 2026-05-02 18:53:28 +00:00
52b69f0157 Merge version_16 into main
Merge version_16 into main
2026-05-02 18:52:48 +00:00
dca0bf015e Update src/app/page.tsx 2026-05-02 18:52:45 +00:00
20038b26a6 Merge version_15 into main
Merge version_15 into main
2026-05-02 18:51:45 +00:00
bd656bc1d3 Update src/app/page.tsx 2026-05-02 18:51:42 +00:00
2dac677689 Merge version_15 into main
Merge version_15 into main
2026-05-02 18:51:21 +00:00
f2bd401278 Update src/app/page.tsx 2026-05-02 18:51:18 +00:00
e9331e2c7e Merge version_14 into main
Merge version_14 into main
2026-05-02 18:49:55 +00:00
45c20e9f18 Update src/app/page.tsx 2026-05-02 18:49:52 +00:00
044131bebb Merge version_13 into main
Merge version_13 into main
2026-05-02 18:48:56 +00:00
f907b52f23 Update src/app/page.tsx 2026-05-02 18:48:53 +00:00
bd925705ee Merge version_12 into main
Merge version_12 into main
2026-05-02 18:48:03 +00:00
db8b9bed12 Update src/app/page.tsx 2026-05-02 18:48:00 +00:00
68a4ab133a Merge version_11 into main
Merge version_11 into main
2026-05-02 18:47:01 +00:00
dbcae34ffe Update src/app/page.tsx 2026-05-02 18:46:58 +00:00
6b36b1ea5a Merge version_10 into main
Merge version_10 into main
2026-05-02 18:46:14 +00:00
c87baef2f4 Update src/app/page.tsx 2026-05-02 18:46:08 +00:00
72551ab0c2 Merge version_9 into main
Merge version_9 into main
2026-05-02 18:44:40 +00:00
59e653aaac Update src/app/page.tsx 2026-05-02 18:44:34 +00:00
e137462c22 Merge version_8 into main
Merge version_8 into main
2026-05-02 18:43:47 +00:00
f62283ea03 Update src/app/page.tsx 2026-05-02 18:43:41 +00:00
d078c161b0 Merge version_7 into main
Merge version_7 into main
2026-05-02 18:42:51 +00:00
1617728067 Update src/app/page.tsx 2026-05-02 18:42:45 +00:00
708e1f5dc4 Merge version_6 into main
Merge version_6 into main
2026-05-02 18:40:28 +00:00
25ac6520bf Update src/app/page.tsx 2026-05-02 18:40:22 +00:00
e450b8fddb Merge version_5 into main
Merge version_5 into main
2026-05-02 18:38:43 +00:00
7d529cfb78 Update src/app/page.tsx 2026-05-02 18:38:40 +00:00
e40d2725b8 Merge version_4 into main
Merge version_4 into main
2026-05-02 18:37:12 +00:00
14baf860bd Update src/app/page.tsx 2026-05-02 18:37:06 +00:00
1c7f430a16 Merge version_3 into main
Merge version_3 into main
2026-05-02 18:34:02 +00:00
0cf54fbe47 Remove watermark 2026-05-02 18:33:56 +00:00
0aa362d937 Merge version_3 into main
Merge version_3 into main
2026-05-02 16:43:58 +00:00
e42557f9d8 Update src/app/page.tsx 2026-05-02 16:43:56 +00:00
29f5642a26 Merge version_2 into main
Merge version_2 into main
2026-05-02 16:22:53 +00:00
2 changed files with 44 additions and 176 deletions

View File

@@ -4,7 +4,6 @@ import { Inter } from "next/font/google";
import "./globals.css"; import "./globals.css";
import "@/lib/gsap-setup"; import "@/lib/gsap-setup";
import { ServiceWrapper } from "@/components/ServiceWrapper"; import { ServiceWrapper } from "@/components/ServiceWrapper";
import Tag from "@/tag/Tag";
import { getVisualEditScript } from "@/utils/visual-edit-script"; import { getVisualEditScript } from "@/utils/visual-edit-script";
import { Open_Sans } from "next/font/google"; import { Open_Sans } from "next/font/google";
@@ -39,7 +38,7 @@ export default function RootLayout({
<html lang="en" suppressHydrationWarning> <html lang="en" suppressHydrationWarning>
<ServiceWrapper> <ServiceWrapper>
<body className={`${inter.variable} ${openSans.variable} antialiased`}> <body className={`${inter.variable} ${openSans.variable} antialiased`}>
<Tag />
{children} {children}
<script <script
dangerouslySetInnerHTML={{ dangerouslySetInnerHTML={{

View File

@@ -3,16 +3,17 @@
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider"; import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react"; import ReactLenis from "lenis/react";
import ContactText from '@/components/sections/contact/ContactText'; import ContactText from '@/components/sections/contact/ContactText';
import FeatureCardMedia from '@/components/sections/feature/FeatureCardMedia';
import FooterSimple from '@/components/sections/footer/FooterSimple'; import FooterSimple from '@/components/sections/footer/FooterSimple';
import HeroSplitKpi from '@/components/sections/hero/HeroSplitKpi'; import HeroSplitKpi from '@/components/sections/hero/HeroSplitKpi';
import MetricSplitMediaAbout from '@/components/sections/about/MetricSplitMediaAbout'; import MetricSplitMediaAbout from '@/components/sections/about/MetricSplitMediaAbout';
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered'; import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
import ProductCardTwo from '@/components/sections/product/ProductCardTwo'; import ProductCardTwo from '@/components/sections/product/ProductCardTwo';
import SocialProofOne from '@/components/sections/socialProof/SocialProofOne';
import TestimonialCardSixteen from '@/components/sections/testimonial/TestimonialCardSixteen';
export default function LandingPage() { export default function LandingPage() {
const handleCall = () => {
window.location.href = "tel:0796062450";
};
return ( return (
<ThemeProvider <ThemeProvider
defaultButtonVariant="text-stagger" defaultButtonVariant="text-stagger"
@@ -30,16 +31,11 @@ export default function LandingPage() {
<div id="nav" data-section="nav"> <div id="nav" data-section="nav">
<NavbarStyleCentered <NavbarStyleCentered
navItems={[ navItems={[
{ { name: "Home", id: "hero" },
name: "Home", id: "hero"}, { name: "Philosophie", id: "about" },
{ { name: "Speisekarte", id: "menu" },
name: "Philosophy", id: "about"}, { name: "Bewertungen", id: "testimonials" },
{ { name: "Kontakt", id: "contact" },
name: "Menu", id: "menu"},
{
name: "Reviews", id: "testimonials"},
{
name: "Contact", id: "contact"},
]} ]}
brandName="Pizza da Vincenzo" brandName="Pizza da Vincenzo"
/> />
@@ -47,71 +43,37 @@ export default function LandingPage() {
<div id="hero" data-section="hero"> <div id="hero" data-section="hero">
<HeroSplitKpi <HeroSplitKpi
background={{ background={{ variant: "gradient-bars" }}
variant: "gradient-bars"}} title="Pizza da Vincenzo: Echte neapolitanische Pizzakunst in Arbon"
title="Pizza da Vincenzo: Authentisch Neapolitanisch in Arbon" description="Ihr Takeout-Spezialist in Arbon. Wir backen authentische neapolitanische Pizza mit handgefertigtem, 48 Stunden gereiftem Teig direkt aus dem Holzofen in nur 10 Minuten für Sie bereit."
description="Erleben Sie echte neapolitanische Pizzakunst. Handgefertigter Teig, 48 Stunden gereift, aus dem Holzofen direkt zu Ihnen nach Hause in 10 Minuten."
kpis={[ kpis={[
{ { value: "5/5", label: "Google Rating" },
value: "4.9/5", label: "Google Rating"}, { value: "48h", label: "Teig Reifezeit" },
{ { value: "10m", label: "Fertig für Takeout" },
value: "48h", label: "Teig Reifezeit"},
{
value: "10m", label: "Bereit für Sie"},
]} ]}
enableKpiAnimation={true} enableKpiAnimation={true}
buttons={[ buttons={[
{ { text: "Call to order: 079 606 24 50", onClick: handleCall },
text: "Jetzt Bestellen", href: "#contact"},
{
text: "Speisekarte", href: "#menu"},
]} ]}
buttonAnimation="slide-up"
imageSrc="http://img.b2bpic.net/free-photo/side-view-slice-pizza-wooden-board_176474-120139.jpg" imageSrc="http://img.b2bpic.net/free-photo/side-view-slice-pizza-wooden-board_176474-120139.jpg"
imageAlt="Authentische Neapolitanische Pizza" imageAlt="Authentische Neapolitanische Pizza"
mediaAnimation="blur-reveal" mediaAnimation="blur-reveal"
avatars={[
{
src: "http://img.b2bpic.net/free-photo/arrangement-tasty-pizza-making_23-2148921361.jpg", alt: "Kunde 1"},
{
src: "http://img.b2bpic.net/free-photo/top-view-sliced-pizza-with-parmesan-cutter_23-2148753762.jpg", alt: "Kunde 2"},
{
src: "http://img.b2bpic.net/free-photo/smoked-salmon-pizza_1339-1002.jpg", alt: "Kunde 3"},
{
src: "http://img.b2bpic.net/free-photo/close-up-hand-holding-sauce-bottle_23-2148773532.jpg", alt: "Kunde 4"},
{
src: "http://img.b2bpic.net/free-photo/high-angle-pizza-breakfast_23-2148858494.jpg", alt: "Kunde 5"},
]}
avatarText="Über 1.000 begeisterte Gäste aus Arbon"
marqueeItems={[
{
type: "text", text: "Frische Zutaten"},
{
type: "text", text: "Original Neapolitanisch"},
{
type: "text", text: "48h Teigruhe"},
{
type: "text", text: "Holzofen-gebacken"},
{
type: "text", text: "Regionale Partner"},
]}
/> />
</div> </div>
<div id="about" data-section="about"> <div id="about" data-section="about">
<MetricSplitMediaAbout <MetricSplitMediaAbout
useInvertedBackground={false} useInvertedBackground={false}
title="Unsere Philosophie" title="Authentische neapolitanische Pizza in Arbon"
description="Bei Vincenzo ist Pizza kein schnelles Fast-Food, sondern ein Handwerk. Wir nutzen importierte San-Marzano-Tomaten, Fior di Latte und viel Liebe, um ein Stück Neapel nach Arbon zu bringen." description="Bei Pizza da Vincenzo steht Qualität an erster Stelle. Von der Romanshornerstrasse 30 bringen wir echtes italienisches Flair zu Ihnen. Wir verwenden nur die besten Zutaten wie San-Marzano-Tomaten und Fior di Latte für unser Takeout-Konzept, das auf Frische und Handwerk setzt."
metrics={[ metrics={[
{ { value: "100%", title: "Handarbeit" },
value: "100%", title: "Authentizität"}, { value: "48h", title: "Teigruhe" },
{ { value: "Arbon", title: "Standort" },
value: "24h", title: "Frische-Garantie"},
{
value: "10+", title: "Jahre Erfahrung"},
]} ]}
imageSrc="http://img.b2bpic.net/free-photo/chef-white-uniform-prepare-pizzaa_1157-27026.jpg" imageSrc="http://img.b2bpic.net/free-photo/chef-white-uniform-prepare-pizzaa_1157-27026.jpg"
imageAlt="Traditionelles Pizzahandwerk" imageAlt="Unser Pizzahandwerk"
mediaAnimation="slide-up" mediaAnimation="slide-up"
/> />
</div> </div>
@@ -119,110 +81,31 @@ export default function LandingPage() {
<div id="menu" data-section="menu"> <div id="menu" data-section="menu">
<ProductCardTwo <ProductCardTwo
animationType="slide-up" animationType="slide-up"
textboxLayout="split-description" textboxLayout="split-actions"
gridVariant="three-columns-all-equal-width" gridVariant="three-columns-all-equal-width"
useInvertedBackground={false} useInvertedBackground={false}
products={[ products={[
{ { id: "p1", brand: "Top Rated • Authentisch", name: "Margherita D.O.P. - Mit Fior di Latte & San Marzano", price: "18.50 CHF", rating: 5, reviewCount: "120", imageSrc: "https://images.unsplash.com/photo-1565299624946-b28f40a0ae38?q=80&w=800&auto=format&fit=crop" },
id: "p1", brand: "Klassiker", name: "Margherita D.O.P.", price: "18.50 CHF", rating: 5, { id: "p2", brand: "Top Rated • Würzig", name: "Diavola Luxe - Mit pikanter Ventricina-Salami", price: "21.00 CHF", rating: 5, reviewCount: "85", imageSrc: "https://images.unsplash.com/photo-1574071318508-1cdbab80d002?q=80&w=800&auto=format&fit=crop" },
reviewCount: "120", imageSrc: "http://img.b2bpic.net/free-photo/top-view-delicious-mushroom-pizza-with-cheese-olives-seasonings-dark-desk-dough-food-pizza-meal-italian_140725-101767.jpg"}, { id: "p3", brand: "Top Rated • Frisch", name: "Verdure Fresche - Mit Grillgemüse & Oliven", price: "19.50 CHF", rating: 5, reviewCount: "92", imageSrc: "https://images.unsplash.com/photo-1593560708920-61dd98c46a4e?q=80&w=800&auto=format&fit=crop" },
{
id: "p2", brand: "Spezialität", name: "Diavola Luxe", price: "21.00 CHF", rating: 5,
reviewCount: "85", imageSrc: "http://img.b2bpic.net/free-photo/cheese-plate-with-glass-cup-smoked-cheese-middle_140725-230.jpg"},
{
id: "p3", brand: "Vegetarisch", name: "Verdure Fresche", price: "19.50 CHF", rating: 5,
reviewCount: "92", imageSrc: "http://img.b2bpic.net/free-photo/pasta-ingredients-composition_23-2147849731.jpg"},
{
id: "p4", brand: "Feinschmecker", name: "Tartufo Bianco", price: "24.00 CHF", rating: 5,
reviewCount: "67", imageSrc: "http://img.b2bpic.net/free-photo/top-view-sliced-mushroom-pizza-delicious-dough-with-fresh-vegetables-dark-surface-dough-meal-food-italian-bake_140725-102074.jpg"},
{
id: "p5", brand: "Klassiker", name: "Prosciutto e Funghi", price: "20.50 CHF", rating: 5,
reviewCount: "105", imageSrc: "http://img.b2bpic.net/free-photo/top-view-pepperoni-pizza-with-sausage-tomato-sauce-cheese-herb-sprinkles_140725-652.jpg"},
{
id: "p6", brand: "Traditionell", name: "Capricciosa", price: "21.50 CHF", rating: 5,
reviewCount: "78", imageSrc: "http://img.b2bpic.net/free-photo/top-view-raw-pasta-with-rice-red-tomatoes-dark-surface-pasta-dough-raw_140725-82556.jpg"},
]} ]}
title="Unsere Meisterwerke" title="Unsere Speisekarte"
description="Eine sorgfältige Auswahl unserer beliebtesten Kreationen, von klassisch bis luxuriös." description="Entdecken Sie die Qualität unserer handverlesenen Zutaten. Von feinstem Mehl bis zu den frischesten Tomaten aus Italien jedes Element ist auf authentischen Geschmack ausgerichtet. Bestellung per Anruf oder einfach direkt bei uns abholen!"
/> buttons={[
</div> { text: "Jetzt bestellen", onClick: handleCall }
<div id="features" data-section="features">
<FeatureCardMedia
animationType="slide-up"
textboxLayout="split"
useInvertedBackground={false}
features={[
{
id: "f1", title: "San Marzano Tomaten", description: "Importiert aus der Region um den Vesuv für ein perfekt balanciertes Aroma.", tag: "Herkunft", imageSrc: "http://img.b2bpic.net/free-photo/flat-lay-tagliatelle-with-basil-vegetables_23-2148567102.jpg"},
{
id: "f2", title: "48h Reifezeit", description: "Unser Teig darf lange ruhen, für höchste Bekömmlichkeit und Geschmack.", tag: "Handwerk", imageSrc: "http://img.b2bpic.net/free-photo/fresh-burrata-cheese-with-cherry-tomatoes-herbs-slate_84443-82461.jpg"},
{
id: "f3", title: "Holzofen-Hitze", description: "Über 400°C für die typische neapolitanische Kruste in wenigen Minuten.", tag: "Tradition", imageSrc: "http://img.b2bpic.net/free-photo/fresh-italian-salad-antipasto-called-caprese-with-buffalo-mozzarella-sliced-tomatoes-basil-with-olive-oil-ingredients-vegetarian-caprese-salad-italian-food-top-view-rustic-style_1150-44799.jpg"},
]} ]}
title="Warum Vincenzo?" buttonAnimation="slide-up"
description="Wir setzen auf kompromisslose Qualität in jedem Schritt."
/>
</div>
<div id="social-proof" data-section="social-proof">
<SocialProofOne
textboxLayout="split-description"
useInvertedBackground={false}
names={[
"Latteria Arbon", "Bäckerei Gold", "Frutta Nazionale", "Toscana Weine", "Gastronomie Arbon", "Regional Verband", "Swiss Quality"]}
title="Unsere Partner & Zertifikate"
description="Wir arbeiten nur mit den Besten der Region zusammen."
/>
</div>
<div id="testimonials" data-section="testimonials">
<TestimonialCardSixteen
animationType="slide-up"
textboxLayout="split-description"
useInvertedBackground={false}
testimonials={[
{
id: "1", name: "Marco Rossi", role: "Stammgast", company: "Arbon", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/attractive-young-woman-hands-holds-two-burgers-blurred-background_169016-43765.jpg"},
{
id: "2", name: "Julia M.", role: "Feinschmeckerin", company: "Arbon", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/asian-friends-couple-eating-pizza-party-pizzeria-happy-indian-people-having-fun-together-eating-italian-food-sitting-couch_627829-1247.jpg"},
{
id: "3", name: "Lukas B.", role: "Pizza-Fan", company: "Arbon", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/elegantly-dressed-couple-handsome-stylish-male-charming-brunette-woman-sitting-together-luxury-restaurant_613910-18589.jpg"},
{
id: "4", name: "Elena K.", role: "Kundin", company: "Arbon", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/caesar-pizza-table_140725-6527.jpg"},
{
id: "5", name: "Thomas Z.", role: "Kunde", company: "Arbon", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/aged-middle-expression-calling-business_1262-2838.jpg"},
{
id: "6", name: "Sarah P.", role: "Besucherin", company: "St. Gallen", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/top-view-delicious-pizza-table_23-2150307015.jpg"},
]}
kpiItems={[
{
value: "5.0", label: "Qualität"},
{
value: "98%", label: "Zufriedenheit"},
{
value: "1.2k+", label: "Pizzen/Monat"},
]}
title="Was Arbon sagt"
description="Kundenstimmen, die uns antreiben."
/> />
</div> </div>
<div id="contact" data-section="contact"> <div id="contact" data-section="contact">
<ContactText <ContactText
useInvertedBackground={false} useInvertedBackground={false}
background={{ background={{ variant: "sparkles-gradient" }}
variant: "sparkles-gradient"}} text="Besuchen Sie uns in der Romanshornerstrasse 30, Arbon. Geöffnet DiSo: 11:0013:00 & 17:0021:00. Montags geschlossen. Wir freuen uns auf Ihren Besuch!"
text="Hungrig? Rufen Sie uns jetzt an oder besuchen Sie uns in Arbon. Wir freuen uns darauf, Sie zu bekochen!"
buttons={[ buttons={[
{ { text: "Jetzt anrufen", onClick: handleCall },
text: "Jetzt anrufen: 079 606 24 50", href: "tel:0796062450"}, { text: "Wegbeschreibung anzeigen", href: "https://maps.google.com/?q=Romanshornerstrasse+30+Arbon" }
]} ]}
/> />
</div> </div>
@@ -230,29 +113,15 @@ export default function LandingPage() {
<div id="footer" data-section="footer"> <div id="footer" data-section="footer">
<FooterSimple <FooterSimple
columns={[ columns={[
{ { title: "Pizza da Vincenzo", items: [{ label: "Romanshornerstrasse 30, Arbon" }] },
title: "Pizza da Vincenzo", items: [ { title: "Öffnungszeiten", items: [
{ { label: "DiSo: 11:0013:00, 17:0021:00" },
label: "Hauptstrasse 1, 9320 Arbon", href: "#"}, { label: "Montag: Geschlossen" }
], ] },
}, { title: "Kontakt", items: [{ label: "Tel: 079 606 24 50", onClick: handleCall }] },
{
title: "Öffnungszeiten", items: [
{
label: "MoSo: 11:3021:30", href: "#"},
],
},
{
title: "Rechtliches", items: [
{
label: "Impressum", href: "#"},
{
label: "Datenschutz", href: "#"},
],
},
]} ]}
bottomLeftText="© 2024 Pizza da Vincenzo" bottomLeftText="© 2024 Pizza da Vincenzo"
bottomRightText="Neapolitanische Pizzakunst in Arbon" bottomRightText="Authentische Pizza in Arbon"
/> />
</div> </div>
</ReactLenis> </ReactLenis>