Compare commits

..

34 Commits

Author SHA1 Message Date
d48d45ef8a Update src/app/fleet/page.tsx 2026-05-04 00:56:15 +00:00
5b596f0de7 Update src/app/fleet/page.tsx 2026-05-04 00:52:57 +00:00
d6273cd4fa Update src/app/fleet/page.tsx 2026-05-04 00:52:28 +00:00
104bfe419b Update src/app/fleet/page.tsx 2026-05-04 00:51:25 +00:00
0b58427c1e Update src/app/fleet/page.tsx 2026-05-04 00:50:25 +00:00
12b9e9e5f6 Update src/app/fleet/page.tsx 2026-05-03 21:50:43 +00:00
40e22c6c1f Update src/app/fleet/page.tsx 2026-05-03 21:42:37 +00:00
c3b2b5cdfa Update src/app/fleet/page.tsx 2026-05-03 21:41:40 +00:00
4a7177fd79 Update src/app/fleet/page.tsx 2026-05-03 21:38:17 +00:00
9b7ee252b6 Update src/app/fleet/page.tsx 2026-05-03 21:37:23 +00:00
0bdb5036e6 Update src/app/page.tsx 2026-05-03 21:36:01 +00:00
d35854958d Update src/app/fleet/page.tsx 2026-05-03 21:36:01 +00:00
ebab63930b Merge version_113 into main
Merge version_113 into main
2026-05-03 21:34:40 +00:00
aabb73e7a3 Update src/app/pricing/page.tsx 2026-05-03 21:34:36 +00:00
0137efcda2 Merge version_112 into main
Merge version_112 into main
2026-05-03 21:22:03 +00:00
88706d72ee Update src/app/privacy/page.tsx 2026-05-03 21:22:00 +00:00
949a142b2a Merge version_112 into main
Merge version_112 into main
2026-05-03 21:21:38 +00:00
80c2597e5e Update src/app/page.tsx 2026-05-03 21:21:35 +00:00
b42888c791 Switch to version 110: added src/app/privacy/page.tsx 2026-05-03 21:19:42 +00:00
0cc01e96cd Switch to version 110: modified src/app/page.tsx 2026-05-03 21:19:42 +00:00
79e3484559 Merge version_111 into main
Merge version_111 into main
2026-05-03 21:19:22 +00:00
395cdee793 Update src/app/page.tsx 2026-05-03 21:19:19 +00:00
9e0f0462cd Merge version_111 into main
Merge version_111 into main
2026-05-03 21:18:53 +00:00
c2c07572ca Update src/app/page.tsx 2026-05-03 21:18:47 +00:00
7c17efe05f Switch to version 108: remove src/app/privacy/page.tsx 2026-05-03 21:14:05 +00:00
517442bea7 Switch to version 108: modified src/app/page.tsx 2026-05-03 21:14:05 +00:00
f25e6eb562 Merge version_110 into main
Merge version_110 into main
2026-05-03 21:07:30 +00:00
98eb4035ee Merge version_110 into main
Merge version_110 into main
2026-05-03 21:07:04 +00:00
fc242e1ab6 Merge version_110 into main
Merge version_110 into main
2026-05-03 21:06:39 +00:00
78929ceacc Merge version_110 into main
Merge version_110 into main
2026-05-03 21:04:01 +00:00
6b9cc2444b Merge version_110 into main
Merge version_110 into main
2026-05-03 21:03:32 +00:00
893cc5ed5f Merge version_110 into main
Merge version_110 into main
2026-05-03 21:03:04 +00:00
ec9912a818 Merge version_110 into main
Merge version_110 into main
2026-05-03 21:02:38 +00:00
1fbda10e28 Merge version_110 into main
Merge version_110 into main
2026-05-03 21:02:13 +00:00
4 changed files with 54 additions and 56 deletions

View File

