Compare commits
35 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 7c40d66501 | |||
| 939d746549 | |||
| e97e62bdc6 | |||
| 37aabae6b9 | |||
| 54c39ec08b | |||
| e69bbab58e | |||
| 45a8f61531 | |||
| 678a1ec678 | |||
| 9413c9b275 | |||
| ef9b1a185b | |||
| 832d48ffd6 | |||
| ba36d3906a | |||
| bf000ea903 | |||
| f7d7a4dea7 | |||
| 888355ae07 | |||
| f1e31badfc | |||
| b75fa4199b | |||
| 719e5325f8 | |||
| 44513c5dc1 | |||
| 63e66bb20b | |||
| 400c45d7c9 | |||
| 1bdb17fade | |||
| b545b76ef1 | |||
| 52d5f9539c | |||
| 52625996e3 | |||
| 057f591152 | |||
| becac959c2 | |||
| 7d1aec3d69 | |||
| 77425bd96e | |||
| aac829167c | |||
| 6eedb58fe8 | |||
| d126283b28 | |||
| 30936dbc05 | |||
| 58b82ce363 | |||
| d000e76184 |
@@ -6,20 +6,26 @@ import "@/lib/gsap-setup";
|
|||||||
import { ServiceWrapper } from "@/components/ServiceWrapper";
|
import { ServiceWrapper } from "@/components/ServiceWrapper";
|
||||||
import Tag from "@/tag/Tag";
|
import Tag from "@/tag/Tag";
|
||||||
import { getVisualEditScript } from "@/utils/visual-edit-script";
|
import { getVisualEditScript } from "@/utils/visual-edit-script";
|
||||||
|
import { DM_Sans } from "next/font/google";
|
||||||
|
import { Montserrat } from "next/font/google";
|
||||||
|
import { Libre_Baskerville } from "next/font/google";
|
||||||
|
|
||||||
const halant = Halant({
|
|
||||||
variable: "--font-halant",
|
|
||||||
|
export const metadata: Metadata = { title: 'Ugarte Landscapes & Irrigation Repair | Expert Lawn Care', description: 'Transform your outdoor space with Ugarte Landscapes & Irrigation Repair. Professional landscaping, lawn maintenance, and expert irrigation system repairs.' };
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
const libreBaskerville = Libre_Baskerville({
|
||||||
|
variable: "--font-libre-baskerville",
|
||||||
subsets: ["latin"],
|
subsets: ["latin"],
|
||||||
weight: ["300", "400", "500", "600", "700"],
|
weight: ["400", "700"],
|
||||||
});
|
});
|
||||||
|
|
||||||
const inter = Inter({
|
const inter = Inter({
|
||||||
variable: "--font-inter",
|
variable: "--font-inter",
|
||||||
subsets: ["latin"],
|
subsets: ["latin"],
|
||||||
});
|
});
|
||||||
|
|
||||||
export const metadata: Metadata = { title: 'Ugarte Landscapes & Irrigation Repair | Expert Lawn Care', description: 'Transform your outdoor space with Ugarte Landscapes & Irrigation Repair. Professional landscaping, lawn maintenance, and expert irrigation system repairs.' };
|
|
||||||
|
|
||||||
export default function RootLayout({
|
export default function RootLayout({
|
||||||
children,
|
children,
|
||||||
}: Readonly<{
|
}: Readonly<{
|
||||||
@@ -28,9 +34,7 @@ export default function RootLayout({
|
|||||||
return (
|
return (
|
||||||
<html lang="en" suppressHydrationWarning>
|
<html lang="en" suppressHydrationWarning>
|
||||||
<ServiceWrapper>
|
<ServiceWrapper>
|
||||||
<body
|
<body className={`${libreBaskerville.variable} ${inter.variable} antialiased`}>
|
||||||
className={`${halant.variable} ${inter.variable} antialiased`}
|
|
||||||
>
|
|
||||||
<Tag />
|
<Tag />
|
||||||
{children}
|
{children}
|
||||||
<script
|
<script
|
||||||
|
|||||||
147
src/app/page.tsx
147
src/app/page.tsx
@@ -2,17 +2,16 @@
|
|||||||
|
|
||||||
import ReactLenis from "lenis/react";
|
import ReactLenis from "lenis/react";
|
||||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||||
import NavbarStyleFullscreen from "@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen";
|
import NavbarStyleCentered from "@/components/navbar/NavbarStyleCentered/NavbarStyleCentered";
|
||||||
import HeroOverlayTestimonial from "@/components/sections/hero/HeroOverlayTestimonial";
|
import HeroLogoBillboard from "@/components/sections/hero/HeroLogoBillboard";
|
||||||
import TestimonialAboutCard from "@/components/sections/about/TestimonialAboutCard";
|
import TestimonialAboutCard from "@/components/sections/about/TestimonialAboutCard";
|
||||||
import FeatureCardNineteen from "@/components/sections/feature/FeatureCardNineteen";
|
|
||||||
import TeamCardSix from "@/components/sections/team/TeamCardSix";
|
import TeamCardSix from "@/components/sections/team/TeamCardSix";
|
||||||
import TeamCardOne from "@/components/sections/team/TeamCardOne";
|
import TeamCardOne from "@/components/sections/team/TeamCardOne";
|
||||||
import TestimonialCardTwelve from "@/components/sections/testimonial/TestimonialCardTwelve";
|
import TestimonialCardTwelve from "@/components/sections/testimonial/TestimonialCardTwelve";
|
||||||
import FaqDouble from "@/components/sections/faq/FaqDouble";
|
import FaqDouble from "@/components/sections/faq/FaqDouble";
|
||||||
import ContactSplitForm from "@/components/sections/contact/ContactSplitForm";
|
import ContactSplitForm from "@/components/sections/contact/ContactSplitForm";
|
||||||
import FooterSimple from "@/components/sections/footer/FooterSimple";
|
import FooterSimple from "@/components/sections/footer/FooterSimple";
|
||||||
import { Leaf, TreePine, Droplets, Wrench } from "lucide-react";
|
import { Droplets, Wrench } from "lucide-react";
|
||||||
|
|
||||||
export default function LandscapingPage() {
|
export default function LandscapingPage() {
|
||||||
return (
|
return (
|
||||||
@@ -30,42 +29,27 @@ export default function LandscapingPage() {
|
|||||||
>
|
>
|
||||||
<ReactLenis root>
|
<ReactLenis root>
|
||||||
<div id="nav" data-section="nav">
|
<div id="nav" data-section="nav">
|
||||||
<NavbarStyleFullscreen
|
<NavbarStyleCentered
|
||||||
brandName="Ugarte Landscapes"
|
brandName="Ugarte Landscapes 🪴"
|
||||||
navItems={[
|
navItems={[
|
||||||
{ name: "Services", id: "services" },
|
{ name: "Services", id: "/services" },
|
||||||
{ name: "About", id: "about" },
|
{ name: "About", id: "#about" },
|
||||||
{ name: "Team", id: "team" },
|
{ name: "Team", id: "#team" },
|
||||||
{ name: "Testimonials", id: "testimonials" },
|
{ name: "Testimonials", id: "#testimonials" },
|
||||||
{ name: "Contact", id: "contact" },
|
{ name: "Contact", id: "#contact" },
|
||||||
]}
|
]}
|
||||||
button={{ text: "Request Repair", href: "#contact" }}
|
button={{ text: "Request Repair", href: "#contact" }}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="hero" data-section="hero">
|
<div id="hero" data-section="hero">
|
||||||
<HeroOverlayTestimonial
|
<HeroLogoBillboard
|
||||||
tag="Expert Landscaping & Irrigation"
|
logoText="Ugarte Landscapes"
|
||||||
tagIcon={Droplets}
|
description="Expert irrigation and landscape maintenance services. Blurred garden backgrounds to keep things green."
|
||||||
title="Your Irrigation and Landscape Experts"
|
buttons={[{ text: "Our Services", href: "/services" }]}
|
||||||
description="Specializing in professional landscape maintenance and precision irrigation system repairs to keep your greenery thriving all year."
|
background={{ variant: "sparkles-gradient" }}
|
||||||
buttons={[
|
|
||||||
{ text: "Schedule Repair", href: "#contact" },
|
|
||||||
{ text: "Explore Services", href: "#services" },
|
|
||||||
]}
|
|
||||||
buttonAnimation="slide-up"
|
|
||||||
imageSrc="http://img.b2bpic.net/free-photo/view-water-tank-storage_23-2151748216.jpg"
|
imageSrc="http://img.b2bpic.net/free-photo/view-water-tank-storage_23-2151748216.jpg"
|
||||||
imageAlt="Beautifully maintained lawn and irrigation system"
|
logoClassName="scale-[0.6] md:scale-75 origin-top"
|
||||||
showDimOverlay={true}
|
|
||||||
textPosition="top"
|
|
||||||
testimonials={[
|
|
||||||
{
|
|
||||||
name: "Carlos R.", handle: "Homeowner", testimonial: "Ugarte saved my lawn after a major irrigation leak. Fast, professional, and very affordable!", rating: 5,
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/close-up-young-businessman_23-2149153813.jpg"},
|
|
||||||
{
|
|
||||||
name: "Linda D.", handle: "Property Manager", testimonial: "Dependable service every time. They handle our landscaping and sprinkler upkeep flawlessly.", rating: 5,
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/smiling-female-staff-airport-terminal_107420-85049.jpg"},
|
|
||||||
]}
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -84,24 +68,17 @@ export default function LandscapingPage() {
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="services" data-section="services">
|
<div id="testimonials" data-section="testimonials">
|
||||||
<FeatureCardNineteen
|
<TestimonialCardTwelve
|
||||||
tag="Our Services"
|
cardTag="Our Clients"
|
||||||
tagIcon={Leaf}
|
cardTitle="See why our community chooses Ugarte Landscapes."
|
||||||
title="Landscaping & Irrigation Solutions"
|
buttons={[{ text: "Contact Today", href: "#contact" }]}
|
||||||
description="Complete care for your outdoor environment, from soil to sprinkler."
|
cardAnimation="slide-up"
|
||||||
buttonAnimation="slide-up"
|
|
||||||
textboxLayout="default"
|
|
||||||
useInvertedBackground={false}
|
useInvertedBackground={false}
|
||||||
features={[
|
testimonials={[
|
||||||
{
|
{ id: "1", name: "Sarah B.", imageSrc: "http://img.b2bpic.net/free-photo/teen-age-youth-style-self-expression-concept-portrait-positive-happy-teenage-girl-with-bob-pinkish-hairstyle-facial-piercing-relaxing-indoors_343059-3781.jpg" },
|
||||||
tag: "Repair", title: "Irrigation System Repair", subtitle: "Quick Fixes", description: "Got a leak or broken sprinkler head? We diagnose and repair irrigation issues fast.", imageSrc: "http://img.b2bpic.net/free-photo/gardening_23-2148020410.jpg"},
|
{ id: "2", name: "Mark J.", imageSrc: "http://img.b2bpic.net/free-photo/front-view-smiley-man-posing_23-2148563421.jpg" },
|
||||||
{
|
{ id: "3", name: "Elena P.", imageSrc: "http://img.b2bpic.net/free-photo/woman-smiling_1187-3196.jpg" },
|
||||||
tag: "Maintenance", title: "Lawn Care Maintenance", subtitle: "Seasonal upkeep", description: "Expert lawn mowing, edging, and seasonal cleanup to maintain your property's value.", imageSrc: "http://img.b2bpic.net/free-photo/woman-pruning-bushes-smiling-camera_651396-3821.jpg"},
|
|
||||||
{
|
|
||||||
tag: "Design", title: "Landscaping Design", subtitle: "Creative planning", description: "Refreshing your landscape with creative planting and hardscape layout designs.", imageSrc: "http://img.b2bpic.net/free-photo/crop-hands-using-template-stencil_23-2147785517.jpg"},
|
|
||||||
{
|
|
||||||
tag: "Systems", title: "Efficiency Upgrades", subtitle: "Save water", description: "Upgrade your old controllers and spray heads to water-efficient modern systems.", imageSrc: "http://img.b2bpic.net/free-photo/smart-robotic-farmer-spraying-fertilizer-vegetable-green-plants_35913-2325.jpg"},
|
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
@@ -115,12 +92,9 @@ export default function LandscapingPage() {
|
|||||||
gridVariant="uniform-all-items-equal"
|
gridVariant="uniform-all-items-equal"
|
||||||
animationType="slide-up"
|
animationType="slide-up"
|
||||||
members={[
|
members={[
|
||||||
{
|
{ id: "1", name: "Fast Response", role: "We prioritize emergency repairs.", imageSrc: "http://img.b2bpic.net/free-photo/young-worker-uniform-pointing-present-box_176474-36017.jpg" },
|
||||||
id: "1", name: "Fast Response", role: "We understand that an irrigation leak can waste water fast—we prioritize emergency repairs.", imageSrc: "http://img.b2bpic.net/free-photo/young-worker-uniform-pointing-present-box_176474-36017.jpg"},
|
{ id: "2", name: "Expert Diagnostics", role: "Identification before issues become expensive.", imageSrc: "http://img.b2bpic.net/free-photo/manufacturing-plant-employee-reviews-data-green-screen-pc_482257-125767.jpg" },
|
||||||
{
|
{ id: "3", name: "Reliable Service", role: "On time and clear estimates.", imageSrc: "http://img.b2bpic.net/free-photo/successful-manager-extending-hand-handshake_1262-3119.jpg" },
|
||||||
id: "2", name: "Expert Diagnostics", role: "Our team is trained to identify hidden system issues before they become expensive problems.", imageSrc: "http://img.b2bpic.net/free-photo/manufacturing-plant-employee-reviews-data-green-screen-pc_482257-125767.jpg"},
|
|
||||||
{
|
|
||||||
id: "3", name: "Reliable Service", role: "We show up on time and provide clear, honest estimates before starting any work.", imageSrc: "http://img.b2bpic.net/free-photo/successful-manager-extending-hand-handshake_1262-3119.jpg"},
|
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
@@ -135,28 +109,9 @@ export default function LandscapingPage() {
|
|||||||
gridVariant="uniform-all-items-equal"
|
gridVariant="uniform-all-items-equal"
|
||||||
animationType="slide-up"
|
animationType="slide-up"
|
||||||
members={[
|
members={[
|
||||||
{
|
{ id: "1", name: "Luis Ugarte", role: "Owner & Lead Technician", imageSrc: "http://img.b2bpic.net/free-photo/man-florist-working-green-house_1303-29878.jpg" },
|
||||||
id: "1", name: "Luis Ugarte", role: "Owner & Lead Technician", imageSrc: "http://img.b2bpic.net/free-photo/man-florist-working-green-house_1303-29878.jpg"},
|
{ id: "2", name: "Maria Gomez", role: "Landscape Specialist", imageSrc: "http://img.b2bpic.net/free-photo/female-gardener-sitting-front-potted-plants_23-2147918758.jpg" },
|
||||||
{
|
{ id: "3", name: "Jose Rivera", role: "Systems Coordinator", imageSrc: "http://img.b2bpic.net/free-photo/smiling-male-gardener-showing-pot-plant-his-hand_23-2147844284.jpg" },
|
||||||
id: "2", name: "Maria Gomez", role: "Landscape Specialist", imageSrc: "http://img.b2bpic.net/free-photo/female-gardener-sitting-front-potted-plants_23-2147918758.jpg"},
|
|
||||||
{
|
|
||||||
id: "3", name: "Jose Rivera", role: "Systems Coordinator", imageSrc: "http://img.b2bpic.net/free-photo/smiling-male-gardener-showing-pot-plant-his-hand_23-2147844284.jpg"},
|
|
||||||
]}
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div id="testimonials" data-section="testimonials">
|
|
||||||
<TestimonialCardTwelve
|
|
||||||
cardTag="Our Clients"
|
|
||||||
cardTitle="See why our community chooses Ugarte Landscapes."
|
|
||||||
buttons={[{ text: "Contact Today", href: "#contact" }]}
|
|
||||||
cardAnimation="slide-up"
|
|
||||||
useInvertedBackground={false}
|
|
||||||
testimonials={[
|
|
||||||
{ id: "1", name: "Sarah B.", imageSrc: "http://img.b2bpic.net/free-photo/teen-age-youth-style-self-expression-concept-portrait-positive-happy-teenage-girl-with-bob-pinkish-hairstyle-facial-piercing-relaxing-indoors_343059-3781.jpg" },
|
|
||||||
{ id: "2", name: "Mark J.", imageSrc: "http://img.b2bpic.net/free-photo/front-view-smiley-man-posing_23-2148563421.jpg" },
|
|
||||||
{ id: "3", name: "Elena P.", imageSrc: "http://img.b2bpic.net/free-photo/woman-smiling_1187-3196.jpg" },
|
|
||||||
{ id: "4", name: "Kevin O.", imageSrc: "http://img.b2bpic.net/free-photo/portrait-smiling-girl-shows-okay-ok-signs-look-satisfied-recommend-good-company-perfect-quality-praise-good-job-well-done-standing-pleased-against-white-background_176420-54380.jpg" },
|
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
@@ -170,33 +125,28 @@ export default function LandscapingPage() {
|
|||||||
useInvertedBackground={false}
|
useInvertedBackground={false}
|
||||||
faqsAnimation="slide-up"
|
faqsAnimation="slide-up"
|
||||||
faqs={[
|
faqs={[
|
||||||
{
|
{ id: "1", title: "How quickly can you fix a broken pipe?", content: "Usually within 24-48 hours." },
|
||||||
id: "1", title: "How quickly can you fix a broken pipe?", content: "We offer fast scheduling for urgent repairs. Depending on our current queue, we can often get to you within 24-48 hours."},
|
{ id: "2", title: "Do you provide seasonal maintenance?", content: "Yes, including winterization and startup services." },
|
||||||
{
|
{ id: "3", title: "Is your estimate really free?", content: "Yes, for new projects and upgrades." },
|
||||||
id: "2", title: "Do you provide seasonal maintenance?", content: "Yes, we offer seasonal checks, winterization, and spring startup services for all irrigation systems."},
|
|
||||||
{
|
|
||||||
id: "3", title: "Is your estimate really free?", content: "We provide free quotes for new projects and upgrades. Repair visits may incur a small diagnostic fee if specific system testing is required."},
|
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="contact" data-section="contact" className="relative overflow-hidden">
|
<div id="contact" data-section="contact">
|
||||||
<ContactSplitForm
|
<ContactSplitForm
|
||||||
title="Schedule a Visit"
|
title="Schedule a Visit"
|
||||||
description="Need an irrigation repair or landscaping service? Drop us a line."
|
description="Need an irrigation repair or landscaping service? Drop us a line."
|
||||||
useInvertedBackground={false}
|
useInvertedBackground={false}
|
||||||
mediaAnimation="none"
|
mediaAnimation="slide-up"
|
||||||
|
imageSrc="http://img.b2bpic.net/free-photo/close-up-of-a-professional-irrigation-technician-working-on-an-underground-sprinkler-system-valves_864155-219.jpg"
|
||||||
|
imageAlt="Technician repairing an irrigation system"
|
||||||
buttonText="Submit Request"
|
buttonText="Submit Request"
|
||||||
contentClassName="!grid-cols-1 max-w-[600px] mx-auto"
|
|
||||||
mediaWrapperClassName="hidden"
|
|
||||||
inputs={[
|
inputs={[
|
||||||
{ name: "name", type: "text", placeholder: "Full Name", required: true },
|
{ name: "name", type: "text", placeholder: "Full Name", required: true },
|
||||||
{ name: "email", type: "email", placeholder: "Email", required: true },
|
{ name: "email", type: "email", placeholder: "Email", required: true },
|
||||||
{ name: "phone", type: "tel", placeholder: "Phone Number", required: true },
|
{ name: "phone", type: "tel", placeholder: "Phone Number", required: true },
|
||||||
]}
|
]}
|
||||||
multiSelect={{
|
multiSelect={{ name: "type", label: "Service Required", options: ["Irrigation Repair", "Lawn Maintenance", "Landscape Design", "General Consultation"] }}
|
||||||
name: "type", label: "Service Required", options: ["Irrigation Repair", "Lawn Maintenance", "Landscape Design", "General Consultation"],
|
|
||||||
}}
|
|
||||||
textarea={{ name: "message", placeholder: "Describe your issue or project...", rows: 4, required: true }}
|
textarea={{ name: "message", placeholder: "Describe your issue or project...", rows: 4, required: true }}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
@@ -204,19 +154,8 @@ export default function LandscapingPage() {
|
|||||||
<div id="footer" data-section="footer">
|
<div id="footer" data-section="footer">
|
||||||
<FooterSimple
|
<FooterSimple
|
||||||
columns={[
|
columns={[
|
||||||
{
|
{ title: "Ugarte Services", items: [{ label: "Irrigation Repair", href: "/services" }, { label: "Lawn Care", href: "/services" }, { label: "Landscape Design", href: "/services" }] },
|
||||||
title: "Ugarte Services", items: [
|
{ title: "Support", items: [{ label: "FAQ", href: "#faq" }, { label: "Contact Us", href: "#contact" }] },
|
||||||
{ label: "Irrigation Repair", href: "#services" },
|
|
||||||
{ label: "Lawn Care", href: "#services" },
|
|
||||||
{ label: "Landscape Design", href: "#services" },
|
|
||||||
],
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: "Support", items: [
|
|
||||||
{ label: "FAQ", href: "#faq" },
|
|
||||||
{ label: "Contact Us", href: "#contact" },
|
|
||||||
],
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
bottomLeftText="© 2026 Ugarte Landscapes & Irrigation Repair"
|
bottomLeftText="© 2026 Ugarte Landscapes & Irrigation Repair"
|
||||||
bottomRightText="All rights reserved."
|
bottomRightText="All rights reserved."
|
||||||
@@ -225,4 +164,4 @@ export default function LandscapingPage() {
|
|||||||
</ReactLenis>
|
</ReactLenis>
|
||||||
</ThemeProvider>
|
</ThemeProvider>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
85
src/app/services/page.tsx
Normal file
85
src/app/services/page.tsx
Normal file
@@ -0,0 +1,85 @@
|
|||||||
|
"use client";
|
||||||
|
|
||||||
|
import ReactLenis from "lenis/react";
|
||||||
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||||
|
import NavbarStyleCentered from "@/components/navbar/NavbarStyleCentered/NavbarStyleCentered";
|
||||||
|
import FeatureCardNineteen from "@/components/sections/feature/FeatureCardNineteen";
|
||||||
|
import FooterSimple from "@/components/sections/footer/FooterSimple";
|
||||||
|
import { Leaf } from "lucide-react";
|
||||||
|
|
||||||
|
export default function ServicesPage() {
|
||||||
|
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>
|
||||||
|
<div id="nav" data-section="nav">
|
||||||
|
<NavbarStyleCentered
|
||||||
|
brandName="Ugarte Landscapes 🪴"
|
||||||
|
navItems={[
|
||||||
|
{ name: "Services", id: "/services" },
|
||||||
|
{ name: "About", id: "/#about" },
|
||||||
|
{ name: "Team", id: "/#team" },
|
||||||
|
{ name: "Testimonials", id: "/#testimonials" },
|
||||||
|
{ name: "Contact", id: "/#contact" },
|
||||||
|
]}
|
||||||
|
button={{ text: "Request Repair", href: "/#contact" }}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="services" data-section="services" className="pt-24">
|
||||||
|
<FeatureCardNineteen
|
||||||
|
tag="Our Services"
|
||||||
|
tagIcon={Leaf}
|
||||||
|
title="Comprehensive Landscaping & Irrigation Solutions"
|
||||||
|
description="We offer a full suite of services to ensure your property remains lush, beautiful, and efficient throughout the seasons."
|
||||||
|
buttonAnimation="slide-up"
|
||||||
|
textboxLayout="default"
|
||||||
|
useInvertedBackground={false}
|
||||||
|
features={[
|
||||||
|
{
|
||||||
|
tag: "Repair", title: "Irrigation System Repair", subtitle: "Quick Fixes", description: "From leaky valves to broken controller issues, our experts identify and resolve irrigation problems promptly.", imageSrc: "http://img.b2bpic.net/free-photo/gardening_23-2148020410.jpg"},
|
||||||
|
{
|
||||||
|
tag: "Maintenance", title: "Lawn Care Maintenance", subtitle: "Seasonal upkeep", description: "Keep your lawn pristine with professional mowing, trimming, edging, and tailored seasonal care plans.", imageSrc: "http://img.b2bpic.net/free-photo/woman-pruning-bushes-smiling-camera_651396-3821.jpg"},
|
||||||
|
{
|
||||||
|
tag: "Design", title: "Landscaping Design", subtitle: "Creative planning", description: "Collaborate with us to refresh your landscape layout, incorporating sustainable and aesthetically pleasing garden designs.", imageSrc: "http://img.b2bpic.net/free-photo/crop-hands-using-template-stencil_23-2147785517.jpg"},
|
||||||
|
{
|
||||||
|
tag: "Systems", title: "Efficiency Upgrades", subtitle: "Water Savings", description: "Modernize your system with high-efficiency spray heads and smart controllers to drastically reduce water waste.", imageSrc: "http://img.b2bpic.net/free-photo/smart-robotic-farmer-spraying-fertilizer-vegetable-green-plants_35913-2325.jpg"},
|
||||||
|
]}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="footer" data-section="footer">
|
||||||
|
<FooterSimple
|
||||||
|
columns={[
|
||||||
|
{
|
||||||
|
title: "Ugarte Services", items: [
|
||||||
|
{ label: "Irrigation Repair", href: "/services" },
|
||||||
|
{ label: "Lawn Care", href: "/services" },
|
||||||
|
{ label: "Landscape Design", href: "/services" },
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "Support", items: [
|
||||||
|
{ label: "FAQ", href: "/#faq" },
|
||||||
|
{ label: "Contact Us", href: "/#contact" },
|
||||||
|
],
|
||||||
|
},
|
||||||
|
]}
|
||||||
|
bottomLeftText="© 2026 Ugarte Landscapes & Irrigation Repair"
|
||||||
|
bottomRightText="All rights reserved."
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</ReactLenis>
|
||||||
|
</ThemeProvider>
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -11,7 +11,7 @@ html {
|
|||||||
body {
|
body {
|
||||||
background-color: var(--background);
|
background-color: var(--background);
|
||||||
color: var(--foreground);
|
color: var(--foreground);
|
||||||
font-family: var(--font-inter-tight), sans-serif;
|
font-family: var(--font-inter), sans-serif;
|
||||||
position: relative;
|
position: relative;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
overscroll-behavior: none;
|
overscroll-behavior: none;
|
||||||
@@ -24,5 +24,5 @@ h3,
|
|||||||
h4,
|
h4,
|
||||||
h5,
|
h5,
|
||||||
h6 {
|
h6 {
|
||||||
font-family: var(--font-inter-tight), sans-serif;
|
font-family: var(--font-libre-baskerville), serif;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,11 +12,11 @@
|
|||||||
|
|
||||||
--background: #f7f9f4;
|
--background: #f7f9f4;
|
||||||
--card: #ffffff;
|
--card: #ffffff;
|
||||||
--foreground: #1a2e1a;
|
--foreground: #000000;
|
||||||
--primary-cta: #2d5a27;
|
--primary-cta: #ffffff;
|
||||||
--primary-cta-text: #ffffff;
|
--primary-cta-text: #16bf00;
|
||||||
--secondary-cta: #ffffff;
|
--secondary-cta: #ffffff;
|
||||||
--secondary-cta-text: #2d5a27;
|
--secondary-cta-text: #428339;
|
||||||
--accent: #4a8c3f;
|
--accent: #4a8c3f;
|
||||||
--background-accent: #6fb85e;
|
--background-accent: #6fb85e;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user