7 Commits

Author SHA1 Message Date
df7c40fb39 Update src/app/services/page.tsx 2026-03-03 12:54:47 +00:00
9b436fed33 Update src/app/portfolio/page.tsx 2026-03-03 12:54:46 +00:00
02fa808aea Update src/app/page.tsx 2026-03-03 12:54:45 +00:00
2223eb69df Update src/app/layout.tsx 2026-03-03 12:54:44 +00:00
78d873aaf0 Update src/app/contact/page.tsx 2026-03-03 12:54:44 +00:00
c31d18ef22 Update src/app/about/page.tsx 2026-03-03 12:54:43 +00:00
d23c13dfb6 Merge version_1 into main
Merge version_1 into main
2026-03-03 12:47:35 +00:00
6 changed files with 106 additions and 168 deletions

View File

@@ -29,7 +29,6 @@ export default function AboutPage() {
items: [ items: [
{ label: "About Us", href: "/about" }, { label: "About Us", href: "/about" },
{ label: "Contact", href: "/contact" }, { label: "Contact", href: "/contact" },
{ label: "Blog", href: "/blog" },
], ],
}, },
{ {
@@ -48,6 +47,10 @@ export default function AboutPage() {
}, },
]; ];
const handleContactSubmit = (email: string) => {
console.log("Partnership inquiry:", email);
};
return ( return (
<ThemeProvider <ThemeProvider
defaultButtonVariant="icon-arrow" defaultButtonVariant="icon-arrow"
@@ -81,7 +84,7 @@ export default function AboutPage() {
showBlur={true} showBlur={true}
showDimOverlay={true} showDimOverlay={true}
buttons={[ buttons={[
{ text: "Schedule Consultation", href: "/contact" }, { text: "Schedule Consultation", href: "/contact", onClick: () => window.location.href = "/contact" },
]} ]}
/> />
</div> </div>
@@ -114,6 +117,7 @@ export default function AboutPage() {
inputPlaceholder="Your email address" inputPlaceholder="Your email address"
buttonText="Schedule Now" buttonText="Schedule Now"
termsText="We respect your privacy. Your inquiry will be handled with complete confidentiality." termsText="We respect your privacy. Your inquiry will be handled with complete confidentiality."
onSubmit={(email: string) => handleContactSubmit(email)}
/> />
</div> </div>
@@ -125,4 +129,4 @@ export default function AboutPage() {
</div> </div>
</ThemeProvider> </ThemeProvider>
); );
} }

View File

@@ -27,7 +27,6 @@ export default function ContactPage() {
items: [ items: [
{ label: "About Us", href: "/about" }, { label: "About Us", href: "/about" },
{ label: "Contact", href: "/contact" }, { label: "Contact", href: "/contact" },
{ label: "Blog", href: "/blog" },
], ],
}, },
{ {
@@ -46,6 +45,11 @@ export default function ContactPage() {
}, },
]; ];
const handleContactSubmit = (email: string) => {
console.log("Contact form submitted:", email);
// Add form submission logic here
};
return ( return (
<ThemeProvider <ThemeProvider
defaultButtonVariant="icon-arrow" defaultButtonVariant="icon-arrow"
@@ -95,6 +99,7 @@ export default function ContactPage() {
inputPlaceholder="Your email address" inputPlaceholder="Your email address"
buttonText="Schedule Now" buttonText="Schedule Now"
termsText="We respect your privacy. Your consultation request will be handled with complete confidentiality." termsText="We respect your privacy. Your consultation request will be handled with complete confidentiality."
onSubmit={(email: string) => handleContactSubmit(email)}
/> />
</div> </div>
@@ -106,4 +111,4 @@ export default function ContactPage() {
</div> </div>
</ThemeProvider> </ThemeProvider>
); );
} }

View File

