Merge version_2 into main #1
76
src/app/contact/page.tsx
Normal file
76
src/app/contact/page.tsx
Normal file
@@ -0,0 +1,76 @@
|
||||
"use client";
|
||||
|
||||
import ReactLenis from "lenis/react";
|
||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||
import NavbarStyleFullscreen from "@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen";
|
||||
import ContactSplitForm from "@/components/sections/contact/ContactSplitForm";
|
||||
import FooterSimple from "@/components/sections/footer/FooterSimple";
|
||||
|
||||
export default function ContactPage() {
|
||||
return (
|
||||
<ThemeProvider
|
||||
defaultButtonVariant="expand-hover"
|
||||
defaultTextAnimation="entrance-slide"
|
||||
borderRadius="soft"
|
||||
contentWidth="mediumLarge"
|
||||
sizing="large"
|
||||
background="none"
|
||||
cardStyle="glass-elevated"
|
||||
primaryButtonStyle="gradient"
|
||||
secondaryButtonStyle="glass"
|
||||
headingFontWeight="semibold"
|
||||
>
|
||||
<ReactLenis root>
|
||||
<NavbarStyleFullscreen
|
||||
brandName="GreenScape"
|
||||
navItems={[
|
||||
{ name: "Home", id: "/" },
|
||||
{ name: "Services", id: "/#services" },
|
||||
{ name: "Pricing", id: "/#pricing" },
|
||||
{ name: "About", id: "/#about" },
|
||||
{ name: "Contact", id: "/contact" },
|
||||
]}
|
||||
button={{ text: "Get Free Visit", href: "/contact" }}
|
||||
/>
|
||||
|
||||
<div className="pt-32 pb-20">
|
||||
<ContactSplitForm
|
||||
title="Contact Us"
|
||||
description="Schedule your free site visit today. We're here to bring your outdoor vision to life."
|
||||
inputs={[
|
||||
{ name: "name", type: "text", placeholder: "Full Name", required: true },
|
||||
{ name: "email", type: "email", placeholder: "Email", required: true },
|
||||
{ name: "phone", type: "tel", placeholder: "Phone Number" },
|
||||
]}
|
||||
textarea={{ name: "message", placeholder: "Describe your project", rows: 5, required: true }}
|
||||
buttonText="Submit Request"
|
||||
/>
|
||||
|
||||
<div className="max-w-4xl mx-auto px-6 py-12 grid md:grid-cols-2 gap-12">
|
||||
<div>
|
||||
<h2 className="text-2xl font-semibold mb-4">Visit Us</h2>
|
||||
<p className="text-lg mb-2">123 Landscaping Lane, Los Angeles, CA</p>
|
||||
<p className="text-lg font-bold">(555) 123-4567</p>
|
||||
<a href="https://wa.me/5551234567" className="mt-4 inline-block px-6 py-3 bg-green-600 text-white rounded-full font-semibold">
|
||||
Chat on WhatsApp
|
||||
</a>
|
||||
</div>
|
||||
<div className="w-full h-[300px] bg-gray-200 rounded-xl overflow-hidden">
|
||||
<iframe
|
||||
src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3305.748722956972!2d-118.24368498478442!3d34.0522342806086!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x80c2c659f50c2269%3A0x6b4028b185b169b1!2sLos%20Angeles%2C%20CA!5e0!3m2!1sen!2sus!4v1684351234567!5m2!1sen!2sus"
|
||||
width="100%" height="100%" style={{ border: 0 }} allowFullScreen loading="lazy" title="Map" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<FooterSimple
|
||||
columns={[
|
||||
{ title: "Services", items: [{ label: "Design", href: "/#services" }, { label: "Installation", href: "/#services" }] },
|
||||
{ title: "Company", items: [{ label: "About", href: "/#about" }, { label: "Contact", href: "/contact" }] },
|
||||
{ title: "Contact", items: [{ label: "(555) 123-4567", href: "tel:5551234567" }, { label: "hello@greenscape.com", href: "mailto:hello@greenscape.com" }] },
|
||||
]}
|
||||
/>
|
||||
</ReactLenis>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
273
src/app/page.tsx
273
src/app/page.tsx
@@ -10,6 +10,7 @@ import TeamCardSix from "@/components/sections/team/TeamCardSix";
|
||||
import TeamCardOne from "@/components/sections/team/TeamCardOne";
|
||||
import TestimonialCardTwelve from "@/components/sections/testimonial/TestimonialCardTwelve";
|
||||
import FaqDouble from "@/components/sections/faq/FaqDouble";
|
||||
import PricingCardFive from "@/components/sections/pricing/PricingCardFive";
|
||||
import ContactSplitForm from "@/components/sections/contact/ContactSplitForm";
|
||||
import FooterSimple from "@/components/sections/footer/FooterSimple";
|
||||
import { Leaf, TreePine } from "lucide-react";
|
||||
@@ -33,13 +34,13 @@ export default function LandscapingPage() {
|
||||
<NavbarStyleFullscreen
|
||||
brandName="GreenScape"
|
||||
navItems={[
|
||||
{ name: "Home", id: "hero" },
|
||||
{ name: "Services", id: "services" },
|
||||
{ name: "Pricing", id: "pricing" },
|
||||
{ name: "About", id: "about" },
|
||||
{ name: "Team", id: "team" },
|
||||
{ name: "Testimonials", id: "testimonials" },
|
||||
{ name: "Contact", id: "contact" },
|
||||
{ name: "Contact", id: "/contact" },
|
||||
]}
|
||||
button={{ text: "Call Now", href: "#contact" }}
|
||||
button={{ text: "Get Free Visit", href: "/contact" }}
|
||||
/>
|
||||
</div>
|
||||
|
||||
@@ -50,7 +51,7 @@ export default function LandscapingPage() {
|
||||
title="Transform Your Outdoor Space"
|
||||
description="Professional landscaping design, installation, and maintenance services. From lush gardens to stunning hardscapes, we bring your vision to life."
|
||||
buttons={[
|
||||
{ text: "Get Free Estimate", href: "#contact" },
|
||||
{ text: "Get Free Visit", href: "/contact" },
|
||||
{ text: "Our Services", href: "#services" },
|
||||
]}
|
||||
buttonAnimation="slide-up"
|
||||
@@ -60,21 +61,11 @@ export default function LandscapingPage() {
|
||||
textPosition="top"
|
||||
testimonials={[
|
||||
{
|
||||
name: "Sarah M.",
|
||||
handle: "Homeowner",
|
||||
testimonial: "GreenScape completely transformed our backyard. The team was professional, creative, and delivered beyond our expectations.",
|
||||
rating: 5,
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/web-agency-2/team-2.jpg",
|
||||
imageAlt: "Sarah M.",
|
||||
},
|
||||
name: "Sarah M.", handle: "Homeowner", testimonial: "GreenScape completely transformed our backyard. The team was professional, creative, and delivered beyond our expectations.", rating: 5,
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/web-agency-2/team-2.jpg", imageAlt: "Sarah M."},
|
||||
{
|
||||
name: "David K.",
|
||||
handle: "Property Manager",
|
||||
testimonial: "We've used GreenScape for all our commercial properties. Their maintenance plans keep everything looking pristine year-round.",
|
||||
rating: 5,
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/web-agency-2/team-1.jpg",
|
||||
imageAlt: "David K.",
|
||||
},
|
||||
name: "David K.", handle: "Property Manager", testimonial: "We've used GreenScape for all our commercial properties. Their maintenance plans keep everything looking pristine year-round.", rating: 5,
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/web-agency-2/team-1.jpg", imageAlt: "David K."},
|
||||
]}
|
||||
/>
|
||||
</div>
|
||||
@@ -103,147 +94,26 @@ export default function LandscapingPage() {
|
||||
buttonAnimation="slide-up"
|
||||
textboxLayout="default"
|
||||
useInvertedBackground={false}
|
||||
imageContainerClassName="!rotate-0 !aspect-square"
|
||||
features={[
|
||||
{
|
||||
tag: "Design",
|
||||
title: "Landscape Design",
|
||||
subtitle: "Custom Plans",
|
||||
description: "We create tailored landscape designs that complement your property's architecture and your personal style.",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/landscaping/img-2.jpg",
|
||||
imageAlt: "Landscape design",
|
||||
},
|
||||
{
|
||||
tag: "Installation",
|
||||
title: "Hardscape & Softscape",
|
||||
subtitle: "Full Installation",
|
||||
description: "From patios and walkways to gardens and trees, we handle the complete installation process.",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/landscaping/img-3.jpg",
|
||||
imageAlt: "Hardscape installation",
|
||||
},
|
||||
{
|
||||
tag: "Maintenance",
|
||||
title: "Lawn & Garden Care",
|
||||
subtitle: "Ongoing Service",
|
||||
description: "Keep your property looking pristine year-round with our professional maintenance plans.",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/landscaping/img-4.jpg",
|
||||
imageAlt: "Lawn maintenance",
|
||||
},
|
||||
{
|
||||
tag: "Irrigation",
|
||||
title: "Smart Irrigation",
|
||||
subtitle: "Water Management",
|
||||
description: "Efficient irrigation systems that keep your landscape healthy while conserving water.",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/landscaping/img-5.jpg",
|
||||
imageAlt: "Irrigation system",
|
||||
},
|
||||
{ tag: "Design", title: "Landscape Design", subtitle: "Custom Plans", description: "Tailored landscape designs that complement your property.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/landscaping/img-2.jpg" },
|
||||
{ tag: "Installation", title: "Hardscape & Softscape", subtitle: "Full Installation", description: "From patios and walkways to gardens and trees.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/landscaping/img-3.jpg" },
|
||||
{ tag: "Maintenance", title: "Lawn & Garden Care", subtitle: "Ongoing Service", description: "Keep your property looking pristine year-round.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/landscaping/img-4.jpg" },
|
||||
{ tag: "Irrigation", title: "Smart Irrigation", subtitle: "Water Management", description: "Efficient systems for a healthy landscape.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/landscaping/img-5.jpg" },
|
||||
]}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="why-us" data-section="why-us">
|
||||
<TeamCardSix
|
||||
title="Why Choose GreenScape"
|
||||
description="What sets us apart from the rest."
|
||||
<div id="pricing" data-section="pricing">
|
||||
<PricingCardFive
|
||||
title="Choose Your Package"
|
||||
description="Simple, transparent pricing for your landscape transformation."
|
||||
textboxLayout="default"
|
||||
useInvertedBackground={false}
|
||||
gridVariant="uniform-all-items-equal"
|
||||
animationType="slide-up"
|
||||
members={[
|
||||
{
|
||||
id: "1",
|
||||
name: "Expert Craftsmanship",
|
||||
role: "Decades of combined experience in landscape design and installation.",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/landscaping/img-6.jpg",
|
||||
imageAlt: "Expert craftsmanship",
|
||||
},
|
||||
{
|
||||
id: "2",
|
||||
name: "Eco-Friendly Approach",
|
||||
role: "Sustainable practices and native plant selections that thrive naturally.",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/landscaping/img-7.jpg",
|
||||
imageAlt: "Eco-friendly landscaping",
|
||||
},
|
||||
{
|
||||
id: "3",
|
||||
name: "Full-Service Care",
|
||||
role: "From initial design to ongoing maintenance, we handle everything.",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/landscaping/img-8.jpg",
|
||||
imageAlt: "Full-service care",
|
||||
},
|
||||
]}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="team" data-section="team">
|
||||
<TeamCardOne
|
||||
tag="Our Team"
|
||||
title="Meet the Experts"
|
||||
description="The skilled professionals behind every beautiful landscape."
|
||||
textboxLayout="default"
|
||||
useInvertedBackground={false}
|
||||
gridVariant="uniform-all-items-equal"
|
||||
animationType="slide-up"
|
||||
members={[
|
||||
{
|
||||
id: "1",
|
||||
name: "James Carter",
|
||||
role: "Lead Designer",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/landscaping/img-11.jpg",
|
||||
imageAlt: "James Carter",
|
||||
},
|
||||
{
|
||||
id: "2",
|
||||
name: "Maria Silva",
|
||||
role: "Horticulturist",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/landscaping/img-10.jpg",
|
||||
imageAlt: "Maria Silva",
|
||||
},
|
||||
{
|
||||
id: "3",
|
||||
name: "Ryan Mitchell",
|
||||
role: "Project Manager",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/landscaping/img-9.jpg",
|
||||
imageAlt: "Ryan Mitchell",
|
||||
},
|
||||
]}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="testimonials" data-section="testimonials">
|
||||
<TestimonialCardTwelve
|
||||
cardTag="Trusted by Homeowners"
|
||||
cardTagIcon={Leaf}
|
||||
cardTitle="Over 500 happy clients trust GreenScape to transform and maintain their outdoor spaces."
|
||||
buttons={[{ text: "Contact Now", href: "#contact" }]}
|
||||
buttonAnimation="slide-up"
|
||||
cardAnimation="slide-up"
|
||||
useInvertedBackground={false}
|
||||
testimonials={[
|
||||
{
|
||||
id: "1",
|
||||
name: "Sarah M.",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/landscaping/img-10.jpg",
|
||||
imageAlt: "Sarah M.",
|
||||
},
|
||||
{
|
||||
id: "2",
|
||||
name: "David K.",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/landscaping/img-11.jpg",
|
||||
imageAlt: "David K.",
|
||||
},
|
||||
{
|
||||
id: "3",
|
||||
name: "Emily R.",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/landscaping/img-4.jpg",
|
||||
imageAlt: "Emily R.",
|
||||
},
|
||||
{
|
||||
id: "4",
|
||||
name: "Ryan M.",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/landscaping/img-9.jpg",
|
||||
imageAlt: "Ryan M.",
|
||||
},
|
||||
plans={[
|
||||
{ id: "1", tag: "Essential", price: "$499", period: "/ project", description: "Perfect for small gardens and basic landscape refreshment.", button: { text: "Book Free Visit", href: "/contact" }, featuresTitle: "Everything included:", features: ["Site assessment", "Basic design layout", "Garden cleanup"] },
|
||||
{ id: "2", tag: "Standard", price: "$899", period: "/ project", description: "Ideal for medium-sized yards requiring hardscape and softscape work.", button: { text: "Book Free Visit", href: "/contact" }, featuresTitle: "Everything in Essential, plus:", features: ["Detailed landscape design", "Hardscape installation", "Mulching & planting"] },
|
||||
{ id: "3", tag: "Premium", price: "$1,499", period: "/ project", description: "Full property transformation with advanced design and smart systems.", button: { text: "Book Free Visit", href: "/contact" }, featuresTitle: "Everything in Standard, plus:", features: ["3D visualization", "Smart irrigation setup", "Ongoing monthly care"] },
|
||||
]}
|
||||
/>
|
||||
</div>
|
||||
@@ -257,108 +127,19 @@ export default function LandscapingPage() {
|
||||
useInvertedBackground={false}
|
||||
faqsAnimation="slide-up"
|
||||
faqs={[
|
||||
{
|
||||
id: "1",
|
||||
title: "How long does a typical landscaping project take?",
|
||||
content: "Most residential projects take 1-3 weeks depending on scope. We'll provide a detailed timeline during your consultation so you know exactly what to expect.",
|
||||
},
|
||||
{
|
||||
id: "2",
|
||||
title: "Do you offer free consultations?",
|
||||
content: "Yes! We offer complimentary on-site consultations where we assess your property, discuss your vision, and provide a detailed estimate — no obligation.",
|
||||
},
|
||||
{
|
||||
id: "3",
|
||||
title: "What areas do you serve?",
|
||||
content: "We serve the greater metropolitan area and surrounding suburbs within a 50-mile radius. Contact us to confirm service availability in your location.",
|
||||
},
|
||||
{
|
||||
id: "4",
|
||||
title: "Do you provide ongoing maintenance?",
|
||||
content: "Absolutely. We offer weekly, bi-weekly, and monthly maintenance plans that include mowing, trimming, fertilization, and seasonal cleanups.",
|
||||
},
|
||||
{
|
||||
id: "5",
|
||||
title: "Are your practices eco-friendly?",
|
||||
content: "Yes, sustainability is core to our approach. We use native plants, organic fertilizers, smart irrigation, and environmentally responsible methods whenever possible.",
|
||||
},
|
||||
{
|
||||
id: "6",
|
||||
title: "Do you handle permits and HOA approvals?",
|
||||
content: "We handle all necessary permits and can work directly with your HOA to ensure your project meets community guidelines and gets approved smoothly.",
|
||||
},
|
||||
{ id: "1", title: "How long does a typical project take?", content: "Most residential projects take 1-3 weeks." },
|
||||
{ id: "2", title: "Do you offer free consultations?", content: "Yes! We offer free on-site site visits." },
|
||||
]}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="contact" data-section="contact" className="relative overflow-hidden">
|
||||
<div className="absolute inset-0 w-full h-full">
|
||||
<video
|
||||
src="https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/landscaping/bg-video.mp4"
|
||||
autoPlay
|
||||
muted
|
||||
loop
|
||||
playsInline
|
||||
aria-hidden="true"
|
||||
className="w-full h-full object-cover"
|
||||
/>
|
||||
<div className="absolute inset-0 bg-foreground/70" />
|
||||
</div>
|
||||
<ContactSplitForm
|
||||
title="Get Your Free Estimate"
|
||||
description="Tell us about your project and we'll get back to you within 24 hours."
|
||||
useInvertedBackground={false}
|
||||
mediaAnimation="none"
|
||||
buttonText="Send Message"
|
||||
contentClassName="!grid-cols-1 max-w-[600px] mx-auto"
|
||||
|
||||
mediaWrapperClassName="hidden"
|
||||
inputs={[
|
||||
{ name: "name", type: "text", placeholder: "Full Name", required: true },
|
||||
{ name: "email", type: "email", placeholder: "Email Address", required: true },
|
||||
{ name: "phone", type: "tel", placeholder: "Phone Number" },
|
||||
]}
|
||||
multiSelect={{
|
||||
name: "service",
|
||||
label: "Select a Service",
|
||||
options: ["Landscape Design", "Hardscape & Softscape", "Lawn & Garden Care", "Smart Irrigation"],
|
||||
}}
|
||||
textarea={{ name: "message", placeholder: "Tell us about your project...", rows: 4, required: true }}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="footer" data-section="footer">
|
||||
<FooterSimple
|
||||
columns={[
|
||||
{
|
||||
title: "Services",
|
||||
items: [
|
||||
{ label: "Landscape Design", href: "#services" },
|
||||
{ label: "Hardscape & Softscape", href: "#services" },
|
||||
{ label: "Lawn & Garden Care", href: "#services" },
|
||||
{ label: "Smart Irrigation", href: "#services" },
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Company",
|
||||
items: [
|
||||
{ label: "About", href: "#about" },
|
||||
{ label: "Team", href: "#team" },
|
||||
{ label: "Testimonials", href: "#testimonials" },
|
||||
{ label: "FAQ", href: "#faq" },
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Contact",
|
||||
items: [
|
||||
{ label: "(555) 123-4567", href: "tel:5551234567" },
|
||||
{ label: "hello@greenscape.com", href: "mailto:hello@greenscape.com" },
|
||||
{ label: "Los Angeles, CA" },
|
||||
],
|
||||
},
|
||||
{ title: "Services", items: [{ label: "Design", href: "#services" }, { label: "Installation", href: "#services" }] },
|
||||
{ title: "Company", items: [{ label: "About", href: "#about" }, { label: "Contact", href: "/contact" }] },
|
||||
{ title: "Contact", items: [{ label: "(555) 123-4567", href: "tel:5551234567" }, { label: "hello@greenscape.com", href: "mailto:hello@greenscape.com" }] },
|
||||
]}
|
||||
bottomLeftText="© 2026 GreenScape Landscaping"
|
||||
bottomRightText="All rights reserved"
|
||||
/>
|
||||
</div>
|
||||
</ReactLenis>
|
||||
|
||||
@@ -10,15 +10,15 @@
|
||||
--accent: #ffffff;
|
||||
--background-accent: #ffffff; */
|
||||
|
||||
--background: #f7f9f4;
|
||||
--background: #f8f9f7;
|
||||
--card: #ffffff;
|
||||
--foreground: #1a2e1a;
|
||||
--primary-cta: #2d5a27;
|
||||
--primary-cta: #4a7c4a;
|
||||
--primary-cta-text: #ffffff;
|
||||
--secondary-cta: #ffffff;
|
||||
--secondary-cta: #8b5e3c;
|
||||
--secondary-cta-text: #2d5a27;
|
||||
--accent: #4a8c3f;
|
||||
--background-accent: #6fb85e;
|
||||
--accent: #70a070;
|
||||
--background-accent: #e8ede8;
|
||||
|
||||
/* text sizing - set by ThemeProvider */
|
||||
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);
|
||||
|
||||
Reference in New Issue
Block a user