Compare commits

..

14 Commits

Author SHA1 Message Date
ca299742e7 Update src/app/page.tsx 2026-04-25 16:20:46 +00:00
ba58ad91e1 Update src/app/page.tsx 2026-04-25 16:20:08 +00:00
fa081ad32b Merge version_5 into main
Merge version_5 into main
2026-04-25 16:18:12 +00:00
b9068f2ff7 Update src/app/page.tsx 2026-04-25 16:18:09 +00:00
1f8320771f Update src/app/fleet/page.tsx 2026-04-25 16:18:08 +00:00
6f12f95c16 Update src/app/contact/page.tsx 2026-04-25 16:18:07 +00:00
c07ca560ff Merge version_4 into main
Merge version_4 into main
2026-04-25 16:17:31 +00:00
8da67926a6 Remove watermark 2026-04-25 16:17:27 +00:00
d50de78a41 Merge version_4 into main
Merge version_4 into main
2026-04-25 16:12:58 +00:00
83ba51f73d Update src/app/page.tsx 2026-04-25 16:12:54 +00:00
5a2c14bcef Merge version_3 into main
Merge version_3 into main
2026-04-25 16:11:47 +00:00
54cf46a45d Update src/app/page.tsx 2026-04-25 16:11:43 +00:00
324decc09d Merge version_2 into main
Merge version_2 into main
2026-04-25 16:10:50 +00:00
f2e747b9a3 Update src/app/page.tsx 2026-04-25 16:10:46 +00:00
4 changed files with 67 additions and 200 deletions

View File

@@ -25,19 +25,13 @@ export default function LandingPage() {
<NavbarLayoutFloatingOverlay <NavbarLayoutFloatingOverlay
navItems={[ navItems={[
{ {
name: "Home", name: "Home", id: "/"},
id: "/",
},
{ {
name: "Fleet", name: "Fleet", id: "/fleet"},
id: "/fleet",
},
{ {
name: "Contact", name: "Contact", id: "/contact"},
id: "/contact",
},
]} ]}
brandName="CleanScene" brandName="CleanScene Restroom Rentals"
/> />
</div> </div>
@@ -48,22 +42,14 @@ export default function LandingPage() {
description="Tell us about your event. We typically respond within 4 business hours." description="Tell us about your event. We typically respond within 4 business hours."
inputs={[ inputs={[
{ {
name: "name", name: "name", type: "text", placeholder: "Full Name", required: true,
type: "text",
placeholder: "Full Name",
required: true,
}, },
{ {
name: "email", name: "email", type: "email", placeholder: "Email Address", required: true,
type: "email",
placeholder: "Email Address",
required: true,
}, },
]} ]}
textarea={{ textarea={{
name: "message", name: "message", placeholder: "Tell us about your event details...", rows: 4,
placeholder: "Tell us about your event details...",
rows: 4,
}} }}
imageSrc="http://img.b2bpic.net/free-photo/happy-event-manager-banquet-hall_23-2148085332.jpg" imageSrc="http://img.b2bpic.net/free-photo/happy-event-manager-banquet-hall_23-2148085332.jpg"
/> />
@@ -75,32 +61,24 @@ export default function LandingPage() {
{ {
items: [ items: [
{ {
label: "Home", label: "Home", href: "/"},
href: "/",
},
{ {
label: "Fleet", label: "Fleet", href: "/fleet"},
href: "/fleet",
},
], ],
}, },
{ {
items: [ items: [
{ {
label: "Privacy Policy", label: "Privacy Policy", href: "#"},
href: "#",
},
{ {
label: "Terms", label: "Terms", href: "#"},
href: "#",
},
], ],
}, },
]} ]}
logoText="CleanScene" logoText="CleanScene Restroom Rentals"
/> />
</div> </div>
</ReactLenis> </ReactLenis>
</ThemeProvider> </ThemeProvider>
); );
} }

View File