@@ -5,35 +5,21 @@ import { ServiceWrapper } from "@/components/ServiceWrapper";
import Tag from "@/tag/Tag"; import Tag from "@/tag/Tag";
const nunitoSans = Nunito_Sans({ const nunitoSans = Nunito_Sans({
variable: "--font-nunito-sans", variable: "--font-nunito-sans", subsets: ["latin"],
subsets: ["latin"],
}); });
export const metadata: Metadata = { export const metadata: Metadata = {
title: "Luxury Landscapes | Premium Estate Design & Maintenance", title: "Luxury Landscapes | Premium Estate Design & Maintenance", description: "Award-winning luxury landscape design and maintenance for high-net-worth homeowners. 25+ years of expertise in premium estate landscapes.", keywords: "luxury landscape design, estate landscaping, premium landscaping services, high-end garden design, luxury hardscape", metadataBase: new URL("https://luxurylandscapes.com"),
description: "Award-winning luxury landscape design and maintenance for high-net-worth homeowners. 25+ years of expertise in premium estate landscapes.",
keywords: "luxury landscape design, estate landscaping, premium landscaping services, high-end garden design, luxury hardscape",
metadataBase: new URL("https://luxurylandscapes.com"),
alternates: { alternates: {
canonical: "https://luxurylandscapes.com", canonical: "https://luxurylandscapes.com"},
},
openGraph: { openGraph: {
title: "Luxury Landscapes | Premium Estate Design & Maintenance", title: "Luxury Landscapes | Premium Estate Design & Maintenance", description: "Award-winning luxury landscape design and maintenance trusted by regional estates for 25+ years.", siteName: "Luxury Landscapes", type: "website", images: [
description: "Award-winning luxury landscape design and maintenance trusted by regional estates for 25+ years.",
siteName: "Luxury Landscapes",
type: "website",
images: [
{ {
url: "http://img.b2bpic.net/free-photo/big-stone-made-chinese-chess-inside-park_1112-1150.jpg", url: "http://img.b2bpic.net/free-photo/big-stone-made-chinese-chess-inside-park_1112-1150.jpg", alt: "Luxury landscape design and maintenance services"},
alt: "Luxury landscape design and maintenance services",
},
], ],
}, },
twitter: { twitter: {
card: "summary_large_image", card: "summary_large_image", title: "Luxury Landscapes | Premium Estate Design & Maintenance", description: "Award-winning luxury landscape design and maintenance for discerning homeowners.", images: ["http://img.b2bpic.net/free-photo/big-stone-made-chinese-chess-inside-park_1112-1150.jpg"],
title: "Luxury Landscapes | Premium Estate Design & Maintenance",
description: "Award-winning luxury landscape design and maintenance for discerning homeowners.",
images: ["http://img.b2bpic.net/free-photo/big-stone-made-chinese-chess-inside-park_1112-1150.jpg"],
}, },
robots: { robots: {
index: true, index: true,
@@ -1423,4 +1409,4 @@ export default function RootLayout({
</ServiceWrapper> </ServiceWrapper>
</html> </html>
); );
} }

View File

@@ -32,7 +32,6 @@ export default function HomePage() {
items: [ items: [
{ label: "About Us", href: "/about" }, { label: "About Us", href: "/about" },
{ label: "Contact", href: "/contact" }, { label: "Contact", href: "/contact" },
{ label: "Blog", href: "/blog" },
], ],
}, },
{ {
@@ -51,6 +50,21 @@ export default function HomePage() {
}, },
]; ];
const handleHeroButtonClick = (href: string) => {
if (href === "/portfolio" || href === "/contact") {
window.location.href = href;
}
};
const handlePortfolioClick = () => {
window.location.href = "/portfolio";
};
const handleContactSubmit = (email: string) => {
console.log("Contact form submitted with email:", email);
// Add actual submission logic here
};
return ( return (
<ThemeProvider <ThemeProvider
defaultButtonVariant="icon-arrow" defaultButtonVariant="icon-arrow"
@@ -84,8 +98,8 @@ export default function HomePage() {
showBlur={true} showBlur={true}
showDimOverlay={true} showDimOverlay={true}
buttons={[ buttons={[
{ text: "Schedule Your Consultation", href: "/contact" }, { text: "Schedule Your Consultation", href: "/contact", onClick: () => handleHeroButtonClick("/contact") },
{ text: "View Our Portfolio", href: "/portfolio" }, { text: "View Our Portfolio", href: "/portfolio", onClick: () => handleHeroButtonClick("/portfolio") },
]} ]}
/> />
</div> </div>
@@ -111,36 +125,33 @@ export default function HomePage() {
features={[ features={[
{ {
id: 1, id: 1,
title: "Custom Design Services", title: "Custom Design Services", description: "Bespoke landscape design tailored to your property's unique character and your vision for outdoor living.", buttons: [
description: "Bespoke landscape design tailored to your property's unique character and your vision for outdoor living.", { text: "Learn More", href: "/services", onClick: () => window.location.href = "/services" }
],
phoneOne: { phoneOne: {
imageSrc: "http://img.b2bpic.net/free-photo/greenhouse-owner-presenting-flowers-options-potential-customer-retailer_158595-7007.jpg?_wi=1", imageSrc: "http://img.b2bpic.net/free-photo/greenhouse-owner-presenting-flowers-options-potential-customer-retailer_158595-7007.jpg?_wi=1"},
},
phoneTwo: { phoneTwo: {
imageSrc: "http://img.b2bpic.net/free-photo/aerial-view-from-hong-kong_181624-34551.jpg?_wi=1", imageSrc: "http://img.b2bpic.net/free-photo/aerial-view-from-hong-kong_181624-34551.jpg?_wi=1"},
},
}, },
{ {
id: 2, id: 2,
title: "Hardscape & Stonework", title: "Hardscape & Stonework", description: "Premium hardscaping featuring hand-selected natural stone, pavers, and architectural elements.", buttons: [
description: "Premium hardscaping featuring hand-selected natural stone, pavers, and architectural elements.", { text: "View Gallery", href: "/portfolio", onClick: () => handlePortfolioClick() }
],
phoneOne: { phoneOne: {
imageSrc: "http://img.b2bpic.net/free-photo/path-way_74190-2125.jpg?_wi=1", imageSrc: "http://img.b2bpic.net/free-photo/path-way_74190-2125.jpg?_wi=1"},
},
phoneTwo: { phoneTwo: {
imageSrc: "http://img.b2bpic.net/free-photo/path-way_74190-2125.jpg?_wi=2", imageSrc: "http://img.b2bpic.net/free-photo/path-way_74190-2125.jpg?_wi=2"},
},
}, },
{ {
id: 3, id: 3,
title: "Maintenance Excellence", title: "Maintenance Excellence", description: "Meticulous seasonal maintenance programs ensuring year-round beauty and property value protection.", buttons: [
description: "Meticulous seasonal maintenance programs ensuring year-round beauty and property value protection.", { text: "Explore Program", href: "/services", onClick: () => window.location.href = "/services" }
],
phoneOne: { phoneOne: {
imageSrc: "http://img.b2bpic.net/free-photo/male-gardener-harvesting-flower-with-secateurs_23-2148165189.jpg?_wi=1", imageSrc: "http://img.b2bpic.net/free-photo/male-gardener-harvesting-flower-with-secateurs_23-2148165189.jpg?_wi=1"},
},
phoneTwo: { phoneTwo: {
imageSrc: "http://img.b2bpic.net/free-photo/gardener-with-weedwacker-cutting-grass-garden_329181-20539.jpg?_wi=1", imageSrc: "http://img.b2bpic.net/free-photo/gardener-with-weedwacker-cutting-grass-garden_329181-20539.jpg?_wi=1"},
},
}, },
]} ]}
showStepNumbers={true} showStepNumbers={true}
@@ -157,45 +168,17 @@ export default function HomePage() {
tag="Estate Projects" tag="Estate Projects"
products={[ products={[
{ {
id: "1", id: "1", brand: "Luxury Estates", name: "Historic Manor Grounds Restoration", price: "$185,000", rating: 5,
brand: "Luxury Estates", reviewCount: "12", imageSrc: "http://img.b2bpic.net/free-photo/miami-vizcaya-museum-garden-view_649448-4664.jpg?_wi=1", imageAlt: "Historic manor grounds restoration", onProductClick: () => window.location.href = "/portfolio"},
name: "Historic Manor Grounds Restoration",
price: "$185,000",
rating: 5,
reviewCount: "12",
imageSrc: "http://img.b2bpic.net/free-photo/miami-vizcaya-museum-garden-view_649448-4664.jpg?_wi=1",
imageAlt: "Historic manor grounds restoration",
},
{ {
id: "2", id: "2", brand: "Lakeside Properties", name: "Waterfront Contemporary Garden", price: "$220,000", rating: 5,
brand: "Lakeside Properties", reviewCount: "8", imageSrc: "http://img.b2bpic.net/free-photo/vertical-shot-path-green-park-with-trees-lake-blue-sky_181624-41119.jpg?_wi=1", imageAlt: "Waterfront contemporary garden design", onProductClick: () => window.location.href = "/portfolio"},
name: "Waterfront Contemporary Garden",
price: "$220,000",
rating: 5,
reviewCount: "8",
imageSrc: "http://img.b2bpic.net/free-photo/vertical-shot-path-green-park-with-trees-lake-blue-sky_181624-41119.jpg?_wi=1",
imageAlt: "Waterfront contemporary garden design",
},
{ {
id: "3", id: "3", brand: "Mountain Residences", name: "Alpine Landscape Masterpiece", price: "$195,000", rating: 5,
brand: "Mountain Residences", reviewCount: "10", imageSrc: "http://img.b2bpic.net/free-photo/field-covered-greenery-surrounded-by-hills-sunlight-blue-sky-daytime_181624-29107.jpg?_wi=1", imageAlt: "Alpine landscape masterpiece", onProductClick: () => window.location.href = "/portfolio"},
name: "Alpine Landscape Masterpiece",
price: "$195,000",
rating: 5,
reviewCount: "10",
imageSrc: "http://img.b2bpic.net/free-photo/field-covered-greenery-surrounded-by-hills-sunlight-blue-sky-daytime_181624-29107.jpg?_wi=1",
imageAlt: "Alpine landscape masterpiece",
},
{ {
id: "4", id: "4", brand: "Urban Luxury", name: "Downtown Penthouse Terrace", price: "$165,000", rating: 5,
brand: "Urban Luxury", reviewCount: "9", imageSrc: "http://img.b2bpic.net/free-photo/outdoor-patio-with-table-chair_74190-7542.jpg?_wi=1", imageAlt: "Downtown penthouse terrace landscape", onProductClick: () => window.location.href = "/portfolio"},
name: "Downtown Penthouse Terrace",
price: "$165,000",
rating: 5,
reviewCount: "9",
imageSrc: "http://img.b2bpic.net/free-photo/outdoor-patio-with-table-chair_74190-7542.jpg?_wi=1",
imageAlt: "Downtown penthouse terrace landscape",
},
]} ]}
gridVariant="bento-grid" gridVariant="bento-grid"
animationType="scale-rotate" animationType="scale-rotate"
@@ -208,35 +191,17 @@ export default function HomePage() {
<TestimonialCardTwelve <TestimonialCardTwelve
testimonials={[ testimonials={[
{ {
id: "1", id: "1", name: "Margaret Richardson", imageSrc: "http://img.b2bpic.net/free-photo/successful-businesswoman-ready-challenges_1163-4336.jpg"},
name: "Margaret Richardson",
imageSrc: "http://img.b2bpic.net/free-photo/successful-businesswoman-ready-challenges_1163-4336.jpg",
},
{ {
id: "2", id: "2", name: "James Whitmore", imageSrc: "http://img.b2bpic.net/free-photo/close-up-portrait-young-handsome-successful-man_1163-5475.jpg?_wi=1"},
name: "James Whitmore",
imageSrc: "http://img.b2bpic.net/free-photo/close-up-portrait-young-handsome-successful-man_1163-5475.jpg?_wi=1",
},
{ {
id: "3", id: "3", name: "Catherine Stone", imageSrc: "http://img.b2bpic.net/free-photo/closeup-smiling-beautiful-adult-businesswoman_1262-1760.jpg"},
name: "Catherine Stone",
imageSrc: "http://img.b2bpic.net/free-photo/closeup-smiling-beautiful-adult-businesswoman_1262-1760.jpg",
},
{ {
id: "4", id: "4", name: "Robert Chapman", imageSrc: "http://img.b2bpic.net/free-photo/close-up-portrait-young-handsome-successful-man_1163-5475.jpg?_wi=2"},
name: "Robert Chapman",
imageSrc: "http://img.b2bpic.net/free-photo/close-up-portrait-young-handsome-successful-man_1163-5475.jpg?_wi=2",
},
{ {
id: "5", id: "5", name: "Elizabeth Hartford", imageSrc: "http://img.b2bpic.net/free-photo/positive-confident-businesswoman-wearing-formal-suit-standing-with-arms-folded_74855-10328.jpg"},
name: "Elizabeth Hartford",
imageSrc: "http://img.b2bpic.net/free-photo/positive-confident-businesswoman-wearing-formal-suit-standing-with-arms-folded_74855-10328.jpg",
},
{ {
id: "6", id: "6", name: "David Ashford", imageSrc: "http://img.b2bpic.net/free-photo/close-up-portrait-young-handsome-successful-man_1163-5475.jpg?_wi=3"},
name: "David Ashford",
imageSrc: "http://img.b2bpic.net/free-photo/close-up-portrait-young-handsome-successful-man_1163-5475.jpg?_wi=3",
},
]} ]}
cardTitle="Trusted by over 300 high-net-worth homeowners and property managers throughout the region" cardTitle="Trusted by over 300 high-net-worth homeowners and property managers throughout the region"
cardTag="Client Testimonials" cardTag="Client Testimonials"
@@ -261,6 +226,7 @@ export default function HomePage() {
inputPlaceholder="Your email address" inputPlaceholder="Your email address"
buttonText="Schedule Now" buttonText="Schedule Now"
termsText="We respect your privacy. Your consultation request will be handled with complete confidentiality." termsText="We respect your privacy. Your consultation request will be handled with complete confidentiality."
onSubmit={(email: string) => handleContactSubmit(email)}
/> />
</div> </div>
@@ -272,4 +238,4 @@ export default function HomePage() {
</div> </div>
</ThemeProvider> </ThemeProvider>
); );
} }

View File

@@ -28,7 +28,6 @@ export default function PortfolioPage() {
items: [ items: [
{ label: "About Us", href: "/about" }, { label: "About Us", href: "/about" },
{ label: "Contact", href: "/contact" }, { label: "Contact", href: "/contact" },
{ label: "Blog", href: "/blog" },
], ],
}, },
{ {
@@ -47,6 +46,10 @@ export default function PortfolioPage() {
}, },
]; ];
const handleContactSubmit = (email: string) => {
console.log("Portfolio inquiry:", email);
};
return ( return (
<ThemeProvider <ThemeProvider
defaultButtonVariant="icon-arrow" defaultButtonVariant="icon-arrow"
@@ -80,7 +83,7 @@ export default function PortfolioPage() {
showBlur={true} showBlur={true}
showDimOverlay={true} showDimOverlay={true}
buttons={[ buttons={[
{ text: "Explore More", href: "/contact" }, { text: "Schedule Consultation", href: "/contact", onClick: () => window.location.href = "/contact" },
]} ]}
/> />
</div> </div>
@@ -92,45 +95,17 @@ export default function PortfolioPage() {
tag="Luxury Estate Projects" tag="Luxury Estate Projects"
products={[ products={[
{ {
id: "1", id: "1", brand: "Luxury Estates", name: "Historic Manor Grounds Restoration", price: "$185,000", rating: 5,
brand: "Luxury Estates", reviewCount: "12", imageSrc: "http://img.b2bpic.net/free-photo/miami-vizcaya-museum-garden-view_649448-4664.jpg?_wi=2", imageAlt: "Historic manor grounds restoration", onProductClick: () => window.location.href = "/contact"},
name: "Historic Manor Grounds Restoration",
price: "$185,000",
rating: 5,
reviewCount: "12",
imageSrc: "http://img.b2bpic.net/free-photo/miami-vizcaya-museum-garden-view_649448-4664.jpg?_wi=2",
imageAlt: "Historic manor grounds restoration",
},
{ {
id: "2", id: "2", brand: "Lakeside Properties", name: "Waterfront Contemporary Garden", price: "$220,000", rating: 5,
brand: "Lakeside Properties", reviewCount: "8", imageSrc: "http://img.b2bpic.net/free-photo/vertical-shot-path-green-park-with-trees-lake-blue-sky_181624-41119.jpg?_wi=2", imageAlt: "Waterfront contemporary garden design", onProductClick: () => window.location.href = "/contact"},
name: "Waterfront Contemporary Garden",
price: "$220,000",
rating: 5,
reviewCount: "8",
imageSrc: "http://img.b2bpic.net/free-photo/vertical-shot-path-green-park-with-trees-lake-blue-sky_181624-41119.jpg?_wi=2",
imageAlt: "Waterfront contemporary garden design",
},
{ {
id: "3", id: "3", brand: "Mountain Residences", name: "Alpine Landscape Masterpiece", price: "$195,000", rating: 5,
brand: "Mountain Residences", reviewCount: "10", imageSrc: "http://img.b2bpic.net/free-photo/field-covered-greenery-surrounded-by-hills-sunlight-blue-sky-daytime_181624-29107.jpg?_wi=2", imageAlt: "Alpine landscape masterpiece", onProductClick: () => window.location.href = "/contact"},
name: "Alpine Landscape Masterpiece",
price: "$195,000",
rating: 5,
reviewCount: "10",
imageSrc: "http://img.b2bpic.net/free-photo/field-covered-greenery-surrounded-by-hills-sunlight-blue-sky-daytime_181624-29107.jpg?_wi=2",
imageAlt: "Alpine landscape masterpiece",
},
{ {
id: "4", id: "4", brand: "Urban Luxury", name: "Downtown Penthouse Terrace", price: "$165,000", rating: 5,
brand: "Urban Luxury", reviewCount: "9", imageSrc: "http://img.b2bpic.net/free-photo/outdoor-patio-with-table-chair_74190-7542.jpg?_wi=2", imageAlt: "Downtown penthouse terrace landscape", onProductClick: () => window.location.href = "/contact"},
name: "Downtown Penthouse Terrace",
price: "$165,000",
rating: 5,
reviewCount: "9",
imageSrc: "http://img.b2bpic.net/free-photo/outdoor-patio-with-table-chair_74190-7542.jpg?_wi=2",
imageAlt: "Downtown penthouse terrace landscape",
},
]} ]}
gridVariant="bento-grid" gridVariant="bento-grid"
animationType="scale-rotate" animationType="scale-rotate"
@@ -153,6 +128,7 @@ export default function PortfolioPage() {
inputPlaceholder="Your email address" inputPlaceholder="Your email address"
buttonText="Schedule Now" buttonText="Schedule Now"
termsText="We respect your privacy. Your project inquiry will be handled with complete confidentiality." termsText="We respect your privacy. Your project inquiry will be handled with complete confidentiality."
onSubmit={(email: string) => handleContactSubmit(email)}
/> />
</div> </div>
@@ -164,4 +140,4 @@ export default function PortfolioPage() {
</div> </div>
</ThemeProvider> </ThemeProvider>
); );
} }

View File

@@ -28,7 +28,6 @@ export default function ServicesPage() {
items: [ items: [
{ label: "About Us", href: "/about" }, { label: "About Us", href: "/about" },
{ label: "Contact", href: "/contact" }, { label: "Contact", href: "/contact" },
{ label: "Blog", href: "/blog" },
], ],
}, },
{ {
@@ -47,6 +46,10 @@ export default function ServicesPage() {
}, },
]; ];
const handleContactSubmit = (email: string) => {
console.log("Service consultation requested:", email);
};
return ( return (
<ThemeProvider <ThemeProvider
defaultButtonVariant="icon-arrow" defaultButtonVariant="icon-arrow"
@@ -80,7 +83,7 @@ export default function ServicesPage() {
showBlur={true} showBlur={true}
showDimOverlay={true} showDimOverlay={true}
buttons={[ buttons={[
{ text: "Schedule Consultation", href: "/contact" }, { text: "Schedule Consultation", href: "/contact", onClick: () => window.location.href = "/contact" },
]} ]}
/> />
</div> </div>
@@ -92,36 +95,33 @@ export default function ServicesPage() {
features={[ features={[
{ {
id: 1, id: 1,
title: "Landscape Design & Planning", title: "Landscape Design & Planning", description: "Comprehensive design services that transform your vision into reality. Our team specializes in creating bespoke outdoor environments that reflect your lifestyle and property character.", buttons: [
description: "Comprehensive design services that transform your vision into reality. Our team specializes in creating bespoke outdoor environments that reflect your lifestyle and property character.", { text: "Request Design Consultation", href: "/contact", onClick: () => window.location.href = "/contact" }
],
phoneOne: { phoneOne: {
imageSrc: "http://img.b2bpic.net/free-photo/greenhouse-owner-presenting-flowers-options-potential-customer-retailer_158595-7007.jpg?_wi=2", imageSrc: "http://img.b2bpic.net/free-photo/greenhouse-owner-presenting-flowers-options-potential-customer-retailer_158595-7007.jpg?_wi=2"},
},
phoneTwo: { phoneTwo: {
imageSrc: "http://img.b2bpic.net/free-photo/aerial-view-from-hong-kong_181624-34551.jpg?_wi=2", imageSrc: "http://img.b2bpic.net/free-photo/aerial-view-from-hong-kong_181624-34551.jpg?_wi=2"},
},
}, },
{ {
id: 2, id: 2,
title: "Premium Hardscaping", title: "Premium Hardscaping", description: "Master stonework and hardscape installation featuring natural materials, custom paving, and architectural elements that elevate outdoor living spaces.", buttons: [
description: "Master stonework and hardscape installation featuring natural materials, custom paving, and architectural elements that elevate outdoor living spaces.", { text: "View Hardscape Examples", href: "/portfolio", onClick: () => window.location.href = "/portfolio" }
],
phoneOne: { phoneOne: {
imageSrc: "http://img.b2bpic.net/free-photo/path-way_74190-2125.jpg?_wi=3", imageSrc: "http://img.b2bpic.net/free-photo/path-way_74190-2125.jpg?_wi=3"},
},
phoneTwo: { phoneTwo: {
imageSrc: "http://img.b2bpic.net/free-photo/path-way_74190-2125.jpg?_wi=4", imageSrc: "http://img.b2bpic.net/free-photo/path-way_74190-2125.jpg?_wi=4"},
},
}, },
{ {
id: 3, id: 3,
title: "Year-Round Maintenance", title: "Year-Round Maintenance", description: "Professional seasonal maintenance programs ensuring your landscape remains pristine throughout the year with specialized pruning, care, and property management.", buttons: [
description: "Professional seasonal maintenance programs ensuring your landscape remains pristine throughout the year with specialized pruning, care, and property management.", { text: "Learn About Maintenance Plans", href: "/contact", onClick: () => window.location.href = "/contact" }
],
phoneOne: { phoneOne: {
imageSrc: "http://img.b2bpic.net/free-photo/male-gardener-harvesting-flower-with-secateurs_23-2148165189.jpg?_wi=2", imageSrc: "http://img.b2bpic.net/free-photo/male-gardener-harvesting-flower-with-secateurs_23-2148165189.jpg?_wi=2"},
},
phoneTwo: { phoneTwo: {
imageSrc: "http://img.b2bpic.net/free-photo/gardener-with-weedwacker-cutting-grass-garden_329181-20539.jpg?_wi=2", imageSrc: "http://img.b2bpic.net/free-photo/gardener-with-weedwacker-cutting-grass-garden_329181-20539.jpg?_wi=2"},
},
}, },
]} ]}
showStepNumbers={true} showStepNumbers={true}
@@ -145,6 +145,7 @@ export default function ServicesPage() {
inputPlaceholder="Your email address" inputPlaceholder="Your email address"
buttonText="Schedule Now" buttonText="Schedule Now"
termsText="We respect your privacy. Your service inquiry will be handled with complete confidentiality." termsText="We respect your privacy. Your service inquiry will be handled with complete confidentiality."
onSubmit={(email: string) => handleContactSubmit(email)}
/> />
</div> </div>
@@ -156,4 +157,4 @@ export default function ServicesPage() {
</div> </div>
</ThemeProvider> </ThemeProvider>
); );
} }