13 Commits

Author SHA1 Message Date
e5a23421a7 Merge version_5 into main
Merge version_5 into main
2025-12-22 11:00:03 +00:00
02bf7a5e6d Update src/app/page.tsx 2025-12-22 10:59:58 +00:00
418ca5e438 Update src/app/layout.tsx 2025-12-22 10:59:57 +00:00
190888711a Merge version_5 into main
Merge version_5 into main
2025-12-22 10:58:17 +00:00
d5f719ea0f Update src/app/page.tsx 2025-12-22 10:58:12 +00:00
d443cf6b39 Merge version_5 into main
Merge version_5 into main
2025-12-22 10:56:19 +00:00
bed42c51aa Update src/app/page.tsx 2025-12-22 10:56:15 +00:00
6f57fcfb23 Update src/app/globals.css 2025-12-22 10:56:14 +00:00
d8aae7a5d8 Merge version_4 into main
Merge version_4 into main
2025-12-22 10:53:12 +00:00
7542b1aed1 Update src/app/page.tsx 2025-12-22 10:53:07 +00:00
f1dc82446a Merge version_3 into main
Merge version_3 into main
2025-12-22 10:47:57 +00:00
b91afefe1c Merge version_3 into main
Merge version_3 into main
2025-12-22 10:45:56 +00:00
351109b757 Merge version_2 into main
Merge version_2 into main
2025-12-22 10:37:47 +00:00
3 changed files with 137 additions and 297 deletions

View File