@@ -25,19 +25,13 @@ export default function LandingPage() {
<NavbarLayoutFloatingOverlay <NavbarLayoutFloatingOverlay
navItems={[ navItems={[
{ {
name: "Home", name: "Home", id: "/"},
id: "/",
},
{ {
name: "Fleet", name: "Fleet", id: "/fleet"},
id: "/fleet",
},
{ {
name: "Contact", name: "Contact", id: "/contact"},
id: "/contact",
},
]} ]}
brandName="CleanScene" brandName="CleanScene Restroom Rentals"
/> />
</div> </div>
@@ -51,23 +45,11 @@ export default function LandingPage() {
description="Explore our complete range of high-end mobile restroom solutions." description="Explore our complete range of high-end mobile restroom solutions."
products={[ products={[
{ {
id: "f1", id: "f1", name: "2-Station Classic", price: "$750/day", imageSrc: "http://img.b2bpic.net/free-photo/backlit-mirror-minimalist-sink-spa-bathroom_169016-68891.jpg"},
name: "2-Station Classic",
price: "$750/day",
imageSrc: "http://img.b2bpic.net/free-photo/backlit-mirror-minimalist-sink-spa-bathroom_169016-68891.jpg",
},
{ {
id: "f2", id: "f2", name: "3-Station Executive", price: "$1200/day", imageSrc: "http://img.b2bpic.net/free-photo/close-up-bathtub-with-faucet_1203-1500.jpg"},
name: "3-Station Executive",
price: "$1200/day",
imageSrc: "http://img.b2bpic.net/free-photo/close-up-bathtub-with-faucet_1203-1500.jpg",
},
{ {
id: "f3", id: "f3", name: "5-Station Luxury Suite", price: "$1800/day", imageSrc: "http://img.b2bpic.net/free-photo/small-bathroom-space-with-modern-style-furniture_23-2150864622.jpg"},
name: "5-Station Luxury Suite",
price: "$1800/day",
imageSrc: "http://img.b2bpic.net/free-photo/small-bathroom-space-with-modern-style-furniture_23-2150864622.jpg",
},
]} ]}
/> />
</div> </div>
@@ -78,32 +60,24 @@ export default function LandingPage() {
{ {
items: [ items: [
{ {
label: "Home", label: "Home", href: "/"},
href: "/",
},
{ {
label: "Fleet", label: "Fleet", href: "/fleet"},
href: "/fleet",
},
], ],
}, },
{ {
items: [ items: [
{ {
label: "Privacy Policy", label: "Privacy Policy", href: "#"},
href: "#",
},
{ {
label: "Terms", label: "Terms", href: "#"},
href: "#",
},
], ],
}, },
]} ]}
logoText="CleanScene" logoText="CleanScene Restroom Rentals"
/> />
</div> </div>
</ReactLenis> </ReactLenis>
</ThemeProvider> </ThemeProvider>
); );
} }

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 { Public_Sans } from "next/font/google"; import { Public_Sans } from "next/font/google";
@@ -37,7 +36,7 @@ export default function RootLayout({
<html lang="en" suppressHydrationWarning> <html lang="en" suppressHydrationWarning>
<ServiceWrapper> <ServiceWrapper>
<body className={`${publicSans.variable} ${inter.variable} antialiased`}> <body className={`${publicSans.variable} ${inter.variable} antialiased`}>
<Tag />
{children} {children}
<script <script
dangerouslySetInnerHTML={{ dangerouslySetInnerHTML={{

View File

@@ -9,6 +9,7 @@ import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatin
import ProductCardTwo from '@/components/sections/product/ProductCardTwo'; import ProductCardTwo from '@/components/sections/product/ProductCardTwo';
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 { Crown } from "lucide-react";
export default function LandingPage() { export default function LandingPage() {
return ( return (
@@ -29,99 +30,64 @@ export default function LandingPage() {
<NavbarLayoutFloatingOverlay <NavbarLayoutFloatingOverlay
navItems={[ navItems={[
{ {
name: "Home", name: "Home", id: "/"},
id: "/",
},
{ {
name: "Fleet", name: "Fleet", id: "/fleet"},
id: "/fleet",
},
{ {
name: "Contact", name: "Contact", id: "/contact"},
id: "/contact",
},
]} ]}
brandName="CleanScene" brandName="CleanScene Restroom Rentals"
/> />
</div> </div>
<div id="hero" data-section="hero"> <div id="hero" data-section="hero">
<HeroSplitKpi <HeroSplitKpi
background={{ background={{
variant: "gradient-bars", variant: "gradient-bars"}}
}}
title="Set the Scene for a Flawless Event" title="Set the Scene for a Flawless Event"
description="Premium mobile restroom trailers delivered, staged, and serviced with the elegance of a boutique hotel. Elevate your Wisconsin event." description="Premium mobile restroom trailers delivered, staged, and serviced with the elegance of a boutique hotel. Elevate your Wisconsin event."
tag="Luxury Event Standards"
tagIcon={Crown}
kpis={[ kpis={[
{ {
value: "10+", value: "10+", label: "Counties Served"},
label: "Years Experience",
},
{ {
value: "500+", value: "100%", label: "Guest Comfort"},
label: "Events Served",
},
{ {
value: "100%", value: "24/7", label: "Service"},
label: "Guest Comfort",
},
]} ]}
enableKpiAnimation={true} enableKpiAnimation={true}
buttons={[ buttons={[
{ {
text: "Request Free Estimate", text: "Get My Free Quote", href: "/contact"},
href: "/contact",
},
{ {
text: "View The Fleet", text: "View The Fleet", href: "/fleet"},
href: "/fleet",
},
]} ]}
imageSrc="http://img.b2bpic.net/free-photo/front-view-large-transparent-window-with-opened-door-outside-which-newlyweds-posing-embracing-balcony-their-wedding-day_8353-12102.jpg" imageSrc="http://img.b2bpic.net/free-photo/front-view-large-transparent-window-with-opened-door-outside-which-newlyweds-posing-embracing-balcony-their-wedding-day_8353-12102.jpg"
mediaAnimation="slide-up" mediaAnimation="slide-up"
avatars={[ avatars={[
{ {
src: "http://img.b2bpic.net/free-photo/couple-backs-sitting-bed-with-her-head-resting-his-shoulder_1157-1293.jpg", src: "http://img.b2bpic.net/free-photo/couple-backs-sitting-bed-with-her-head-resting-his-shoulder_1157-1293.jpg", alt: "Couple of backs sitting on a bed with her head resting on his shoulder"},
alt: "Couple of backs sitting on a bed with her head resting on his shoulder",
},
{ {
src: "http://img.b2bpic.net/free-photo/long-white-dinner-table-with-sparkling-glassware-candleholders-stands-beach_1304-3243.jpg", src: "http://img.b2bpic.net/long-white-dinner-table-with-sparkling-glassware-candleholders-stands-beach_1304-3243.jpg", alt: "Long white dinner table with sparkling glassware and candleholders stands on the beach"},
alt: "Long white dinner table with sparkling glassware and candleholders stands on the beach",
},
{ {
src: "http://img.b2bpic.net/free-photo/table-setting-with-decorated-newlyweds-chairs-wedding-reception-hall_637285-989.jpg", src: "http://img.b2bpic.net/free-photo/table-setting-with-decorated-newlyweds-chairs-wedding-reception-hall_637285-989.jpg", alt: "Table setting with decorated newlyweds chairs in wedding reception hall"},
alt: "Table setting with decorated newlyweds chairs in wedding reception hall",
},
{ {
src: "http://img.b2bpic.net/free-photo/table-setting-with-floral-centerpiece-wedding-reception-venue_637285-5627.jpg", src: "http://img.b2bpic.net/free-photo/table-setting-with-floral-centerpiece-wedding-reception-venue_637285-5627.jpg", alt: "Table setting with floral centerpiece at wedding reception venue."},
alt: "Table setting with floral centerpiece at wedding reception venue.",
},
{ {
src: "http://img.b2bpic.net/free-photo/floral-compositions-made-greenery-outdoors-wedding-ceremony_8353-9788.jpg", src: "http://img.b2bpic.net/free-photo/floral-compositions-made-greenery-outdoors-wedding-ceremony_8353-9788.jpg", alt: "Floral compositions made of greenery at the outdoors wedding ceremony"},
alt: "Floral compositions made of greenery at the outdoors wedding ceremony",
},
]} ]}
marqueeItems={[ marqueeItems={[
{ {
type: "text", type: "text", text: "Luxury Restroom Trailers"},
text: "Luxury Restroom Trailers",
},
{ {
type: "text", type: "text", text: "Northeast Wisconsin"},
text: "Northeast Wisconsin",
},
{ {
type: "text", type: "text", text: "Event Perfection"},
text: "Event Perfection",
},
{ {
type: "text", type: "text", text: "Seamless Logistics"},
text: "Seamless Logistics",
},
{ {
type: "text", type: "text", text: "Premium Hospitality"},
text: "Premium Hospitality",
},
]} ]}
/> />
</div> </div>
@@ -131,9 +97,7 @@ export default function LandingPage() {
useInvertedBackground={false} useInvertedBackground={false}
title="The CleanScene Difference" title="The CleanScene Difference"
description={[ description={[
"We believe restrooms shouldn't just be functional—they should be part of the event design.", "We believe restrooms shouldn't just be functional—they should be part of the event design.", "Our trailers offer the comfort of an interior space with the luxury of modern hospitality."]}
"Our trailers offer the comfort of an interior space with the luxury of modern hospitality.",
]}
/> />
</div> </div>
@@ -145,23 +109,11 @@ export default function LandingPage() {
useInvertedBackground={false} useInvertedBackground={false}
products={[ products={[
{ {
id: "p1", id: "p1", brand: "CleanScene", name: "3-Station Private Suite", price: "Quote on Request", rating: 5,
brand: "CleanScene", reviewCount: "24", imageSrc: "http://img.b2bpic.net/free-photo/3d-rendering-modern-wood-stone-white-bathroom_105762-2136.jpg"},
name: "3-Station Private Suite",
price: "Quote on Request",
rating: 5,
reviewCount: "24",
imageSrc: "http://img.b2bpic.net/free-photo/3d-rendering-modern-wood-stone-white-bathroom_105762-2136.jpg",
},
{ {
id: "p2", id: "p2", brand: "CleanScene", name: "Executive Comfort Series", price: "Quote on Request", rating: 5,
brand: "CleanScene", reviewCount: "12", imageSrc: "http://img.b2bpic.net/free-photo/modern-bathroom-with-big-mirror_1203-1497.jpg"},
name: "Executive Comfort Series",
price: "Quote on Request",
rating: 5,
reviewCount: "12",
imageSrc: "http://img.b2bpic.net/free-photo/modern-bathroom-with-big-mirror_1203-1497.jpg",
},
]} ]}
title="Our Curated Fleet" title="Our Curated Fleet"
description="Made-in-USA trailers designed for peak comfort." description="Made-in-USA trailers designed for peak comfort."
@@ -175,40 +127,15 @@ export default function LandingPage() {
useInvertedBackground={false} useInvertedBackground={false}
testimonials={[ testimonials={[
{ {
id: "1", id: "1", name: "Sarah J.", handle: "Bride", testimonial: "The trailers were immaculate. My guests couldn't stop talking about them.", imageSrc: "http://img.b2bpic.net/free-photo/beautiful-wedding-arch-seats_1303-10480.jpg"},
name: "Sarah J.",
handle: "Bride",
testimonial: "The trailers were immaculate. My guests couldn't stop talking about them.",
imageSrc: "http://img.b2bpic.net/free-photo/beautiful-wedding-arch-seats_1303-10480.jpg",
},
{ {
id: "2", id: "2", name: "Mark D.", handle: "Event Planner", testimonial: "Professional service from start to finish. Highly recommend.", imageSrc: "http://img.b2bpic.net/free-photo/smiling-young-woman-standing-near-window-talking-mobile-phone_23-2147974633.jpg"},
name: "Mark D.",
handle: "Event Planner",
testimonial: "Professional service from start to finish. Highly recommend.",
imageSrc: "http://img.b2bpic.net/free-photo/smiling-young-woman-standing-near-window-talking-mobile-phone_23-2147974633.jpg",
},
{ {
id: "3", id: "3", name: "Emily R.", handle: "Estate Owner", testimonial: "CleanScene adds a level of sophistication we've never had before.", imageSrc: "http://img.b2bpic.net/free-photo/close-up-gorgeous-couple-embracing-each-other-while-holding-glasses-wine-hands_482257-11118.jpg"},
name: "Emily R.",
handle: "Estate Owner",
testimonial: "CleanScene adds a level of sophistication we've never had before.",
imageSrc: "http://img.b2bpic.net/free-photo/close-up-gorgeous-couple-embracing-each-other-while-holding-glasses-wine-hands_482257-11118.jpg",
},
{ {
id: "4", id: "4", name: "Tom K.", handle: "Festival Producer", testimonial: "Reliable, clean, and exactly what we needed for the crowds.", imageSrc: "http://img.b2bpic.net/free-photo/high-angle-young-people-partying-together_23-2149739854.jpg"},
name: "Tom K.",
handle: "Festival Producer",
testimonial: "Reliable, clean, and exactly what we needed for the crowds.",
imageSrc: "http://img.b2bpic.net/free-photo/high-angle-young-people-partying-together_23-2149739854.jpg",
},
{ {
id: "5", id: "5", name: "Jessica W.", handle: "Wedding Planner", testimonial: "Flawless delivery and staging. Truly elevated the guest experience.", imageSrc: "http://img.b2bpic.net/free-photo/female-wedding-planner-working-ceremony_23-2150167220.jpg"},
name: "Jessica W.",
handle: "Wedding Planner",
testimonial: "Flawless delivery and staging. Truly elevated the guest experience.",
imageSrc: "http://img.b2bpic.net/free-photo/female-wedding-planner-working-ceremony_23-2150167220.jpg",
},
]} ]}
title="Trusted by Wisconsin Events" title="Trusted by Wisconsin Events"
description="See why top wedding planners and corporate event organizers trust us." description="See why top wedding planners and corporate event organizers trust us."
@@ -219,14 +146,11 @@ export default function LandingPage() {
<ContactText <ContactText
useInvertedBackground={false} useInvertedBackground={false}
background={{ background={{
variant: "plain", variant: "plain"}}
}}
text="Ready to elevate your event experience? Get in touch with our team today to secure your dates and discover our premium staging options." text="Ready to elevate your event experience? Get in touch with our team today to secure your dates and discover our premium staging options."
buttons={[ buttons={[
{ {
text: "Contact Us Now", text: "Request My Free Quote", href: "/contact"},
href: "/contact",
},
]} ]}
/> />
</div> </div>
@@ -237,29 +161,21 @@ export default function LandingPage() {
{ {
items: [ items: [
{ {
label: "Home", label: "Home", href: "/"},
href: "/",
},
{ {
label: "Fleet", label: "Fleet", href: "/fleet"},
href: "/fleet",
},
], ],
}, },
{ {
items: [ items: [
{ {
label: "Privacy Policy", label: "Privacy Policy", href: "#"},
href: "#",
},
{ {
label: "Terms", label: "Terms", href: "#"},
href: "#",
},
], ],
}, },
]} ]}
logoText="CleanScene" logoText="CleanScene Restroom Rentals"
/> />
</div> </div>
</ReactLenis> </ReactLenis>