14 Commits

Author SHA1 Message Date
b50c77b285 Update theme fonts 2026-04-20 19:58:09 +00:00
2d30727a57 Update theme fonts 2026-04-20 19:58:08 +00:00
291405e9b1 Update src/app/page.tsx 2026-04-20 19:29:06 +00:00
358d919d3b Merge version_5 into main
Merge version_5 into main
2026-04-20 18:16:19 +00:00
9003f2803c Update src/app/page.tsx 2026-04-20 18:16:12 +00:00
210c90f160 Merge version_5 into main
Merge version_5 into main
2026-04-20 18:04:23 +00:00
6cd3fd5d8c Update src/app/page.tsx 2026-04-20 18:04:20 +00:00
25207bac2e Merge version_5 into main
Merge version_5 into main
2026-04-20 18:03:54 +00:00
5fea047c89 Update src/app/page.tsx 2026-04-20 18:03:51 +00:00
b0effae7bf Merge version_4 into main
Merge version_4 into main
2026-04-20 18:03:33 +00:00
e3cba862b0 Update theme colors 2026-04-20 18:03:27 +00:00
f1259e48a3 Merge version_3 into main
Merge version_3 into main
2026-04-20 18:03:22 +00:00
cfccab5c69 Update theme colors 2026-04-20 18:03:16 +00:00
86b55767a4 Merge version_2 into main
Merge version_2 into main
2026-04-20 17:57:54 +00:00
4 changed files with 35 additions and 28 deletions

View File