@@ -4,13 +4,13 @@
/* Base units */
/* --vw is set by ThemeProvider */
--background: #000f06;
--card: #0d1d0d;
--foreground: #e6ffe6;
--primary-cta: #1cde5d;
--secondary-cta: #0a1f0f;
--accent: #5dd882;
--background-accent: #0d6b32;
--background: #ffff00;
--card: #ffff00;
--foreground: #000000;
--primary-cta: #000000;
--secondary-cta: #ffff00;
--accent: #cccc00;
--background-accent: #ffff00;
/* text sizing - set by ThemeProvider */
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);
@@ -495,7 +495,7 @@ html {
body {
background-color: var(--background);
color: var(--foreground);
font-family: var(--font-poppins), sans-serif;
font-family: var(--font-inter-tight), sans-serif;
position: relative;
min-height: 100vh;
overscroll-behavior: none;
@@ -508,5 +508,5 @@ h3,
h4,
h5,
h6 {
font-family: var(--font-poppins), sans-serif;
font-family: var(--font-inter-tight), sans-serif;
}

View File

@@ -1276,4 +1276,4 @@ export default function RootLayout({
</ServiceWrapper>
</html>
);
}
}

View File

@@ -1,314 +1,154 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
import HeroLogoCarousel from '@/components/sections/hero/HeroLogoCarousel';
import ProductCardFour from '@/components/sections/product/ProductCardFour';
import FeatureCardTwenty from '@/components/sections/feature/FeatureCardTwenty';
import MetricCardOne from '@/components/sections/metrics/MetricCardOne';
import TestimonialCardSix from '@/components/sections/testimonial/TestimonialCardSix';
import ContactSplit from '@/components/sections/contact/ContactSplit';
import FooterBase from '@/components/sections/footer/FooterBase';
import { Users, TrendingUp, Target, Star, Quote } from "lucide-react";
export default function LandingPage() {
return (
<ThemeProvider
defaultButtonVariant="shift-hover"
defaultTextAnimation="reveal-blur"
borderRadius="soft"
contentWidth="large"
sizing="mediumSizeExtraSmallSpacing"
background="grid"
cardStyle="solid-bordered"
primaryButtonStyle="neon-glow-border"
secondaryButtonStyle="outline"
headingFontWeight="semibold"
defaultButtonVariant="text-stagger"
defaultTextAnimation="entrance-slide"
borderRadius="rounded"
contentWidth="medium"
sizing="medium"
background="circleGradient"
cardStyle="glass-elevated"
primaryButtonStyle="gradient"
secondaryButtonStyle="glass"
headingFontWeight="normal"
>
{/* Navbar */}
<div id="nav" data-section="nav">
<NavbarLayoutFloatingOverlay
brandName="OddsVault"
navItems={[
{ name: "Home", id: "hero" },
{ name: "Team Odds", id: "product" },
{ name: "How It Works", id: "feature" },
{ name: "Testimonials", id: "testimonial" },
{ name: "Get Started", id: "contact" }
]}
button={{ text: "Explore Odds", href: "product" }}
/>
<div className="text-center py-16">
<h1 className="text-4xl font-bold mb-4">OddsVault</h1>
<p className="text-lg opacity-75">Real-time NBA Team & Player Odds</p>
<nav className="mt-8 space-x-6">
<a href="#hero" className="hover:opacity-75">Home</a>
<a href="#product" className="hover:opacity-75">Team Odds</a>
<a href="#feature" className="hover:opacity-75">How It Works</a>
<a href="#testimonial" className="hover:opacity-75">Testimonials</a>
<a href="#contact" className="hover:opacity-75">Get Started</a>
</nav>
</div>
</div>
{/* Hero */}
<div id="hero" data-section="hero">
<HeroLogoCarousel
logoText="OddsVault"
description="Real-time NBA team and player odds. Bet smarter with live updates and exclusive betting lines. Your edge in the game starts here."
mediaItems={[
{
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399481083-1b76akuc.jpg",
imageAlt: "NBA basketball court"
},
{
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399482580-ts2malqq.png",
imageAlt: "NBA player in action"
},
{
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399484647-2hnh078u.jpg",
imageAlt: "Modern NBA arena"
},
{
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399485808-dgvco7wg.jpg",
imageAlt: "Live betting odds display"
},
{
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399486812-olv4o32v.jpg",
imageAlt: "NBA team matchup"
},
{
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399487883-n3fvenqc.jpg",
imageAlt: "Player statistics dashboard"
}
]}
/>
<div className="text-center py-20">
<h1 className="text-5xl font-bold mb-6">Real-time NBA Team & Player Odds</h1>
<p className="text-xl opacity-75 mb-8 max-w-2xl mx-auto">Bet smarter with live updates and exclusive betting lines. Your edge in the game starts here.</p>
<div className="space-x-4">
<button className="bg-blue-600 text-white px-8 py-3 rounded-lg hover:bg-blue-700">Get Started</button>
<button className="border border-gray-300 px-8 py-3 rounded-lg hover:bg-gray-50">Learn More</button>
</div>
</div>
</div>
{/* Product */}
<div id="product" data-section="product">
<ProductCardFour
title="NBA Team & Player Odds"
description="Access the most competitive betting lines for tonight's games. Live odds with real-time updates."
tag="Live Now"
textboxLayout="default"
gridVariant="uniform-all-items-equal"
animationType="slide-up"
containerStyle="default"
useInvertedBackground="noInvert"
products={[
{
id: "1",
name: "Lakers vs Celtics Spread",
price: "-110 / +110",
variant: "Game Time: Tonight 7:30 PM",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399486812-olv4o32v.jpg",
imageAlt: "Lakers vs Celtics matchup"
},
{
id: "2",
name: "LeBron Over 25.5 Points",
price: "-115 / -105",
variant: "Player Prop - Live Odds",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399482580-ts2malqq.png",
imageAlt: "LeBron James points prop"
},
{
id: "3",
name: "Warriors Moneyline",
price: "-250 / +210",
variant: "Full Game - Best Odds",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399481083-1b76akuc.jpg",
imageAlt: "Warriors game odds"
},
{
id: "4",
name: "Luka Doncic Triple Double",
price: "+180 / -200",
variant: "Special Props - Updated",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399487883-n3fvenqc.jpg",
imageAlt: "Doncic triple double prop"
}
]}
/>
<div className="py-20">
<div className="text-center mb-16">
<h2 className="text-4xl font-bold mb-4">NBA Team & Player Odds</h2>
<p className="text-lg opacity-75">Access the most competitive betting lines for tonight's games. Live odds with real-time updates.</p>
</div>
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6 max-w-6xl mx-auto px-4">
<div className="bg-white rounded-lg shadow-lg p-6 border">
<img src="https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399486812-olv4o32v.jpg" alt="Lakers vs Celtics matchup" className="w-full h-32 object-cover rounded mb-4" />
<h3 className="font-semibold mb-2">Lakers vs Celtics Spread</h3>
<p className="text-blue-600 font-bold">-110 / +110</p>
</div>
<div className="bg-white rounded-lg shadow-lg p-6 border">
<img src="https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399482580-ts2malqq.png" alt="LeBron James points prop" className="w-full h-32 object-cover rounded mb-4" />
<h3 className="font-semibold mb-2">LeBron Over 25.5 Points</h3>
<p className="text-blue-600 font-bold">-115 / -105</p>
</div>
<div className="bg-white rounded-lg shadow-lg p-6 border">
<img src="https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399481083-1b76akuc.jpg" alt="Warriors game odds" className="w-full h-32 object-cover rounded mb-4" />
<h3 className="font-semibold mb-2">Warriors Moneyline</h3>
<p className="text-blue-600 font-bold">-250 / +210</p>
</div>
<div className="bg-white rounded-lg shadow-lg p-6 border">
<img src="https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399487883-n3fvenqc.jpg" alt="Doncic triple double prop" className="w-full h-32 object-cover rounded mb-4" />
<h3 className="font-semibold mb-2">Luka Doncic Triple Double</h3>
<p className="text-blue-600 font-bold">+180 / -200</p>
</div>
</div>
</div>
</div>
{/* Feature */}
<div id="feature" data-section="feature">
<FeatureCardTwenty
title="How OddsVault Stands Apart"
description="Different approach to NBA sports betting. We deliver real-time odds, exclusive player props, and competitive lines you won't find elsewhere. Built for serious bettors who demand clarity and accuracy."
tag="Why Choose Us"
textboxLayout="default"
useInvertedBackground="noInvert"
images={[
{
id: 1,
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399485808-dgvco7wg.jpg",
imageAlt: "Real-time odds updates"
},
{
id: 2,
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399484647-2hnh078u.jpg",
imageAlt: "Professional betting platform"
},
{
id: 3,
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399487883-n3fvenqc.jpg",
imageAlt: "Advanced player analytics"
},
{
id: 4,
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399486812-olv4o32v.jpg",
imageAlt: "Comprehensive game analysis"
}
]}
/>
</div>
<div id="metric" data-section="metric">
<MetricCardOne
title="OddsVault by the Numbers"
description="Trusted by thousands of NBA bettors worldwide"
textboxLayout="default"
gridVariant="uniform-all-items-equal"
animationType="slide-up"
containerStyle="default"
useInvertedBackground="noInvert"
metrics={[
{
id: "1",
value: "50K+",
title: "Active Bettors",
description: "Daily users on the platform",
icon: Users
},
{
id: "2",
value: "250+",
title: "Live Odds",
description: "Updated every second",
icon: TrendingUp
},
{
id: "3",
value: "1M+",
title: "Bets Placed",
description: "Successful monthly transactions",
icon: Target
},
{
id: "4",
value: "4.8★",
title: "User Rating",
description: "Highest rated sportsbook",
icon: Star
}
]}
/>
</div>
<div id="testimonial" data-section="testimonial">
<TestimonialCardSix
title="Trusted by Winning Bettors"
description="Real players, real wins, real stories. See why serious NBA bettors choose OddsVault."
animationType="slide-up"
textboxLayout="default"
useInvertedBackground="noInvert"
testimonials={[
{
id: "1",
name: "Marcus Johnson",
handle: "Professional Bettor",
testimonial: "I've tried every major sportsbook out there. OddsVault consistently offers the tightest spreads and most competitive lines. My ROI has improved significantly since switching.",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399489339-4b0slwhc.jpg",
imageAlt: "Marcus Johnson",
icon: Quote
},
{
id: "2",
name: "Sarah Chen",
handle: "Sports Analytics Expert",
testimonial: "The live odds updates are lightning fast. I caught a line movement before anyone else and made a killing on the Warriors game. This is the platform for serious players.",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399490259-ptyv09vk.jpg",
imageAlt: "Sarah Chen",
icon: Quote
},
{
id: "3",
name: "James Rodriguez",
handle: "Trading Strategist",
testimonial: "The player props selection here is unmatched. Every bet I've analyzed has been accurate and profitable. OddsVault is my go-to platform for serious betting.",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399481083-1b76akuc.jpg",
imageAlt: "James Rodriguez",
icon: Quote
},
{
id: "4",
name: "Emma Wilson",
handle: "Data Analyst",
testimonial: "The real-time analytics dashboard is incredible. I can track line movements across multiple books simultaneously. This is the future of sports betting.",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399482580-ts2malqq.png",
imageAlt: "Emma Wilson",
icon: Quote
},
{
id: "5",
name: "David Park",
handle: "Betting Coach",
testimonial: "I recommend OddsVault to all my clients. The platform is user-friendly, odds are sharp, and the customer service is exceptional.",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399484647-2hnh078u.jpg",
imageAlt: "David Park",
icon: Quote
},
{
id: "6",
name: "Lisa Turner",
handle: "Sharp Bettor",
testimonial: "Best platform for finding value in NBA odds. The interface is clean, execution is fast, and limits are generous. Exactly what a pro bettor needs.",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399485808-dgvco7wg.jpg",
imageAlt: "Lisa Turner",
icon: Quote
}
]}
/>
<div className="py-20 bg-gray-50">
<div className="text-center mb-16">
<h2 className="text-4xl font-bold mb-4">How OddsVault Stands Apart</h2>
<p className="text-lg opacity-75 max-w-3xl mx-auto">Different approach to NBA sports betting. We deliver real-time odds, exclusive player props, and competitive lines you won't find elsewhere. Built for serious bettors who demand clarity and accuracy.</p>
</div>
<div className="grid grid-cols-2 lg:grid-cols-4 gap-6 max-w-6xl mx-auto px-4">
<img src="https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399485808-dgvco7wg.jpg" alt="Real-time odds updates" className="w-full h-48 object-cover rounded-lg" />
<img src="https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399484647-2hnh078u.jpg" alt="Professional betting platform" className="w-full h-48 object-cover rounded-lg" />
<img src="https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399487883-n3fvenqc.jpg" alt="Advanced player analytics" className="w-full h-48 object-cover rounded-lg" />
<img src="https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399486812-olv4o32v.jpg" alt="Comprehensive game analysis" className="w-full h-48 object-cover rounded-lg" />
</div>
</div>
</div>
{/* Contact */}
<div id="contact" data-section="contact">
<ContactSplit
tag="Stay Updated"
title="Get Live Odds Alerts"
description="Never miss a line movement. Get instant notifications when odds shift, new player props drop, or your favorite teams are playing."
useInvertedBackground="noInvert"
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766399484647-2hnh078u.jpg"
imageAlt="NBA arena packed with fans"
mediaPosition="right"
inputPlaceholder="Enter your email"
buttonText="Notify Me"
termsText="We respect your inbox. Unsubscribe anytime. Real-time odds updates only."
/>
<div className="py-20">
<div className="max-w-4xl mx-auto px-4 text-center">
<h2 className="text-4xl font-bold mb-4">Get Live Odds Alerts</h2>
<p className="text-lg opacity-75 mb-8">Never miss a line movement. Get instant notifications when odds shift, new player props drop, or your favorite teams are playing.</p>
<div className="flex flex-col sm:flex-row gap-4 justify-center max-w-md mx-auto">
<input type="email" placeholder="Enter your email" className="flex-1 px-4 py-3 border border-gray-300 rounded-lg" />
<button className="bg-blue-600 text-white px-8 py-3 rounded-lg hover:bg-blue-700">Notify Me</button>
</div>
<p className="text-sm opacity-60 mt-4">We respect your inbox. Unsubscribe anytime. Real-time odds updates only.</p>
</div>
</div>
</div>
{/* Footer */}
<div id="footer" data-section="footer">
<FooterBase
logoText="OddsVault"
copyrightText="© 2025 OddsVault. All rights reserved."
columns={[
{
title: "Platform",
items: [
{ label: "How It Works", href: "feature" },
{ label: "Team Odds", href: "product" },
{ label: "Player Props", href: "product" },
{ label: "Live Updates", href: "hero" }
]
},
{
title: "Company",
items: [
{ label: "About Us", href: "hero" },
{ label: "Contact", href: "contact" },
{ label: "Blog", href: "hero" },
{ label: "Careers", href: "hero" }
]
},
{
title: "Legal",
items: [
{ label: "Terms of Service", href: "hero" },
{ label: "Privacy Policy", href: "hero" },
{ label: "Responsible Gambling", href: "hero" },
{ label: "Compliance", href: "hero" }
]
}
]}
/>
<div className="bg-gray-900 text-white py-16">
<div className="max-w-6xl mx-auto px-4">
<div className="grid grid-cols-1 md:grid-cols-4 gap-8">
<div>
<h3 className="font-bold text-xl mb-4">OddsVault</h3>
<p className="opacity-75">Real-time NBA betting odds platform</p>
</div>
<div>
<h4 className="font-semibold mb-4">Platform</h4>
<ul className="space-y-2 opacity-75">
<li><a href="#feature" className="hover:opacity-100">How It Works</a></li>
<li><a href="#product" className="hover:opacity-100">Team Odds</a></li>
<li><a href="#product" className="hover:opacity-100">Player Props</a></li>
<li><a href="#hero" className="hover:opacity-100">Live Updates</a></li>
</ul>
</div>
<div>
<h4 className="font-semibold mb-4">Company</h4>
<ul className="space-y-2 opacity-75">
<li><a href="#hero" className="hover:opacity-100">About Us</a></li>
<li><a href="#contact" className="hover:opacity-100">Contact</a></li>
<li><a href="#hero" className="hover:opacity-100">Blog</a></li>
<li><a href="#hero" className="hover:opacity-100">Careers</a></li>
</ul>
</div>
<div>
<h4 className="font-semibold mb-4">Legal</h4>
<ul className="space-y-2 opacity-75">
<li><a href="#hero" className="hover:opacity-100">Terms of Service</a></li>
<li><a href="#hero" className="hover:opacity-100">Privacy Policy</a></li>
<li><a href="#hero" className="hover:opacity-100">Responsible Gambling</a></li>
<li><a href="#hero" className="hover:opacity-100">Compliance</a></li>
</ul>
</div>
</div>
<div className="border-t border-gray-700 mt-12 pt-8 text-center opacity-75">
<p>© 2025 OddsVault. All rights reserved.</p>
</div>
</div>
</div>
</div>
</ThemeProvider>
);
}
}