26 Commits

Author SHA1 Message Date
2794e93a6c Update theme colors 2026-05-01 15:46:30 +00:00
ec5bdaf384 Update theme colors 2026-05-01 15:46:25 +00:00
c62fd4481f Update theme colors 2026-05-01 15:46:18 +00:00
2caab86518 Update theme colors 2026-05-01 15:46:10 +00:00
6bf3e0cdf7 Update theme colors 2026-05-01 15:46:04 +00:00
671b1c140a Update theme colors 2026-05-01 15:45:58 +00:00
9f11c52907 Update theme colors 2026-05-01 15:45:45 +00:00
039465084d Update src/app/page.tsx 2026-05-01 15:44:03 +00:00
fbcd3a9477 Update src/app/page.tsx 2026-05-01 15:39:40 +00:00
2afdd79ad9 Update src/app/page.tsx 2026-05-01 15:34:37 +00:00
419e075901 Update theme fonts 2026-05-01 15:32:40 +00:00
8f73197588 Update theme fonts 2026-05-01 15:32:40 +00:00
455de897a4 Update theme fonts 2026-05-01 15:31:26 +00:00
fd65c62da0 Update theme fonts 2026-05-01 15:31:25 +00:00
70fa844aa8 Update theme fonts 2026-05-01 15:31:19 +00:00
b62bd8d671 Update theme fonts 2026-05-01 15:31:19 +00:00
b6269c0171 Update theme fonts 2026-05-01 15:31:13 +00:00
a8f00f688c Update theme fonts 2026-05-01 15:31:13 +00:00
7e3c5f3f88 Update theme fonts 2026-05-01 15:30:45 +00:00
9c6f337ae4 Update theme fonts 2026-05-01 15:30:44 +00:00
a2d36806db Update src/app/page.tsx 2026-05-01 15:29:48 +00:00
9e1868515a Update src/app/page.tsx 2026-05-01 15:24:24 +00:00
31237c04e9 Merge version_2 into main
Merge version_2 into main
2026-05-01 15:23:00 +00:00
1585673353 Update src/app/page.tsx 2026-05-01 15:22:57 +00:00
e01b7d7a13 Merge version_2 into main
Merge version_2 into main
2026-05-01 15:22:36 +00:00
35b7dd791f Update src/app/page.tsx 2026-05-01 15:22:30 +00:00
4 changed files with 97 additions and 206 deletions

View File

