Merge version_3 into main #2
136
src/app/page.tsx
136
src/app/page.tsx
@@ -7,7 +7,7 @@ import FeatureHoverPattern from '@/components/sections/feature/featureHoverPatte
|
||||
import FooterCard from '@/components/sections/footer/FooterCard';
|
||||
import HeroCentered from '@/components/sections/hero/HeroCentered';
|
||||
import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline';
|
||||
import TestimonialCardOne from '@/components/sections/testimonial/TestimonialCardOne';
|
||||
import TestimonialCardSix from '@/components/sections/testimonial/TestimonialCardSix';
|
||||
import { Palette, Scissors, Sparkles, Sun } from "lucide-react";
|
||||
|
||||
export default function LandingPage() {
|
||||
@@ -19,68 +19,41 @@ export default function LandingPage() {
|
||||
contentWidth="small"
|
||||
sizing="mediumLargeSizeMediumTitles"
|
||||
background="grid"
|
||||
cardStyle="solid"
|
||||
primaryButtonStyle="flat"
|
||||
secondaryButtonStyle="solid"
|
||||
headingFontWeight="semibold"
|
||||
cardStyle="glass-elevated"
|
||||
primaryButtonStyle="primary-glow"
|
||||
secondaryButtonStyle="glass"
|
||||
headingFontWeight="bold"
|
||||
>
|
||||
<ReactLenis root>
|
||||
<div id="nav" data-section="nav">
|
||||
<NavbarLayoutFloatingInline
|
||||
navItems={[
|
||||
{
|
||||
name: "Gallery", id: "/gallery"},
|
||||
{
|
||||
name: "Services", id: "/services"},
|
||||
{
|
||||
name: "Book Online", id: "/book"},
|
||||
{
|
||||
name: "Contact", id: "/contact"},
|
||||
{
|
||||
name: "About", id: "/about"},
|
||||
{ name: "Gallery", id: "/gallery" },
|
||||
{ name: "Services", id: "/services" },
|
||||
{ name: "Book Online", id: "/book" },
|
||||
{ name: "Contact", id: "/contact" },
|
||||
{ name: "About", id: "/about" },
|
||||
]}
|
||||
brandName="Flamingo Hair & Beauty"
|
||||
button={{
|
||||
text: "Book Now", href: "/book"}}
|
||||
button={{ text: "Book Now", href: "/book" }}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="hero" data-section="hero">
|
||||
<HeroCentered
|
||||
background={{
|
||||
variant: "gradient-bars"}}
|
||||
background={{ variant: "gradient-bars" }}
|
||||
title="Feel amazing, every single visit."
|
||||
description="Premium hair & beauty treatments right here in Malvern East, Germiston. We're all about making you look stunning — and feel right at home. Generate your dream look with our AI imaging tools."
|
||||
description="Premium hair & beauty treatments right here in Malvern East, Germiston. Experience futuristic luxury and AI-driven precision."
|
||||
avatars={[
|
||||
{
|
||||
src: "http://img.b2bpic.net/free-photo/team-bride-celebrating-before-wedding_23-2149329119.jpg", alt: "Client"},
|
||||
{
|
||||
src: "http://img.b2bpic.net/free-photo/gardening-tools_23-2148013407.jpg", alt: "Client"},
|
||||
{
|
||||
src: "http://img.b2bpic.net/free-photo/young-woman-talking-phone-with-big-smile_1153-10.jpg", alt: "Client"},
|
||||
{
|
||||
src: "http://img.b2bpic.net/free-photo/portrait-attractive-young-woman-smiling_273609-12421.jpg", alt: "Client"},
|
||||
{
|
||||
src: "http://img.b2bpic.net/free-photo/portrait-smiling-young-woman-hair-stylist_23-2148113070.jpg", alt: "Happy client portrait"},
|
||||
{ src: "http://img.b2bpic.net/free-photo/team-bride-celebrating-before-wedding_23-2149329119.jpg", alt: "Client" },
|
||||
{ src: "http://img.b2bpic.net/free-photo/gardening-tools_23-2148013407.jpg", alt: "Client" },
|
||||
{ src: "http://img.b2bpic.net/free-photo/young-woman-talking-phone-with-big-smile_1153-10.jpg", alt: "Client" },
|
||||
{ src: "http://img.b2bpic.net/free-photo/portrait-attractive-young-woman-smiling_273609-12421.jpg", alt: "Client" },
|
||||
{ src: "http://img.b2bpic.net/free-photo/portrait-smiling-young-woman-hair-stylist_23-2148113070.jpg", alt: "Happy client portrait" },
|
||||
]}
|
||||
buttons={[
|
||||
{
|
||||
text: "Generate Your Style", onClick: () => console.log("AI Image generation trigger"),
|
||||
},
|
||||
{
|
||||
text: "Book your appointment", href: "/book"},
|
||||
]}
|
||||
marqueeItems={[
|
||||
{
|
||||
type: "text", text: "Expert Stylists"},
|
||||
{
|
||||
type: "text", text: "AI-Powered Visuals"},
|
||||
{
|
||||
type: "text", text: "Friendly Atmosphere"},
|
||||
{
|
||||
type: "text", text: "Locally Owned"},
|
||||
{
|
||||
type: "text", text: "Results Driven"},
|
||||
{ text: "Generate Your Style", onClick: () => console.log("AI Image generation trigger") },
|
||||
{ text: "Book Appointment", href: "/book" },
|
||||
]}
|
||||
/>
|
||||
</div>
|
||||
@@ -89,20 +62,12 @@ export default function LandingPage() {
|
||||
<FeatureHoverPattern
|
||||
animationType="slide-up"
|
||||
textboxLayout="split"
|
||||
useInvertedBackground={false}
|
||||
useInvertedBackground={true}
|
||||
features={[
|
||||
{
|
||||
icon: Scissors,
|
||||
title: "Hair colour & highlights", description: "Balayage, full colour, ombre and everything in between. From R450."},
|
||||
{
|
||||
icon: Sparkles,
|
||||
title: "Cut & blowdry", description: "A classic done really well. From R220."},
|
||||
{
|
||||
icon: Palette,
|
||||
title: "Gel nails & nail art", description: "Gel, acrylic or natural nails. Custom art. From R180."},
|
||||
{
|
||||
icon: Sun,
|
||||
title: "Facials & skin care", description: "Relaxing, results-driven facials tailored to you. From R280."},
|
||||
{ icon: Scissors, title: "Hair Colour & Highlights", description: "High-precision balayage, full colour, and ombre styling.", button: { text: "Book", href: "/book" } },
|
||||
{ icon: Sparkles, title: "Precision Cut & Blowdry", description: "Iconic styles designed for your unique features.", button: { text: "Book", href: "/book" } },
|
||||
{ icon: Palette, title: "Luxury Nails & Art", description: "High-fashion gel and acrylic artistry.", button: { text: "Book", href: "/book" } },
|
||||
{ icon: Sun, title: "Signature Facials", description: "Revitalizing, results-driven skin care luxury.", button: { text: "Book", href: "/book" } },
|
||||
]}
|
||||
title="Premium Beauty Services"
|
||||
description="Explore our top-tier treatments, from precision haircuts to revitalizing skin care."
|
||||
@@ -110,49 +75,32 @@ export default function LandingPage() {
|
||||
</div>
|
||||
|
||||
<div id="testimonials" data-section="testimonials">
|
||||
<TestimonialCardOne
|
||||
animationType="slide-up"
|
||||
textboxLayout="default"
|
||||
gridVariant="three-columns-all-equal-width"
|
||||
useInvertedBackground={false}
|
||||
<TestimonialCardSix
|
||||
animationType="blur-reveal"
|
||||
textboxLayout="split"
|
||||
useInvertedBackground={true}
|
||||
title="Client Testimonials"
|
||||
description="Real luxury experiences from our Malvern East community."
|
||||
testimonials={[
|
||||
{
|
||||
id: "1", name: "Tania Dos Santos", role: "Client", company: "Flamingo Beauty", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/portrait-business-woman-smiling_23-2148352574.jpg"},
|
||||
{
|
||||
id: "2", name: "Dorothea Claassen", role: "Client", company: "Flamingo Beauty", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/young-woman-posing-with-photo-tape-red-background_114579-60942.jpg"},
|
||||
{
|
||||
id: "3", name: "Fiona Brown", role: "Client", company: "Flamingo Beauty", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/young-pretty-woman-outdoor_624325-770.jpg"},
|
||||
{
|
||||
id: "4", name: "Sarah Miller", role: "Client", company: "Flamingo Beauty", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/happy-successful-agent-satisfied-customer-showing-thumb-up-while-sitting-table-using-tablet-together_74855-10029.jpg"},
|
||||
{
|
||||
id: "5", name: "Jane Doe", role: "Client", company: "Flamingo Beauty", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/smiling-man-sitting-cafe-table-gesturing_1262-1141.jpg"},
|
||||
{ id: "1", name: "Tania Dos Santos", handle: "@tania.style", testimonial: "The ultimate premium experience. Absolutely stunning results!" },
|
||||
{ id: "2", name: "Dorothea Claassen", handle: "@dorothea.c", testimonial: "Futuristic service, timeless style. So happy with my look!" },
|
||||
{ id: "3", name: "Fiona Brown", handle: "@fiona.beauty", testimonial: "Professional, chic, and always welcoming. My go-to luxury spot." },
|
||||
]}
|
||||
title="What our clients say"
|
||||
description="Real feedback from our wonderful Malvern East community."
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="faq" data-section="faq">
|
||||
<FaqDouble
|
||||
textboxLayout="default"
|
||||
useInvertedBackground={false}
|
||||
textboxLayout="split"
|
||||
useInvertedBackground={true}
|
||||
title="Frequently Asked Questions"
|
||||
description="Everything you need to know about your next appointment."
|
||||
description="Everything you need to know about your luxury salon experience."
|
||||
faqsAnimation="slide-up"
|
||||
faqs={[
|
||||
{
|
||||
id: "f1", title: "How do I book an appointment?", content: "You can book directly through our online booking link or call us during business hours."},
|
||||
{
|
||||
id: "f2", title: "What are your operating hours?", content: "We are open Monday to Saturday from 09:00 to 18:00."},
|
||||
{
|
||||
id: "f3", title: "Do you offer gift cards?", content: "Yes, digital and physical gift cards are available in-store."},
|
||||
{
|
||||
id: "f4", title: "Can I bring a friend?", content: "We have a comfortable lounge area for guests to wait during your treatment."},
|
||||
{ id: "f1", title: "How do I book an appointment?", content: "Book instantly via our online luxury booking platform." },
|
||||
{ id: "f2", title: "Operating Hours", content: "Monday - Saturday: 09:00 - 18:00. By appointment only." },
|
||||
{ id: "f3", title: "Gift Cards", content: "Digital and physical luxury gift cards are available in-store." },
|
||||
{ id: "f4", title: "Guest Policy", content: "Relax in our dedicated lounge area during your treatment." },
|
||||
]}
|
||||
/>
|
||||
</div>
|
||||
@@ -160,7 +108,7 @@ export default function LandingPage() {
|
||||
<div id="footer" data-section="footer">
|
||||
<FooterCard
|
||||
logoText="Flamingo Hair & Beauty"
|
||||
copyrightText="© 2026 Flamingo Hair & Beauty · All rights reserved."
|
||||
copyrightText="© 2026 Flamingo Hair & Beauty. Futuristic Beauty Redefined."
|
||||
/>
|
||||
</div>
|
||||
</ReactLenis>
|
||||
|
||||
@@ -10,15 +10,15 @@
|
||||
--accent: #ffffff;
|
||||
--background-accent: #ffffff; */
|
||||
|
||||
--background: #FBEAF0;
|
||||
--card: #ffffff;
|
||||
--foreground: #2b180a;
|
||||
--primary-cta: #D4537E;
|
||||
--background: #000000;
|
||||
--card: #1a1a1a;
|
||||
--foreground: #ffffff;
|
||||
--primary-cta: #FFD700;
|
||||
--primary-cta-text: #ffffff;
|
||||
--secondary-cta: #993556;
|
||||
--secondary-cta: #00E5FF;
|
||||
--secondary-cta-text: #ffffff;
|
||||
--accent: #ED93B1;
|
||||
--background-accent: #f9f1f4;
|
||||
--accent: #C0C0C0;
|
||||
--background-accent: #0d0d0d;
|
||||
|
||||
/* text sizing - set by ThemeProvider */
|
||||
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);
|
||||
|
||||
Reference in New Issue
Block a user