20 Commits

Author SHA1 Message Date
355aea3d4e Update src/app/page.tsx 2026-03-31 19:01:34 +00:00
793406ebed Merge version_4 into main
Merge version_4 into main
2026-03-31 18:53:55 +00:00
926bddb567 Update src/app/page.tsx 2026-03-31 18:53:52 +00:00
dd7122a4df Merge version_3 into main
Merge version_3 into main
2026-03-31 18:50:07 +00:00
941765457b Update src/app/page.tsx 2026-03-31 18:50:01 +00:00
38e4ea7de5 Merge version_2 into main
Merge version_2 into main
2026-03-31 18:49:28 +00:00
d8818b2fc5 Remove watermark 2026-03-31 18:49:25 +00:00
96909df733 Merge version_2 into main
Merge version_2 into main
2026-03-31 18:48:11 +00:00
01a0018203 Update theme colors 2026-03-31 18:48:06 +00:00
8e7486284b Merge version_2 into main
Merge version_2 into main
2026-03-31 18:47:59 +00:00
f744656706 Update theme colors 2026-03-31 18:47:54 +00:00
36504804fd Merge version_2 into main
Merge version_2 into main
2026-03-31 18:45:47 +00:00
98d1749404 Update theme colors 2026-03-31 18:45:42 +00:00
03a0f27e12 Merge version_2 into main
Merge version_2 into main
2026-03-31 18:45:35 +00:00
9d417fbde1 Update theme colors 2026-03-31 18:45:30 +00:00
845df9a0fe Merge version_2 into main
Merge version_2 into main
2026-03-31 18:44:37 +00:00
3acda88c18 Update src/app/page.tsx 2026-03-31 18:44:34 +00:00
8aad0a0868 Merge version_1 into main
Merge version_1 into main
2026-03-31 18:38:45 +00:00
a4ed3d19e8 Merge version_1 into main
Merge version_1 into main
2026-03-31 18:38:22 +00:00
79f97d24dc Merge version_1 into main
Merge version_1 into main
2026-03-31 18:37:50 +00:00
3 changed files with 57 additions and 80 deletions

View File