@@ -4,6 +4,7 @@ import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react"; import ReactLenis from "lenis/react";
import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline'; import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline';
import ProductCardTwo from '@/components/sections/product/ProductCardTwo'; import ProductCardTwo from '@/components/sections/product/ProductCardTwo';
import HeroBillboardRotatedCarousel from '@/components/sections/hero/HeroBillboardRotatedCarousel';
import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis'; import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis';
import { useState } from 'react'; import { useState } from 'react';
@@ -75,6 +76,22 @@ export default function FleetPage() {
/> />
</div> </div>
<div id="gallery" data-section="gallery">
<HeroBillboardRotatedCarousel
title="Our premium fleet interiors"
description="See the modern finishings of our 3 Station and rustic finishings of our 4 Station"
background={{ variant: "plain" }}
carouselItems={[
{ id: "1", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cr9i1HT3S4vLNiV9XJ6S4fk81W/uploaded-1777844630022-ryezs5em.jpg", imageAlt: "Event 1" },
{ id: "2", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cr9i1HT3S4vLNiV9XJ6S4fk81W/uploaded-1777844630022-ryezs5em.jpg", imageAlt: "Event 2" },
{ id: "3", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cr9i1HT3S4vLNiV9XJ6S4fk81W/uploaded-1777832277795-ebq2l26f.png", imageAlt: "Event 3" },
{ id: "4", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cr9i1HT3S4vLNiV9XJ6S4fk81W/uploaded-1777844457157-k1f0t370.png", imageAlt: "Event 4" },
{ id: "5", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cr9i1HT3S4vLNiV9XJ6S4fk81W/uploaded-1777832277795-ebq2l26f.png", imageAlt: "Event 5" },
{ id: "6", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cr9i1HT3S4vLNiV9XJ6S4fk81W/uploaded-1777844630022-ryezs5em.jpg", imageAlt: "Event 6" }
]}
/>
</div>
{popupContent && ( {popupContent && (
<div className="fixed inset-0 z-50 flex items-center justify-center p-4 bg-black/50 backdrop-blur-sm" onClick={() => setPopupContent(null)}> <div className="fixed inset-0 z-50 flex items-center justify-center p-4 bg-black/50 backdrop-blur-sm" onClick={() => setPopupContent(null)}>
<div className="bg-white p-8 rounded-lg max-w-2xl shadow-xl overflow-y-auto max-h-[90vh]" onClick={(e) => e.stopPropagation()}> <div className="bg-white p-8 rounded-lg max-w-2xl shadow-xl overflow-y-auto max-h-[90vh]" onClick={(e) => e.stopPropagation()}>

View File

@@ -8,7 +8,6 @@ import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloating
import ProductCardTwo from '@/components/sections/product/ProductCardTwo'; import ProductCardTwo from '@/components/sections/product/ProductCardTwo';
import FeatureCardOne from '@/components/sections/feature/FeatureCardOne'; import FeatureCardOne from '@/components/sections/feature/FeatureCardOne';
import TextSplitAbout from '@/components/sections/about/TextSplitAbout'; import TextSplitAbout from '@/components/sections/about/TextSplitAbout';
import HeroBillboardCarousel from '@/components/sections/hero/HeroBillboardCarousel';
export default function LandingPage() { export default function LandingPage() {
return ( return (
@@ -56,7 +55,7 @@ export default function LandingPage() {
{ text: "Get My Free Estimate", href: "/estimate" }, { text: "Get My Free Estimate", href: "/estimate" },
{ text: "View The Fleet", href: "/fleet" }, { text: "View The Fleet", href: "/fleet" },
]} ]}
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cr9i1HT3S4vLNiV9XJ6S4fk81W/uploaded-1777135032652-q27squi7.jpg" imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cr9i1HT3S4vLNiV9XJ6S4fk81W/uploaded-1777135032652-q27squi7.jpg?_wi=1"
mediaAnimation="slide-up" mediaAnimation="slide-up"
/> />
</div> </div>
@@ -67,7 +66,8 @@ export default function LandingPage() {
title="The CleanScene Difference" title="The CleanScene Difference"
titleClassName="text-[#0a7039]" titleClassName="text-[#0a7039]"
description={[ description={[
"We believe restrooms shouldn't just be functional - they should be part of the event design and experience.", "Our premium restroom trailers offer the comfort of a quality interior space to provide a modern hospitality experience.." "Transform the standard event experience by providing luxury sanitation facilities that your guests will truly appreciate.",
"Hiring premium restroom trailers means you are ensuring immaculate comfort and sophisticated design for your wedding, corporate gathering, or special event, removing any stress about guest facilities."
]} ]}
/> />
</div> </div>
@@ -79,29 +79,16 @@ export default function LandingPage() {
gridVariant="asymmetric-60-wide-40-narrow" gridVariant="asymmetric-60-wide-40-narrow"
useInvertedBackground={false} useInvertedBackground={false}
products={[ products={[
{ id: "p1", brand: "CleanScene", name: "3 Station, Private Floorplan Restroom Trailer", price: "$1,375 per day", rating: 5, reviewCount: "128", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cr9i1HT3S4vLNiV9XJ6S4fk81W/uploaded-1777832277795-ebq2l26f.png?_wi=2", onProductClick: () => window.location.href = "/fleet/p1" }, { id: "p1", brand: "CleanScene", name: "3 Station, Private Floorplan Restroom Trailer", price: "$1,375 per day", rating: 5, reviewCount: "128", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cr9i1HT3S4vLNiV9XJ6S4fk81W/uploaded-1777832277795-ebq2l26f.png?_wi=2", onProductClick: () => window.location.href = "/fleet" },
{ id: "p2", brand: "CleanScene", name: "4 Station, Community Floorplan Restroom Trailer", price: "$1,825 per day", rating: 5, reviewCount: "95", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cr9i1HT3S4vLNiV9XJ6S4fk81W/uploaded-1777832470445-mr4qosuh.png?_wi=1", onProductClick: () => window.location.href = "/fleet/p2" }, { id: "p2", brand: "CleanScene", name: "4 Station, Community Floorplan Restroom Trailer", price: "$1,825 per day", rating: 5, reviewCount: "95", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cr9i1HT3S4vLNiV9XJ6S4fk81W/uploaded-1777832470445-mr4qosuh.png?_wi=1", onProductClick: () => window.location.href = "/fleet" },
]} ]}
title="Our Premium Fleet" title="Our Premium Fleet"
textBoxTitleClassName="text-[#0a7039]" textBoxTitleClassName="text-[#0a7039]"
description="Made-in-USA trailers designed for peak comfort." description="Made-in-USA trailers designed for peak comfort."
buttons={[{ text: "View Full Specifications" }]} buttons={[{ text: "View Full Specifications", href: "/fleet" }]}
/> />
</div> </div>
<div id="hero-carousel" data-section="hero-carousel">
<HeroBillboardCarousel
title="Experience Luxury"
description="Our premium fleet in action at events across the region."
background={{ variant: "gradient-bars" }}
mediaItems={[
{ imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cr9i1HT3S4vLNiV9XJ6S4fk81W/uploaded-1777134554820-hv8fxndc.jpg", imageAlt: "Event scene 1" },
{ imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cr9i1HT3S4vLNiV9XJ6S4fk81W/uploaded-1777134554820-rdizvwfd.jpg?_wi=2", imageAlt: "Event scene 2" },
{ imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cr9i1HT3S4vLNiV9XJ6S4fk81W/uploaded-1777134554820-klkyjyqk.jpg", imageAlt: "Event scene 3" }
]}
/>
</div>
<div id="features" data-section="features"> <div id="features" data-section="features">
<FeatureCardOne <FeatureCardOne
animationType="slide-up" animationType="slide-up"
@@ -112,9 +99,9 @@ export default function LandingPage() {
cardTitleClassName="text-[#0a7039]" cardTitleClassName="text-[#0a7039]"
description="Our premium rental fleet is designed to fit seamlessly into any Northeast Wisconsin event and leave a lasting impression." description="Our premium rental fleet is designed to fit seamlessly into any Northeast Wisconsin event and leave a lasting impression."
features={[ features={[
{ title: "Weddings & Private Parties", description: "", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cr9i1HT3S4vLNiV9XJ6S4fk81W/uploaded-1777134554820-hv8fxndc.jpg" }, { title: "Weddings & Private Parties", description: "", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cr9i1HT3S4vLNiV9XJ6S4fk81W/uploaded-1777134554820-hv8fxndc.jpg?_wi=2" },
{ title: "Community Events", description: "", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cr9i1HT3S4vLNiV9XJ6S4fk81W/uploaded-1777134554820-rdizvwfd.jpg?_wi=2" }, { title: "Community Events", description: "", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cr9i1HT3S4vLNiV9XJ6S4fk81W/uploaded-1777134554820-rdizvwfd.jpg?_wi=2" },
{ title: "Corporate Events", description: "", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cr9i1HT3S4vLNiV9XJ6S4fk81W/uploaded-1777134554820-klkyjyqk.jpg" }, { title: "Corporate Events", description: "", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cr9i1HT3S4vLNiV9XJ6S4fk81W/uploaded-1777134554820-klkyjyqk.jpg?_wi=2" },
]} ]}
/> />
</div> </div>

View File

@@ -3,7 +3,7 @@
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider"; import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react"; import ReactLenis from "lenis/react";
import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline'; import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline';
import PricingCardTwo from '@/components/sections/pricing/PricingCardTwo'; import PricingCardEight from '@/components/sections/pricing/PricingCardEight';
import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis'; import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis';
export default function PricingPage() { export default function PricingPage() {
@@ -37,7 +37,7 @@ export default function PricingPage() {
/> />
</div> </div>
<div id="pricing" data-section="pricing"> <div id="pricing" data-section="pricing">
<PricingCardTwo <PricingCardEight
useInvertedBackground={false} useInvertedBackground={false}
animationType="slide-up" animationType="slide-up"
textboxLayout="split" textboxLayout="split"

View File

@@ -4,57 +4,51 @@ import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react"; import ReactLenis from "lenis/react";
import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline'; import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline';
import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis'; import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis';
import LegalSection from '@/components/legal/LegalSection';
export default function PrivacyPage() { export default function PrivacyPage() {
return ( return (
<ThemeProvider <ThemeProvider
defaultButtonVariant="expand-hover" defaultButtonVariant="expand-hover"
defaultTextAnimation="entrance-slide" defaultTextAnimation="background-highlight"
borderRadius="rounded" borderRadius="rounded"
contentWidth="medium" contentWidth="medium"
sizing="medium" sizing="largeSmallSizeLargeTitles"
background="circleGradient" background="blurBottom"
cardStyle="glass-elevated" cardStyle="soft-shadow"
primaryButtonStyle="gradient" primaryButtonStyle="radial-glow"
secondaryButtonStyle="glass" secondaryButtonStyle="solid"
headingFontWeight="normal" headingFontWeight="bold"
> >
<ReactLenis root> <ReactLenis root>
<div id="nav" data-section="nav"> <div id="nav" data-section="nav">
<NavbarLayoutFloatingInline <NavbarLayoutFloatingInline
navItems={[ navItems={[
{ name: "Home", id: "/" }, { name: "Home", id: "/" },
{ name: "Our Premium Fleet", id: "/fleet" }, { name: "Our Premium Fleet", id: "/fleet" },
{ name: "Contact us", id: "/contact-us" }, { name: "Contact us", id: "/contact-us" },
]} ]}
brandName="CleanScene" brandName="CleanScene"
logoSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cr9i1HT3S4vLNiV9XJ6S4fk81W/uploaded-1777837799704-b8guhfm1.png" logoSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cr9i1HT3S4vLNiV9XJ6S4fk81W/uploaded-1777837799704-b8guhfm1.png"
logoAlt="CleanScene Logo" logoAlt="CleanScene Logo"
button={{ text: "Get My Free Estimate", href: "/estimate" }} button={{ text: "Get My Free Estimate", href: "/estimate" }}
className="py-2" className="py-2"
/> />
</div> </div>
<div id="legal" data-section="legal"> <div id="content" className="py-20 px-6 max-w-4xl mx-auto">
<LegalSection <h1 className="text-4xl font-bold mb-8 text-[#0a7039]">Privacy Policy</h1>
layout="page" <div className="prose max-w-none">
title="Privacy Policy" <p>Welcome to CleanScene. This Privacy Policy explains how we collect, use, and protect your information when you visit our website or use our services.</p>
sections={[ </div>
{ heading: "Data Collection", content: { type: "paragraph", text: "We collect information you provide directly to us when you use our services." } },
{ heading: "Usage", content: { type: "list", items: ["To provide our services", "To improve user experience"] } },
{ heading: "Security", content: { type: "numbered-list", items: ["We use encryption", "We restrict access"] } }
]}
/>
</div> </div>
<div id="footer" data-section="footer"> <div id="footer" data-section="footer">
<FooterLogoEmphasis <FooterLogoEmphasis
columns={[ columns={[
{ items: [{ label: "Home", href: "/" }, { label: "Our Premium Fleet", href: "/fleet" }, { label: "Get My Free Estimate", href: "/estimate" }] }, { items: [{ label: "Home", href: "/" }, { label: "Our Premium Fleet", href: "/fleet" }, { label: "Get My Free Estimate", href: "/estimate" }] },
{ items: [{ label: "Contact Us", href: "/contact-us" }, { label: "Privacy Policy", href: "/privacy" }, { label: "Terms", href: "/terms" }] }, { items: [{ label: "Contact Us", href: "/contact-us" }, { label: "Privacy Policy", href: "/privacy" }, { label: "Terms", href: "/terms" }] },
]} ]}
logoText="CleanScene" logoText=""
/> />
</div> </div>
</ReactLenis> </ReactLenis>