6 Commits

Author SHA1 Message Date
eecfa8fe31 Update theme fonts 2026-05-18 15:29:38 +00:00
a0402563fc Update theme fonts 2026-05-18 15:29:38 +00:00
9e1a2a280d Update theme fonts 2026-05-18 15:29:28 +00:00
a12396014f Update theme fonts 2026-05-18 15:29:28 +00:00
e933f6e925 Update src/app/styles/variables.css 2026-05-18 15:16:59 +00:00
7c9b84e4e8 Update src/app/page.tsx 2026-05-18 15:16:59 +00:00
4 changed files with 60 additions and 238 deletions

View File

@@ -7,6 +7,8 @@ import { ServiceWrapper } from "@/components/ServiceWrapper";
import Tag from "@/tag/Tag"; import Tag from "@/tag/Tag";
import { getVisualEditScript } from "@/utils/visual-edit-script"; import { getVisualEditScript } from "@/utils/visual-edit-script";
import { Raleway } from "next/font/google"; import { Raleway } from "next/font/google";
import { Open_Sans } from "next/font/google";
import { Libre_Baskerville } from "next/font/google";
@@ -20,7 +22,17 @@ export const metadata: Metadata = {
}, },
}; };
const raleway = Raleway({ variable: "--font-raleway", subsets: ["latin"] });
const libreBaskerville = Libre_Baskerville({
variable: "--font-libre-baskerville",
subsets: ["latin"],
weight: ["400", "700"],
});
const inter = Inter({
variable: "--font-inter",
subsets: ["latin"],
});
export default function RootLayout({ export default function RootLayout({
children, children,
@@ -30,7 +42,7 @@ export default function RootLayout({
return ( return (
<html lang="en" suppressHydrationWarning> <html lang="en" suppressHydrationWarning>
<ServiceWrapper> <ServiceWrapper>
<body className={`${raleway.variable} antialiased`}> <body className={`${libreBaskerville.variable} ${inter.variable} antialiased`}>
<Tag /> <Tag />
{children} {children}
<script <script

View File

@@ -5,14 +5,14 @@ import ReactLenis from "lenis/react";
import ContactCenter from '@/components/sections/contact/ContactCenter'; import ContactCenter from '@/components/sections/contact/ContactCenter';
import FaqBase from '@/components/sections/faq/FaqBase'; import FaqBase from '@/components/sections/faq/FaqBase';
import FeatureCardTwentyNine from '@/components/sections/feature/featureCardTwentyNine/FeatureCardTwentyNine'; import FeatureCardTwentyNine from '@/components/sections/feature/featureCardTwentyNine/FeatureCardTwentyNine';
import FooterBaseCard from '@/components/sections/footer/FooterBaseCard'; import FooterBase from '@/components/sections/footer/FooterBase';
import HeroBillboardCarousel from '@/components/sections/hero/HeroBillboardCarousel'; import HeroBillboardCarousel from '@/components/sections/hero/HeroBillboardCarousel';
import MetricCardOne from '@/components/sections/metrics/MetricCardOne'; import MetricCardOne from '@/components/sections/metrics/MetricCardOne';
import NavbarStyleFullscreen from '@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen'; import NavbarStyleFullscreen from '@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen';
import ProductCardFour from '@/components/sections/product/ProductCardFour'; import ProductCardFour from '@/components/sections/product/ProductCardFour';
import TestimonialCardSix from '@/components/sections/testimonial/TestimonialCardSix'; import TestimonialCardSix from '@/components/sections/testimonial/TestimonialCardSix';
import TextSplitAbout from '@/components/sections/about/TextSplitAbout'; import TextSplitAbout from '@/components/sections/about/TextSplitAbout';
import { CheckCircle, Star, Zap } from "lucide-react"; import { CheckCircle, Star, Zap, MessageCircle } from "lucide-react";
export default function LandingPage() { export default function LandingPage() {
return ( return (
@@ -32,26 +32,11 @@ export default function LandingPage() {
<div id="nav" data-section="nav"> <div id="nav" data-section="nav">
<NavbarStyleFullscreen <NavbarStyleFullscreen
navItems={[ navItems={[
{ { name: "Home", id: "hero" },
name: "Home", { name: "Our Story", id: "about" },
id: "hero", { name: "Menu", id: "products" },
}, { name: "Reviews", id: "testimonials" },
{ { name: "Contact", id: "contact" },
name: "Our Story",
id: "about",
},
{
name: "Menu",
id: "products",
},
{
name: "Reviews",
id: "testimonials",
},
{
name: "Contact",
id: "contact",
},
]} ]}
brandName="Flash Pizzas" brandName="Flash Pizzas"
/> />
@@ -59,42 +44,14 @@ export default function LandingPage() {
<div id="hero" data-section="hero"> <div id="hero" data-section="hero">
<HeroBillboardCarousel <HeroBillboardCarousel
background={{ background={{ variant: "gradient-bars" }}
variant: "gradient-bars",
}}
title="Lightning Fast, Oven Fresh." title="Lightning Fast, Oven Fresh."
description="Authentic gourmet pizzas delivered to your door in minutes. Taste the tradition, feel the flash." description="Authentic gourmet pizzas delivered to your door in minutes. Taste the tradition, feel the flash."
buttons={[ buttons={[{ text: "Order Now", href: "#products" }]}
{
text: "Order Now",
href: "#products",
},
]}
mediaItems={[ mediaItems={[
{ { imageSrc: "http://img.b2bpic.net/free-photo/top-view-fresh-tomatoes-with-seasonings-black-table_140725-104141.jpg", imageAlt: "Hot Pizza 1" },
imageSrc: "http://img.b2bpic.net/free-photo/top-view-fresh-tomatoes-with-seasonings-black-table_140725-104141.jpg", { imageSrc: "http://img.b2bpic.net/free-photo/close-up-melted-cheese-pizza_23-2149286885.jpg", imageAlt: "Hot Pizza 2" },
imageAlt: "Hot Pizza 1", { imageSrc: "http://img.b2bpic.net/free-photo/delicious-pizza-studio_23-2151846545.jpg", imageAlt: "Hot Pizza 3" }
},
{
imageSrc: "http://img.b2bpic.net/free-photo/close-up-melted-cheese-pizza_23-2149286885.jpg",
imageAlt: "Hot Pizza 2",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/delicious-pizza-studio_23-2151846545.jpg",
imageAlt: "Hot Pizza 3",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/high-angle-delicious-pizza-tray_23-2149235629.jpg",
imageAlt: "Hot Pizza 4",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/pepperoni-pizza-with-herbs-top_141793-901.jpg",
imageAlt: "Hot Pizza 5",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/bowl-palm-with-star-anises-cinnamon-sticks-around_140725-114220.jpg",
imageAlt: "Hot Pizza 6",
},
]} ]}
/> />
</div> </div>
@@ -104,9 +61,7 @@ export default function LandingPage() {
useInvertedBackground={false} useInvertedBackground={false}
title="Crafted with Passion" title="Crafted with Passion"
description={[ description={[
"We use only fresh, locally sourced ingredients to create the perfect dough and sauce combinations.", "We use only fresh, locally sourced ingredients to create the perfect dough and sauce combinations.", "Every pizza is hand-stretched and fired in our high-heat stone oven for that authentic, crispy finish."]}
"Every pizza is hand-stretched and fired in our high-heat stone oven for that authentic, crispy finish.",
]}
/> />
</div> </div>
@@ -117,48 +72,9 @@ export default function LandingPage() {
gridVariant="three-columns-all-equal-width" gridVariant="three-columns-all-equal-width"
useInvertedBackground={false} useInvertedBackground={false}
products={[ products={[
{ { id: "1", name: "Classic Pepperoni", price: "$14.99", variant: "Pepperoni", imageSrc: "http://img.b2bpic.net/free-photo/young-delivery-man-red-polo-shirt-cap-standing-with-box-fresh-pizza-dissatisfied-closing-eyes-isolated-pink-background_141793-19544.jpg" },
id: "1", { id: "2", name: "Margherita Gold", price: "$12.99", variant: "Vegetarian", imageSrc: "http://img.b2bpic.net/free-photo/supermarket-banner-with-food_23-2149500969.jpg" },
name: "Classic Pepperoni", { id: "3", name: "Veggie Supreme", price: "$15.99", variant: "Vegetarian", imageSrc: "http://img.b2bpic.net/free-photo/high-angle-person-holding-delicious-cooked-pizza-with-bouquet-chamomile-flowers_23-2148753715.jpg" }
price: "$14.99",
variant: "Pepperoni",
imageSrc: "http://img.b2bpic.net/free-photo/young-delivery-man-red-polo-shirt-cap-standing-with-box-fresh-pizza-dissatisfied-closing-eyes-isolated-pink-background_141793-19544.jpg",
},
{
id: "2",
name: "Margherita Gold",
price: "$12.99",
variant: "Vegetarian",
imageSrc: "http://img.b2bpic.net/free-photo/supermarket-banner-with-food_23-2149500969.jpg",
},
{
id: "3",
name: "Veggie Supreme",
price: "$15.99",
variant: "Vegetarian",
imageSrc: "http://img.b2bpic.net/free-photo/high-angle-person-holding-delicious-cooked-pizza-with-bouquet-chamomile-flowers_23-2148753715.jpg",
},
{
id: "4",
name: "Italian Carnivore",
price: "$17.99",
variant: "Meat",
imageSrc: "http://img.b2bpic.net/free-photo/delicious-square-pizza-with-pepperoni-top-view_23-2149336001.jpg",
},
{
id: "5",
name: "Four Cheese Melt",
price: "$14.99",
variant: "Vegetarian",
imageSrc: "http://img.b2bpic.net/free-photo/young-man-gamer-play-games-with-joystick-while-eating_171337-16550.jpg",
},
{
id: "6",
name: "Spicy Sausage",
price: "$16.99",
variant: "Spicy",
imageSrc: "http://img.b2bpic.net/free-photo/crop-hand-poking-pie-with-toothpick_23-2147930310.jpg",
},
]} ]}
title="Our Signature Pizzas" title="Our Signature Pizzas"
description="Freshly prepared every single time." description="Freshly prepared every single time."
@@ -172,27 +88,9 @@ export default function LandingPage() {
gridVariant="three-columns-all-equal-width" gridVariant="three-columns-all-equal-width"
useInvertedBackground={false} useInvertedBackground={false}
features={[ features={[
{ { title: "Fast Delivery", description: "At your doorstep in under 30 minutes.", imageSrc: "http://img.b2bpic.net/free-photo/close-up-person-cooking_23-2150980258.jpg", titleImageSrc: "http://img.b2bpic.net/free-photo/chef-white-uniform-prepare-pizzaa_1157-27020.jpg", buttonText: "Read More" },
title: "Fast Delivery", { title: "Fresh Ingredients", description: "Farm to table fresh every day.", imageSrc: "http://img.b2bpic.net/free-photo/chef-puts-cheese-pizza-dough-covered-with-tomato-sauce_141793-2007.jpg", titleImageSrc: "http://img.b2bpic.net/free-photo/hands-filled-with-dough-bread_23-2148438632.jpg", buttonText: "Read More" },
description: "At your doorstep in under 30 minutes.", { title: "Stone Baked", description: "Authentic wood-fired taste.", imageSrc: "http://img.b2bpic.net/free-photo/chef-white-uniform-prepare-pizzaa_1157-27024.jpg", titleImageSrc: "http://img.b2bpic.net/free-photo/smiling-chef-holding-empty-white-plate-hand_23-2147863672.jpg", buttonText: "Read More" },
imageSrc: "http://img.b2bpic.net/free-photo/close-up-person-cooking_23-2150980258.jpg",
titleImageSrc: "http://img.b2bpic.net/free-photo/chef-white-uniform-prepare-pizzaa_1157-27020.jpg",
buttonText: "Read More",
},
{
title: "Fresh Ingredients",
description: "Farm to table fresh every day.",
imageSrc: "http://img.b2bpic.net/free-photo/chef-puts-cheese-pizza-dough-covered-with-tomato-sauce_141793-2007.jpg",
titleImageSrc: "http://img.b2bpic.net/free-photo/hands-filled-with-dough-bread_23-2148438632.jpg",
buttonText: "Read More",
},
{
title: "Stone Baked",
description: "Authentic wood-fired taste.",
imageSrc: "http://img.b2bpic.net/free-photo/chef-white-uniform-prepare-pizzaa_1157-27024.jpg",
titleImageSrc: "http://img.b2bpic.net/free-photo/smiling-chef-holding-empty-white-plate-hand_23-2147863672.jpg",
buttonText: "Read More",
},
]} ]}
title="Why Choose Us?" title="Why Choose Us?"
description="The Flash promise is speed without compromising on quality." description="The Flash promise is speed without compromising on quality."
@@ -206,27 +104,9 @@ export default function LandingPage() {
gridVariant="uniform-all-items-equal" gridVariant="uniform-all-items-equal"
useInvertedBackground={false} useInvertedBackground={false}
metrics={[ metrics={[
{ { id: "m1", value: "10k+", title: "Pizzas Served", description: "And counting every day.", icon: CheckCircle },
id: "m1", { id: "m2", value: "500+", title: "Daily Deliveries", description: "Fast and efficient service.", icon: Zap },
value: "10k+", { id: "m3", value: "99%", title: "Happy Customers", description: "Our pride and passion.", icon: Star },
title: "Pizzas Served",
description: "And counting every day.",
icon: CheckCircle,
},
{
id: "m2",
value: "500+",
title: "Daily Deliveries",
description: "Fast and efficient service.",
icon: Zap,
},
{
id: "m3",
value: "99%",
title: "Happy Customers",
description: "Our pride and passion.",
icon: Star,
},
]} ]}
title="By The Numbers" title="By The Numbers"
description="Serving happiness across the city." description="Serving happiness across the city."
@@ -239,41 +119,8 @@ export default function LandingPage() {
textboxLayout="split" textboxLayout="split"
useInvertedBackground={false} useInvertedBackground={false}
testimonials={[ testimonials={[
{ { id: "1", name: "Sarah Miller", handle: "@sarahm", testimonial: "The best pizza in town! Always arrives hot.", imageSrc: "http://img.b2bpic.net/free-photo/photo-mixed-race-young-family-couple-have-tasty-dish_273609-44915.jpg" },
id: "1", { id: "2", name: "David Clark", handle: "@daveclark", testimonial: "Incredible flavor, quick delivery.", imageSrc: "http://img.b2bpic.net/free-photo/smiling-young-delivery-man-wearing-uniform-with-cap-holding-pizza-boxes-shoulder-showing-thumb-up-isolated-orange-wall_141793-90105.jpg" }
name: "Sarah Miller",
handle: "@sarahm",
testimonial: "The best pizza in town! Always arrives hot.",
imageSrc: "http://img.b2bpic.net/free-photo/photo-mixed-race-young-family-couple-have-tasty-dish_273609-44915.jpg",
},
{
id: "2",
name: "David Clark",
handle: "@daveclark",
testimonial: "Incredible flavor, quick delivery.",
imageSrc: "http://img.b2bpic.net/free-photo/smiling-young-delivery-man-wearing-uniform-with-cap-holding-pizza-boxes-shoulder-showing-thumb-up-isolated-orange-wall_141793-90105.jpg",
},
{
id: "3",
name: "Emily White",
handle: "@emilyw",
testimonial: "Love the variety and fresh dough.",
imageSrc: "http://img.b2bpic.net/free-photo/refined-lady-with-waving-hair-making-selfie-dinner-indoor-shot-blissful-caucasian-girl-eating-pizza_197531-9678.jpg",
},
{
id: "4",
name: "Michael Reed",
handle: "@mreed",
testimonial: "My go-to place for Friday night dinner.",
imageSrc: "http://img.b2bpic.net/free-photo/portrait-man-home-eating_23-2148923956.jpg",
},
{
id: "5",
name: "Anna Scott",
handle: "@annas",
testimonial: "Simply delicious experience every time.",
imageSrc: "http://img.b2bpic.net/free-photo/close-up-kids-with-delicious-pizza_23-2148910367.jpg",
},
]} ]}
title="What Our Fans Say" title="What Our Fans Say"
description="Hear from our happy customers." description="Hear from our happy customers."
@@ -285,21 +132,9 @@ export default function LandingPage() {
textboxLayout="split" textboxLayout="split"
useInvertedBackground={false} useInvertedBackground={false}
faqs={[ faqs={[
{ { id: "f1", title: "Do you deliver?", content: "Yes, we deliver in a 5-mile radius." },
id: "f1", { id: "f2", title: "Can I customize pizzas?", content: "Absolutely, add any toppings you desire." },
title: "Do you deliver?", { id: "f3", title: "What are your hours?", content: "11 AM to 11 PM daily." },
content: "Yes, we deliver in a 5-mile radius.",
},
{
id: "f2",
title: "Can I customize pizzas?",
content: "Absolutely, add any toppings you desire.",
},
{
id: "f3",
title: "What are your hours?",
content: "11 AM to 11 PM daily.",
},
]} ]}
title="Common Questions" title="Common Questions"
description="Get quick answers about Flash Pizzas." description="Get quick answers about Flash Pizzas."
@@ -310,9 +145,7 @@ export default function LandingPage() {
<div id="contact" data-section="contact"> <div id="contact" data-section="contact">
<ContactCenter <ContactCenter
useInvertedBackground={false} useInvertedBackground={false}
background={{ background={{ variant: "plain" }}
variant: "plain",
}}
tag="Join Us" tag="Join Us"
title="Stay Updated" title="Stay Updated"
description="Subscribe for the latest pizza deals." description="Subscribe for the latest pizza deals."
@@ -320,42 +153,19 @@ export default function LandingPage() {
</div> </div>
<div id="footer" data-section="footer"> <div id="footer" data-section="footer">
<FooterBaseCard <FooterBase
logoText="Flash Pizzas" logoText="Flash Pizzas"
columns={[ columns={[
{ { title: "Address", items: [{ label: "Grand-Rue 22, 1820 Clarens, Switzerland", href: "#" }] },
title: "Navigation", { title: "Zones", items: [{ label: "Montreux", href: "#" }, { label: "Clarens", href: "#" }, { label: "Vevey", href: "#" }] },
items: [ { title: "Contact", items: [{ label: "+41 21 964 22 22", href: "tel:+41219642222" }, { label: "order@flashpizzas.ch", href: "mailto:order@flashpizzas.ch" }] }
{
label: "Home",
href: "#hero",
},
{
label: "Menu",
href: "#products",
},
{
label: "About",
href: "#about",
},
],
},
{
title: "Legal",
items: [
{
label: "Privacy Policy",
href: "#",
},
{
label: "Terms",
href: "#",
},
],
},
]} ]}
/> />
</div> </div>
<a href="https://wa.me/41791234567" className="fixed bottom-6 right-6 z-50 p-4 bg-green-500 rounded-full text-white shadow-lg hover:scale-110 transition-transform">
<MessageCircle size={32} />
</a>
</ReactLenis> </ReactLenis>
</ThemeProvider> </ThemeProvider>
); );

View File

@@ -11,7 +11,7 @@ html {
body { body {
background-color: var(--background); background-color: var(--background);
color: var(--foreground); color: var(--foreground);
font-family: var(--font-raleway), sans-serif; font-family: var(--font-inter), sans-serif;
position: relative; position: relative;
min-height: 100vh; min-height: 100vh;
overscroll-behavior: none; overscroll-behavior: none;
@@ -24,5 +24,5 @@ h3,
h4, h4,
h5, h5,
h6 { h6 {
font-family: var(--font-raleway), sans-serif; font-family: var(--font-libre-baskerville), serif;
} }

View File

@@ -10,15 +10,15 @@
--accent: #ffffff; --accent: #ffffff;
--background-accent: #ffffff; */ --background-accent: #ffffff; */
--background: #f7f6f7; --background: #0a0a0a;
--card: #ffffff; --card: #1a1a1a;
--foreground: #250c0d; --foreground: #ffffff;
--primary-cta: #b82b40; --primary-cta: #FFD700;
--primary-cta-text: #f7f6f7; --primary-cta-text: #f7f6f7;
--secondary-cta: #ffffff; --secondary-cta: #CC0000;
--secondary-cta-text: #250c0d; --secondary-cta-text: #250c0d;
--accent: #b90941; --accent: #CC0000;
--background-accent: #e8a8b6; --background-accent: #2a0000;
/* text sizing - set by ThemeProvider */ /* text sizing - set by ThemeProvider */
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem); /* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);