Merge version_2 into main #1
202
src/app/page.tsx
202
src/app/page.tsx
@@ -11,6 +11,13 @@ import SocialProofOne from '@/components/sections/socialProof/SocialProofOne';
|
||||
import TestimonialCardOne from '@/components/sections/testimonial/TestimonialCardOne';
|
||||
|
||||
export default function LandingPage() {
|
||||
const scrollToContact = () => {
|
||||
const element = document.getElementById("contact");
|
||||
if (element) {
|
||||
element.scrollIntoView({ behavior: "smooth" });
|
||||
}
|
||||
};
|
||||
|
||||
return (
|
||||
<ThemeProvider
|
||||
defaultButtonVariant="bounce-effect"
|
||||
@@ -29,25 +36,16 @@ export default function LandingPage() {
|
||||
<NavbarStyleCentered
|
||||
navItems={[
|
||||
{
|
||||
name: "Home",
|
||||
id: "hero",
|
||||
},
|
||||
name: "Home", id: "hero"},
|
||||
{
|
||||
name: "Services",
|
||||
id: "services",
|
||||
},
|
||||
name: "Services", id: "services"},
|
||||
{
|
||||
name: "Reviews",
|
||||
id: "testimonials",
|
||||
},
|
||||
name: "Reviews", id: "testimonials"},
|
||||
{
|
||||
name: "Contact",
|
||||
id: "contact",
|
||||
},
|
||||
name: "Contact", id: "contact"},
|
||||
]}
|
||||
button={{
|
||||
text: "Get a Free Estimate",
|
||||
href: "#contact",
|
||||
text: "Get a Free Estimate", onClick: scrollToContact,
|
||||
}}
|
||||
brandName="Stonewood"
|
||||
/>
|
||||
@@ -56,64 +54,40 @@ export default function LandingPage() {
|
||||
<div id="hero" data-section="hero">
|
||||
<HeroCentered
|
||||
background={{
|
||||
variant: "gradient-bars",
|
||||
}}
|
||||
variant: "gradient-bars"}}
|
||||
title="Your property, always at its finest"
|
||||
description="Stonewood handles every season — from lush summer landscapes to reliable winter snow clearing — so you never worry about your property again."
|
||||
avatars={[
|
||||
{
|
||||
src: "http://img.b2bpic.net/free-photo/young-woman-with-beautiful-blond-hair-gentle-smile-dressed-green-robe-with-belt-is-working-greenhouse_197531-12316.jpg",
|
||||
alt: "Client 1",
|
||||
},
|
||||
src: "http://img.b2bpic.net/free-photo/young-woman-with-beautiful-blond-hair-gentle-smile-dressed-green-robe-with-belt-is-working-greenhouse_197531-12316.jpg", alt: "Client 1"},
|
||||
{
|
||||
src: "http://img.b2bpic.net/free-photo/man-sitting-near-house-looking-camera_259150-59313.jpg",
|
||||
alt: "Client 2",
|
||||
},
|
||||
src: "http://img.b2bpic.net/free-photo/man-sitting-near-house-looking-camera_259150-59313.jpg", alt: "Client 2"},
|
||||
{
|
||||
src: "http://img.b2bpic.net/free-photo/young-handsome-cheerful-gardener-smiling-watering-taking-care-plants_176420-3834.jpg",
|
||||
alt: "Client 3",
|
||||
},
|
||||
src: "http://img.b2bpic.net/free-photo/young-handsome-cheerful-gardener-smiling-watering-taking-care-plants_176420-3834.jpg", alt: "Client 3"},
|
||||
{
|
||||
src: "http://img.b2bpic.net/free-photo/woman-smiling_1187-3196.jpg",
|
||||
alt: "Client 4",
|
||||
},
|
||||
src: "http://img.b2bpic.net/free-photo/woman-smiling_1187-3196.jpg", alt: "Client 4"},
|
||||
{
|
||||
src: "http://img.b2bpic.net/free-photo/paradise-resort-sea-island-coast_1203-5692.jpg",
|
||||
alt: "Client 5",
|
||||
},
|
||||
src: "http://img.b2bpic.net/free-photo/paradise-resort-sea-island-coast_1203-5692.jpg", alt: "Client 5"},
|
||||
]}
|
||||
avatarText="7+ Years in Ottawa · Owner-operated · 4-season service"
|
||||
buttons={[
|
||||
{
|
||||
text: "Get a Free Estimate",
|
||||
href: "#contact",
|
||||
text: "Get a Free Estimate", onClick: scrollToContact,
|
||||
},
|
||||
{
|
||||
text: "See our work ↓",
|
||||
href: "#services",
|
||||
},
|
||||
text: "See our work ↓", href: "#services"},
|
||||
]}
|
||||
marqueeItems={[
|
||||
{
|
||||
type: "text",
|
||||
text: "Ottawa Local",
|
||||
},
|
||||
type: "text", text: "Ottawa Local"},
|
||||
{
|
||||
type: "text",
|
||||
text: "Fully Insured",
|
||||
},
|
||||
type: "text", text: "Fully Insured"},
|
||||
{
|
||||
type: "text",
|
||||
text: "Emergency Response",
|
||||
},
|
||||
type: "text", text: "Emergency Response"},
|
||||
{
|
||||
type: "text",
|
||||
text: "Seasonal Care",
|
||||
},
|
||||
type: "text", text: "Seasonal Care"},
|
||||
{
|
||||
type: "text",
|
||||
text: "Expert Team",
|
||||
},
|
||||
type: "text", text: "Expert Team"},
|
||||
]}
|
||||
/>
|
||||
</div>
|
||||
@@ -123,12 +97,7 @@ export default function LandingPage() {
|
||||
textboxLayout="default"
|
||||
useInvertedBackground={false}
|
||||
names={[
|
||||
"Licensed & Fully Insured",
|
||||
"Same-Day Emergency Snow Response",
|
||||
"Seasonal Contract Packages Available",
|
||||
"Google Verified Reviews",
|
||||
"Professional Local Team",
|
||||
]}
|
||||
"Licensed & Fully Insured", "Same-Day Emergency Snow Response", "Seasonal Contract Packages Available", "Google Verified Reviews", "Professional Local Team"]}
|
||||
title="Service Standards"
|
||||
description="Professional commitment to your property."
|
||||
/>
|
||||
@@ -141,35 +110,17 @@ export default function LandingPage() {
|
||||
useInvertedBackground={true}
|
||||
features={[
|
||||
{
|
||||
id: "s1",
|
||||
title: "Snow Removal",
|
||||
author: "Winter Service",
|
||||
description: "Reliable commercial-grade snow plowing and salting for driveways, walkways, and shared properties.",
|
||||
tags: [
|
||||
"Seasonal contracts available",
|
||||
],
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/long-road-surrounded-with-bushes-with-trees-covered-fog_181624-4510.jpg",
|
||||
},
|
||||
id: "s1", title: "Snow Removal", author: "Winter Service", description: "Reliable commercial-grade snow plowing and salting for driveways, walkways, and shared properties.", tags: [
|
||||
"Seasonal contracts available"],
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/long-road-surrounded-with-bushes-with-trees-covered-fog_181624-4510.jpg"},
|
||||
{
|
||||
id: "s2",
|
||||
title: "Lawn Care",
|
||||
author: "Summer Service",
|
||||
description: "Weekly or bi-weekly mowing, edging, and fertilization programs tailored to your property type.",
|
||||
tags: [
|
||||
"Spring & fall cleanups",
|
||||
],
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/close-up-woman-s-hand-holding-plant_23-2147907203.jpg",
|
||||
},
|
||||
id: "s2", title: "Lawn Care", author: "Summer Service", description: "Weekly or bi-weekly mowing, edging, and fertilization programs tailored to your property type.", tags: [
|
||||
"Spring & fall cleanups"],
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/close-up-woman-s-hand-holding-plant_23-2147907203.jpg"},
|
||||
{
|
||||
id: "s3",
|
||||
title: "Landscaping",
|
||||
author: "Design & Build",
|
||||
description: "Planting design, interlocking stone, garden beds, and full property transformations.",
|
||||
tags: [
|
||||
"Custom design quotes",
|
||||
],
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/stair-pattern_1203-2595.jpg",
|
||||
},
|
||||
id: "s3", title: "Landscaping", author: "Design & Build", description: "Planting design, interlocking stone, garden beds, and full property transformations.", tags: [
|
||||
"Custom design quotes"],
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/stair-pattern_1203-2595.jpg"},
|
||||
]}
|
||||
title="Our Services"
|
||||
description="Comprehensive seasonal care for Ottawa homes."
|
||||
@@ -184,45 +135,20 @@ export default function LandingPage() {
|
||||
useInvertedBackground={false}
|
||||
testimonials={[
|
||||
{
|
||||
id: "t1",
|
||||
name: "Rejean R.",
|
||||
role: "Client",
|
||||
company: "Ottawa",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/woman-with-eco-bag-with-fruit-country-side_1303-15249.jpg",
|
||||
},
|
||||
id: "t1", name: "Rejean R.", role: "Client", company: "Ottawa", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/woman-with-eco-bag-with-fruit-country-side_1303-15249.jpg"},
|
||||
{
|
||||
id: "t2",
|
||||
name: "Oreo O.",
|
||||
role: "Client",
|
||||
company: "Ottawa",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/nature-environment-young-dark-skinned-bearded-gardener-spending-time-garden-near-country-house-man-cutting-leaves-enjoying-summer-hot-weather-trees-shadow_176420-19886.jpg",
|
||||
},
|
||||
id: "t2", name: "Oreo O.", role: "Client", company: "Ottawa", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/nature-environment-young-dark-skinned-bearded-gardener-spending-time-garden-near-country-house-man-cutting-leaves-enjoying-summer-hot-weather-trees-shadow_176420-19886.jpg"},
|
||||
{
|
||||
id: "t3",
|
||||
name: "The Stonewood Team",
|
||||
role: "Owner",
|
||||
company: "Stonewood",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/confident-woman-standing-with-arms-crossed_107420-95955.jpg",
|
||||
},
|
||||
id: "t3", name: "The Stonewood Team", role: "Owner", company: "Stonewood", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/confident-woman-standing-with-arms-crossed_107420-95955.jpg"},
|
||||
{
|
||||
id: "t4",
|
||||
name: "Sarah J.",
|
||||
role: "Client",
|
||||
company: "Ottawa",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/pretty-woman-cute-clothes-reaching-plants-greenhouse_197531-12331.jpg",
|
||||
},
|
||||
id: "t4", name: "Sarah J.", role: "Client", company: "Ottawa", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/pretty-woman-cute-clothes-reaching-plants-greenhouse_197531-12331.jpg"},
|
||||
{
|
||||
id: "t5",
|
||||
name: "Mark D.",
|
||||
role: "Client",
|
||||
company: "Ottawa",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/man-street-using-mobile-phone_657883-744.jpg",
|
||||
},
|
||||
id: "t5", name: "Mark D.", role: "Client", company: "Ottawa", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/man-street-using-mobile-phone_657883-744.jpg"},
|
||||
]}
|
||||
title="Trusted by Ottawa neighbourhoods"
|
||||
description="Google Verified · Serving Ottawa clients since 2018"
|
||||
@@ -233,14 +159,11 @@ export default function LandingPage() {
|
||||
<ContactText
|
||||
useInvertedBackground={true}
|
||||
background={{
|
||||
variant: "sparkles-gradient",
|
||||
}}
|
||||
variant: "sparkles-gradient"}}
|
||||
text="Ready to work together? Our team responds same day. No obligation."
|
||||
buttons={[
|
||||
{
|
||||
text: "Request Free Estimate →",
|
||||
href: "#",
|
||||
},
|
||||
text: "Request Free Estimate →", href: "#"},
|
||||
]}
|
||||
/>
|
||||
</div>
|
||||
@@ -251,38 +174,25 @@ export default function LandingPage() {
|
||||
logoText="Stonewood Landscaping"
|
||||
columns={[
|
||||
{
|
||||
title: "Contact",
|
||||
items: [
|
||||
title: "Contact", items: [
|
||||
{
|
||||
label: "(613) 555-0123",
|
||||
href: "tel:+16135550123",
|
||||
},
|
||||
label: "(613) 555-0123", href: "tel:+16135550123"},
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Areas",
|
||||
items: [
|
||||
title: "Areas", items: [
|
||||
{
|
||||
label: "Glebe",
|
||||
href: "#",
|
||||
},
|
||||
label: "Glebe", href: "#"},
|
||||
{
|
||||
label: "Barrhaven",
|
||||
href: "#",
|
||||
},
|
||||
label: "Barrhaven", href: "#"},
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Links",
|
||||
items: [
|
||||
title: "Links", items: [
|
||||
{
|
||||
label: "Services",
|
||||
href: "#services",
|
||||
},
|
||||
label: "Services", href: "#services"},
|
||||
{
|
||||
label: "Reviews",
|
||||
href: "#testimonials",
|
||||
},
|
||||
label: "Reviews", href: "#testimonials"},
|
||||
],
|
||||
},
|
||||
]}
|
||||
@@ -291,4 +201,4 @@ export default function LandingPage() {
|
||||
</ReactLenis>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user