Merge version_1_1781553415432 into main #1

Merged
bender merged 3 commits from version_1_1781553415432 into main 2026-06-15 19:58:11 +00:00
2 changed files with 125 additions and 310 deletions

View File

@@ -7,101 +7,56 @@ import { StyleProvider } from "@/components/ui/StyleProvider";
export default function Layout() {
const navItems = [
{
"name": "About",
"href": "#about"
},
{
"name": "Services",
"href": "#services"
},
{
"name": "Pricing",
"href": "#pricing"
},
{
"name": "Reviews",
"href": "#testimonials"
},
{
"name": "Hero",
"href": "#hero"
},
{
"name": "Metrics",
"href": "#metrics"
},
{
"name": "Faq",
"href": "#faq"
}
];
{ name: "About", href: "#about" },
{ name: "Services", href: "#services" },
{ name: "Pricing", href: "#pricing" },
{ name: "Reviews", href: "#testimonials" },
{ name: "Hero", href: "#hero" },
{ name: "Metrics", href: "#metrics" },
{ name: "Faq", href: "#faq" }
];
return (
<StyleProvider buttonVariant="expand" siteBackground="aurora" heroBackground="horizonGlow">
<SiteBackgroundSlot />
<SectionErrorBoundary name="navbar">
<NavbarFloatingLogo
logo="ECC Lawn Mowing"
ctaButton={{
text: "Free Quote",
href: "#contact",
}}
navItems={navItems} />
logo="ECC Lawn Mowing"
logoImageSrc="https://storage.googleapis.com/webild/default/no-image.jpg?id=cwevjb"
ctaButton={{
text: "Free Quote", href: "#contact"}}
navItems={navItems}
/>
</SectionErrorBoundary>
<main className="flex-grow">
<Outlet />
</main>
<SectionErrorBoundary name="footer">
<FooterBrand
brand="ECC Lawn Mowing"
columns={[
{
items: [
brand="ECC Lawn Mowing"
columns={[
{
label: "About Us",
href: "#about",
items: [
{ label: "About Us", href: "#about" },
{ label: "Services", href: "#services" },
{ label: "Pricing", href: "#pricing" }
]
},
{
label: "Services",
href: "#services",
items: [
{ label: "Contact", href: "#contact" },
{ label: "Book Now", href: "#contact" },
{ label: "FAQs", href: "#faq" }
]
},
{
label: "Pricing",
href: "#pricing",
},
],
},
{
items: [
{
label: "Contact",
href: "#contact",
},
{
label: "Book Now",
href: "#contact",
},
{
label: "FAQs",
href: "#faq",
},
],
},
{
items: [
{
label: "Privacy Policy",
href: "#",
},
{
label: "Terms of Service",
href: "#",
},
],
},
]}
/>
items: [
{ label: "Privacy Policy", href: "#" },
{ label: "Terms of Service", href: "#" }
]
}
]}
/>
</SectionErrorBoundary>
</StyleProvider>
);

View File

