Merge version_2 into main #1
295
src/app/page.tsx
295
src/app/page.tsx
@@ -32,46 +32,31 @@ export default function LandingPage() {
|
||||
<NavbarLayoutFloatingInline
|
||||
navItems={[
|
||||
{
|
||||
name: "Process",
|
||||
id: "process",
|
||||
},
|
||||
name: "Process", id: "process"},
|
||||
{
|
||||
name: "Services",
|
||||
id: "services",
|
||||
},
|
||||
name: "Services", id: "services"},
|
||||
{
|
||||
name: "Pricing",
|
||||
id: "pricing",
|
||||
},
|
||||
name: "Pricing", id: "pricing"},
|
||||
{
|
||||
name: "Reviews",
|
||||
id: "reviews",
|
||||
},
|
||||
name: "Reviews", id: "reviews"},
|
||||
]}
|
||||
brandName="Bone Dry Roofing"
|
||||
button={{
|
||||
text: "Get Free Inspection",
|
||||
href: "#contact",
|
||||
}}
|
||||
text: "Get Free Inspection", href: "#contact"}}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="hero" data-section="hero">
|
||||
<HeroBillboardScroll
|
||||
background={{
|
||||
variant: "sparkles-gradient",
|
||||
}}
|
||||
variant: "sparkles-gradient"}}
|
||||
title="Roofing Done Right — Without the Stress"
|
||||
description="Professional crews. Clear pricing. Insurance handled. Most roofs done in just one day."
|
||||
buttons={[
|
||||
{
|
||||
text: "Get My Free Roof Inspection",
|
||||
href: "#contact",
|
||||
},
|
||||
text: "Get My Free Roof Inspection", href: "#contact"},
|
||||
{
|
||||
text: "See Recent Projects",
|
||||
href: "#services",
|
||||
},
|
||||
text: "View Our Work", href: "#services"},
|
||||
]}
|
||||
imageSrc="http://img.b2bpic.net/free-photo/specialist-technician-professional-engineer-with-laptop-tablet-maintenance-checking-installing-solar-roof-panel-factory-rooftop-sunlight-engineers-team-survey-check-solar-panel-roof_609648-2178.jpg"
|
||||
/>
|
||||
@@ -85,19 +70,13 @@ export default function LandingPage() {
|
||||
features={[
|
||||
{
|
||||
icon: CheckCircle,
|
||||
title: "Guided Start to Finish",
|
||||
description: "We take the complexity out of roofing with dedicated project management.",
|
||||
},
|
||||
title: "Guided Start to Finish", description: "We take the complexity out of roofing with dedicated project management."},
|
||||
{
|
||||
icon: Zap,
|
||||
title: "Fast, One-Day Installations",
|
||||
description: "Most roofs are fully replaced in just one day without sacrificing quality.",
|
||||
},
|
||||
title: "Fast, One-Day Installations", description: "Most roofs are fully replaced in just one day without sacrificing quality."},
|
||||
{
|
||||
icon: ShieldCheck,
|
||||
title: "We Handle Insurance",
|
||||
description: "Expert assistance navigating your claims to ensure you get what you deserve.",
|
||||
},
|
||||
title: "We Handle Insurance", description: "Expert assistance navigating your claims to ensure you get what you deserve."},
|
||||
]}
|
||||
title="From Your First Call to Final Cleanup, We Make Roofing Simple."
|
||||
description="Experience roofing as it should be: transparent, efficient, and stress-free."
|
||||
@@ -111,53 +90,23 @@ export default function LandingPage() {
|
||||
useInvertedBackground={false}
|
||||
testimonials={[
|
||||
{
|
||||
id: "1",
|
||||
name: "Patrick P.",
|
||||
handle: "Homeowner",
|
||||
testimonial: "They walked me through everything and answered all my questions.",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/full-shot-family-celebrating-birthday-together_23-2150599043.jpg",
|
||||
},
|
||||
id: "1", name: "Patrick P.", handle: "Homeowner", testimonial: "They walked me through everything and answered all my questions.", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/full-shot-family-celebrating-birthday-together_23-2150599043.jpg"},
|
||||
{
|
||||
id: "2",
|
||||
name: "Cindy L.",
|
||||
handle: "Homeowner",
|
||||
testimonial: "The crew replaced our entire roof in ONE day. Absolutely incredible.",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/country-music-interpret-singing-outdoors_23-2149498450.jpg",
|
||||
},
|
||||
id: "2", name: "Cindy L.", handle: "Homeowner", testimonial: "The crew replaced our entire roof in ONE day. Absolutely incredible.", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/country-music-interpret-singing-outdoors_23-2149498450.jpg"},
|
||||
{
|
||||
id: "3",
|
||||
name: "Donna L.",
|
||||
handle: "Homeowner",
|
||||
testimonial: "Professional from start to finish. Highly recommend to everyone.",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/country-music-band-singing-outdoors_23-2149498460.jpg",
|
||||
},
|
||||
id: "3", name: "Donna L.", handle: "Homeowner", testimonial: "Professional from start to finish. Highly recommend to everyone.", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/country-music-band-singing-outdoors_23-2149498460.jpg"},
|
||||
{
|
||||
id: "4",
|
||||
name: "Mark D.",
|
||||
handle: "Homeowner",
|
||||
testimonial: "No stress, no pressure. Just a great new roof at a fair price.",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/portrait-blond-young-lifestyle-blogger-woman-records-video-her-talking-about-life-beauty_1258-255204.jpg",
|
||||
},
|
||||
id: "4", name: "Mark D.", handle: "Homeowner", testimonial: "No stress, no pressure. Just a great new roof at a fair price.", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/portrait-blond-young-lifestyle-blogger-woman-records-video-her-talking-about-life-beauty_1258-255204.jpg"},
|
||||
{
|
||||
id: "5",
|
||||
name: "Sarah J.",
|
||||
handle: "Homeowner",
|
||||
testimonial: "The cleanup was as good as the installation. Truly impressed.",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/construction-worker-is-ready-start-day-work_329181-11777.jpg",
|
||||
},
|
||||
id: "5", name: "Sarah J.", handle: "Homeowner", testimonial: "The cleanup was as good as the installation. Truly impressed.", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/construction-worker-is-ready-start-day-work_329181-11777.jpg"},
|
||||
{
|
||||
id: "6",
|
||||
name: "Kevin B.",
|
||||
handle: "Homeowner",
|
||||
testimonial: "Clear communication throughout the entire project. Best experience.",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/smiley-couple-inside-their-new-home-holding-house-plans_23-2148895457.jpg",
|
||||
},
|
||||
id: "6", name: "Kevin B.", handle: "Homeowner", testimonial: "Clear communication throughout the entire project. Best experience.", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/smiley-couple-inside-their-new-home-holding-house-plans_23-2148895457.jpg"},
|
||||
]}
|
||||
showRating={true}
|
||||
title="Trusted by Your Neighbors"
|
||||
@@ -173,47 +122,17 @@ export default function LandingPage() {
|
||||
useInvertedBackground={false}
|
||||
products={[
|
||||
{
|
||||
id: "p1",
|
||||
name: "Roof Replacement",
|
||||
price: "Expertly installed systems",
|
||||
variant: "Full Service",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/full-shot-man-playing-guitar_23-2149223663.jpg",
|
||||
},
|
||||
id: "p1", name: "Roof Replacement", price: "Expertly installed systems", variant: "Full Service", imageSrc: "http://img.b2bpic.net/free-photo/full-shot-man-playing-guitar_23-2149223663.jpg"},
|
||||
{
|
||||
id: "p2",
|
||||
name: "Roof Repair",
|
||||
price: "Quick, lasting solutions",
|
||||
variant: "Maintenance",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/construction-worker-doing-his-job-with-belt_23-2149343658.jpg",
|
||||
},
|
||||
id: "p2", name: "Roof Repair", price: "Quick, lasting solutions", variant: "Maintenance", imageSrc: "http://img.b2bpic.net/free-photo/construction-worker-doing-his-job-with-belt_23-2149343658.jpg"},
|
||||
{
|
||||
id: "p3",
|
||||
name: "Storm Restoration",
|
||||
price: "Damage recovery pros",
|
||||
variant: "Recovery",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/front-view-haunted-house-background_23-2149454746.jpg",
|
||||
},
|
||||
id: "p3", name: "Storm Restoration", price: "Damage recovery pros", variant: "Recovery", imageSrc: "http://img.b2bpic.net/free-photo/front-view-haunted-house-background_23-2149454746.jpg"},
|
||||
{
|
||||
id: "p4",
|
||||
name: "Gutters & Soffits",
|
||||
price: "Protect your home exterior",
|
||||
variant: "Full Service",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/modern-skyscrapers-japan-business-district_23-2148836786.jpg",
|
||||
},
|
||||
id: "p4", name: "Gutters & Soffits", price: "Protect your home exterior", variant: "Full Service", imageSrc: "http://img.b2bpic.net/free-photo/modern-skyscrapers-japan-business-district_23-2148836786.jpg"},
|
||||
{
|
||||
id: "p5",
|
||||
name: "Emergency Tarping",
|
||||
price: "Immediate security",
|
||||
variant: "Urgent",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/auto-mechanic-inflating-tire-with-air-compressor-street_651396-3561.jpg",
|
||||
},
|
||||
id: "p5", name: "Emergency Tarping", price: "Immediate security", variant: "Urgent", imageSrc: "http://img.b2bpic.net/free-photo/auto-mechanic-inflating-tire-with-air-compressor-street_651396-3561.jpg"},
|
||||
{
|
||||
id: "p6",
|
||||
name: "Roof Inspection",
|
||||
price: "Detailed diagnostic report",
|
||||
variant: "Planning",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-man-working-with-helmet_23-2149343651.jpg",
|
||||
},
|
||||
id: "p6", name: "Roof Inspection", price: "Detailed diagnostic report", variant: "Planning", imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-man-working-with-helmet_23-2149343651.jpg"},
|
||||
]}
|
||||
title="Roofing Services Done Right"
|
||||
description="Professional, reliable roofing solutions tailored to your home's needs."
|
||||
@@ -228,24 +147,16 @@ export default function LandingPage() {
|
||||
features={[
|
||||
{
|
||||
icon: Search,
|
||||
title: "1. Free Inspection",
|
||||
description: "We perform a thorough, no-pressure assessment of your roof's condition.",
|
||||
},
|
||||
title: "1. Free Inspection", description: "We perform a thorough, no-pressure assessment of your roof's condition."},
|
||||
{
|
||||
icon: ListChecks,
|
||||
title: "2. Clear On-Site Quote",
|
||||
description: "No waiting weeks for estimates. We provide clear, honest pricing.",
|
||||
},
|
||||
title: "2. Clear On-Site Quote", description: "No waiting weeks for estimates. We provide clear, honest pricing."},
|
||||
{
|
||||
icon: FileText,
|
||||
title: "3. We Handle Insurance",
|
||||
description: "Our experts work directly with your provider to simplify claims.",
|
||||
},
|
||||
title: "3. We Handle Insurance", description: "Our experts work directly with your provider to simplify claims."},
|
||||
{
|
||||
icon: Truck,
|
||||
title: "4. Fast Installation",
|
||||
description: "Most roofs are completed in just one day with clean, professional results.",
|
||||
},
|
||||
title: "4. Fast Installation", description: "Most roofs are completed in just one day with clean, professional results."},
|
||||
]}
|
||||
title="The No-Stress Roofing Process"
|
||||
description="Four simple steps to your new roof."
|
||||
@@ -257,9 +168,7 @@ export default function LandingPage() {
|
||||
useInvertedBackground={false}
|
||||
title="From Problem to Peace of Mind"
|
||||
description={[
|
||||
"We don't just replace shingles; we solve problems. See the difference our professional process makes for your home.",
|
||||
"From damaged, leaky roofs to beautiful, clean, long-lasting protection, we bring peace of mind to every project.",
|
||||
]}
|
||||
"We don't just replace shingles; we solve problems. See the difference our professional process makes for your home.", "From damaged, leaky roofs to beautiful, clean, long-lasting protection, we bring peace of mind to every project."]}
|
||||
/>
|
||||
</div>
|
||||
|
||||
@@ -270,52 +179,22 @@ export default function LandingPage() {
|
||||
useInvertedBackground={false}
|
||||
plans={[
|
||||
{
|
||||
id: "basic",
|
||||
tag: "Essential",
|
||||
price: "$4,000+",
|
||||
period: "/avg",
|
||||
description: "Gutters and soffit repairs.",
|
||||
button: {
|
||||
text: "Get Exact Quote",
|
||||
},
|
||||
featuresTitle: "Includes:",
|
||||
features: [
|
||||
"Materials",
|
||||
"Professional install",
|
||||
"Site cleanup",
|
||||
],
|
||||
id: "basic", tag: "Essential", price: "$4,000+", period: "/avg", description: "Gutters and soffit repairs.", button: {
|
||||
text: "Get Exact Quote"},
|
||||
featuresTitle: "Includes:", features: [
|
||||
"Materials", "Professional install", "Site cleanup"],
|
||||
},
|
||||
{
|
||||
id: "standard",
|
||||
tag: "Standard",
|
||||
price: "$8,000+",
|
||||
period: "/avg",
|
||||
description: "High-quality standard roof replacement.",
|
||||
button: {
|
||||
text: "Get Exact Quote",
|
||||
},
|
||||
featuresTitle: "Includes:",
|
||||
features: [
|
||||
"Lifetime shingles",
|
||||
"Flashing replacement",
|
||||
"Underlayment",
|
||||
],
|
||||
id: "standard", tag: "Standard", price: "$8,000+", period: "/avg", description: "High-quality standard roof replacement.", button: {
|
||||
text: "Get Exact Quote"},
|
||||
featuresTitle: "Includes:", features: [
|
||||
"Lifetime shingles", "Flashing replacement", "Underlayment"],
|
||||
},
|
||||
{
|
||||
id: "custom",
|
||||
tag: "Premium",
|
||||
price: "$16,000+",
|
||||
period: "/avg",
|
||||
description: "Large or custom architectural roofing.",
|
||||
button: {
|
||||
text: "Get Exact Quote",
|
||||
},
|
||||
featuresTitle: "Includes:",
|
||||
features: [
|
||||
"Premium materials",
|
||||
"Extended warranty",
|
||||
"Detailed project plan",
|
||||
],
|
||||
id: "custom", tag: "Premium", price: "$16,000+", period: "/avg", description: "Large or custom architectural roofing.", button: {
|
||||
text: "Get Exact Quote"},
|
||||
featuresTitle: "Includes:", features: [
|
||||
"Premium materials", "Extended warranty", "Detailed project plan"],
|
||||
},
|
||||
]}
|
||||
title="Transparent Roofing Pricing"
|
||||
@@ -331,24 +210,16 @@ export default function LandingPage() {
|
||||
features={[
|
||||
{
|
||||
icon: Users,
|
||||
title: "No Pushy Sales",
|
||||
description: "We provide honest consultations, not aggressive sales tactics.",
|
||||
},
|
||||
title: "No Pushy Sales", description: "We provide honest consultations, not aggressive sales tactics."},
|
||||
{
|
||||
icon: Award,
|
||||
title: "Trained Crews",
|
||||
description: "Highly skilled professionals dedicated to quality and safety.",
|
||||
},
|
||||
title: "Trained Crews", description: "Highly skilled professionals dedicated to quality and safety."},
|
||||
{
|
||||
icon: Sparkles,
|
||||
title: "Clean Job Sites",
|
||||
description: "We treat your property like our own, always leaving it clean.",
|
||||
},
|
||||
title: "Clean Job Sites", description: "We treat your property like our own, always leaving it clean."},
|
||||
{
|
||||
icon: MessageSquare,
|
||||
title: "Constant Communication",
|
||||
description: "Stay in the loop from the first phone call to the final nail.",
|
||||
},
|
||||
title: "Constant Communication", description: "Stay in the loop from the first phone call to the final nail."},
|
||||
]}
|
||||
title="Why Evansville Homeowners Choose Bone Dry"
|
||||
description="We built our reputation by doing roofing the right way — no shortcuts."
|
||||
@@ -362,27 +233,16 @@ export default function LandingPage() {
|
||||
description="Schedule your free inspection and get a quote in 24 hours."
|
||||
inputs={[
|
||||
{
|
||||
name: "name",
|
||||
type: "text",
|
||||
placeholder: "Your Name",
|
||||
required: true,
|
||||
name: "name", type: "text", placeholder: "Your Name", required: true,
|
||||
},
|
||||
{
|
||||
name: "phone",
|
||||
type: "tel",
|
||||
placeholder: "Your Phone",
|
||||
required: true,
|
||||
name: "phone", type: "tel", placeholder: "Your Phone", required: true,
|
||||
},
|
||||
{
|
||||
name: "email",
|
||||
type: "email",
|
||||
placeholder: "Your Email",
|
||||
},
|
||||
name: "email", type: "email", placeholder: "Your Email"},
|
||||
]}
|
||||
textarea={{
|
||||
name: "details",
|
||||
placeholder: "Tell us about your roofing needs",
|
||||
rows: 4,
|
||||
name: "details", placeholder: "Tell us about your roofing needs", rows: 4,
|
||||
}}
|
||||
imageSrc="http://img.b2bpic.net/free-photo/man-working-tablet-with-copy-space_23-2148242940.jpg"
|
||||
/>
|
||||
@@ -392,54 +252,33 @@ export default function LandingPage() {
|
||||
<FooterBase
|
||||
columns={[
|
||||
{
|
||||
title: "Services",
|
||||
items: [
|
||||
title: "Services", items: [
|
||||
{
|
||||
label: "Roof Replacement",
|
||||
href: "#",
|
||||
},
|
||||
label: "Roof Replacement", href: "#"},
|
||||
{
|
||||
label: "Roof Repair",
|
||||
href: "#",
|
||||
},
|
||||
label: "Roof Repair", href: "#"},
|
||||
{
|
||||
label: "Storm Recovery",
|
||||
href: "#",
|
||||
},
|
||||
label: "Storm Recovery", href: "#"},
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Company",
|
||||
items: [
|
||||
title: "Company", items: [
|
||||
{
|
||||
label: "About Us",
|
||||
href: "#",
|
||||
},
|
||||
label: "About Us", href: "#"},
|
||||
{
|
||||
label: "Our Process",
|
||||
href: "#",
|
||||
},
|
||||
label: "Our Process", href: "#"},
|
||||
{
|
||||
label: "Contact",
|
||||
href: "#contact",
|
||||
},
|
||||
label: "Contact", href: "#contact"},
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Resources",
|
||||
items: [
|
||||
title: "Resources", items: [
|
||||
{
|
||||
label: "FAQ",
|
||||
href: "#",
|
||||
},
|
||||
label: "FAQ", href: "#"},
|
||||
{
|
||||
label: "Reviews",
|
||||
href: "#reviews",
|
||||
},
|
||||
label: "Reviews", href: "#reviews"},
|
||||
{
|
||||
label: "Privacy Policy",
|
||||
href: "#",
|
||||
},
|
||||
label: "Privacy Policy", href: "#"},
|
||||
],
|
||||
},
|
||||
]}
|
||||
@@ -449,4 +288,4 @@ export default function LandingPage() {
|
||||
</ReactLenis>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user