Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 8a7ad79096 | |||
| 424c65dfbd | |||
| c59c83ceb6 | |||
| a569ba7dc4 | |||
| 0979885071 |
@@ -1,21 +1,18 @@
|
|||||||
import type { Metadata } from "next";
|
import type { Metadata } from "next";
|
||||||
import { Halant } from "next/font/google";
|
import { Manrope } from "next/font/google";
|
||||||
import { Inter } from "next/font/google";
|
import { DM_Sans } 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 Tag from "@/tag/Tag";
|
||||||
import { getVisualEditScript } from "@/utils/visual-edit-script";
|
import { getVisualEditScript } from "@/utils/visual-edit-script";
|
||||||
|
|
||||||
const halant = Halant({
|
const manrope = Manrope({
|
||||||
variable: "--font-halant",
|
variable: "--font-manrope", subsets: ["latin"],
|
||||||
subsets: ["latin"],
|
|
||||||
weight: ["300", "400", "500", "600", "700"],
|
|
||||||
});
|
});
|
||||||
|
|
||||||
const inter = Inter({
|
const dmSans = DM_Sans({
|
||||||
variable: "--font-inter",
|
variable: "--font-dm-sans", subsets: ["latin"],
|
||||||
subsets: ["latin"],
|
|
||||||
});
|
});
|
||||||
|
|
||||||
export const metadata: Metadata = {
|
export const metadata: Metadata = {
|
||||||
@@ -32,7 +29,7 @@ export default function RootLayout({
|
|||||||
<html lang="en" suppressHydrationWarning>
|
<html lang="en" suppressHydrationWarning>
|
||||||
<ServiceWrapper>
|
<ServiceWrapper>
|
||||||
<body
|
<body
|
||||||
className={`${halant.variable} ${inter.variable} antialiased`}
|
className={`${manrope.variable} ${dmSans.variable} antialiased`}
|
||||||
>
|
>
|
||||||
<Tag />
|
<Tag />
|
||||||
{children}
|
{children}
|
||||||
@@ -45,4 +42,4 @@ export default function RootLayout({
|
|||||||
</ServiceWrapper>
|
</ServiceWrapper>
|
||||||
</html>
|
</html>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
320
src/app/page.tsx
320
src/app/page.tsx
@@ -12,6 +12,7 @@ import FaqDouble from "@/components/sections/faq/FaqDouble";
|
|||||||
import FeatureCardTen from "@/components/sections/feature/FeatureCardTen";
|
import FeatureCardTen from "@/components/sections/feature/FeatureCardTen";
|
||||||
import ContactSplitForm from "@/components/sections/contact/ContactSplitForm";
|
import ContactSplitForm from "@/components/sections/contact/ContactSplitForm";
|
||||||
import FooterBase from "@/components/sections/footer/FooterBase";
|
import FooterBase from "@/components/sections/footer/FooterBase";
|
||||||
|
import ProductCardOne from "@/components/sections/product/ProductCardOne";
|
||||||
import { Shield, Wrench, Search, HelpCircle, ClipboardCheck, Phone, HardHat, CheckCircle, Clock, Users, Award, ThumbsUp, Star } from "lucide-react";
|
import { Shield, Wrench, Search, HelpCircle, ClipboardCheck, Phone, HardHat, CheckCircle, Clock, Users, Award, ThumbsUp, Star } from "lucide-react";
|
||||||
|
|
||||||
export default function RoofingPage() {
|
export default function RoofingPage() {
|
||||||
@@ -35,9 +36,10 @@ export default function RoofingPage() {
|
|||||||
navItems={[
|
navItems={[
|
||||||
{ name: "About", id: "about" },
|
{ name: "About", id: "about" },
|
||||||
{ name: "Services", id: "services" },
|
{ name: "Services", id: "services" },
|
||||||
|
{ name: "Projects", id: "projects" },
|
||||||
{ name: "Testimonials", id: "testimonials" },
|
{ name: "Testimonials", id: "testimonials" },
|
||||||
{ name: "FAQ", id: "faq" },
|
{ name: "FAQ", id: "faq" },
|
||||||
{ name: "Contact", id: "contact" },
|
{ name: "Contact", id: "contact" }
|
||||||
]}
|
]}
|
||||||
button={{ text: "Free Estimate", href: "#contact" }}
|
button={{ text: "Free Estimate", href: "#contact" }}
|
||||||
/>
|
/>
|
||||||
@@ -49,7 +51,7 @@ export default function RoofingPage() {
|
|||||||
avatars={[
|
avatars={[
|
||||||
{ src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/contact.webp", alt: "Roofing professional" },
|
{ src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/contact.webp", alt: "Roofing professional" },
|
||||||
{ src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/custom-proposal.webp", alt: "Roofer carrying tiles" },
|
{ src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/custom-proposal.webp", alt: "Roofer carrying tiles" },
|
||||||
{ src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/avatar-3.webp", alt: "Technician inspecting roof" },
|
{ src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/avatar-3.webp", alt: "Technician inspecting roof" }
|
||||||
]}
|
]}
|
||||||
avatarText="Professional Roofing Services"
|
avatarText="Professional Roofing Services"
|
||||||
avatarGroupClassName="[&_div.overflow-hidden]:h-10 [&_div.overflow-hidden]:aspect-square [&>p]:whitespace-nowrap"
|
avatarGroupClassName="[&_div.overflow-hidden]:h-10 [&_div.overflow-hidden]:aspect-square [&>p]:whitespace-nowrap"
|
||||||
@@ -57,7 +59,7 @@ export default function RoofingPage() {
|
|||||||
description="Trusted by homeowners for over 25 years. From storm damage repairs to full roof replacements, Summit Roofing delivers quality craftsmanship you can count on."
|
description="Trusted by homeowners for over 25 years. From storm damage repairs to full roof replacements, Summit Roofing delivers quality craftsmanship you can count on."
|
||||||
buttons={[
|
buttons={[
|
||||||
{ text: "Get Free Estimate", href: "#contact" },
|
{ text: "Get Free Estimate", href: "#contact" },
|
||||||
{ text: "Our Services", href: "#services" },
|
{ text: "Our Services", href: "#services" }
|
||||||
]}
|
]}
|
||||||
buttonAnimation="slide-up"
|
buttonAnimation="slide-up"
|
||||||
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/hero-main.webp"
|
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/hero-main.webp"
|
||||||
@@ -69,36 +71,24 @@ export default function RoofingPage() {
|
|||||||
{ type: "text-icon", text: "Licensed & Insured", icon: Shield },
|
{ type: "text-icon", text: "Licensed & Insured", icon: Shield },
|
||||||
{ type: "text-icon", text: "Free Estimates", icon: Award },
|
{ type: "text-icon", text: "Free Estimates", icon: Award },
|
||||||
{ type: "text-icon", text: "Lifetime Warranty", icon: Star },
|
{ type: "text-icon", text: "Lifetime Warranty", icon: Star },
|
||||||
{ type: "text-icon", text: "5-Star Rated", icon: ThumbsUp },
|
{ type: "text-icon", text: "5-Star Rated", icon: ThumbsUp }
|
||||||
]}
|
]}
|
||||||
testimonials={[
|
testimonials={[
|
||||||
{
|
{
|
||||||
name: "James Mitchell",
|
name: "James Mitchell", handle: "Homeowner, Dallas TX", testimonial:
|
||||||
handle: "Homeowner, Dallas TX",
|
"Summit replaced our entire roof in two days. Professional crew, clean job site, and the new roof looks incredible.", rating: 5,
|
||||||
testimonial:
|
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/robert-thompson.webp?_wi=1", imageAlt: "James Mitchell"
|
||||||
"Summit replaced our entire roof in two days. Professional crew, clean job site, and the new roof looks incredible.",
|
|
||||||
rating: 5,
|
|
||||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/robert-thompson.webp",
|
|
||||||
imageAlt: "James Mitchell",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "Karen O'Brien",
|
name: "Karen O'Brien", handle: "Homeowner, Fort Worth TX", testimonial:
|
||||||
handle: "Homeowner, Fort Worth TX",
|
"After the hailstorm, Summit handled our insurance claim and had us covered within a week. Truly outstanding service.", rating: 5,
|
||||||
testimonial:
|
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/patricia-nguyen.webp?_wi=1", imageAlt: "Karen O'Brien"
|
||||||
"After the hailstorm, Summit handled our insurance claim and had us covered within a week. Truly outstanding service.",
|
|
||||||
rating: 5,
|
|
||||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/patricia-nguyen.webp",
|
|
||||||
imageAlt: "Karen O'Brien",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "David & Lisa Park",
|
name: "David & Lisa Park", handle: "Homeowners, Plano TX", testimonial:
|
||||||
handle: "Homeowners, Plano TX",
|
"We got three quotes and Summit offered the best value with a lifetime warranty. No-brainer decision.", rating: 5,
|
||||||
testimonial:
|
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/steve-amy-collins.webp?_wi=1", imageAlt: "David and Lisa Park"
|
||||||
"We got three quotes and Summit offered the best value with a lifetime warranty. No-brainer decision.",
|
}
|
||||||
rating: 5,
|
|
||||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/steve-amy-collins.webp",
|
|
||||||
imageAlt: "David and Lisa Park",
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
@@ -109,30 +99,22 @@ export default function RoofingPage() {
|
|||||||
description="Summit Roofing has been protecting homes since 1999. We combine old-school craftsmanship with modern materials and techniques to deliver roofs that last a lifetime."
|
description="Summit Roofing has been protecting homes since 1999. We combine old-school craftsmanship with modern materials and techniques to deliver roofs that last a lifetime."
|
||||||
bulletPoints={[
|
bulletPoints={[
|
||||||
{
|
{
|
||||||
title: "Licensed & Insured",
|
title: "Licensed & Insured", description:
|
||||||
description:
|
"Fully licensed, bonded, and insured for your complete peace of mind.", icon: Shield
|
||||||
"Fully licensed, bonded, and insured for your complete peace of mind.",
|
|
||||||
icon: Shield,
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Lifetime Warranty",
|
title: "Lifetime Warranty", description:
|
||||||
description:
|
"Every installation backed by our industry-leading lifetime workmanship warranty.", icon: Wrench
|
||||||
"Every installation backed by our industry-leading lifetime workmanship warranty.",
|
|
||||||
icon: Wrench,
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Free Inspections",
|
title: "Free Inspections", description:
|
||||||
description:
|
"Complimentary roof inspections with honest assessments — no pressure, no hidden fees.", icon: Search
|
||||||
"Complimentary roof inspections with honest assessments — no pressure, no hidden fees.",
|
}
|
||||||
icon: Search,
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/hero.webp"
|
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/hero.webp?_wi=1"
|
||||||
imageAlt="Roofing crew installing a new roof"
|
imageAlt="Roofing crew installing a new roof"
|
||||||
mediaBadge={{
|
mediaBadge={{
|
||||||
text: "25+ Years",
|
text: "25+ Years", avatarSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/avatar-3.webp", avatarAlt: "Roofing professional"
|
||||||
avatarSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/avatar-3.webp",
|
|
||||||
avatarAlt: "Roofing professional"
|
|
||||||
}}
|
}}
|
||||||
imagePosition="right"
|
imagePosition="right"
|
||||||
mediaAnimation="slide-up"
|
mediaAnimation="slide-up"
|
||||||
@@ -147,33 +129,21 @@ export default function RoofingPage() {
|
|||||||
description="From new installations to emergency repairs, we have your roof covered."
|
description="From new installations to emergency repairs, we have your roof covered."
|
||||||
features={[
|
features={[
|
||||||
{
|
{
|
||||||
title: "Roof Installation",
|
title: "Roof Installation", description:
|
||||||
description:
|
"Complete roof installations using premium materials from GAF, Owens Corning, and CertainTeed.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/roofing-installation.webp?_wi=1", imageAlt: "New roof installation"
|
||||||
"Complete roof installations using premium materials from GAF, Owens Corning, and CertainTeed.",
|
|
||||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/roofing-installation.webp",
|
|
||||||
imageAlt: "New roof installation",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Roof Repair",
|
title: "Roof Repair", description:
|
||||||
description:
|
"Fast, reliable repairs for leaks, missing shingles, flashing damage, and storm damage.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/roofing-repair.webp?_wi=1", imageAlt: "Roof repair service"
|
||||||
"Fast, reliable repairs for leaks, missing shingles, flashing damage, and storm damage.",
|
|
||||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/roofing-repair.webp",
|
|
||||||
imageAlt: "Roof repair service",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Roof Inspection",
|
title: "Roof Inspection", description:
|
||||||
description:
|
"Detailed inspections with photo documentation and transparent repair recommendations.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/roofing-inspection.webp", imageAlt: "Roof inspection"
|
||||||
"Detailed inspections with photo documentation and transparent repair recommendations.",
|
|
||||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/roofing-inspection.webp",
|
|
||||||
imageAlt: "Roof inspection",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Emergency Services",
|
title: "Emergency Services", description:
|
||||||
description:
|
"24/7 emergency tarping and repairs when storms hit. We respond within hours, not days.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/emergency-services.webp?_wi=1", imageAlt: "Emergency roofing service"
|
||||||
"24/7 emergency tarping and repairs when storms hit. We respond within hours, not days.",
|
}
|
||||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/emergency-services.webp",
|
|
||||||
imageAlt: "Emergency roofing service",
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
gridVariant="uniform-all-items-equal"
|
gridVariant="uniform-all-items-equal"
|
||||||
animationType="slide-up"
|
animationType="slide-up"
|
||||||
@@ -188,32 +158,17 @@ export default function RoofingPage() {
|
|||||||
description="Decades of experience and thousands of satisfied homeowners stand behind every Summit roof."
|
description="Decades of experience and thousands of satisfied homeowners stand behind every Summit roof."
|
||||||
metrics={[
|
metrics={[
|
||||||
{
|
{
|
||||||
id: "1",
|
id: "1", value: "500+", title: "Roofs Completed", description:
|
||||||
value: "500+",
|
"Over 500 residential and commercial roofing projects delivered on time and on budget.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/roofs-completed.webp", imageAlt: "Completed roofing projects"
|
||||||
title: "Roofs Completed",
|
|
||||||
description:
|
|
||||||
"Over 500 residential and commercial roofing projects delivered on time and on budget.",
|
|
||||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/roofs-completed.webp",
|
|
||||||
imageAlt: "Completed roofing projects",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "2",
|
id: "2", value: "25+", title: "Years Experience", description:
|
||||||
value: "25+",
|
"A quarter century of protecting homes with quality materials and expert installation.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/years-experience.webp", imageAlt: "Experienced roofing team"
|
||||||
title: "Years Experience",
|
|
||||||
description:
|
|
||||||
"A quarter century of protecting homes with quality materials and expert installation.",
|
|
||||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/years-experience.webp",
|
|
||||||
imageAlt: "Experienced roofing team",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "3",
|
id: "3", value: "98%", title: "Customer Satisfaction", description:
|
||||||
value: "98%",
|
"Nearly every homeowner we work with recommends Summit Roofing to their friends and neighbors.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/customer-satisfaction.webp", imageAlt: "Satisfied customers"
|
||||||
title: "Customer Satisfaction",
|
}
|
||||||
description:
|
|
||||||
"Nearly every homeowner we work with recommends Summit Roofing to their friends and neighbors.",
|
|
||||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/customer-satisfaction.webp",
|
|
||||||
imageAlt: "Satisfied customers",
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
animationType="slide-up"
|
animationType="slide-up"
|
||||||
textboxLayout="default"
|
textboxLayout="default"
|
||||||
@@ -227,50 +182,41 @@ export default function RoofingPage() {
|
|||||||
description="From first call to final inspection, our process is designed to be simple, transparent, and stress-free."
|
description="From first call to final inspection, our process is designed to be simple, transparent, and stress-free."
|
||||||
features={[
|
features={[
|
||||||
{
|
{
|
||||||
title: "Free Inspection",
|
title: "Free Inspection", description:
|
||||||
description:
|
"We start with a thorough roof inspection and provide an honest assessment with photos — completely free, no obligations.", media: {
|
||||||
"We start with a thorough roof inspection and provide an honest assessment with photos — completely free, no obligations.",
|
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/free-inspection.webp", imageAlt: "Roof inspection process"
|
||||||
media: {
|
|
||||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/free-inspection.webp",
|
|
||||||
imageAlt: "Roof inspection process",
|
|
||||||
},
|
},
|
||||||
items: [
|
items: [
|
||||||
{ icon: Phone, text: "Schedule online or call us" },
|
{ icon: Phone, text: "Schedule online or call us" },
|
||||||
{ icon: ClipboardCheck, text: "Detailed photo report" },
|
{ icon: ClipboardCheck, text: "Detailed photo report" },
|
||||||
{ icon: Shield, text: "Honest recommendation" },
|
{ icon: Shield, text: "Honest recommendation" }
|
||||||
],
|
],
|
||||||
reverse: false,
|
reverse: false
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Custom Proposal",
|
title: "Custom Proposal", description:
|
||||||
description:
|
"You'll receive a clear, itemized proposal with material options, timeline, and pricing — no hidden fees or surprises.", media: {
|
||||||
"You'll receive a clear, itemized proposal with material options, timeline, and pricing — no hidden fees or surprises.",
|
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/custom-proposal.webp", imageAlt: "Roofing proposal and planning"
|
||||||
media: {
|
|
||||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/custom-proposal.webp",
|
|
||||||
imageAlt: "Roofing proposal and planning",
|
|
||||||
},
|
},
|
||||||
items: [
|
items: [
|
||||||
{ icon: ClipboardCheck, text: "Transparent line-item pricing" },
|
{ icon: ClipboardCheck, text: "Transparent line-item pricing" },
|
||||||
{ icon: Shield, text: "Insurance claim assistance" },
|
{ icon: Shield, text: "Insurance claim assistance" },
|
||||||
{ icon: Wrench, text: "Material and color selection" },
|
{ icon: Wrench, text: "Material and color selection" }
|
||||||
],
|
],
|
||||||
reverse: true,
|
reverse: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Expert Installation",
|
title: "Expert Installation", description:
|
||||||
description:
|
"Our certified crew handles everything — from tear-off to cleanup. Most jobs are completed in just 1-2 days.", media: {
|
||||||
"Our certified crew handles everything — from tear-off to cleanup. Most jobs are completed in just 1-2 days.",
|
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/about.webp", imageAlt: "Professional roof installation"
|
||||||
media: {
|
|
||||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/about.webp",
|
|
||||||
imageAlt: "Professional roof installation",
|
|
||||||
},
|
},
|
||||||
items: [
|
items: [
|
||||||
{ icon: HardHat, text: "Certified installation crew" },
|
{ icon: HardHat, text: "Certified installation crew" },
|
||||||
{ icon: Wrench, text: "Premium materials only" },
|
{ icon: Wrench, text: "Premium materials only" },
|
||||||
{ icon: CheckCircle, text: "Full site cleanup included" },
|
{ icon: CheckCircle, text: "Full site cleanup included" }
|
||||||
],
|
],
|
||||||
reverse: false,
|
reverse: false
|
||||||
},
|
}
|
||||||
]}
|
]}
|
||||||
buttons={[{ text: "Get Started", href: "#contact" }]}
|
buttons={[{ text: "Get Started", href: "#contact" }]}
|
||||||
animationType="slide-up"
|
animationType="slide-up"
|
||||||
@@ -279,47 +225,52 @@ export default function RoofingPage() {
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div id="projects" data-section="projects">
|
||||||
|
<ProductCardOne
|
||||||
|
title="Our Completed Projects"
|
||||||
|
description="Explore a selection of our recently completed roofing projects, showcasing our quality craftsmanship and attention to detail."
|
||||||
|
products={[
|
||||||
|
{
|
||||||
|
id: "project-1", name: "Residential Roof Replacement", price: "Dallas, TX", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/roofing-installation.webp?_wi=2", imageAlt: "New residential roof in Dallas", rating: 5
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "project-2", name: "Commercial Flat Roof Repair", price: "Fort Worth, TX", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/hero.webp?_wi=2", imageAlt: "Commercial flat roof repair", rating: 5
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "project-3", name: "Storm Damage Restoration", price: "Plano, TX", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/emergency-services.webp?_wi=2", imageAlt: "Storm damaged roof restoration", rating: 5
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "project-4", name: "Historic Roof Renovation", price: "Denton, TX", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/roofing-repair.webp?_wi=2", imageAlt: "Renovated historic roof", rating: 5
|
||||||
|
}
|
||||||
|
]}
|
||||||
|
gridVariant="uniform-all-items-equal"
|
||||||
|
animationType="slide-up"
|
||||||
|
textboxLayout="default"
|
||||||
|
useInvertedBackground={false}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div id="testimonials" data-section="testimonials">
|
<div id="testimonials" data-section="testimonials">
|
||||||
<TestimonialCardOne
|
<TestimonialCardOne
|
||||||
title="What Our Customers Say"
|
title="What Our Customers Say"
|
||||||
description="Don't just take our word for it — hear from homeowners who trust Summit with their roofs."
|
description="Don't just take our word for it — hear from homeowners who trust Summit with their roofs."
|
||||||
testimonials={[
|
testimonials={[
|
||||||
{
|
{
|
||||||
id: "1",
|
id: "1", name: "Robert Thompson", role: "Homeowner", company: "Dallas, TX", rating: 5,
|
||||||
name: "Robert Thompson",
|
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/robert-thompson.webp?_wi=2", imageAlt: "Robert Thompson"
|
||||||
role: "Homeowner",
|
|
||||||
company: "Dallas, TX",
|
|
||||||
rating: 5,
|
|
||||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/robert-thompson.webp",
|
|
||||||
imageAlt: "Robert Thompson",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "2",
|
id: "2", name: "Maria Gonzalez", role: "Homeowner", company: "Arlington, TX", rating: 5,
|
||||||
name: "Maria Gonzalez",
|
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/maria-gonzalez.webp", imageAlt: "Maria Gonzalez"
|
||||||
role: "Homeowner",
|
|
||||||
company: "Arlington, TX",
|
|
||||||
rating: 5,
|
|
||||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/maria-gonzalez.webp",
|
|
||||||
imageAlt: "Maria Gonzalez",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "3",
|
id: "3", name: "Steve & Amy Collins", role: "Homeowners", company: "Frisco, TX", rating: 5,
|
||||||
name: "Steve & Amy Collins",
|
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/steve-amy-collins.webp?_wi=2", imageAlt: "Steve and Amy Collins"
|
||||||
role: "Homeowners",
|
|
||||||
company: "Frisco, TX",
|
|
||||||
rating: 5,
|
|
||||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/steve-amy-collins.webp",
|
|
||||||
imageAlt: "Steve and Amy Collins",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "4",
|
id: "4", name: "Patricia Nguyen", role: "Homeowner", company: "McKinney, TX", rating: 5,
|
||||||
name: "Patricia Nguyen",
|
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/patricia-nguyen.webp?_wi=2", imageAlt: "Patricia Nguyen"
|
||||||
role: "Homeowner",
|
}
|
||||||
company: "McKinney, TX",
|
|
||||||
rating: 5,
|
|
||||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/patricia-nguyen.webp",
|
|
||||||
imageAlt: "Patricia Nguyen",
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
gridVariant="uniform-all-items-equal"
|
gridVariant="uniform-all-items-equal"
|
||||||
animationType="slide-up"
|
animationType="slide-up"
|
||||||
@@ -340,56 +291,44 @@ export default function RoofingPage() {
|
|||||||
useInvertedBackground={false}
|
useInvertedBackground={false}
|
||||||
faqs={[
|
faqs={[
|
||||||
{
|
{
|
||||||
id: "1",
|
id: "1", title: "How long does a typical roof replacement take?", content:
|
||||||
title: "How long does a typical roof replacement take?",
|
"Most residential roof replacements are completed in 1-3 days depending on the size and complexity of the project. We'll provide an estimated timeline during your free consultation."
|
||||||
content:
|
|
||||||
"Most residential roof replacements are completed in 1-3 days depending on the size and complexity of the project. We'll provide an estimated timeline during your free consultation.",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "2",
|
id: "2", title: "Do you help with insurance claims?", content:
|
||||||
title: "Do you help with insurance claims?",
|
"Yes! We work directly with all major insurance companies and guide you through the entire claims process — from initial inspection to final paperwork. Our team ensures you get the coverage you deserve."
|
||||||
content:
|
|
||||||
"Yes! We work directly with all major insurance companies and guide you through the entire claims process — from initial inspection to final paperwork. Our team ensures you get the coverage you deserve.",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "3",
|
id: "3", title: "What roofing materials do you use?", content:
|
||||||
title: "What roofing materials do you use?",
|
"We use premium materials from trusted manufacturers like GAF, Owens Corning, and CertainTeed. We offer asphalt shingles, metal roofing, tile, and flat roof systems to match your home and budget."
|
||||||
content:
|
|
||||||
"We use premium materials from trusted manufacturers like GAF, Owens Corning, and CertainTeed. We offer asphalt shingles, metal roofing, tile, and flat roof systems to match your home and budget.",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "4",
|
id: "4", title: "What does your warranty cover?", content:
|
||||||
title: "What does your warranty cover?",
|
"Our lifetime workmanship warranty covers all labor and installation defects. Additionally, manufacturer warranties cover the materials themselves — typically 25-50 years depending on the product."
|
||||||
content:
|
|
||||||
"Our lifetime workmanship warranty covers all labor and installation defects. Additionally, manufacturer warranties cover the materials themselves — typically 25-50 years depending on the product.",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "5",
|
id: "5", title: "How do I know if my roof needs replacing?", content:
|
||||||
title: "How do I know if my roof needs replacing?",
|
"Common signs include missing or curling shingles, granules in gutters, visible sagging, daylight through the attic, and a roof age over 20 years. We offer free inspections to assess your roof's condition."
|
||||||
content:
|
|
||||||
"Common signs include missing or curling shingles, granules in gutters, visible sagging, daylight through the attic, and a roof age over 20 years. We offer free inspections to assess your roof's condition.",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "6",
|
id: "6", title: "Do you offer financing options?", content:
|
||||||
title: "Do you offer financing options?",
|
"Yes, we offer flexible financing plans with competitive rates so you can protect your home without straining your budget. Ask about our 0% interest options during your free estimate."
|
||||||
content:
|
}
|
||||||
"Yes, we offer flexible financing plans with competitive rates so you can protect your home without straining your budget. Ask about our 0% interest options during your free estimate.",
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="contact" data-section="contact">
|
<div id="contact" data-section="contact">
|
||||||
<ContactSplitForm
|
<ContactSplitForm
|
||||||
title="Get Your Free Estimate"
|
title="Need a Roof Inspection? Call Us Today!"
|
||||||
description="Fill out the form below and one of our roofing experts will get back to you within 24 hours."
|
description="Fill out the form below to schedule your free roof inspection, or call us directly at (555) 123-4567 for immediate assistance."
|
||||||
inputs={[
|
inputs={[
|
||||||
{ name: "name", type: "text", placeholder: "Your Name", required: true },
|
{ name: "name", type: "text", placeholder: "Your Name", required: true },
|
||||||
{ name: "email", type: "email", placeholder: "Your Email", required: true },
|
{ name: "email", type: "email", placeholder: "Your Email", required: true },
|
||||||
{ name: "phone", type: "tel", placeholder: "Your Phone Number" },
|
{ name: "phone", type: "tel", placeholder: "Your Phone Number" }
|
||||||
]}
|
]}
|
||||||
textarea={{ name: "message", placeholder: "Tell us about your roofing needs...", rows: 5, required: true }}
|
textarea={{ name: "message", placeholder: "Tell us about your roofing needs...", rows: 5, required: true }}
|
||||||
buttonText="Request Free Estimate"
|
buttonText="Schedule Free Inspection"
|
||||||
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/contact.webp"
|
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/contact.webp"
|
||||||
imageAlt="Roofing professional using tablet on site"
|
imageAlt="Roofing professional using tablet on site"
|
||||||
mediaPosition="right"
|
mediaPosition="right"
|
||||||
@@ -403,42 +342,45 @@ export default function RoofingPage() {
|
|||||||
logoText="Summit Roofing"
|
logoText="Summit Roofing"
|
||||||
columns={[
|
columns={[
|
||||||
{
|
{
|
||||||
title: "Services",
|
title: "Services", items: [
|
||||||
items: [
|
|
||||||
{ label: "Roof Installation", href: "#services" },
|
{ label: "Roof Installation", href: "#services" },
|
||||||
{ label: "Roof Repair", href: "#services" },
|
{ label: "Roof Repair", href: "#services" },
|
||||||
{ label: "Roof Inspection", href: "#services" },
|
{ label: "Roof Inspection", href: "#services" },
|
||||||
{ label: "Emergency Services", href: "#services" },
|
{ label: "Emergency Services", href: "#services" }
|
||||||
],
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Company",
|
title: "Company", items: [
|
||||||
items: [
|
|
||||||
{ label: "About Us", href: "#about" },
|
{ label: "About Us", href: "#about" },
|
||||||
{ label: "Testimonials", href: "#testimonials" },
|
{ label: "Testimonials", href: "#testimonials" },
|
||||||
{ label: "FAQ", href: "#faq" },
|
{ label: "FAQ", href: "#faq" },
|
||||||
{ label: "Free Estimate", href: "#contact" },
|
{ label: "Free Estimate", href: "#contact" }
|
||||||
],
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Hours",
|
title: "Projects Gallery", items: [
|
||||||
items: [
|
{ label: "Residential", href: "#projects" },
|
||||||
|
{ label: "Commercial", href: "#projects" },
|
||||||
|
{ label: "Storm Damage", href: "#projects" }
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "Hours", items: [
|
||||||
{ label: "Mon-Fri: 7:00 AM - 6:00 PM" },
|
{ label: "Mon-Fri: 7:00 AM - 6:00 PM" },
|
||||||
{ label: "Saturday: 8:00 AM - 2:00 PM" },
|
{ label: "Saturday: 8:00 AM - 2:00 PM" },
|
||||||
{ label: "Sunday: Closed" },
|
{ label: "Sunday: Closed" },
|
||||||
{ label: "Emergency: 24/7" },
|
{ label: "Emergency: 24/7" }
|
||||||
],
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Contact",
|
title: "Contact", items: [
|
||||||
items: [
|
{ label: "Call: (555) 123-4567", href: "tel:5551234567" },
|
||||||
{ label: "(555) 123-4567", href: "tel:5551234567" },
|
{ label: "Email: info@summitroofing.com", href: "mailto:info@summitroofing.com" },
|
||||||
{ label: "info@summitroofing.com", href: "mailto:info@summitroofing.com" },
|
{ label: "Location: Dallas, TX" }
|
||||||
{ label: "Dallas, TX" },
|
]
|
||||||
],
|
}
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
copyrightText="© 2026 | Summit Roofing"
|
copyrightText="© 2024 | Summit Roofing. All rights reserved."
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</ReactLenis>
|
</ReactLenis>
|
||||||
|
|||||||
Reference in New Issue
Block a user