Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| ca3336ffb5 | |||
| f33b77f08f | |||
| 263f80450d |
247
src/app/page.tsx
247
src/app/page.tsx
@@ -9,7 +9,7 @@ import FeatureCardTwelve from '@/components/sections/feature/FeatureCardTwelve';
|
|||||||
import FooterSimple from '@/components/sections/footer/FooterSimple';
|
import FooterSimple from '@/components/sections/footer/FooterSimple';
|
||||||
import HeroSplitKpi from '@/components/sections/hero/HeroSplitKpi';
|
import HeroSplitKpi from '@/components/sections/hero/HeroSplitKpi';
|
||||||
import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline';
|
import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline';
|
||||||
import TestimonialCardTwelve from '@/components/sections/testimonial/TestimonialCardTwelve';
|
import TestimonialCardThirteen from '@/components/sections/testimonial/TestimonialCardThirteen';
|
||||||
import { Building2, Camera, Clock, Droplet, Droplets, Search, Shield, Wrench } from "lucide-react";
|
import { Building2, Camera, Clock, Droplet, Droplets, Search, Shield, Wrench } from "lucide-react";
|
||||||
|
|
||||||
export default function LandingPage() {
|
export default function LandingPage() {
|
||||||
@@ -31,112 +31,71 @@ export default function LandingPage() {
|
|||||||
<NavbarLayoutFloatingInline
|
<NavbarLayoutFloatingInline
|
||||||
navItems={[
|
navItems={[
|
||||||
{
|
{
|
||||||
name: "Home",
|
name: "Home", id: "hero"},
|
||||||
id: "hero",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
name: "Services",
|
name: "Services", id: "services"},
|
||||||
id: "services",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
name: "Reviews",
|
name: "Reviews", id: "testimonials"},
|
||||||
id: "testimonials",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
name: "Contact",
|
name: "Contact", id: "contact"},
|
||||||
id: "contact",
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
brandName="First Rate Roofing"
|
brandName="First Rate Roofing"
|
||||||
button={{
|
button={{
|
||||||
text: "Call 0484 675 100",
|
text: "Call 0484 675 100", href: "tel:0484675100"}}
|
||||||
href: "tel:0484675100",
|
|
||||||
}}
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="hero" data-section="hero">
|
<div id="hero" data-section="hero">
|
||||||
<HeroSplitKpi
|
<HeroSplitKpi
|
||||||
background={{
|
background={{
|
||||||
variant: "gradient-bars",
|
variant: "gradient-bars"}}
|
||||||
}}
|
|
||||||
title="Fast & Reliable Tile Roof Repairs on the Gold Coast"
|
title="Fast & Reliable Tile Roof Repairs on the Gold Coast"
|
||||||
description="Don't let a small leak become a major structural disaster. We provide honest, local, and professional roofing solutions to keep your home protected and secure."
|
description="Don't let a small leak become a major structural disaster. We provide honest, local, and professional roofing solutions to keep your home protected and secure."
|
||||||
kpis={[
|
kpis={[
|
||||||
{
|
{
|
||||||
value: "4.7★",
|
value: "4.7★", label: "Google Rating"},
|
||||||
label: "Google Rating",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
value: "Local",
|
value: "Local", label: "Gold Coast Owned"},
|
||||||
label: "Gold Coast Owned",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
value: "Fast",
|
value: "Fast", label: "Emergency Response"},
|
||||||
label: "Emergency Response",
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
enableKpiAnimation={true}
|
enableKpiAnimation={true}
|
||||||
buttons={[
|
buttons={[
|
||||||
{
|
{
|
||||||
text: "Call Now",
|
text: "Call Now", href: "tel:0484675100"},
|
||||||
href: "tel:0484675100",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
text: "Request Free Quote",
|
text: "Request Free Quote", href: "#contact"},
|
||||||
href: "#contact",
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
imageSrc="http://img.b2bpic.net/free-photo/long-shot-roofer-working-with-helmet_23-2149343709.jpg"
|
imageSrc="http://img.b2bpic.net/free-photo/long-shot-roofer-working-with-helmet_23-2149343709.jpg"
|
||||||
mediaAnimation="slide-up"
|
mediaAnimation="slide-up"
|
||||||
avatars={[
|
avatars={[
|
||||||
{
|
{
|
||||||
src: "http://img.b2bpic.net/free-photo/happy-friends-standing-near-river_74855-2882.jpg",
|
src: "http://img.b2bpic.net/free-photo/happy-friends-standing-near-river_74855-2882.jpg", alt: "Happy friends standing near river"},
|
||||||
alt: "Happy friends standing near river",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
src: "http://img.b2bpic.net/free-photo/couple-taking-selfie_23-2147637621.jpg",
|
src: "http://img.b2bpic.net/free-photo/couple-taking-selfie_23-2147637621.jpg", alt: "Couple taking a selfie"},
|
||||||
alt: "Couple taking a selfie",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
src: "http://img.b2bpic.net/free-photo/young-adult-wearing-blank-shirt_23-2149321721.jpg",
|
src: "http://img.b2bpic.net/free-photo/young-adult-wearing-blank-shirt_23-2149321721.jpg", alt: "Young adult wearing blank shirt"},
|
||||||
alt: "Young adult wearing blank shirt",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
src: "http://img.b2bpic.net/free-photo/beautiful-young-cheerful-girl-rests-morning-beach_176420-5824.jpg",
|
src: "http://img.b2bpic.net/free-photo/beautiful-young-cheerful-girl-rests-morning-beach_176420-5824.jpg", alt: "Beautiful young cheerful girl rests at morning beach"},
|
||||||
alt: "Beautiful young cheerful girl rests at morning beach",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
src: "http://img.b2bpic.net/free-photo/smiley-father-posing-with-arms-crossed_23-2148414862.jpg",
|
src: "http://img.b2bpic.net/free-photo/smiley-father-posing-with-arms-crossed_23-2148414862.jpg", alt: "Smiley father posing with arms crossed"},
|
||||||
alt: "Smiley father posing with arms crossed",
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
avatarText="Trusted by 500+ local homeowners"
|
avatarText="Trusted by 500+ local homeowners"
|
||||||
marqueeItems={[
|
marqueeItems={[
|
||||||
{
|
{
|
||||||
type: "text-icon",
|
type: "text-icon", text: "Storm Damage Repair", icon: Droplets,
|
||||||
text: "Storm Damage Repair",
|
|
||||||
icon: Droplets,
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: "text-icon",
|
type: "text-icon", text: "Roof Leaks", icon: Droplet,
|
||||||
text: "Roof Leaks",
|
|
||||||
icon: Droplet,
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: "text-icon",
|
type: "text-icon", text: "Tile Replacement", icon: Building2,
|
||||||
text: "Tile Replacement",
|
|
||||||
icon: Building2,
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: "text-icon",
|
type: "text-icon", text: "Full Inspections", icon: Search,
|
||||||
text: "Full Inspections",
|
|
||||||
icon: Search,
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: "text-icon",
|
type: "text-icon", text: "Ridge Capping", icon: Wrench,
|
||||||
text: "Ridge Capping",
|
|
||||||
icon: Wrench,
|
|
||||||
},
|
},
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
@@ -149,37 +108,16 @@ export default function LandingPage() {
|
|||||||
useInvertedBackground={true}
|
useInvertedBackground={true}
|
||||||
features={[
|
features={[
|
||||||
{
|
{
|
||||||
id: "f1",
|
id: "f1", label: "Tile Repairs", title: "Expert Tile Roof Repairs", items: [
|
||||||
label: "Tile Repairs",
|
"Broken tile replacement", "Ridge capping repairs", "Full roof restoration", "Secure weather-proofing"],
|
||||||
title: "Expert Tile Roof Repairs",
|
|
||||||
items: [
|
|
||||||
"Broken tile replacement",
|
|
||||||
"Ridge capping repairs",
|
|
||||||
"Full roof restoration",
|
|
||||||
"Secure weather-proofing",
|
|
||||||
],
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "f2",
|
id: "f2", label: "Leak Detection", title: "Precision Leak Detection", items: [
|
||||||
label: "Leak Detection",
|
"Advanced leak diagnosis", "Storm damage assessment", "Prompt patching", "Preventative sealing"],
|
||||||
title: "Precision Leak Detection",
|
|
||||||
items: [
|
|
||||||
"Advanced leak diagnosis",
|
|
||||||
"Storm damage assessment",
|
|
||||||
"Prompt patching",
|
|
||||||
"Preventative sealing",
|
|
||||||
],
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "f3",
|
id: "f3", label: "Maintenance", title: "Roof Inspections & Care", items: [
|
||||||
label: "Maintenance",
|
"Complete roof checkups", "Debris cleaning", "Gutter maintenance", "Preventative reporting"],
|
||||||
title: "Roof Inspections & Care",
|
|
||||||
items: [
|
|
||||||
"Complete roof checkups",
|
|
||||||
"Debris cleaning",
|
|
||||||
"Gutter maintenance",
|
|
||||||
"Preventative reporting",
|
|
||||||
],
|
|
||||||
},
|
},
|
||||||
]}
|
]}
|
||||||
title="Comprehensive Roofing Services"
|
title="Comprehensive Roofing Services"
|
||||||
@@ -194,57 +132,38 @@ export default function LandingPage() {
|
|||||||
metrics={[
|
metrics={[
|
||||||
{
|
{
|
||||||
icon: Shield,
|
icon: Shield,
|
||||||
label: "Reliability",
|
label: "Reliability", value: "100%"},
|
||||||
value: "100%",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
icon: Clock,
|
icon: Clock,
|
||||||
label: "Response Time",
|
label: "Response Time", value: "Fast"},
|
||||||
value: "Fast",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
icon: Camera,
|
icon: Camera,
|
||||||
label: "Photo Proof",
|
label: "Photo Proof", value: "Included"},
|
||||||
value: "Included",
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
metricsAnimation="slide-up"
|
metricsAnimation="slide-up"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="testimonials" data-section="testimonials">
|
<div id="testimonials" data-section="testimonials">
|
||||||
<TestimonialCardTwelve
|
<TestimonialCardThirteen
|
||||||
useInvertedBackground={false}
|
useInvertedBackground={false}
|
||||||
testimonials={[
|
testimonials={[
|
||||||
{
|
{ id: "t1", name: "BH", handle: "@bh", testimonial: "Fantastic service, truly expert advice.", rating: 5 },
|
||||||
id: "t1",
|
{ id: "t2", name: "Tom Pickering", handle: "@tpickering", testimonial: "Professional from start to finish.", rating: 5 },
|
||||||
name: "Sarah J.",
|
{ id: "t3", name: "Sally Hawkins", handle: "@shawkins", testimonial: "Quick, clean and reliable roof repair.", rating: 5 },
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/young-adult-wearing-blank-shirt_23-2149321717.jpg",
|
{ id: "t4", name: "EM", handle: "@em", testimonial: "Outstanding communication throughout the job.", rating: 5 },
|
||||||
},
|
{ id: "t5", name: "Christopher Snell", handle: "@csnell", testimonial: "Highly recommended, honest local tradies.", rating: 5 },
|
||||||
{
|
{ id: "t6", name: "Ellie Richardson", handle: "@erichardson", testimonial: "Fixed our leaks perfectly, no fuss.", rating: 5 },
|
||||||
id: "t2",
|
{ id: "t7", name: "Dylan Andersen", handle: "@dandersen", testimonial: "Excellent attention to detail.", rating: 5 },
|
||||||
name: "Michael T.",
|
{ id: "t8", name: "Kylie", handle: "@kylie", testimonial: "Finally a roof company that turns up on time!", rating: 5 },
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/vertical-shot-young-musician-woman-learns-how-play-ukulele-sits-sofa-with-crossed-legs_1258-204931.jpg",
|
{ id: "t9", name: "Tyler Partridge", handle: "@tpartridge", testimonial: "Great quality work at a fair price.", rating: 5 },
|
||||||
},
|
{ id: "t10", name: "Grant Barker", handle: "@gbarker", testimonial: "Top-tier service, will definitely call again.", rating: 5 },
|
||||||
{
|
|
||||||
id: "t3",
|
|
||||||
name: "Emily D.",
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/beautiful-young-african-american-woman-smiling-cheerful-friendly-face-laughing-confident_839833-29956.jpg",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: "t4",
|
|
||||||
name: "Robert L.",
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/expressive-senior-female-posing-indoor_344912-360.jpg",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: "t5",
|
|
||||||
name: "David W.",
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/young-adult-wearing-blank-shirt_23-2149321715.jpg",
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
cardTitle="What Our Clients Say"
|
showRating={true}
|
||||||
cardTag="12 Google Reviews"
|
title="What Our Clients Say"
|
||||||
cardAnimation="slide-up"
|
description="Hear from our local Gold Coast customers about their experience with us."
|
||||||
|
textboxLayout="default"
|
||||||
|
animationType="slide-up"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -253,20 +172,11 @@ export default function LandingPage() {
|
|||||||
useInvertedBackground={true}
|
useInvertedBackground={true}
|
||||||
faqs={[
|
faqs={[
|
||||||
{
|
{
|
||||||
id: "q1",
|
id: "q1", title: "How fast can you attend a roof leak?", content: "We prioritize emergency calls and strive to provide rapid, same-day or next-day assessment for urgent storm damage and leaks."},
|
||||||
title: "How fast can you attend a roof leak?",
|
|
||||||
content: "We prioritize emergency calls and strive to provide rapid, same-day or next-day assessment for urgent storm damage and leaks.",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
id: "q2",
|
id: "q2", title: "Do you provide free quotes?", content: "Yes, we offer free, no-obligation quotes for all tile roof repair and inspection services."},
|
||||||
title: "Do you provide free quotes?",
|
|
||||||
content: "Yes, we offer free, no-obligation quotes for all tile roof repair and inspection services.",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
id: "q3",
|
id: "q3", title: "Are you fully insured?", content: "Absolutely. We are fully insured and carry all necessary certifications for residential roof work in Queensland."},
|
||||||
title: "Are you fully insured?",
|
|
||||||
content: "Absolutely. We are fully insured and carry all necessary certifications for residential roof work in Queensland.",
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
sideTitle="Common Roof Questions"
|
sideTitle="Common Roof Questions"
|
||||||
faqsAnimation="slide-up"
|
faqsAnimation="slide-up"
|
||||||
@@ -277,14 +187,11 @@ export default function LandingPage() {
|
|||||||
<ContactText
|
<ContactText
|
||||||
useInvertedBackground={true}
|
useInvertedBackground={true}
|
||||||
background={{
|
background={{
|
||||||
variant: "rotated-rays-static-grid",
|
variant: "rotated-rays-static-grid"}}
|
||||||
}}
|
|
||||||
text="Queensland storms don't wait. A small roof leak today can cost thousands in structural damage tomorrow. Protect your biggest asset—contact our team for an honest inspection and professional fix before it's too late."
|
text="Queensland storms don't wait. A small roof leak today can cost thousands in structural damage tomorrow. Protect your biggest asset—contact our team for an honest inspection and professional fix before it's too late."
|
||||||
buttons={[
|
buttons={[
|
||||||
{
|
{
|
||||||
text: "Fix My Roof Now",
|
text: "Fix My Roof Now", href: "tel:0484675100"},
|
||||||
href: "tel:0484675100",
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
@@ -293,18 +200,13 @@ export default function LandingPage() {
|
|||||||
<ContactText
|
<ContactText
|
||||||
useInvertedBackground={false}
|
useInvertedBackground={false}
|
||||||
background={{
|
background={{
|
||||||
variant: "sparkles-gradient",
|
variant: "sparkles-gradient"}}
|
||||||
}}
|
|
||||||
text="Ready to get your roof fixed? Call First Rate Roofing on 0484 675 100 or click the button below to request a free quote today."
|
text="Ready to get your roof fixed? Call First Rate Roofing on 0484 675 100 or click the button below to request a free quote today."
|
||||||
buttons={[
|
buttons={[
|
||||||
{
|
{
|
||||||
text: "Call 0484 675 100",
|
text: "Call 0484 675 100", href: "tel:0484675100"},
|
||||||
href: "tel:0484675100",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
text: "Request Quote",
|
text: "Request Quote", href: "#contact"},
|
||||||
href: "#contact",
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
@@ -313,46 +215,29 @@ export default function LandingPage() {
|
|||||||
<FooterSimple
|
<FooterSimple
|
||||||
columns={[
|
columns={[
|
||||||
{
|
{
|
||||||
title: "First Rate Roofing",
|
title: "First Rate Roofing", items: [
|
||||||
items: [
|
|
||||||
{
|
{
|
||||||
label: "Gold Coast, QLD",
|
label: "Gold Coast, QLD", href: "#"},
|
||||||
href: "#",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
label: "0484 675 100",
|
label: "0484 675 100", href: "tel:0484675100"},
|
||||||
href: "tel:0484675100",
|
|
||||||
},
|
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Services",
|
title: "Services", items: [
|
||||||
items: [
|
|
||||||
{
|
{
|
||||||
label: "Tile Repairs",
|
label: "Tile Repairs", href: "#services"},
|
||||||
href: "#services",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
label: "Leak Detection",
|
label: "Leak Detection", href: "#services"},
|
||||||
href: "#services",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
label: "Maintenance",
|
label: "Maintenance", href: "#services"},
|
||||||
href: "#services",
|
|
||||||
},
|
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Support",
|
title: "Support", items: [
|
||||||
items: [
|
|
||||||
{
|
{
|
||||||
label: "Privacy Policy",
|
label: "Privacy Policy", href: "#"},
|
||||||
href: "#",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
label: "Terms of Service",
|
label: "Terms of Service", href: "#"},
|
||||||
href: "#",
|
|
||||||
},
|
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
]}
|
]}
|
||||||
@@ -363,4 +248,4 @@ export default function LandingPage() {
|
|||||||
</ReactLenis>
|
</ReactLenis>
|
||||||
</ThemeProvider>
|
</ThemeProvider>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user