48 Commits

Author SHA1 Message Date
6a50e4d400 Merge version_19 into main
Merge version_19 into main
2026-03-31 18:57:29 +00:00
c07e31b6d7 Update src/app/styles/variables.css 2026-03-31 18:57:26 +00:00
3f78f65473 Update src/app/page.tsx 2026-03-31 18:57:25 +00:00
c761e36f2c Merge version_18 into main
Merge version_18 into main
2026-03-31 18:55:45 +00:00
d0a4c6ce2e Update src/app/page.tsx 2026-03-31 18:55:42 +00:00
7418321c80 Merge version_18 into main
Merge version_18 into main
2026-03-31 18:55:17 +00:00
f31c650bdc Update src/app/styles/variables.css 2026-03-31 18:55:13 +00:00
2e61100626 Update src/app/page.tsx 2026-03-31 18:55:13 +00:00
194a7cde36 Merge version_17 into main
Merge version_17 into main
2026-03-27 19:39:50 +00:00
d32895790c Update src/app/page.tsx 2026-03-27 19:39:44 +00:00
5991fb9a25 Merge version_16 into main
Merge version_16 into main
2026-03-27 19:36:58 +00:00
75a8912eb1 Update src/app/styles/variables.css 2026-03-27 19:36:52 +00:00
9c6e8aa915 Merge version_15 into main
Merge version_15 into main
2026-03-27 19:36:03 +00:00
809e647910 Update src/app/page.tsx 2026-03-27 19:36:00 +00:00
d0850756b3 Merge version_14 into main
Merge version_14 into main
2026-03-27 19:34:26 +00:00
5ee65764df Update src/app/styles/variables.css 2026-03-27 19:34:23 +00:00
2c34164f4b Update src/app/page.tsx 2026-03-27 19:34:23 +00:00
ac81567aad Merge version_13 into main
Merge version_13 into main
2026-03-27 19:32:07 +00:00
ad5e4c087e Update src/app/page.tsx 2026-03-27 19:32:01 +00:00
aaceed4826 Merge version_12 into main
Merge version_12 into main
2026-03-27 19:27:20 +00:00
c990c5b5be Update src/app/page.tsx 2026-03-27 19:27:14 +00:00
749a476842 Merge version_11 into main
Merge version_11 into main
2026-03-27 19:25:38 +00:00
e663d07c35 Update src/app/page.tsx 2026-03-27 19:25:35 +00:00
6355632b75 Merge version_10 into main
Merge version_10 into main
2026-03-27 19:24:44 +00:00
bfaf78322f Update src/app/page.tsx 2026-03-27 19:24:38 +00:00
cc2d1837ad Merge version_9 into main
Merge version_9 into main
2026-03-27 19:23:16 +00:00
f9cd211092 Update src/app/styles/base.css 2026-03-27 19:23:13 +00:00
85356bbd96 Update src/app/page.tsx 2026-03-27 19:23:12 +00:00
6b49851c4f Update src/app/layout.tsx 2026-03-27 19:23:12 +00:00
c44d3c669c Merge version_8 into main
Merge version_8 into main
2026-03-27 19:22:34 +00:00
cb9b618c69 Update src/app/page.tsx 2026-03-27 19:22:31 +00:00
110cd5c894 Merge version_7 into main
Merge version_7 into main
2026-03-27 19:21:08 +00:00
73c1b0b712 Update src/app/page.tsx 2026-03-27 19:21:02 +00:00
6187c79a37 Merge version_6 into main
Merge version_6 into main
2026-03-27 19:20:27 +00:00
03e4134601 Update src/app/page.tsx 2026-03-27 19:20:24 +00:00
764572ccba Merge version_5 into main
Merge version_5 into main
2026-03-27 19:19:40 +00:00
efa866adcb Update src/app/page.tsx 2026-03-27 19:19:37 +00:00
ad3ca2d96c Merge version_4 into main
Merge version_4 into main
2026-03-27 19:18:57 +00:00
abb1ca7a14 Update src/app/page.tsx 2026-03-27 19:18:54 +00:00
3f6726c7d1 Merge version_3 into main
Merge version_3 into main
2026-03-27 19:18:34 +00:00
6f4d355423 Update src/app/page.tsx 2026-03-27 19:18:28 +00:00
c7ffcd966c Merge version_2 into main
Merge version_2 into main
2026-03-27 19:17:44 +00:00
9fb5953fec Remove watermark 2026-03-27 19:17:38 +00:00
c7fc289f93 Merge version_2 into main
Merge version_2 into main
2026-03-27 19:16:13 +00:00
45bbd06355 Update src/app/page.tsx 2026-03-27 19:16:10 +00:00
7b951b99fa Merge version_2 into main
Merge version_2 into main
2026-03-27 19:15:49 +00:00
981ca8824e Update src/app/page.tsx 2026-03-27 19:15:46 +00:00
3689924c69 Merge version_1 into main
Merge version_1 into main
2026-03-27 19:12:51 +00:00
4 changed files with 60 additions and 168 deletions