@@ -11,252 +11,112 @@ import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function HomePage() {
return (
<>
<div id="hero" data-section="hero">
<SectionErrorBoundary name="hero">
<div id="hero" data-section="hero">
<SectionErrorBoundary name="hero">
<HeroCenteredLogos
title="Professional Lawn Care, Hassle-Free"
description="From one-time cuts to ongoing maintenance plans, ECC keeps your yard looking perfect year-round. Choose the service that fits your schedule."
primaryButton={{
text: "Get Your Free Quote",
href: "#contact",
}}
secondaryButton={{
text: "View Services",
href: "#services",
}}
imageSrc="http://img.b2bpic.net/free-photo/people-helping-neighbors-with-grass-lawn_23-2149139731.jpg"
/>
</SectionErrorBoundary>
</div>
title="Professional Lawn Care, Hassle-Free"
description="From one-time cuts to ongoing maintenance plans, ECC keeps your yard looking perfect year-round. Choose the service that fits your schedule."
primaryButton={{
text: "Get Your Free Quote", href: "#contact"}}
secondaryButton={{
text: "View Services", href: "#services"}}
avatarsSrc={[]}
avatarText=""
names={[]}
imageSrc="http://img.b2bpic.net/free-photo/people-helping-neighbors-with-grass-lawn_23-2149139731.jpg"
/>
</SectionErrorBoundary>
</div>
<div id="about" data-section="about">
<SectionErrorBoundary name="about">
<AboutText
title="Reliable lawn maintenance for busy homeowners. We pride ourselves on attention to detail and consistent, high-quality results that you can trust every single week."
/>
</SectionErrorBoundary>
</div>
<div id="about" data-section="about">
<SectionErrorBoundary name="about">
<AboutText title="Reliable lawn maintenance for busy homeowners. We pride ourselves on attention to detail and consistent, high-quality results that you can trust every single week." />
</SectionErrorBoundary>
</div>
<div id="services" data-section="services">
<SectionErrorBoundary name="services">
<div id="services" data-section="services">
<SectionErrorBoundary name="services">
<FeaturesRevealCardsBento
tag="Our Services"
title="Complete Lawn Care Solutions"
description="Comprehensive maintenance packages tailored to keep your outdoor space thriving."
items={[
{
title: "Regular Mowing",
description: "Weekly or bi-weekly professional mowing for a manicured look.",
href: "#contact",
imageSrc: "http://img.b2bpic.net/free-photo/full-shot-man-driving-lawn-mower_23-2149382194.jpg",
},
{
title: "Trimming & Edging",
description: "Precise detailing for sidewalks and garden borders.",
href: "#contact",
imageSrc: "http://img.b2bpic.net/free-photo/worker-is-cutting-grass-with-hose_7502-9835.jpg",
},
{
title: "Seasonal Cleanup",
description: "Spring and fall clearing for a pristine yard year-round.",
href: "#contact",
imageSrc: "http://img.b2bpic.net/free-photo/plastic-fan-rake-pile-dry-golden-leaves-autumn-season-view-from-raked-leaves-with_7502-10269.jpg",
},
{
title: "Hedge Care",
description: "Shaping and trimming to keep hedges healthy and neat.",
href: "#contact",
imageSrc: "http://img.b2bpic.net/free-photo/fork-harrows-grass_1339-7746.jpg",
},
{
title: "Fertilization",
description: "Professional treatments for lush, green, healthy grass.",
href: "#contact",
imageSrc: "http://img.b2bpic.net/free-photo/serrated-metal-rake-garden-cleaning_169016-10696.jpg",
},
{
title: "Leaf Removal",
description: "Efficient clearing to prevent damage and keep lawns clean.",
href: "#contact",
imageSrc: "http://img.b2bpic.net/free-photo/couple-collects-leaves-cleans-park_1157-27421.jpg",
},
{
title: "Lawn Aeration",
description: "Core aeration to promote deep root growth and nutrient health.",
href: "#contact",
imageSrc: "http://img.b2bpic.net/free-photo/flat-lay-plant-gardening-tools-with-copyspace_23-2148198727.jpg",
},
]}
/>
</SectionErrorBoundary>
</div>
tag="Our Services"
title="Complete Lawn Care Solutions"
description="Comprehensive maintenance packages tailored to keep your outdoor space thriving."
items={[
{ title: "Regular Mowing", description: "Weekly or bi-weekly professional mowing for a manicured look.", href: "#contact", imageSrc: "http://img.b2bpic.net/free-photo/full-shot-man-driving-lawn-mower_23-2149382194.jpg" },
{ title: "Trimming & Edging", description: "Precise detailing for sidewalks and garden borders.", href: "#contact", imageSrc: "http://img.b2bpic.net/free-photo/worker-is-cutting-grass-with-hose_7502-9835.jpg" },
{ title: "Seasonal Cleanup", description: "Spring and fall clearing for a pristine yard year-round.", href: "#contact", imageSrc: "http://img.b2bpic.net/free-photo/plastic-fan-rake-pile-dry-golden-leaves-autumn-season-view-from-raked-leaves-with_7502-10269.jpg" },
{ title: "Hedge Care", description: "Shaping and trimming to keep hedges healthy and neat.", href: "#contact", imageSrc: "http://img.b2bpic.net/free-photo/fork-harrows-grass_1339-7746.jpg" },
{ title: "Fertilization", description: "Professional treatments for lush, green, healthy grass.", href: "#contact", imageSrc: "http://img.b2bpic.net/free-photo/serrated-metal-rake-garden-cleaning_169016-10696.jpg" },
{ title: "Leaf Removal", description: "Efficient clearing to prevent damage and keep lawns clean.", href: "#contact", imageSrc: "http://img.b2bpic.net/free-photo/couple-collects-leaves-cleans-park_1157-27421.jpg" },
{ title: "Lawn Aeration", description: "Core aeration to promote deep root growth and nutrient health.", href: "#contact", imageSrc: "http://img.b2bpic.net/free-photo/flat-lay-plant-gardening-tools-with-copyspace_23-2148198727.jpg" }
]}
/>
</SectionErrorBoundary>
</div>
<div id="pricing" data-section="pricing">
<SectionErrorBoundary name="pricing">
<div id="pricing" data-section="pricing">
<SectionErrorBoundary name="pricing">
<PricingLayeredCards
tag="Maintenance Plans"
title="Flexible Service Options"
description="Competitive pricing with no hidden fees."
plans={[
{
tag: "Essential",
price: "$45/cut",
description: "Basic weekly mowing and trimming.",
primaryButton: {
text: "Book Now",
href: "#contact",
},
features: [
"Weekly Mowing",
"Basic Edging",
"Grass Clippings Removal",
],
},
{
tag: "Premier",
price: "$85/visit",
description: "Comprehensive care including seasonal cleanup.",
primaryButton: {
text: "Book Now",
href: "#contact",
},
features: [
"All Essential Features",
"Hedge Shaping",
"Monthly Fertilization",
"Leaf Management",
],
},
{
tag: "Custom",
price: "Contact Us",
description: "Tailored plans for large estates and special requests.",
primaryButton: {
text: "Get Custom Quote",
href: "#contact",
},
features: [
"Tailored Scheduling",
"Full Lawn Restoration",
"Ongoing Consultations",
],
},
]}
/>
</SectionErrorBoundary>
</div>
tag="Maintenance Plans"
title="Flexible Service Options"
description="Competitive pricing with no hidden fees."
plans={[
{ tag: "Essential", price: "$45/cut", description: "Basic weekly mowing and trimming.", primaryButton: { text: "Book Now", href: "#contact" }, features: ["Weekly Mowing", "Basic Edging", "Grass Clippings Removal"] },
{ tag: "Premier", price: "$85/visit", description: "Comprehensive care including seasonal cleanup.", primaryButton: { text: "Book Now", href: "#contact" }, features: ["All Essential Features", "Hedge Shaping", "Monthly Fertilization", "Leaf Management"] },
{ tag: "Custom", price: "Contact Us", description: "Tailored plans for large estates and special requests.", primaryButton: { text: "Get Custom Quote", href: "#contact" }, features: ["Tailored Scheduling", "Full Lawn Restoration", "Ongoing Consultations"] }
]}
/>
</SectionErrorBoundary>
</div>
<div id="metrics" data-section="metrics">
<SectionErrorBoundary name="metrics">
<div id="metrics" data-section="metrics">
<SectionErrorBoundary name="metrics">
<MetricsSimpleCards
tag="Our Impact"
title="Quality You Can See"
description="Trusted by hundreds of local homeowners to keep properties looking their best."
metrics={[
{
value: "500+",
description: "Lawns Maintained Weekly",
},
{
value: "15+",
description: "Years of Local Expertise",
},
{
value: "100%",
description: "Customer Satisfaction",
},
]}
/>
</SectionErrorBoundary>
</div>
tag="Our Impact"
title="Quality You Can See"
description="Trusted by hundreds of local homeowners to keep properties looking their best."
metrics={[{ value: "500+", description: "Lawns Maintained Weekly" }, { value: "15+", description: "Years of Local Expertise" }, { value: "100%", description: "Customer Satisfaction" }]}
/>
</SectionErrorBoundary>
</div>
<div id="testimonials" data-section="testimonials">
<SectionErrorBoundary name="testimonials">
<div id="testimonials" data-section="testimonials">
<SectionErrorBoundary name="testimonials">
<TestimonialRatingCards
tag="Trusted by Local Homeowners"
title="What Our Clients Say"
description="We treat every lawn like our own, and our customers notice the difference."
testimonials={[
{
name: "Sarah J.",
role: "Suburban Homeowner",
quote: "ECC Lawn Mowing is the most reliable service we have used. Always on time and my lawn looks perfect every single week.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/woman-walking-romantic-happy-holidays-holding-hand-boyfriend-following-her_1150-4660.jpg",
},
{
name: "Mike R.",
role: "Local Resident",
quote: "Finally found a team that takes care of the small details like edging and hedge trimming. Exceptional quality.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/full-shot-man-carrying-woman-with-wheelbarrow_23-2149382171.jpg",
},
{
name: "Emily T.",
role: "Busy Professional",
quote: "I have no time for yard work, and ECC has been a lifesaver. Consistent, professional, and very easy to work with.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/happy-attractive-male-gardener-glasses-posing-while-trimming-bush-with-electric-hedge-clippers_7502-10137.jpg",
},
{
name: "David W.",
role: "Homeowner",
quote: "Very friendly team and the results are consistently great. Best lawn service I've ever booked.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-woman-with-potted-plant_23-2149722633.jpg",
},
{
name: "Jennifer L.",
role: "Long-term Client",
quote: "Trustworthy, efficient, and they always leave the yard spotless. Highly recommend for any homeowner.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/man-talking-smartphone-sitting-open-terrace_259150-59317.jpg",
},
]}
/>
</SectionErrorBoundary>
</div>
tag="Trusted by Local Homeowners"
title="What Our Clients Say"
description="We treat every lawn like our own, and our customers notice the difference."
testimonials={[
{ name: "Sarah J.", role: "Suburban Homeowner", quote: "ECC Lawn Mowing is the most reliable service we have used. Always on time and my lawn looks perfect every single week.", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/woman-walking-romantic-happy-holidays-holding-hand-boyfriend-following-her_1150-4660.jpg" },
{ name: "Mike R.", role: "Local Resident", quote: "Finally found a team that takes care of the small details like edging and hedge trimming. Exceptional quality.", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/full-shot-man-carrying-woman-with-wheelbarrow_23-2149382171.jpg" },
{ name: "Emily T.", role: "Busy Professional", quote: "I have no time for yard work, and ECC has been a lifesaver. Consistent, professional, and very easy to work with.", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/happy-attractive-male-gardener-glasses-posing-while-trimming-bush-with-electric-hedge-clippers_7502-10137.jpg" },
{ name: "David W.", role: "Homeowner", quote: "Very friendly team and the results are consistently great. Best lawn service I've ever booked.", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-woman-with-potted-plant_23-2149722633.jpg" },
{ name: "Jennifer L.", role: "Long-term Client", quote: "Trustworthy, efficient, and they always leave the yard spotless. Highly recommend for any homeowner.", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/man-talking-smartphone-sitting-open-terrace_259150-59317.jpg" }
]}
/>
</SectionErrorBoundary>
</div>
<div id="faq" data-section="faq">
<SectionErrorBoundary name="faq">
<div id="faq" data-section="faq">
<SectionErrorBoundary name="faq">
<FaqSimple
tag="Need Help?"
title="Frequently Asked Questions"
description="Answers to common questions about our lawn care services."
items={[
{
question: "What areas do you serve?",
answer: "We currently provide lawn mowing services throughout the greater metro suburban region. Contact us with your address for a check.",
},
{
question: "Do I need to be home for service?",
answer: "No, you don't need to be home. As long as our crew has access to your yard, we can perform all services.",
},
{
question: "Can I cancel or reschedule easily?",
answer: "Yes, we offer flexible scheduling and easy cancellation with 24 hours notice.",
},
]}
/>
</SectionErrorBoundary>
</div>
tag="Need Help?"
title="Frequently Asked Questions"
description="Answers to common questions about our lawn care services."
items={[{ question: "What areas do you serve?", answer: "We currently provide lawn mowing services throughout the greater metro suburban region. Contact us with your address for a check." }, { question: "Do I need to be home for service?", answer: "No, you don't need to be home. As long as our crew has access to your yard, we can perform all services." }, { question: "Can I cancel or reschedule easily?", answer: "Yes, we offer flexible scheduling and easy cancellation with 24 hours notice." }]}
/>
</SectionErrorBoundary>
</div>
<div id="contact" data-section="contact">
<SectionErrorBoundary name="contact">
<div id="contact" data-section="contact">
<SectionErrorBoundary name="contact">
<ContactCta
tag="Ready for a perfect lawn?"
text="Get a free, no-obligation quote for your property today and experience hassle-free maintenance."
primaryButton={{
text: "Get Your Free Quote",
href: "#",
}}
secondaryButton={{
text: "Call Now",
href: "tel:5550100",
}}
/>
</SectionErrorBoundary>
</div>
tag="Ready for a perfect lawn?"
text="Get a free, no-obligation quote for your property today and experience hassle-free maintenance."
primaryButton={{ text: "Get Your Free Quote", href: "#" }}
secondaryButton={{ text: "Call Now", href: "tel:5550100" }}
/>
</SectionErrorBoundary>
</div>
</>
);
}