@@ -4,7 +4,6 @@ import { Inter } from "next/font/google";
import "./globals.css"; import "./globals.css";
import "@/lib/gsap-setup"; import "@/lib/gsap-setup";
import { ServiceWrapper } from "@/components/ServiceWrapper"; import { ServiceWrapper } from "@/components/ServiceWrapper";
import Tag from "@/tag/Tag";
import { getVisualEditScript } from "@/utils/visual-edit-script"; import { getVisualEditScript } from "@/utils/visual-edit-script";
import { Montserrat } from "next/font/google"; import { Montserrat } from "next/font/google";
@@ -35,7 +34,7 @@ export default function RootLayout({
<html lang="en" suppressHydrationWarning> <html lang="en" suppressHydrationWarning>
<ServiceWrapper> <ServiceWrapper>
<body className={`${montserrat.variable} antialiased`}> <body className={`${montserrat.variable} antialiased`}>
<Tag />
{children} {children}
<script <script
dangerouslySetInnerHTML={{ dangerouslySetInnerHTML={{

View File

@@ -5,12 +5,28 @@ import ReactLenis from "lenis/react";
import ContactFaq from '@/components/sections/contact/ContactFaq'; import ContactFaq from '@/components/sections/contact/ContactFaq';
import FeatureBorderGlow from '@/components/sections/feature/featureBorderGlow/FeatureBorderGlow'; import FeatureBorderGlow from '@/components/sections/feature/featureBorderGlow/FeatureBorderGlow';
import FooterSimple from '@/components/sections/footer/FooterSimple'; import FooterSimple from '@/components/sections/footer/FooterSimple';
import HeroBillboardScroll from '@/components/sections/hero/HeroBillboardScroll'; import HeroSplit from '@/components/sections/hero/HeroSplit';
import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple'; import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple';
import TestimonialCardTen from '@/components/sections/testimonial/TestimonialCardTen'; import TestimonialCardTen from '@/components/sections/testimonial/TestimonialCardTen';
import { Droplet, Flame, Phone, Settings, ShieldCheck, Wind, Wrench } from "lucide-react"; import { Droplet, Flame, Phone, Settings, ShieldCheck, Wind, Wrench } from "lucide-react";
export default function LandingPage() { export default function LandingPage() {
const navItems = [
{ name: "Home", id: "hero" },
{ name: "Services", id: "services" },
{ name: "Reviews", id: "reviews" },
{ name: "Contact", id: "contact" },
].map(item => ({
...item,
onClick: (e: React.MouseEvent) => {
if (item.id.startsWith("#")) {
e.preventDefault();
const el = document.getElementById(item.id.substring(1));
el?.scrollIntoView({ behavior: "smooth" });
}
}
}));
return ( return (
<ThemeProvider <ThemeProvider
defaultButtonVariant="expand-hover" defaultButtonVariant="expand-hover"
@@ -27,31 +43,20 @@ export default function LandingPage() {
<ReactLenis root> <ReactLenis root>
<div id="nav" data-section="nav"> <div id="nav" data-section="nav">
<NavbarStyleApple <NavbarStyleApple
navItems={[ navItems={navItems}
{
name: "Home", id: "hero"},
{
name: "Services", id: "services"},
{
name: "Reviews", id: "reviews"},
{
name: "Contact", id: "contact"},
]}
brandName="Emergency AC (954) 994-3434" brandName="Emergency AC (954) 994-3434"
/> />
</div> </div>
<div id="hero" data-section="hero"> <div id="hero" data-section="hero">
<HeroBillboardScroll <HeroSplit
background={{ background={{ variant: "gradient-bars" }}
variant: "animated-grid"}} title="At your backing call - 24/7 service"
title="YOUR AC BREAKS AT 3AM? WE ARRIVE IN UNDER 1 HOUR."
description="Don't suffer in the Florida heat. Our certified experts provide 24/7 emergency service in Miami-Dade & Broward. Fast, licensed, and 40% cheaper than the big guys." description="Don't suffer in the Florida heat. Our certified experts provide 24/7 emergency service in Miami-Dade & Broward. Fast, licensed, and 40% cheaper than the big guys."
buttons={[ buttons={[
{ { text: "Call Now: (954) 994-3434", href: "tel:9549943434" },
text: "Call Now: (954) 994-3434", href: "tel:9549943434"},
]} ]}
imageSrc="http://img.b2bpic.net/free-vector/striped-christmas-background-blue-tones_1048-465.jpg" imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Binp2q4LZDuXKDXzZDq3pywIUG/uploaded-1774983679139-wnhx6a9m.jpg"
/> />
</div> </div>
@@ -61,24 +66,12 @@ export default function LandingPage() {
textboxLayout="split" textboxLayout="split"
useInvertedBackground={false} useInvertedBackground={false}
features={[ features={[
{ { icon: Wrench, title: "Emergency Repair", description: "24/7 rapid response for cooling emergencies." },
icon: Wrench, { icon: Settings, title: "New Installation", description: "Professional setup with 10-year warranty coverage.\n\n![Installation](https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Binp2q4LZDuXKDXzZDq3pywIUG/uploaded-1774983679139-e4knse2l.jpg)" },
title: "Emergency Repair", description: "24/7 rapid response for cooling emergencies."}, { icon: ShieldCheck, title: "Maintenance", description: "Preventive checks to extend system life.\n\n![Maintenance](https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Binp2q4LZDuXKDXzZDq3pywIUG/uploaded-1774983679139-a7wsqmwj.png)" },
{ { icon: Wind, title: "Air Ducts", description: "Cleaning and sealing for efficient airflow." },
icon: Settings, { icon: Droplet, title: "HVAC Coating", description: "Protective treatments against salt air damage." },
title: "New Installation", description: "Professional setup with 10-year warranty coverage."}, { icon: Flame, title: "Heating Services", description: "Full heating system diagnostics and repair." },
{
icon: ShieldCheck,
title: "Maintenance", description: "Preventive checks to extend system life."},
{
icon: Wind,
title: "Air Ducts", description: "Cleaning and sealing for efficient airflow."},
{
icon: Droplet,
title: "HVAC Coating", description: "Protective treatments against salt air damage."},
{
icon: Flame,
title: "Heating Services", description: "Full heating system diagnostics and repair."},
]} ]}
title="Full-Service HVAC Solutions" title="Full-Service HVAC Solutions"
description="We specialize in rapid response HVAC repairs and installations for homes and businesses across South Florida." description="We specialize in rapid response HVAC repairs and installations for homes and businesses across South Florida."
@@ -90,16 +83,11 @@ export default function LandingPage() {
textboxLayout="split" textboxLayout="split"
useInvertedBackground={false} useInvertedBackground={false}
testimonials={[ testimonials={[
{ { id: "1", title: "Life Saver!", quote: "My AC died at midnight. They arrived in 40 minutes. Simply incredible service.", name: "Sarah Johnson", role: "Homeowner", imageSrc: "http://img.b2bpic.net/free-photo/beautiful-african-american-woman-cafe_273609-5287.jpg?_wi=1" },
id: "1", title: "Life Saver!", quote: "My AC died at midnight. They arrived in 40 minutes. Simply incredible service.", name: "Sarah Johnson", role: "Homeowner", imageSrc: "http://img.b2bpic.net/free-photo/beautiful-african-american-woman-cafe_273609-5287.jpg?_wi=1"}, { id: "2", title: "The Best Price", quote: "I got 3 quotes, they were 40% cheaper and way more professional. Highly recommended.", name: "Michael Chen", role: "Business Owner", imageSrc: "http://img.b2bpic.net/free-photo/beautiful-women-enjoying-cocktails-together_23-2148665486.jpg" },
{ { id: "3", title: "Professional Team", quote: "Licensed, clean, and fast. Won't use anyone else for my HVAC needs again.", name: "Emily Rodriguez", role: "Property Manager", imageSrc: "http://img.b2bpic.net/free-photo/smiling-homosexual-man-official-suit-looking-camera-close-up-shot-happy-gay-getting-dressed-wedding-ceremony-standing-hotel-room-with-his-partner-background-love-emotion-concept_74855-22675.jpg" },
id: "2", title: "The Best Price", quote: "I got 3 quotes, they were 40% cheaper and way more professional. Highly recommended.", name: "Michael Chen", role: "Business Owner", imageSrc: "http://img.b2bpic.net/free-photo/beautiful-women-enjoying-cocktails-together_23-2148665486.jpg"}, { id: "4", title: "Very Helpful", quote: "Explained exactly what was wrong. No hidden fees. Fixed in an hour.", name: "David Kim", role: "Customer", imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-smiley-senior-couple_23-2149272876.jpg" },
{ { id: "5", title: "Fast Response", quote: "Absolutely the fastest company in South Florida. Will definitely call again.", name: "Mark Wilson", role: "Homeowner", imageSrc: "http://img.b2bpic.net/free-photo/beautiful-african-american-woman-cafe_273609-5287.jpg?_wi=2" },
id: "3", title: "Professional Team", quote: "Licensed, clean, and fast. Won't use anyone else for my HVAC needs again.", name: "Emily Rodriguez", role: "Property Manager", imageSrc: "http://img.b2bpic.net/free-photo/smiling-homosexual-man-official-suit-looking-camera-close-up-shot-happy-gay-getting-dressed-wedding-ceremony-standing-hotel-room-with-his-partner-background-love-emotion-concept_74855-22675.jpg"},
{
id: "4", title: "Very Helpful", quote: "Explained exactly what was wrong. No hidden fees. Fixed in an hour.", name: "David Kim", role: "Customer", imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-smiley-senior-couple_23-2149272876.jpg"},
{
id: "5", title: "Fast Response", quote: "Absolutely the fastest company in South Florida. Will definitely call again.", name: "Mark Wilson", role: "Homeowner", imageSrc: "http://img.b2bpic.net/free-photo/beautiful-african-american-woman-cafe_273609-5287.jpg?_wi=2"},
]} ]}
title="What Our Neighbors Say" title="What Our Neighbors Say"
description="Rated 4.8 stars by thousands of satisfied homeowners in Miami-Dade and Broward." description="Rated 4.8 stars by thousands of satisfied homeowners in Miami-Dade and Broward."
@@ -111,17 +99,13 @@ export default function LandingPage() {
animationType="slide-up" animationType="slide-up"
useInvertedBackground={false} useInvertedBackground={false}
faqs={[ faqs={[
{ { id: "1", title: "Do you offer weekend service?", content: "Yes, we operate 24/7, 365 days a year." },
id: "1", title: "Do you offer weekend service?", content: "Yes, we operate 24/7, 365 days a year."}, { id: "2", title: "Which areas do you cover?", content: "We cover the entirety of Miami-Dade and Broward counties." },
{ { id: "3", title: "Are you licensed?", content: "Yes, fully licensed, insured, and certified." },
id: "2", title: "Which areas do you cover?", content: "We cover the entirety of Miami-Dade and Broward counties."},
{
id: "3", title: "Are you licensed?", content: "Yes, fully licensed, insured, and certified."},
]} ]}
ctaTitle="Need Service Now?" ctaTitle="Need Service Now?"
ctaDescription="Emergency technicians standing by. Call (954) 994-3434 now for immediate dispatch." ctaDescription="Emergency technicians standing by. Call (954) 994-3434 now for immediate dispatch."
ctaButton={{ ctaButton={{ text: "Call Emergency Line", href: "tel:9549943434" }}
text: "Call Emergency Line", href: "tel:9549943434"}}
ctaIcon={Phone} ctaIcon={Phone}
/> />
</div> </div>
@@ -130,27 +114,21 @@ export default function LandingPage() {
<FooterSimple <FooterSimple
columns={[ columns={[
{ {
title: "Contact", items: [ title: "Contact", items: [
{ { label: "(954) 994-3434", href: "tel:9549943434" },
label: "(954) 994-3434", href: "tel:9549943434"}, { label: "contact@emergencyac.com", href: "mailto:contact@emergencyac.com" },
{
label: "contact@emergencyac.com", href: "mailto:contact@emergencyac.com"},
], ],
}, },
{ {
title: "Services", items: [ title: "Services", items: [
{ { label: "Emergency Repair", href: "#services" },
label: "Emergency Repair", href: "#services"}, { label: "Maintenance", href: "#services" },
{
label: "Maintenance", href: "#services"},
], ],
}, },
{ {
title: "Legal", items: [ title: "Legal", items: [
{ { label: "Privacy Policy", href: "#" },
label: "Privacy Policy", href: "#"}, { label: "Terms of Service", href: "#" },
{
label: "Terms of Service", href: "#"},
], ],
}, },
]} ]}
@@ -161,4 +139,4 @@ export default function LandingPage() {
</ReactLenis> </ReactLenis>
</ThemeProvider> </ThemeProvider>
); );
} }

View File

@@ -10,15 +10,15 @@
--accent: #ffffff; --accent: #ffffff;
--background-accent: #ffffff; */ --background-accent: #ffffff; */
--background: #f7f6f7; --background: #f5faff;
--card: #ffffff; --card: #f1f8ff;
--foreground: #250c0d; --foreground: #001122;
--primary-cta: #b82b40; --primary-cta: #15479c;
--primary-cta-text: #f7f6f7; --primary-cta-text: #f5faff;
--secondary-cta: #ffffff; --secondary-cta: #ffffff;
--secondary-cta-text: #250c0d; --secondary-cta-text: #001122;
--accent: #b90941; --accent: #a8cce8;
--background-accent: #e8a8b6; --background-accent: #7ba3cf;
/* text sizing - set by ThemeProvider */ /* text sizing - set by ThemeProvider */
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem); /* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);