3 Commits

Author SHA1 Message Date
1bd04d5d4b Update src/app/styles/variables.css 2026-04-05 07:31:47 +00:00
8553065e08 Update src/app/page.tsx 2026-04-05 07:31:47 +00:00
dfe296b862 Merge version_1 into main
Merge version_1 into main
2026-04-05 07:22:15 +00:00
2 changed files with 46 additions and 62 deletions

View File

@@ -16,14 +16,14 @@ export default function LandingPage() {
<ThemeProvider <ThemeProvider
defaultButtonVariant="directional-hover" defaultButtonVariant="directional-hover"
defaultTextAnimation="reveal-blur" defaultTextAnimation="reveal-blur"
borderRadius="soft" borderRadius="pill"
contentWidth="mediumSmall" contentWidth="mediumSmall"
sizing="largeSmall" sizing="largeSizeMediumTitles"
background="floatingGradient" background="noiseDiagonalGradient"
cardStyle="outline" cardStyle="glass-elevated"
primaryButtonStyle="radial-glow" primaryButtonStyle="primary-glow"
secondaryButtonStyle="radial-glow" secondaryButtonStyle="glass"
headingFontWeight="semibold" headingFontWeight="bold"
> >
<ReactLenis root> <ReactLenis root>
<div id="nav" data-section="nav"> <div id="nav" data-section="nav">
@@ -32,6 +32,7 @@ export default function LandingPage() {
{ name: "About", id: "about" }, { name: "About", id: "about" },
{ name: "Programs", id: "programs" }, { name: "Programs", id: "programs" },
{ name: "Pricing", id: "pricing" }, { name: "Pricing", id: "pricing" },
{ name: "Testimonials", id: "testimonials" },
{ name: "Contact", id: "contact" }, { name: "Contact", id: "contact" },
]} ]}
brandName="Gracie BJJ Academy" brandName="Gracie BJJ Academy"
@@ -40,97 +41,80 @@ export default function LandingPage() {
<div id="hero" data-section="hero"> <div id="hero" data-section="hero">
<HeroBillboard <HeroBillboard
background={{ variant: "plain" }} background={{ variant: "radial-gradient" }}
title="Train Like a Fighter" title="Train Like a Fighter"
description="Master the art of Brazilian Jiu-Jitsu. Build discipline, confidence, and strength in a welcoming environment for all skill levels." description="Master the art of Brazilian Jiu-Jitsu. Build discipline, confidence, and strength in a professional, athletic environment for all skill levels."
buttons={[{ text: "Start Training", href: "#contact" }]} buttons={[{ text: "Start Training", href: "#contact" }]}
imageSrc="http://img.b2bpic.net/free-photo/side-view-female-boxer-holding-flask-punching-bags_23-2148426166.jpg" imageSrc="https://img.b2bpic.net/free-photo/side-view-female-boxer-holding-flask-punching-bags_23-2148426166.jpg?_wi=1"
imageAlt="BJJ Training Intensity" imageAlt="BJJ Training Intensity"
mediaAnimation="slide-up" mediaAnimation="blur-reveal"
avatars={[
{ src: "http://img.b2bpic.net/free-photo/portrait-positive-young-woman-outdoors_23-2148591350.jpg", alt: "Student" },
{ src: "http://img.b2bpic.net/free-photo/karate-player-man-posing-looking_107420-64916.jpg", alt: "Student" },
{ src: "http://img.b2bpic.net/free-photo/afro-american-sports-man-resting-after-workout_171337-8260.jpg", alt: "Student" },
{ src: "http://img.b2bpic.net/free-photo/studio-portrait-bearded-brutal-karate-fighter-dressed-white-kimono-grey-background_613910-1884.jpg", alt: "Student" },
{ src: "http://img.b2bpic.net/free-photo/karate-woman-action-isolated-white-background_23-2148322322.jpg", alt: "Student" },
]}
avatarText="Join our 500+ active members"
marqueeItems={[
{ type: "text", text: "Beginner Friendly" },
{ type: "text", text: "World Class Coaches" },
{ type: "text", text: "Self Defense" },
{ type: "text", text: "Competition Ready" },
{ type: "text", text: "Strength & Conditioning" },
]}
/> />
</div> </div>
<div id="about" data-section="about"> <div id="about" data-section="about">
<TextAbout <TextAbout
useInvertedBackground={false} useInvertedBackground={false}
title="Built on Discipline & Community" title="About Our Gym"
/> />
</div> </div>
<div id="programs" data-section="programs"> <div id="programs" data-section="programs">
<FeatureCardTwentyFour <FeatureCardTwentyFour
animationType="slide-up" animationType="blur-reveal"
textboxLayout="split" textboxLayout="split"
useInvertedBackground={true} useInvertedBackground={true}
features={[ features={[
{ id: "p1", title: "Kids BJJ", author: "Foundations", description: "Focused on discipline, movement, and confidence-building for young minds.", tags: ["Kids", "Beginner"], imageSrc: "http://img.b2bpic.net/free-photo/side-view-kids-learning-boxing_23-2150930353.jpg" }, { id: "p1", title: "Kids BJJ", author: "Foundation", description: "Focused on discipline, movement, and character building.", tags: ["Kids", "Beginner"], imageSrc: "https://img.b2bpic.net/free-photo/side-view-kids-learning-boxing_23-2150930353.jpg?_wi=1" },
{ id: "p2", title: "Adult BJJ", author: "Technique", description: "Master fundamental and advanced techniques in a controlled environment.", tags: ["Adults", "Grappling"], imageSrc: "http://img.b2bpic.net/free-photo/karate-player-prayer-pose_107420-65079.jpg" }, { id: "p2", title: "Adult BJJ", author: "Technique", description: "Comprehensive technical curriculum for all levels.", tags: ["Adults", "Grappling"], imageSrc: "https://img.b2bpic.net/free-photo/karate-player-prayer-pose_107420-65079.jpg?_wi=1" },
{ id: "p3", title: "No-Gi Grappling", author: "Athletic", description: "High-intensity training focusing on speed, leverage, and modern submissions.", tags: ["Athletic", "Advanced"], imageSrc: "http://img.b2bpic.net/free-photo/two-judo-wrestlers-showing-their-technical-skills-fight-club_613910-13306.jpg" }, { id: "p3", title: "No-Gi", author: "Submission", description: "Dynamic grappling and submission focus.", tags: ["Advanced", "Grappling"], imageSrc: "https://img.b2bpic.net/free-photo/two-judo-wrestlers-showing-their-technical-skills-fight-club_613910-13306.jpg?_wi=1" },
{ id: "p4", title: "Beginner", author: "Essentials", description: "The fundamental path to your first belt.", tags: ["Essentials"], imageSrc: "https://img.b2bpic.net/free-photo/karate-woman-action-isolated-white-background_23-2148322322.jpg?_wi=1" },
]} ]}
title="Elite Training Programs" title="Training Programs"
description="Comprehensive classes designed to challenge you and help you grow." description="Our structured program paths ensure growth at every stage of your BJJ journey."
/> />
</div> </div>
<div id="pricing" data-section="pricing"> <div id="pricing" data-section="pricing">
<PricingCardOne <PricingCardOne
animationType="slide-up" animationType="scale-rotate"
textboxLayout="default" textboxLayout="default"
useInvertedBackground={false} useInvertedBackground={false}
plans={[ plans={[
{ id: "m1", badge: "Beginner", price: "$99", subtitle: "Monthly access", features: ["1 Class per week", "Basic technique", "Community access"] }, { id: "m1", badge: "Start", price: "$99", subtitle: "Per month", features: ["2 Classes / week", "Fundamentals access", "Gi loaner"] },
{ id: "m2", badge: "Popular", price: "$149", subtitle: "Unlimited access", features: ["Unlimited classes", "Adult/No-Gi access", "Open mat access"] }, { id: "m2", badge: "Pro", price: "$149", subtitle: "Unlimited", features: ["All access", "No-Gi included", "Open mat"] },
{ id: "m3", badge: "Competitor", price: "$199", subtitle: "Elite access", features: ["Unlimited classes", "Advanced workshops", "Personal coaching"] }, { id: "m3", badge: "Elite", price: "$199", subtitle: "Competition", features: ["Unlimited classes", "Advanced seminars", "Personal guidance"] },
]} ]}
title="Membership Plans" title="Membership Pricing"
description="Simple, transparent pricing to help you start your journey." description="Professional athletic membership plans tailored to your goals."
/> />
</div> </div>
<div id="testimonials" data-section="testimonials"> <div id="testimonials" data-section="testimonials">
<TestimonialCardSix <TestimonialCardSix
animationType="slide-up" animationType="blur-reveal"
textboxLayout="default" textboxLayout="default"
useInvertedBackground={true} useInvertedBackground={true}
testimonials={[ testimonials={[
{ id: "1", name: "Mark R.", handle: "@student", testimonial: "The instructors are world-class. I feel like part of a family here.", imageSrc: "http://img.b2bpic.net/free-photo/portrait-positive-young-woman-outdoors_23-2148591350.jpg" }, { id: "1", name: "Mark R.", handle: "@fighter", testimonial: "The training culture here is professional, focused, and intense.", imageSrc: "https://img.b2bpic.net/free-photo/portrait-positive-young-woman-outdoors_23-2148591350.jpg?_wi=1" },
{ id: "2", name: "Elena S.", handle: "@athlete", testimonial: "Started as a complete beginner and I feel stronger and more confident every day.", imageSrc: "http://img.b2bpic.net/free-photo/karate-player-man-posing-looking_107420-64916.jpg" }, { id: "2", name: "Elena S.", handle: "@student", testimonial: "Incredible community. Coaches ensure everyone gets proper attention.", imageSrc: "https://img.b2bpic.net/free-photo/karate-woman-action-isolated-white-background_23-2148322322.jpg?_wi=1" },
{ id: "3", name: "James L.", handle: "@competitor", testimonial: "The technical instruction is unparalleled in the city.", imageSrc: "http://img.b2bpic.net/free-photo/afro-american-sports-man-resting-after-workout_171337-8260.jpg" },
{ id: "4", name: "Sarah W.", handle: "@parent", testimonial: "My son loves the Kids BJJ class. His discipline has improved significantly.", imageSrc: "http://img.b2bpic.net/free-photo/studio-portrait-bearded-brutal-karate-fighter-dressed-white-kimono-grey-background_613910-1884.jpg" },
{ id: "5", name: "David K.", handle: "@enthusiast", testimonial: "Best atmosphere for anyone looking to learn real-world self-defense.", imageSrc: "http://img.b2bpic.net/free-photo/karate-woman-action-isolated-white-background_23-2148322322.jpg" },
]} ]}
title="Voices of the Community" title="Student Testimonials"
description="See why our students trust us to help them achieve their goals." description="Results driven by our community and discipline."
/> />
</div> </div>
<div id="contact" data-section="contact"> <div id="contact" data-section="contact">
<ContactSplitForm <ContactSplitForm
useInvertedBackground={false} useInvertedBackground={false}
title="Start Your Journey Today" title="Get In Touch"
description="Drop in for a free class or ask us about our membership options. We're ready to guide you." description="Located in the heart of the city. Sign up for a trial class today or inquire about membership."
inputs={[ inputs={[
{ name: "name", type: "text", placeholder: "Your Full Name", required: true }, { name: "name", type: "text", placeholder: "Full Name", required: true },
{ name: "email", type: "email", placeholder: "Email Address", required: true }, { name: "email", type: "email", placeholder: "Email", required: true },
{ name: "phone", type: "tel", placeholder: "Phone Number" }, { name: "phone", type: "tel", placeholder: "Phone" },
]} ]}
textarea={{ name: "message", placeholder: "Any specific questions?", rows: 4 }} textarea={{ name: "message", placeholder: "Tell us your fitness goals", rows: 4 }}
imageSrc="http://img.b2bpic.net/free-photo/people-practicing-taekwondo-gymnasium_23-2150207129.jpg" imageSrc="https://img.b2bpic.net/free-photo/people-practicing-taekwondo-gymnasium_23-2150207129.jpg?_wi=1"
/> />
</div> </div>
@@ -138,10 +122,10 @@ export default function LandingPage() {
<FooterBaseCard <FooterBaseCard
logoText="Gracie BJJ Academy" logoText="Gracie BJJ Academy"
columns={[ columns={[
{ title: "Navigate", items: [{ label: "About", href: "#about" }, { label: "Programs", href: "#programs" }, { label: "Pricing", href: "#pricing" }] }, { title: "Academy", items: [{ label: "About", href: "#about" }, { label: "Programs", href: "#programs" }] },
{ title: "Support", items: [{ label: "Contact", href: "#contact" }, { label: "Privacy", href: "#" }, { label: "Terms", href: "#" }] }, { title: "Join", items: [{ label: "Pricing", href: "#pricing" }, { label: "Contact", href: "#contact" }] },
]} ]}
copyrightText="© 2025 Gracie BJJ Academy. All rights reserved." copyrightText="© 2025 Gracie BJJ Academy"
/> />
</div> </div>
</ReactLenis> </ReactLenis>

View File

@@ -12,13 +12,13 @@
--background: #0a0a0a; --background: #0a0a0a;
--card: #1a1a1a; --card: #1a1a1a;
--foreground: #ffffffe6; --foreground: #ffffff;
--primary-cta: #e6e6e6; --primary-cta: #ff3d4a;
--primary-cta-text: #0a0a0a; --primary-cta-text: #0a0a0a;
--secondary-cta: #1a1a1a; --secondary-cta: #1a1a1a;
--secondary-cta-text: #ffffffe6; --secondary-cta-text: #ffffffe6;
--accent: #737373; --accent: #3f3f46;
--background-accent: #737373; --background-accent: #27272a;
/* 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);