Merge version_1 into main #2

Merged
bender merged 1 commits from version_1 into main 2026-04-05 06:30:55 +00:00

View File

@@ -9,7 +9,7 @@ import FooterCard from '@/components/sections/footer/FooterCard';
import HeroBillboardTestimonial from '@/components/sections/hero/HeroBillboardTestimonial';
import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline';
import SplitAbout from '@/components/sections/about/SplitAbout';
import { Award, Clock, Facebook, Instagram, ListChecks, ShieldCheck, Zap } from "lucide-react";
import { Award, Clock, Facebook, Instagram, ListChecks, ShieldCheck, Zap, Droplets, Shield, Home } from "lucide-react";
export default function LandingPage() {
return (
@@ -30,126 +30,74 @@ export default function LandingPage() {
<NavbarLayoutFloatingInline
navItems={[
{
name: "About",
id: "about",
},
name: "About", id: "about"},
{
name: "Services",
id: "features",
},
name: "Services", id: "features"},
{
name: "Contact",
id: "contact",
},
name: "Contact", id: "contact"},
]}
brandName="Colin's Roofers"
button={{
text: "Call Now",
href: "tel:+1234567890",
}}
text: "Call Now", href: "tel:+1234567890"}}
/>
</div>
<div id="hero" data-section="hero">
<HeroBillboardTestimonial
background={{
variant: "radial-gradient",
}}
variant: "radial-gradient"}}
title="24/7 Emergency Roofing Repairs"
description="Don't let a leak compromise your home. Colin's Emergency Roofers provides fast, reliable, and professional roofing repair services when you need them most."
testimonials={[
{
name: "Alice Johnson",
handle: "@alice",
testimonial: "Fast response time and quality work. Highly recommend!",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/boy-putting-up-electric-guitar_23-2148006422.jpg?_wi=1",
},
name: "Alice Johnson", handle: "@alice", testimonial: "Fast response time and quality work. Highly recommend!", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/boy-putting-up-electric-guitar_23-2148006422.jpg"},
{
name: "Bob Smith",
handle: "@bob",
testimonial: "Saved our living room from disaster during the storm.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/real-estate-insurance-concept-happy-young-man-winking-smiling-showing-paper-house-cutout-sta_1258-173394.jpg",
},
name: "Bob Smith", handle: "@bob", testimonial: "Saved our living room from disaster during the storm.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/real-estate-insurance-concept-happy-young-man-winking-smiling-showing-paper-house-cutout-sta_1258-173394.jpg"},
{
name: "Carol White",
handle: "@carol",
testimonial: "Professional and courteous team throughout the process.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/workers-having-little-chat-while-having-cup-coffee_329181-15632.jpg",
},
name: "Carol White", handle: "@carol", testimonial: "Professional and courteous team throughout the process.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/workers-having-little-chat-while-having-cup-coffee_329181-15632.jpg"},
{
name: "David Brown",
handle: "@david",
testimonial: "Great service at a fair price in an emergency.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/expressive-senior-female-posing-indoor_344912-992.jpg",
},
name: "David Brown", handle: "@david", testimonial: "Great service at a fair price in an emergency.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/expressive-senior-female-posing-indoor_344912-992.jpg"},
{
name: "Eve Davis",
handle: "@eve",
testimonial: "The best emergency roofing service in the area.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/brazilian-young-man-standing-brick-wall-doing-italian-gesture-with-hand-fingers-confident-expression_839833-1656.jpg",
},
name: "Eve Davis", handle: "@eve", testimonial: "The best emergency roofing service in the area.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/brazilian-young-man-standing-brick-wall-doing-italian-gesture-with-hand-fingers-confident-expression_839833-1656.jpg"},
]}
buttons={[
{
text: "Get Emergency Help",
href: "tel:+1234567890",
},
text: "Get Emergency Help", href: "tel:+1234567890"},
]}
imageSrc="http://img.b2bpic.net/free-photo/medium-shot-smiley-man-working-roof_23-2149343654.jpg?_wi=1"
imageSrc="http://img.b2bpic.net/free-photo/medium-shot-smiley-man-working-roof_23-2149343654.jpg"
imageAlt="Professional roof repair service in progress"
avatars={[
{
src: "http://img.b2bpic.net/free-photo/boy-putting-up-electric-guitar_23-2148006422.jpg",
alt: "Alice Johnson",
src: "http://img.b2bpic.net/free-photo/boy-putting-up-electric-guitar_23-2148006422.jpg", alt: "Alice Johnson"},
{
src: "http://img.b2bpic.net/free-photo/real-estate-insurance-concept-happy-young-man-winking-smiling-showing-paper-house-cutout-sta_1258-173394.jpg", alt: "Bob Smith"},
{
src: "http://img.b2bpic.net/free-photo/workers-having-little-chat-while-having-cup-coffee_329181-15632.jpg", alt: "Carol White"},
{
src: "http://img.b2bpic.net/free-photo/expressive-senior-female-posing-indoor_344912-992.jpg", alt: "David Brown"},
{
src: "http://img.b2bpic.net/free-photo/brazilian-young-man-standing-brick-wall-doing-italian-gesture-with-hand-fingers-confident-expression_839833-1656.jpg", alt: "Eve Davis"},
],
avatarText: "Trusted by over 500+ local homeowners", marqueeItems:[
{
type: "text-icon", text: "24/7 Availability", icon: Clock,
},
{
src: "http://img.b2bpic.net/free-photo/real-estate-insurance-concept-happy-young-man-winking-smiling-showing-paper-house-cutout-sta_1258-173394.jpg",
alt: "Bob Smith",
type: "text-icon", text: "Licensed & Insured", icon: ShieldCheck,
},
{
src: "http://img.b2bpic.net/free-photo/workers-having-little-chat-while-having-cup-coffee_329181-15632.jpg",
alt: "Carol White",
type: "text-icon", text: "Rapid Response", icon: Zap,
},
{
src: "http://img.b2bpic.net/free-photo/expressive-senior-female-posing-indoor_344912-992.jpg",
alt: "David Brown",
type: "text-icon", text: "Free Assessments", icon: ListChecks,
},
{
src: "http://img.b2bpic.net/free-photo/brazilian-young-man-standing-brick-wall-doing-italian-gesture-with-hand-fingers-confident-expression_839833-1656.jpg",
alt: "Eve Davis",
},
]}
avatarText="Trusted by over 500+ local homeowners"
marqueeItems={[
{
type: "text-icon",
text: "24/7 Availability",
icon: Clock,
},
{
type: "text-icon",
text: "Licensed & Insured",
icon: ShieldCheck,
},
{
type: "text-icon",
text: "Rapid Response",
icon: Zap,
},
{
type: "text-icon",
text: "Free Assessments",
icon: ListChecks,
},
{
type: "text-icon",
text: "Quality Guaranteed",
icon: Award,
type: "text-icon", text: "Quality Guaranteed", icon: Award,
},
]}
/>
@@ -163,19 +111,13 @@ export default function LandingPage() {
description="With over 20 years of experience, Colin's Emergency Roofers are dedicated to ensuring the safety and integrity of your home. We respond to calls fast, assess damage, and provide permanent solutions."
bulletPoints={[
{
title: "24/7 Availability",
description: "We are ready to fix your roof any time, day or night.",
},
title: "24/7 Availability", description: "We are ready to fix your roof any time, day or night."},
{
title: "Rapid Response",
description: "Guaranteed arrival times to prevent further damage.",
},
title: "Rapid Response", description: "Guaranteed arrival times to prevent further damage."},
{
title: "Licensed & Insured",
description: "Professional work you can trust with full liability coverage.",
},
title: "Licensed & Insured", description: "Professional work you can trust with full liability coverage."},
]}
imageSrc="http://img.b2bpic.net/free-photo/medium-shot-man-working-with-protection-helmet_23-2149343636.jpg?_wi=1"
imageSrc="http://img.b2bpic.net/free-photo/medium-shot-man-working-with-protection-helmet_23-2149343636.jpg"
imageAlt="Experienced roofing crew at work"
mediaAnimation="slide-up"
/>
@@ -187,33 +129,17 @@ export default function LandingPage() {
useInvertedBackground={false}
features={[
{
title: "Storm Damage Repair",
description: "Immediate patching for wind and storm destruction.",
buttonIcon: "Zap",
imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-smiley-man-working-roof_23-2149343654.jpg?_wi=2",
imageAlt: "emergency roofing service repair worker",
},
title: "Storm Damage Repair", description: "Immediate patching for wind and storm destruction.", buttonIcon: Zap,
imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-smiley-man-working-roof_23-2149343654.jpg", imageAlt: "emergency roofing service repair worker"},
{
title: "Roof Leak Detection",
description: "Identifying and fixing leaks at the source.",
buttonIcon: "Droplets",
imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-man-working-with-protection-helmet_23-2149343636.jpg?_wi=2",
imageAlt: "roofing installation team working",
},
title: "Roof Leak Detection", description: "Identifying and fixing leaks at the source.", buttonIcon: Droplets,
imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-man-working-with-protection-helmet_23-2149343636.jpg", imageAlt: "roofing installation team working"},
{
title: "Tarping Services",
description: "Emergency covering until permanent repairs start.",
buttonIcon: "Shield",
imageSrc: "http://img.b2bpic.net/free-photo/knives-tools-electrical-maintenance_23-2147743046.jpg?_wi=1",
imageAlt: "roof inspection tools close up",
},
title: "Tarping Services", description: "Emergency covering until permanent repairs start.", buttonIcon: Shield,
imageSrc: "http://img.b2bpic.net/free-photo/knives-tools-electrical-maintenance_23-2147743046.jpg", imageAlt: "roof inspection tools close up"},
{
title: "Shingle Replacement",
description: "Matching and replacing lost or damaged shingles.",
buttonIcon: "Home",
imageSrc: "http://img.b2bpic.net/free-photo/boy-putting-up-electric-guitar_23-2148006422.jpg?_wi=2",
imageAlt: "happy client portrait residential",
},
title: "Shingle Replacement", description: "Matching and replacing lost or damaged shingles.", buttonIcon: Home,
imageSrc: "http://img.b2bpic.net/free-photo/boy-putting-up-electric-guitar_23-2148006422.jpg", imageAlt: "happy client portrait residential"},
]}
title="Our Emergency Services"
description="We cover all common roofing emergencies to keep you and your property dry."
@@ -225,20 +151,11 @@ export default function LandingPage() {
useInvertedBackground={false}
faqs={[
{
id: "faq-1",
title: "How fast do you arrive?",
content: "Our emergency team aims to be at your doorstep within 2 hours.",
},
id: "faq-1", title: "How fast do you arrive?", content: "Our emergency team aims to be at your doorstep within 2 hours."},
{
id: "faq-2",
title: "Do you provide estimates?",
content: "Yes, all emergency assessments come with a transparent cost breakdown.",
},
id: "faq-2", title: "Do you provide estimates?", content: "Yes, all emergency assessments come with a transparent cost breakdown."},
{
id: "faq-3",
title: "What payment methods do you accept?",
content: "We accept all major credit cards, cash, and work with most insurance providers.",
},
id: "faq-3", title: "What payment methods do you accept?", content: "We accept all major credit cards, cash, and work with most insurance providers."},
]}
sideTitle="Common Roof Questions"
sideDescription="Get clear answers about our emergency process."
@@ -253,31 +170,20 @@ export default function LandingPage() {
description="Call us immediately or use the form below for non-urgent inquiries."
inputs={[
{
name: "name",
type: "text",
placeholder: "Your Name",
required: true,
name: "name", type: "text", placeholder: "Your Name", required: true,
},
{
name: "email",
type: "email",
placeholder: "Email Address",
required: true,
name: "email", type: "email", placeholder: "Email Address", required: true,
},
{
name: "phone",
type: "tel",
placeholder: "Phone Number",
required: true,
name: "phone", type: "tel", placeholder: "Phone Number", required: true,
},
]}
textarea={{
name: "message",
placeholder: "Tell us about your roofing problem...",
rows: 4,
name: "message", placeholder: "Tell us about your roofing problem...", rows: 4,
required: true,
}}
imageSrc="http://img.b2bpic.net/free-photo/knives-tools-electrical-maintenance_23-2147743046.jpg?_wi=2"
imageSrc="http://img.b2bpic.net/free-photo/knives-tools-electrical-maintenance_23-2147743046.jpg"
imageAlt="Emergency repair tools"
/>
</div>
@@ -289,14 +195,10 @@ export default function LandingPage() {
socialLinks={[
{
icon: Facebook,
href: "#",
ariaLabel: "Facebook",
},
href: "#", ariaLabel: "Facebook"},
{
icon: Instagram,
href: "#",
ariaLabel: "Instagram",
},
href: "#", ariaLabel: "Instagram"},
]}
/>
</div>