@@ -7,6 +7,7 @@ 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 { Nunito_Sans } from "next/font/google"; import { Nunito_Sans } from "next/font/google";
import { Public_Sans } from "next/font/google";
@@ -21,8 +22,9 @@ export const metadata: Metadata = {
}, },
}; };
const nunitoSans = Nunito_Sans({
variable: "--font-nunito-sans", const publicSans = Public_Sans({
variable: "--font-public-sans",
subsets: ["latin"], subsets: ["latin"],
}); });
@@ -34,7 +36,7 @@ export default function RootLayout({
return ( return (
<html lang="en" suppressHydrationWarning> <html lang="en" suppressHydrationWarning>
<ServiceWrapper> <ServiceWrapper>
<body className={`${nunitoSans.variable} antialiased`}> <body className={`${publicSans.variable} antialiased`}>
<Tag /> <Tag />
{children} {children}
<script <script

View File

@@ -2,11 +2,11 @@
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider"; import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react"; import ReactLenis from "lenis/react";
import { Sparkles, Zap, Shield, Award, Mail, Phone, MapPin, Calendar } from "lucide-react"; import { Sparkles, Zap, Shield, Award, Calendar } from "lucide-react";
import ContactSplitForm from '@/components/sections/contact/ContactSplitForm'; import ContactSplitForm from '@/components/sections/contact/ContactSplitForm';
import FaqBase from '@/components/sections/faq/FaqBase'; import FaqSplitMedia from '@/components/sections/faq/FaqSplitMedia';
import FeatureCardTwentySix from '@/components/sections/feature/FeatureCardTwentySix'; import FeatureCardTwentySix from '@/components/sections/feature/FeatureCardTwentySix';
import FooterLogoReveal from '@/components/sections/footer/FooterLogoReveal'; import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis';
import HeroLogoBillboard from '@/components/sections/hero/HeroLogoBillboard'; import HeroLogoBillboard from '@/components/sections/hero/HeroLogoBillboard';
import MetricCardTwo from '@/components/sections/metrics/MetricCardTwo'; import MetricCardTwo from '@/components/sections/metrics/MetricCardTwo';
import NavbarStyleFullscreen from '@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen'; import NavbarStyleFullscreen from '@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen';
@@ -37,6 +37,7 @@ export default function LandingPage() {
{ name: "Services", id: "#services" }, { name: "Services", id: "#services" },
{ name: "Pricing", id: "#pricing" }, { name: "Pricing", id: "#pricing" },
{ name: "Testimonials", id: "#testimonials" }, { name: "Testimonials", id: "#testimonials" },
{ name: "FAQ", id: "#faq" },
{ name: "Contact", id: "#contact" }, { name: "Contact", id: "#contact" },
]} ]}
brandName="ZaharaEliteDetailing" brandName="ZaharaEliteDetailing"
@@ -49,7 +50,7 @@ export default function LandingPage() {
logoText="Zahara Elite Detailing" logoText="Zahara Elite Detailing"
description="Where perfection meets passion. Premium, mobile, and professional car care designed to restore your vehicle to its original showroom state." description="Where perfection meets passion. Premium, mobile, and professional car care designed to restore your vehicle to its original showroom state."
buttons={[ buttons={[
{ text: "Book Your Detail", href: "#contact" }, { text: "Get A Free Quote", href: "#contact" },
{ text: "View Our Services", href: "#services" }, { text: "View Our Services", href: "#services" },
]} ]}
imageSrc="http://img.b2bpic.net/free-photo/male-painter-hazmat-suit-inside-car-shop_23-2149750030.jpg" imageSrc="http://img.b2bpic.net/free-photo/male-painter-hazmat-suit-inside-car-shop_23-2149750030.jpg"
@@ -81,7 +82,7 @@ export default function LandingPage() {
useInvertedBackground={true} useInvertedBackground={true}
features={[ features={[
{ {
title: "Interior Deep Clean", description: "Comprehensive vacuum, steam clean, and leather conditioning for a refreshed cabin.", imageSrc: "http://img.b2bpic.net/free-photo/car-wash-detailing-station_1303-22315.jpg", buttonIcon: Sparkles, title: "Interior Deep Clean", description: "Comprehensive vacuum, steam clean, and leather conditioning for a refreshed cabin.", imageSrc: "http://img.b2bpic.net/free-photo/car-wash-detailing-station_1303-22315.jpg?_wi=1", buttonIcon: Sparkles,
}, },
{ {
title: "Foam Bath & Wash", description: "Safe, contact-free wash removing grime while protecting your paintwork.", imageSrc: "http://img.b2bpic.net/free-photo/young-man-washing-car-carwash-station-outdoor_651396-2787.jpg", buttonIcon: Zap, title: "Foam Bath & Wash", description: "Safe, contact-free wash removing grime while protecting your paintwork.", imageSrc: "http://img.b2bpic.net/free-photo/young-man-washing-car-carwash-station-outdoor_651396-2787.jpg", buttonIcon: Zap,
@@ -121,13 +122,13 @@ export default function LandingPage() {
useInvertedBackground={true} useInvertedBackground={true}
plans={[ plans={[
{ {
id: "basic", badge: "Entry", price: "$150", subtitle: "Essential maintenance.", features: ["Exterior Foam Bath", "Window Cleaning", "Interior Vacuum"], id: "basic", badge: "Entry", price: "$90 ", subtitle: "Essential maintenance.", features: ["Exterior Foam Bath", "Exterior Window Cleaning", "Tire Dressing "],
}, },
{ {
id: "standard", badge: "Popular", price: "$250", subtitle: "Complete renewal.", features: ["All Basic Services", "Leather Conditioning", "Paint Sealant", "Tire Shine"], id: "standard", badge: "Popular", price: "$120", subtitle: "Intior Package", features: ["", "Leather Con", "Basic Ceramic Coating ", "Tire Shine"],
}, },
{ {
id: "elite", badge: "Elite", price: "$450", subtitle: "Ultimate preservation.", features: ["All Standard Services", "Ceramic Coating", "Full Clay Bar", "Headlight Restoration"], id: "elite", badge: "Elite", price: "$120", subtitle: "Ultimate preservation.", features: ["All Standard Services", "Ceramic Coating", "Full Clay Bar", ""],
}, },
]} ]}
title="Transparent Detailing Packages" title="Transparent Detailing Packages"
@@ -142,9 +143,9 @@ export default function LandingPage() {
gridVariant="uniform-all-items-equal" gridVariant="uniform-all-items-equal"
useInvertedBackground={false} useInvertedBackground={false}
metrics={[ metrics={[
{ id: "m1", value: "500+", description: "Vehicles Detailed" }, { id: "m1", value: "+", description: "Vehicles Detailed" },
{ id: "m2", value: "100%", description: "Satisfaction Guarantee" }, { id: "m2", value: "100%", description: "Satisfaction Guarantee" },
{ id: "m3", value: "5/5", description: "Average Rating" }, { id: "m3", value: "", description: "Average Rating" },
]} ]}
title="Results You Can Trust" title="Results You Can Trust"
description="We are proud of our commitment to quality." description="We are proud of our commitment to quality."
@@ -164,7 +165,7 @@ export default function LandingPage() {
</div> </div>
<div id="faq" data-section="faq"> <div id="faq" data-section="faq">
<FaqBase <FaqSplitMedia
faqs={[ faqs={[
{ id: "q1", title: "How long does a detailing take?", content: "Typically between 2 to 6 hours depending on the package selected." }, { id: "q1", title: "How long does a detailing take?", content: "Typically between 2 to 6 hours depending on the package selected." },
{ id: "q2", title: "Do you provide your own water and power?", content: "Yes, our vans are fully equipped with water tanks and power generators so we don't need your home's utilities." }, { id: "q2", title: "Do you provide your own water and power?", content: "Yes, our vans are fully equipped with water tanks and power generators so we don't need your home's utilities." },
@@ -176,6 +177,7 @@ export default function LandingPage() {
faqsAnimation="slide-up" faqsAnimation="slide-up"
textboxLayout="split" textboxLayout="split"
useInvertedBackground={false} useInvertedBackground={false}
imageSrc="http://img.b2bpic.net/free-photo/car-wash-detailing-station_1303-22315.jpg?_wi=2"
/> />
</div> </div>
@@ -195,10 +197,13 @@ export default function LandingPage() {
</div> </div>
<div id="footer" data-section="footer"> <div id="footer" data-section="footer">
<FooterLogoReveal <FooterLogoEmphasis
logoText="ZaharaElite" logoText="ZaharaElite"
leftLink={{ text: "Terms of Service", href: "#" }} columns={[
rightLink={{ text: "Privacy Policy", href: "#" }} { items: [{ label: "About Us", href: "#about" }, { label: "Services", href: "#services" }] },
{ items: [{ label: "Privacy Policy", href: "#" }, { label: "Terms of Service", href: "#" }] },
{ items: [{ label: "Contact Support", href: "#contact" }] }
]}
/> />
</div> </div>
</ReactLenis> </ReactLenis>

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-nunito-sans), sans-serif; font-family: var(--font-public-sans), 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-nunito-sans), sans-serif; font-family: var(--font-public-sans), sans-serif;
} }

View File

@@ -10,15 +10,15 @@
--accent: #ffffff; --accent: #ffffff;
--background-accent: #ffffff; */ --background-accent: #ffffff; */
--background: #ffffff; --background: #0a0a0a;
--card: #f9f9f9; --card: #1a1a1a;
--foreground: #000612e6; --foreground: #f5f5f5;
--primary-cta: #15479c; --primary-cta: #dfff1c;
--primary-cta-text: #ffffff; --primary-cta-text: #0a0a0a;
--secondary-cta: #f9f9f9; --secondary-cta: #1a1a1a;
--secondary-cta-text: #000612e6; --secondary-cta-text: #ffffff;
--accent: #e2e2e2; --accent: #8b9a1b;
--background-accent: #c4c4c4; --background-accent: #5d6b00;
/* 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);