Merge version_2 into main #2
@@ -1,59 +1,133 @@
|
||||
import type { Metadata } from "next";
|
||||
import { Halant } from "next/font/google";
|
||||
import { Inter } from "next/font/google";
|
||||
import { Nunito } from "next/font/google";
|
||||
import { Geist, Geist_Mono } from "next/font/google";
|
||||
import "./globals.css";
|
||||
import { ServiceWrapper } from "@/components/ServiceWrapper";
|
||||
import Tag from "@/tag/Tag";
|
||||
|
||||
const halant = Halant({
|
||||
variable: "--font-halant", subsets: ["latin"],
|
||||
weight: ["300", "400", "500", "600", "700"],
|
||||
const geist = Geist({
|
||||
variable: "--font-geist-sans", subsets: ["latin"],
|
||||
});
|
||||
|
||||
const inter = Inter({
|
||||
variable: "--font-inter", subsets: ["latin"],
|
||||
});
|
||||
|
||||
const nunito = Nunito({
|
||||
variable: "--font-nunito", subsets: ["latin"],
|
||||
const geistMono = Geist_Mono({
|
||||
variable: "--font-geist-mono", subsets: ["latin"],
|
||||
});
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: "Florida Fadez Barbershop | Fort Lauderdale Fade Haircuts & Grooming", description: "Premium barbershop in Fort Lauderdale offering professional fade haircuts, beard grooming, and lineups. 4.8★ rated. Book online or call +1 561-466-6306.", keywords: "Fort Lauderdale barbershop, fade haircuts, barber near me, beard grooming, professional barber, hair styling, gateway shopping center", metadataBase: new URL("https://floridafadez.com"),
|
||||
alternates: {
|
||||
canonical: "https://floridafadez.com"
|
||||
},
|
||||
openGraph: {
|
||||
title: "Florida Fadez Barbershop | Premium Fades & Fresh Cuts in Fort Lauderdale", description: "Experience premium barbershop culture at Florida Fadez. Professional fades, sharp lineups, expert beard grooming. Gateway Shopping Center. 4.8★ rated.", type: "website", siteName: "Florida Fadez Barbershop", url: "https://floridafadez.com", images: [
|
||||
{
|
||||
url: "https://floridafadez.com/og-image.jpg", alt: "Florida Fadez Barbershop - Premium Fades & Fresh Cuts"
|
||||
}
|
||||
]
|
||||
},
|
||||
twitter: {
|
||||
card: "summary_large_image", title: "Florida Fadez Barbershop | Fort Lauderdale", description: "Premium barbershop fades, beard grooming, and professional cuts. Book now: +1 561-466-6306", images: ["https://floridafadez.com/twitter-image.jpg"]
|
||||
},
|
||||
robots: {
|
||||
index: true,
|
||||
follow: true
|
||||
}
|
||||
};
|
||||
title: "Florida Fadez - Fort Lauderdale Barbershop", description: "Premium barbershop offering precision fades, clean cuts, and professional grooming at Gateway Shopping Center in Fort Lauderdale."};
|
||||
|
||||
export default function RootLayout({
|
||||
children,
|
||||
}: Readonly<{
|
||||
}: {
|
||||
children: React.ReactNode;
|
||||
}>) {
|
||||
}) {
|
||||
return (
|
||||
<html lang="en" suppressHydrationWarning>
|
||||
<ServiceWrapper>
|
||||
<body
|
||||
className={`${halant.variable} ${inter.variable} ${nunito.variable} antialiased`}
|
||||
>
|
||||
<Tag />
|
||||
{children}
|
||||
|
||||
<body className={`${geist.variable} ${geistMono.variable}`}>
|
||||
{children}
|
||||
<script>
|
||||
{
|
||||
`
|
||||
const style = document.createElement('style');
|
||||
style.textContent = `
|
||||
@keyframes barberPole {
|
||||
0% {
|
||||
background-position: 0% 0%;
|
||||
}
|
||||
100% {
|
||||
background-position: 200% 0%;
|
||||
}
|
||||
}
|
||||
|
||||
.barber-pole-loading {
|
||||
background: linear-gradient(
|
||||
45deg,
|
||||
var(--primary-cta) 25%,
|
||||
var(--card) 25%,
|
||||
var(--card) 50%,
|
||||
var(--primary-cta) 50%,
|
||||
var(--primary-cta) 75%,
|
||||
var(--card) 75%,
|
||||
var(--card)
|
||||
);
|
||||
background-size: 40px 40px;
|
||||
animation: barberPole 3s linear infinite;
|
||||
}
|
||||
|
||||
@keyframes fadeInSmooth {
|
||||
from {
|
||||
opacity: 0;
|
||||
transform: translateY(12px);
|
||||
}
|
||||
to {
|
||||
opacity: 1;
|
||||
transform: translateY(0);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes slideUpElegant {
|
||||
from {
|
||||
opacity: 0;
|
||||
transform: translateY(24px);
|
||||
}
|
||||
to {
|
||||
opacity: 1;
|
||||
transform: translateY(0);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes scaleInSoft {
|
||||
from {
|
||||
opacity: 0;
|
||||
transform: scale(0.96);
|
||||
}
|
||||
to {
|
||||
opacity: 1;
|
||||
transform: scale(1);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes revealBlurSmooth {
|
||||
from {
|
||||
opacity: 0;
|
||||
filter: blur(8px);
|
||||
}
|
||||
to {
|
||||
opacity: 1;
|
||||
filter: blur(0);
|
||||
}
|
||||
}
|
||||
|
||||
[data-animation="fade-in"] {
|
||||
animation: fadeInSmooth 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
|
||||
}
|
||||
|
||||
[data-animation="slide-up"] {
|
||||
animation: slideUpElegant 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
|
||||
}
|
||||
|
||||
[data-animation="scale-in"] {
|
||||
animation: scaleInSoft 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) both;
|
||||
}
|
||||
|
||||
[data-animation="reveal-blur"] {
|
||||
animation: revealBlurSmooth 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
|
||||
}
|
||||
|
||||
[data-stagger="true"] > * {
|
||||
animation-fill-mode: both;
|
||||
}
|
||||
|
||||
[data-stagger="true"] > *:nth-child(1) { animation-delay: 0.05s; }
|
||||
[data-stagger="true"] > *:nth-child(2) { animation-delay: 0.1s; }
|
||||
[data-stagger="true"] > *:nth-child(3) { animation-delay: 0.15s; }
|
||||
[data-stagger="true"] > *:nth-child(4) { animation-delay: 0.2s; }
|
||||
[data-stagger="true"] > *:nth-child(5) { animation-delay: 0.25s; }
|
||||
[data-stagger="true"] > *:nth-child(6) { animation-delay: 0.3s; }
|
||||
[data-stagger="true"] > *:nth-child(n+7) { animation-delay: 0.35s; }
|
||||
`;
|
||||
document.head.appendChild(style);
|
||||
`
|
||||
}
|
||||
</script>
|
||||
|
||||
<script
|
||||
dangerouslySetInnerHTML={{
|
||||
__html: `
|
||||
@@ -1421,7 +1495,6 @@ export default function RootLayout({
|
||||
}}
|
||||
/>
|
||||
</body>
|
||||
</ServiceWrapper>
|
||||
</html>
|
||||
);
|
||||
}
|
||||
|
||||
@@ -40,7 +40,7 @@ export default function LandingPage() {
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="hero" data-section="hero">
|
||||
<div id="hero" data-section="hero" data-animation="fade-in">
|
||||
<HeroCentered
|
||||
title="Fort Lauderdale's #1 Barbershop for Clean Fades & Fresh Cuts"
|
||||
description="Precision fades, sharp lineups, and professional grooming in the heart of Fort Lauderdale. Experience premium barbershop culture at Gateway Shopping Center."
|
||||
@@ -66,7 +66,7 @@ export default function LandingPage() {
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="socialproof" data-section="socialproof">
|
||||
<div id="socialproof" data-section="socialproof" data-animation="slide-up">
|
||||
<SocialProofOne
|
||||
title="Why Clients Choose Florida Fadez"
|
||||
description="Join over 62 satisfied customers who trust us with their grooming needs"
|
||||
@@ -83,7 +83,7 @@ export default function LandingPage() {
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="services" data-section="services">
|
||||
<div id="services" data-section="services" data-animation="slide-up" data-stagger="true">
|
||||
<ProductCardOne
|
||||
title="Our Premium Barbershop Services"
|
||||
description="Precision cuts and grooming services tailored to your style. Every service performed by experienced professionals."
|
||||
@@ -117,7 +117,7 @@ export default function LandingPage() {
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="whyus" data-section="whyus">
|
||||
<div id="whyus" data-section="whyus" data-animation="reveal-blur">
|
||||
<TextAbout
|
||||
tag="Why Choose Florida Fadez"
|
||||
tagIcon={undefined}
|
||||
@@ -132,7 +132,7 @@ export default function LandingPage() {
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="team" data-section="team">
|
||||
<div id="team" data-section="team" data-animation="slide-up" data-stagger="true">
|
||||
<TeamCardTwo
|
||||
title="Meet Our Expert Barbers"
|
||||
description="Meet the talented professionals behind Florida Fadez. Each barber brings years of experience and passion for precision grooming."
|
||||
@@ -165,14 +165,14 @@ export default function LandingPage() {
|
||||
}
|
||||
]}
|
||||
gridVariant="four-items-2x2-equal-grid"
|
||||
animationType="slide-up"
|
||||
animationType="scale-rotate"
|
||||
textboxLayout="default"
|
||||
useInvertedBackground={true}
|
||||
ariaLabel="Meet the Florida Fadez barber team"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="testimonials" data-section="testimonials">
|
||||
<div id="testimonials" data-section="testimonials" data-animation="slide-up" data-stagger="true">
|
||||
<TestimonialCardTwo
|
||||
title="What Our Clients Say"
|
||||
description="Real reviews from satisfied customers who trust Florida Fadez with their grooming"
|
||||
@@ -198,14 +198,14 @@ export default function LandingPage() {
|
||||
id: "6", name: "Robert Jackson", role: "Referral Customer", testimonial: "My friend recommended Florida Fadez and I'm so glad he did. Best barbers in the area. Quality work every single time. Five stars all day!", imageSrc: "http://img.b2bpic.net/free-photo/group-therapy-session-with-sticky-notes_23-2148856270.jpg", imageAlt: "Robert Jackson testimonial"
|
||||
}
|
||||
]}
|
||||
animationType="slide-up"
|
||||
animationType="depth-3d"
|
||||
textboxLayout="default"
|
||||
useInvertedBackground={false}
|
||||
ariaLabel="Customer testimonials for Florida Fadez Barbershop"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="booking" data-section="booking">
|
||||
<div id="booking" data-section="booking" data-animation="scale-in">
|
||||
<ContactText
|
||||
text="Ready for Your Fresh Cut? Book your appointment today at Florida Fadez. Call now or schedule online for the premium barbershop experience in Fort Lauderdale."
|
||||
animationType="background-highlight"
|
||||
@@ -219,7 +219,7 @@ export default function LandingPage() {
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="contact" data-section="contact">
|
||||
<div id="contact" data-section="contact" data-animation="slide-up" data-stagger="true">
|
||||
<MetricCardEleven
|
||||
title="Visit Florida Fadez"
|
||||
description="Located in the heart of Fort Lauderdale at Gateway Shopping Center. Open daily with convenient hours for your schedule."
|
||||
@@ -236,14 +236,14 @@ export default function LandingPage() {
|
||||
id: "3", value: "Easy Booking", title: "+1 561-466-6306", description: "Call to schedule or inquire about services", imageSrc: "http://img.b2bpic.net/free-photo/close-up-details-hairdresser-salon_23-2149205857.jpg", imageAlt: "Professional barbershop chairs"
|
||||
}
|
||||
]}
|
||||
animationType="slide-up"
|
||||
animationType="blur-reveal"
|
||||
textboxLayout="default"
|
||||
useInvertedBackground={false}
|
||||
ariaLabel="Contact information and location for Florida Fadez"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="footer" data-section="footer">
|
||||
<div id="footer" data-section="footer" data-animation="fade-in">
|
||||
<FooterMedia
|
||||
imageSrc="http://img.b2bpic.net/free-photo/hairdresser-cutting-man-s-hair-barber-shop_23-2149186469.jpg"
|
||||
imageAlt="Premium barbershop atmosphere at Florida Fadez"
|
||||
|
||||
Reference in New Issue
Block a user