View File

@@ -4,9 +4,9 @@ import { Inter } 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 { getVisualEditScript } from "@/utils/visual-edit-script"; import { getVisualEditScript } from "@/utils/visual-edit-script";
import { Nunito_Sans } from "next/font/google"; import { Nunito_Sans } from "next/font/google";
import { Montserrat } from "next/font/google";
@@ -20,9 +20,9 @@ export const metadata: Metadata = {
}, },
}; };
const nunitoSans = Nunito_Sans({
variable: "--font-nunito-sans", const montserrat = Montserrat({
subsets: ["latin"], variable: "--font-montserrat", subsets: ["latin"],
}); });
export default function RootLayout({ export default function RootLayout({
@@ -33,8 +33,8 @@ export default function RootLayout({
return ( return (
<html lang="en" suppressHydrationWarning> <html lang="en" suppressHydrationWarning>
<ServiceWrapper> <ServiceWrapper>
<body className={`${nunitoSans.variable} antialiased`}> <body className={`${montserrat.variable} antialiased`}>
<Tag />
{children} {children}
<script <script
dangerouslySetInnerHTML={{ dangerouslySetInnerHTML={{

View File

@@ -2,13 +2,13 @@
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider"; import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react"; import ReactLenis from "lenis/react";
import ContactSplitForm from '@/components/sections/contact/ContactSplitForm'; import ContactSplit from '@/components/sections/contact/ContactSplit';
import FooterLogoReveal from '@/components/sections/footer/FooterLogoReveal'; import FooterBase from '@/components/sections/footer/FooterBase';
import HeroOverlay from '@/components/sections/hero/HeroOverlay'; import HeroCarouselLogo from '@/components/sections/hero/heroCarouselLogo/HeroCarouselLogo';
import MediaAbout from '@/components/sections/about/MediaAbout'; import MediaAbout from '@/components/sections/about/MediaAbout';
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay'; import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
import PricingCardTwo from '@/components/sections/pricing/PricingCardTwo'; import PricingCardTwo from '@/components/sections/pricing/PricingCardTwo';
import TestimonialCardSix from '@/components/sections/testimonial/TestimonialCardSix'; import TestimonialCardTwo from '@/components/sections/testimonial/TestimonialCardTwo';
export default function LandingPage() { export default function LandingPage() {
return ( return (
@@ -17,50 +17,38 @@ export default function LandingPage() {
defaultTextAnimation="background-highlight" defaultTextAnimation="background-highlight"
borderRadius="rounded" borderRadius="rounded"
contentWidth="smallMedium" contentWidth="smallMedium"
sizing="mediumLargeSizeMediumTitles" sizing="largeSizeMediumTitles"
background="floatingGradient" background="none"
cardStyle="solid" cardStyle="solid"
primaryButtonStyle="diagonal-gradient" primaryButtonStyle="diagonal-gradient"
secondaryButtonStyle="radial-glow" secondaryButtonStyle="radial-glow"
headingFontWeight="bold" headingFontWeight="extrabold"
> >
<ReactLenis root> <ReactLenis root>
<div id="nav" data-section="nav"> <div id="nav" data-section="nav">
<NavbarLayoutFloatingOverlay <NavbarLayoutFloatingOverlay
navItems={[ navItems={[
{ { name: "Home", id: "home" },
name: "Home", { name: "About", id: "about" },
id: "home", { name: "Pricing", id: "pricing" },
}, { name: "Testimonials", id: "testimonial" },
{ { name: "Contact", id: "contact" },
name: "About",
id: "about",
},
{
name: "Pricing",
id: "pricing",
},
{
name: "Contact",
id: "contact",
},
]} ]}
brandName="FlawLikeMigo" brandName="FlawLikeMigo"
/> />
</div> </div>
<div id="home" data-section="home"> <div id="home" data-section="home">
<HeroOverlay <HeroCarouselLogo
title="Precision grooming by FlawLikeMigo" logoText="FlawLikeMigo"
description="Transforming your look with sharp cuts, clean fades, and impeccable attention to detail. Experience the difference of true craftsmanship." description="Serving Buda, Kyle, and the greater Austin area—elevating your style with precision."
buttons={[ buttons={[
{ { text: "Book Appointment", href: "#contact" },
text: "Book Your Cut", ]}
href: "#contact", slides={[
}, { imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BXcDHoKBX1pK6RdszTOwD4Yhel/uploaded-1774639907880-qdv0qs1a.jpg" },
{ imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BXcDHoKBX1pK6RdszTOwD4Yhel/uploaded-1774639907880-gfi2j7xb.jpg" }
]} ]}
imageSrc="http://img.b2bpic.net/free-photo/combs-brushes_23-2147711617.jpg"
videoSrc="https://www.w3schools.com/howto/img_video.mp4?_wi=1"
/> />
</div> </div>
@@ -68,8 +56,9 @@ export default function LandingPage() {
<MediaAbout <MediaAbout
useInvertedBackground={false} useInvertedBackground={false}
title="The Migo Touch" title="The Migo Touch"
description="With years of experience behind the chair, FlawLikeMigo is dedicated to providing more than just a haircut. We curate experiences that leave you feeling confident and sharp." tag="Come get right, best in the city I dont sell the cut I sell an experience"
imageSrc="http://img.b2bpic.net/free-photo/medium-shot-man-getting-groomed-salon_23-2149220574.jpg" description="FlawLikeMigo is a young, precision-focused barber based in Buda and Kyle, Texas—just a 15-minute drive from Austin. With years of experience behind the chair, we are dedicated to providing more than just a haircut; we curate a premium grooming experience designed to leave you feeling sharp, confident, and ready for anything."
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BXcDHoKBX1pK6RdszTOwD4Yhel/uploaded-1774640146026-zf8iucja.jpg"
videoSrc="https://www.w3schools.com/howto/img_video.mp4?_wi=2" videoSrc="https://www.w3schools.com/howto/img_video.mp4?_wi=2"
/> />
</div> </div>
@@ -81,55 +70,16 @@ export default function LandingPage() {
useInvertedBackground={false} useInvertedBackground={false}
plans={[ plans={[
{ {
id: "p1", id: "p2", badge: "Classic", price: "$35", subtitle: "Haircut with Eyebrows", buttons: [{ text: "Book", href: "#contact" }],
badge: "Most Popular", features: ["Precision Haircut", "Eyebrow Grooming", "Line-up"],
price: "$45",
subtitle: "The Signature Cut",
buttons: [
{
text: "Book",
href: "#contact",
},
],
features: [
"Precision Haircut",
"Line-up",
"Hot Towel Service",
],
}, },
{ {
id: "p2", id: "p1", badge: "Signature", price: "$45", subtitle: "Full service hair cut with design, black mask, and eyebrows", buttons: [{ text: "Book", href: "#contact" }],
badge: "Complete", features: ["Precision Haircut", "Custom Design", "Black Mask Treatment", "Eyebrow Grooming"],
price: "$65",
subtitle: "Full Grooming",
buttons: [
{
text: "Book",
href: "#contact",
},
],
features: [
"Signature Cut",
"Beard Trim",
"Facial Treatment",
],
}, },
{ {
id: "p3", id: "p3", badge: "Complete", price: "$50", subtitle: "Full Grooming", buttons: [{ text: "Book", href: "#contact" }],
badge: "Executive", features: ["Signature Cut", "Beard Trim", "Facial Treatment"],
price: "$85",
subtitle: "The Migo Elite",
buttons: [
{
text: "Book",
href: "#contact",
},
],
features: [
"Full Grooming",
"Hot Towel",
"Express Facial",
],
}, },
]} ]}
title="Services & Pricing" title="Services & Pricing"
@@ -138,96 +88,38 @@ export default function LandingPage() {
</div> </div>
<div id="testimonial" data-section="testimonial"> <div id="testimonial" data-section="testimonial">
<TestimonialCardSix <TestimonialCardTwo
animationType="slide-up" animationType="blur-reveal"
textboxLayout="default" textboxLayout="split"
useInvertedBackground={false} useInvertedBackground={false}
testimonials={[ title="Client Reviews"
{ description="What our community has to say about the Migo experience."
id: "t1", testimonials={[]}
name: "James R.",
handle: "@jamesr",
testimonial: "Best fade I've had in years. Migo is a perfectionist.",
imageSrc: "http://img.b2bpic.net/free-photo/happy-young-man-sitting-isolated-grey_171337-10568.jpg?_wi=1",
},
{
id: "t2",
name: "Marcus W.",
handle: "@m_w",
testimonial: "Clean, sharp, and consistent. The service is always top tier.",
imageSrc: "http://img.b2bpic.net/free-photo/joyful-young-handsome-barber-holding-hair-clippers-winner-cup-isolated-olive-green_141793-84218.jpg",
},
{
id: "t3",
name: "David L.",
handle: "@dl_styles",
testimonial: "Top quality service. I walk out feeling like a new man every time.",
imageSrc: "http://img.b2bpic.net/free-photo/hairstylist-giving-haircut-customer_23-2148506233.jpg",
},
{
id: "t4",
name: "Chris B.",
handle: "@chrisb",
testimonial: "Great vibes, even better cuts. Migo knows his craft.",
imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-young-man-getting-haircut_23-2149220536.jpg",
},
{
id: "t5",
name: "Alex P.",
handle: "@alexp",
testimonial: "Consistently the best barbershop experience in the city. Highly recommended.",
imageSrc: "http://img.b2bpic.net/free-photo/happy-young-man-sitting-isolated-grey_171337-10568.jpg?_wi=2",
},
]}
title="What Clients Say"
description="Don't just take our word for it."
/> />
</div> </div>
<div id="contact" data-section="contact"> <div id="contact" data-section="contact">
<ContactSplitForm <ContactSplit
useInvertedBackground={false} tag="Book Now"
title="Schedule Your Visit" title="Schedule Your Visit"
description="Ready to get fresh? Reach out and let's get you on the schedule." description="Ready to get fresh? Reach out and let's get you on the schedule."
inputs={[ background={{ variant: "plain" }}
{ useInvertedBackground={false}
name: "name", mediaPosition="right"
type: "text",
placeholder: "Your Name",
required: true,
},
{
name: "email",
type: "email",
placeholder: "Your Email",
required: true,
},
]}
textarea={{
name: "message",
placeholder: "Which service do you need?",
required: true,
}}
imageSrc="http://img.b2bpic.net/free-photo/tools-from-barbershop-wooden-background_1303-10377.jpg" imageSrc="http://img.b2bpic.net/free-photo/tools-from-barbershop-wooden-background_1303-10377.jpg"
mediaAnimation="slide-up"
videoSrc="https://www.w3schools.com/howto/img_video.mp4?_wi=3"
/> />
</div> </div>
<div id="footer" data-section="footer"> <div id="footer" data-section="footer">
<FooterLogoReveal <FooterBase
columns={[
{ title: "Navigation", items: [{ label: "Home", href: "#home" }, { label: "Pricing", href: "#pricing" }] },
{ title: "Connect", items: [{ label: "Instagram", href: "https://instagram.com" }, { label: "Terms", href: "#" }] }
]}
logoText="FlawLikeMigo" logoText="FlawLikeMigo"
leftLink={{
text: "Instagram",
href: "https://instagram.com",
}}
rightLink={{
text: "Terms of Service",
href: "#",
}}
/> />
</div> </div>
</ReactLenis> </ReactLenis>
</ThemeProvider> </ThemeProvider>
); );
} }

View File

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

View File

@@ -10,15 +10,15 @@
--accent: #ffffff; --accent: #ffffff;
--background-accent: #ffffff; */ --background-accent: #ffffff; */
--background: #f5f4f0; --background: #ffffff;
--card: #ffffff; --card: #f9f9f9;
--foreground: #1a1a1a; --foreground: #1a1a1a;
--primary-cta: #2c2c2c; --primary-cta: #1c1c1c;
--primary-cta-text: #f5f4f0; --primary-cta-text: #f5f4f0;
--secondary-cta: #f5f4f0; --secondary-cta: #f0f0f0;
--secondary-cta-text: #1a1a1a; --secondary-cta-text: #1a1a1a;
--accent: #8a8a8a; --accent: #e5e5e5;
--background-accent: #e8e6e1; --background-accent: #f4f4f4;
/* text sizing - set by ThemeProvider */ /* text sizing - set by ThemeProvider */
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem); /* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);