@@ -6,20 +6,21 @@ import "@/lib/gsap-setup";
import { ServiceWrapper } from "@/components/ServiceWrapper";
import Tag from "@/tag/Tag";
import { getVisualEditScript } from "@/utils/visual-edit-script";
import { Manrope } from "next/font/google";
const halant = Halant({
variable: "--font-halant",
subsets: ["latin"],
weight: ["300", "400", "500", "600", "700"],
});
const inter = Inter({
variable: "--font-inter",
subsets: ["latin"],
});
export const metadata: Metadata = { title: 'Elite Roofing Solutions | Professional Roof Repair & Installation', description: 'Protect your home with expert roofing services. From emergency repairs to full roof replacements, our certified team delivers durable, high-quality results.' };
const manrope = Manrope({
variable: "--font-manrope",
subsets: ["latin"],
});
export default function RootLayout({
children,
}: Readonly<{
@@ -28,9 +29,7 @@ export default function RootLayout({
return (
<html lang="en" suppressHydrationWarning>
<ServiceWrapper>
<body
className={`${halant.variable} ${inter.variable} antialiased`}
>
<body className={`${manrope.variable} antialiased`}>
<Tag />
{children}
<script

View File

@@ -12,7 +12,7 @@ import FaqDouble from "@/components/sections/faq/FaqDouble";
import FeatureCardTen from "@/components/sections/feature/FeatureCardTen";
import ContactSplitForm from "@/components/sections/contact/ContactSplitForm";
import FooterBase from "@/components/sections/footer/FooterBase";
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, Cookie } from "lucide-react";
export default function RoofingPage() {
return (
@@ -29,9 +29,16 @@ export default function RoofingPage() {
headingFontWeight="bold"
>
<ReactLenis root>
<div className="fixed bottom-0 left-0 right-0 z-50 p-4 bg-background border-t border-accent">
<div className="max-w-7xl mx-auto flex items-center justify-center gap-4 text-sm">
<Cookie className="w-5 h-5 shrink-0" />
<p>Our site uses cookies to help function, measure usage, and support marketing.</p>
</div>
</div>
<div id="nav" data-section="nav">
<NavbarStyleApple
brandName="Summit Roofing"
brandName="Billing Roofing Services "
navItems={[
{ name: "About", id: "about" },
{ name: "Services", id: "services" },
@@ -53,7 +60,7 @@ export default function RoofingPage() {
]}
avatarText="Professional Roofing Services"
avatarGroupClassName="[&_div.overflow-hidden]:h-10 [&_div.overflow-hidden]:aspect-square [&>p]:whitespace-nowrap"
title="Your Roof. Our Reputation."
title="All Your Roofing Saloution. In Our Hands. "
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={[
{ text: "Get Free Estimate", href: "#contact" },
@@ -73,32 +80,17 @@ export default function RoofingPage() {
]}
testimonials={[
{
name: "James Mitchell",
handle: "Homeowner, Dallas TX",
testimonial:
"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: "James Mitchell", handle: "Homeowner, Dallas TX", testimonial:
"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?_wi=1", imageAlt: "James Mitchell"},
{
name: "Karen O'Brien",
handle: "Homeowner, Fort Worth TX",
testimonial:
"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: "Karen O'Brien", handle: "Homeowner, Fort Worth TX", testimonial:
"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?_wi=1", imageAlt: "Karen O'Brien"},
{
name: "David & Lisa Park",
handle: "Homeowners, Plano TX",
testimonial:
"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",
},
name: "David & Lisa Park", handle: "Homeowners, Plano TX", testimonial:
"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?_wi=1", imageAlt: "David and Lisa Park"},
]}
/>
</div>
@@ -109,30 +101,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."
bulletPoints={[
{
title: "Licensed & Insured",
description:
"Fully licensed, bonded, and insured for your complete peace of mind.",
icon: Shield,
title: "Licensed & Insured", description:
"Fully licensed, bonded, and insured for your complete peace of mind.", icon: Shield,
},
{
title: "Lifetime Warranty",
description:
"Every installation backed by our industry-leading lifetime workmanship warranty.",
icon: Wrench,
title: "Lifetime Warranty", description:
"Every installation backed by our industry-leading lifetime workmanship warranty.", icon: Wrench,
},
{
title: "Free Inspections",
description:
"Complimentary roof inspections with honest assessments — no pressure, no hidden fees.",
icon: Search,
title: "Free Inspections", description:
"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"
imageAlt="Roofing crew installing a new roof"
mediaBadge={{
text: "25+ Years",
avatarSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/avatar-3.webp",
avatarAlt: "Roofing professional"
text: "25+ Years", avatarSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/avatar-3.webp", avatarAlt: "Roofing professional"
}}
imagePosition="right"
mediaAnimation="slide-up"
@@ -147,33 +131,17 @@ export default function RoofingPage() {
description="From new installations to emergency repairs, we have your roof covered."
features={[
{
title: "Roof Installation",
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",
imageAlt: "New roof installation",
},
title: "Roof Installation", 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", imageAlt: "New roof installation"},
{
title: "Roof Repair",
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",
imageAlt: "Roof repair service",
},
title: "Roof Repair", 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", imageAlt: "Roof repair service"},
{
title: "Roof Inspection",
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",
},
title: "Roof Inspection", 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"},
{
title: "Emergency Services",
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",
imageAlt: "Emergency roofing service",
},
title: "Emergency Services", 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", imageAlt: "Emergency roofing service"},
]}
gridVariant="uniform-all-items-equal"
animationType="slide-up"
@@ -188,32 +156,14 @@ export default function RoofingPage() {
description="Decades of experience and thousands of satisfied homeowners stand behind every Summit roof."
metrics={[
{
id: "1",
value: "500+",
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: "1", value: "500+", 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",
value: "25+",
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: "2", value: "25+", 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",
value: "98%",
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",
},
id: "3", value: "98%", 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"
textboxLayout="default"
@@ -227,13 +177,9 @@ export default function RoofingPage() {
description="From first call to final inspection, our process is designed to be simple, transparent, and stress-free."
features={[
{
title: "Free Inspection",
description:
"We start with a thorough roof inspection and provide an honest assessment with photos — completely free, no obligations.",
media: {
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/free-inspection.webp",
imageAlt: "Roof inspection process",
},
title: "Free Inspection", description:
"We start with a thorough roof inspection and provide an honest assessment with photos — completely free, no obligations.", media: {
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/free-inspection.webp", imageAlt: "Roof inspection process"},
items: [
{ icon: Phone, text: "Schedule online or call us" },
{ icon: ClipboardCheck, text: "Detailed photo report" },
@@ -242,13 +188,9 @@ export default function RoofingPage() {
reverse: false,
},
{
title: "Custom Proposal",
description:
"You'll receive a clear, itemized proposal with material options, timeline, and pricing — no hidden fees or surprises.",
media: {
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/custom-proposal.webp",
imageAlt: "Roofing proposal and planning",
},
title: "Custom Proposal", description:
"You'll receive a clear, itemized proposal with material options, timeline, and pricing — no hidden fees or surprises.", media: {
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/custom-proposal.webp", imageAlt: "Roofing proposal and planning"},
items: [
{ icon: ClipboardCheck, text: "Transparent line-item pricing" },
{ icon: Shield, text: "Insurance claim assistance" },
@@ -257,13 +199,9 @@ export default function RoofingPage() {
reverse: true,
},
{
title: "Expert Installation",
description:
"Our certified crew handles everything — from tear-off to cleanup. Most jobs are completed in just 1-2 days.",
media: {
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/about.webp",
imageAlt: "Professional roof installation",
},
title: "Expert Installation", description:
"Our certified crew handles everything — from tear-off to cleanup. Most jobs are completed in just 1-2 days.", media: {
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/roofing/about.webp", imageAlt: "Professional roof installation"},
items: [
{ icon: HardHat, text: "Certified installation crew" },
{ icon: Wrench, text: "Premium materials only" },
@@ -285,41 +223,17 @@ export default function RoofingPage() {
description="Don't just take our word for it — hear from homeowners who trust Summit with their roofs."
testimonials={[
{
id: "1",
name: "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: "1", name: "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?_wi=2", imageAlt: "Robert Thompson"},
{
id: "2",
name: "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: "2", name: "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",
name: "Steve & 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: "3", name: "Steve & 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?_wi=2", imageAlt: "Steve and Amy Collins"},
{
id: "4",
name: "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",
},
id: "4", name: "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?_wi=2", imageAlt: "Patricia Nguyen"},
]}
gridVariant="uniform-all-items-equal"
animationType="slide-up"
@@ -340,41 +254,23 @@ export default function RoofingPage() {
useInvertedBackground={false}
faqs={[
{
id: "1",
title: "How long does a typical roof replacement take?",
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: "1", title: "How long does a typical roof replacement take?", 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",
title: "Do you help with insurance claims?",
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: "2", title: "Do you help with insurance claims?", 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",
title: "What roofing materials do you use?",
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: "3", title: "What roofing materials do you use?", 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",
title: "What does your warranty cover?",
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: "4", title: "What does your warranty cover?", 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",
title: "How do I know if my roof needs replacing?",
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: "5", title: "How do I know if my roof needs replacing?", 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",
title: "Do you offer financing options?",
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.",
},
id: "6", title: "Do you offer financing options?", 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>
@@ -400,11 +296,10 @@ export default function RoofingPage() {
<div id="footer" data-section="footer">
<FooterBase
logoText="Summit Roofing"
logoText="Billing Roofing services "
columns={[
{
title: "Services",
items: [
title: "Services", items: [
{ label: "Roof Installation", href: "#services" },
{ label: "Roof Repair", href: "#services" },
{ label: "Roof Inspection", href: "#services" },
@@ -412,8 +307,7 @@ export default function RoofingPage() {
],
},
{
title: "Company",
items: [
title: "Company", items: [
{ label: "About Us", href: "#about" },
{ label: "Testimonials", href: "#testimonials" },
{ label: "FAQ", href: "#faq" },
@@ -421,8 +315,7 @@ export default function RoofingPage() {
],
},
{
title: "Hours",
items: [
title: "Hours", items: [
{ label: "Mon-Fri: 7:00 AM - 6:00 PM" },
{ label: "Saturday: 8:00 AM - 2:00 PM" },
{ label: "Sunday: Closed" },
@@ -430,8 +323,7 @@ export default function RoofingPage() {
],
},
{
title: "Contact",
items: [
title: "Contact", items: [
{ label: "(555) 123-4567", href: "tel:5551234567" },
{ label: "info@summitroofing.com", href: "mailto:info@summitroofing.com" },
{ label: "Dallas, TX" },
@@ -444,4 +336,4 @@ export default function RoofingPage() {
</ReactLenis>
</ThemeProvider>
);
}
}

View File

@@ -11,7 +11,7 @@ html {
body {
background-color: var(--background);
color: var(--foreground);
font-family: var(--font-inter-tight), sans-serif;
font-family: var(--font-manrope), sans-serif;
position: relative;
min-height: 100vh;
overscroll-behavior: none;
@@ -24,5 +24,5 @@ h3,
h4,
h5,
h6 {
font-family: var(--font-inter-tight), sans-serif;
font-family: var(--font-manrope), sans-serif;
}

View File

@@ -10,15 +10,15 @@
--accent: #ffffff;
--background-accent: #ffffff; */
--background: #ffffff;
--card: #ffffff;
--foreground: #111111;
--primary-cta: #e85d04;
--primary-cta-text: #ffffff;
--secondary-cta: #ffffff;
--secondary-cta-text: #111111;
--accent: #e85d04;
--background-accent: #f4a261;
--background: #000000;
--card: #1a2f1d;
--foreground: #ffffff;
--primary-cta: #ffffff;
--primary-cta-text: #0a1a0c;
--secondary-cta: #0d200f;
--secondary-cta-text: #d4f6d8;
--accent: #1a3d1f;
--background-accent: #355e3b;
/* text sizing - set by ThemeProvider */
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);