Compare commits
34 Commits
version_16
...
version_24
| Author | SHA1 | Date | |
|---|---|---|---|
| 4e662cb231 | |||
| 684c38217b | |||
| fbf51f0ca4 | |||
| d810b7f721 | |||
| 4740d93943 | |||
| ed06508ae0 | |||
| af96eeb04a | |||
| 55e89104af | |||
| 722bc301e3 | |||
| 929ca7f308 | |||
| 134be56516 | |||
| b509ac7ead | |||
| 4c7884224a | |||
| c06f29ce70 | |||
| 1dc695ca99 | |||
| 366124ec9d | |||
| 6568697b32 | |||
| 64cd2ad7f7 | |||
| 8b61686144 | |||
| 2daee3df45 | |||
| 561d8ad8f5 | |||
| af4d2d98de | |||
| 2e2a6cec49 | |||
| 37ead887b6 | |||
| e8d31bb1e0 | |||
| 1ffc5fb28e | |||
| 13c418766a | |||
| 6112efc087 | |||
| 83b2f02f99 | |||
| 148f81f053 | |||
| 20d5cfe282 | |||
| 535bc07992 | |||
| f81b587c74 | |||
| 93a4bfcf9c |
@@ -102,7 +102,7 @@ export default function AboutPage() {
|
|||||||
),
|
),
|
||||||
media: (
|
media: (
|
||||||
<div className="bg-gradient-to-br from-green-400 to-emerald-500 rounded-lg h-full flex items-center justify-center text-white text-3xl font-bold">
|
<div className="bg-gradient-to-br from-green-400 to-emerald-500 rounded-lg h-full flex items-center justify-center text-white text-3xl font-bold">
|
||||||
2025
|
2026
|
||||||
</div>
|
</div>
|
||||||
),
|
),
|
||||||
reverse: false,
|
reverse: false,
|
||||||
@@ -271,7 +271,7 @@ export default function AboutPage() {
|
|||||||
imageSrc="data:image/svg+xml,%3Csvg xmlns?_wi=25'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E"
|
imageSrc="data:image/svg+xml,%3Csvg xmlns?_wi=25'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E"
|
||||||
imageAlt="Caribbean Flair Island Jerk Grill Trailer"
|
imageAlt="Caribbean Flair Island Jerk Grill Trailer"
|
||||||
logoText="Caribbean Flair"
|
logoText="Caribbean Flair"
|
||||||
copyrightText="© 2025 Caribbean Flair Island Jerk Grill | Black & Women-Owned | Lehigh Acres, FL"
|
copyrightText="© 2026 Caribbean Flair Island Jerk Grill | Black & Women-Owned | Lehigh Acres, FL"
|
||||||
columns={footerColumns}
|
columns={footerColumns}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -19,8 +19,7 @@ export default function ContactPage() {
|
|||||||
|
|
||||||
const footerColumns = [
|
const footerColumns = [
|
||||||
{
|
{
|
||||||
title: "Quick Links",
|
title: "Quick Links", items: [
|
||||||
items: [
|
|
||||||
{ label: "Home", href: "/" },
|
{ label: "Home", href: "/" },
|
||||||
{ label: "Menu", href: "/menu" },
|
{ label: "Menu", href: "/menu" },
|
||||||
{ label: "Gallery", href: "/gallery" },
|
{ label: "Gallery", href: "/gallery" },
|
||||||
@@ -28,8 +27,7 @@ export default function ContactPage() {
|
|||||||
],
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Order & Contact",
|
title: "Order & Contact", items: [
|
||||||
items: [
|
|
||||||
{ label: "Order Online", href: "/order" },
|
{ label: "Order Online", href: "/order" },
|
||||||
{ label: "Call Us", href: "tel:2397850423" },
|
{ label: "Call Us", href: "tel:2397850423" },
|
||||||
{ label: "Locations & Hours", href: "/locations" },
|
{ label: "Locations & Hours", href: "/locations" },
|
||||||
@@ -37,8 +35,7 @@ export default function ContactPage() {
|
|||||||
],
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Connect With Us",
|
title: "Connect With Us", items: [
|
||||||
items: [
|
|
||||||
{ label: "Facebook", href: "https://facebook.com/caribbeanflair" },
|
{ label: "Facebook", href: "https://facebook.com/caribbeanflair" },
|
||||||
{ label: "About Us", href: "/about" },
|
{ label: "About Us", href: "/about" },
|
||||||
{ label: "Privacy Policy", href: "#privacy" },
|
{ label: "Privacy Policy", href: "#privacy" },
|
||||||
@@ -46,8 +43,7 @@ export default function ContactPage() {
|
|||||||
],
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Located In",
|
title: "Located In", items: [
|
||||||
items: [
|
|
||||||
{ label: "801 Leeland Heights Blvd W", href: "#map" },
|
{ label: "801 Leeland Heights Blvd W", href: "#map" },
|
||||||
{ label: "Lehigh Acres, FL 33936", href: "#map" },
|
{ label: "Lehigh Acres, FL 33936", href: "#map" },
|
||||||
{ label: "Open Until 9PM", href: "/locations" },
|
{ label: "Open Until 9PM", href: "/locations" },
|
||||||
@@ -74,9 +70,7 @@ export default function ContactPage() {
|
|||||||
brandName="Caribbean Flair"
|
brandName="Caribbean Flair"
|
||||||
navItems={navItems}
|
navItems={navItems}
|
||||||
button={{
|
button={{
|
||||||
text: "Order Now",
|
text: "Order Now", href: "/order"}}
|
||||||
href: "/order",
|
|
||||||
}}
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -89,13 +83,9 @@ export default function ContactPage() {
|
|||||||
tagAnimation="slide-up"
|
tagAnimation="slide-up"
|
||||||
buttons={[
|
buttons={[
|
||||||
{
|
{
|
||||||
text: "Call (239) 785-0423",
|
text: "Call (239) 785-0423", href: "tel:2397850423"},
|
||||||
href: "tel:2397850423",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
text: "Visit Us Today",
|
text: "Visit Us Today", href: "/order"},
|
||||||
href: "/order",
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
buttonAnimation="slide-up"
|
buttonAnimation="slide-up"
|
||||||
textboxLayout="default"
|
textboxLayout="default"
|
||||||
@@ -103,21 +93,15 @@ export default function ContactPage() {
|
|||||||
useInvertedBackground={false}
|
useInvertedBackground={false}
|
||||||
features={[
|
features={[
|
||||||
{
|
{
|
||||||
id: "phone-contact",
|
id: "phone-contact", title: "Call Us Directly", description: "Speak with our team for custom orders, catering, or any questions about our authentic Caribbean menu.", media: {
|
||||||
title: "Call Us Directly",
|
imageSrc: "http://img.b2bpic.net/free-photo/side-view-smiley-man-getting-coffee_23-2149663609.jpg?_wi=4"},
|
||||||
description: "Speak with our team for custom orders, catering, or any questions about our authentic Caribbean menu.",
|
|
||||||
media: {
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/side-view-smiley-man-getting-coffee_23-2149663609.jpg?_wi=4",
|
|
||||||
},
|
|
||||||
items: [
|
items: [
|
||||||
{
|
{
|
||||||
icon: Zap,
|
icon: Zap,
|
||||||
text: "(239) 785-0423",
|
text: "(239) 785-0423"},
|
||||||
},
|
|
||||||
{
|
{
|
||||||
icon: Heart,
|
icon: Heart,
|
||||||
text: "Available until 9PM",
|
text: "Available until 9PM"},
|
||||||
},
|
|
||||||
],
|
],
|
||||||
reverse: false,
|
reverse: false,
|
||||||
},
|
},
|
||||||
@@ -134,13 +118,9 @@ export default function ContactPage() {
|
|||||||
tagAnimation="slide-up"
|
tagAnimation="slide-up"
|
||||||
buttons={[
|
buttons={[
|
||||||
{
|
{
|
||||||
text: "Order Online Now",
|
text: "Order Online Now", href: "/order"},
|
||||||
href: "/order",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
text: "View Full Menu",
|
text: "View Full Menu", href: "/menu"},
|
||||||
href: "/menu",
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
buttonAnimation="slide-up"
|
buttonAnimation="slide-up"
|
||||||
textboxLayout="default"
|
textboxLayout="default"
|
||||||
@@ -148,21 +128,15 @@ export default function ContactPage() {
|
|||||||
useInvertedBackground={true}
|
useInvertedBackground={true}
|
||||||
features={[
|
features={[
|
||||||
{
|
{
|
||||||
id: "location-details",
|
id: "location-details", title: "Lehigh Acres, Florida", description: "Experience premium Caribbean fusion at our convenient Lehigh Acres location. Fresh-grilled authentic island cuisine made with love and expertise.", media: {
|
||||||
title: "Lehigh Acres, Florida",
|
imageSrc: "http://img.b2bpic.net/free-photo/chef-cooking-kitchen-while-wearing-professional-attire_23-2151208291.jpg?_wi=8"},
|
||||||
description: "Experience premium Caribbean fusion at our convenient Lehigh Acres location. Fresh-grilled authentic island cuisine made with love and expertise.",
|
|
||||||
media: {
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/chef-cooking-kitchen-while-wearing-professional-attire_23-2151208291.jpg?_wi=8",
|
|
||||||
},
|
|
||||||
items: [
|
items: [
|
||||||
{
|
{
|
||||||
icon: Zap,
|
icon: Zap,
|
||||||
text: "801 Leeland Heights Blvd W",
|
text: "801 Leeland Heights Blvd W"},
|
||||||
},
|
|
||||||
{
|
{
|
||||||
icon: Heart,
|
icon: Heart,
|
||||||
text: "Daily Service Until 9PM",
|
text: "Daily Service Until 9PM"},
|
||||||
},
|
|
||||||
],
|
],
|
||||||
reverse: true,
|
reverse: true,
|
||||||
},
|
},
|
||||||
@@ -181,4 +155,4 @@ export default function ContactPage() {
|
|||||||
</div>
|
</div>
|
||||||
</ThemeProvider>
|
</ThemeProvider>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,19 +1,13 @@
|
|||||||
"use client";
|
"use client";
|
||||||
|
|
||||||
import { useState } from "react";
|
|
||||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||||
import NavbarStyleCentered from "@/components/navbar/NavbarStyleCentered/NavbarStyleCentered";
|
import NavbarStyleCentered from "@/components/navbar/NavbarStyleCentered/NavbarStyleCentered";
|
||||||
import HeroSplit from "@/components/sections/hero/HeroSplit";
|
import HeroSplit from "@/components/sections/hero/HeroSplit";
|
||||||
import ProductCardFour from "@/components/sections/product/ProductCardFour";
|
import ProductCardFour from "@/components/sections/product/ProductCardFour";
|
||||||
import FooterMedia from "@/components/sections/footer/FooterMedia";
|
import FooterMedia from "@/components/sections/footer/FooterMedia";
|
||||||
import { Flame, Lock, X } from "lucide-react";
|
import { Flame } from "lucide-react";
|
||||||
|
|
||||||
export default function FullMenuPage() {
|
export default function FullMenuPage() {
|
||||||
const [isPasswordProtected, setIsPasswordProtected] = useState(true);
|
|
||||||
const [passwordInput, setPasswordInput] = useState("");
|
|
||||||
const [passwordError, setPasswordError] = useState(false);
|
|
||||||
const MENU_PASSWORD = "Caribbean2025";
|
|
||||||
|
|
||||||
const navItems = [
|
const navItems = [
|
||||||
{ name: "Home", id: "home" },
|
{ name: "Home", id: "home" },
|
||||||
{ name: "Menu", id: "menu" },
|
{ name: "Menu", id: "menu" },
|
||||||
@@ -58,16 +52,6 @@ export default function FullMenuPage() {
|
|||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
const handlePasswordSubmit = () => {
|
|
||||||
if (passwordInput === MENU_PASSWORD) {
|
|
||||||
setIsPasswordProtected(false);
|
|
||||||
setPasswordError(false);
|
|
||||||
} else {
|
|
||||||
setPasswordError(true);
|
|
||||||
setPasswordInput("");
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
const allMenuItems = [
|
const allMenuItems = [
|
||||||
{
|
{
|
||||||
id: "jerk-chicken", name: "Jerk Chicken Platter", price: "$15.95", variant: "Full Rack", imageSrc: "http://img.b2bpic.net/free-photo/from-shrimps-batter-with-red-rice-greens-white-plate_176474-2654.jpg?_wi=1", imageAlt: "Jerk chicken grilled on foil with spices"},
|
id: "jerk-chicken", name: "Jerk Chicken Platter", price: "$15.95", variant: "Full Rack", imageSrc: "http://img.b2bpic.net/free-photo/from-shrimps-batter-with-red-rice-greens-white-plate_176474-2654.jpg?_wi=1", imageAlt: "Jerk chicken grilled on foil with spices"},
|
||||||
@@ -126,101 +110,48 @@ export default function FullMenuPage() {
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{/* Password Protection Modal */}
|
|
||||||
{isPasswordProtected && (
|
|
||||||
<div className="fixed inset-0 bg-black/50 flex items-center justify-center z-50 p-4">
|
|
||||||
<div className="bg-white rounded-lg shadow-2xl max-w-md w-full p-8">
|
|
||||||
<div className="flex items-center justify-center mb-6">
|
|
||||||
<Lock className="w-8 h-8 text-orange-500 mr-2" />
|
|
||||||
<h2 className="text-2xl font-bold">Full Menu Access</h2>
|
|
||||||
</div>
|
|
||||||
<p className="text-gray-600 text-center mb-6">
|
|
||||||
This full menu is password protected. Please enter the password to continue.
|
|
||||||
</p>
|
|
||||||
<input
|
|
||||||
type="password"
|
|
||||||
value={passwordInput}
|
|
||||||
onChange={(e) => {
|
|
||||||
setPasswordInput(e.target.value);
|
|
||||||
setPasswordError(false);
|
|
||||||
}}
|
|
||||||
onKeyPress={(e) => {
|
|
||||||
if (e.key === "Enter") {
|
|
||||||
handlePasswordSubmit();
|
|
||||||
}
|
|
||||||
}}
|
|
||||||
placeholder="Enter password"
|
|
||||||
className={`w-full px-4 py-3 border-2 rounded-lg mb-4 focus:outline-none transition ${
|
|
||||||
passwordError
|
|
||||||
? "border-red-500 focus:border-red-600"
|
|
||||||
: "border-gray-300 focus:border-orange-500"
|
|
||||||
}`}
|
|
||||||
/>
|
|
||||||
{passwordError && (
|
|
||||||
<p className="text-red-600 text-sm mb-4">Incorrect password. Please try again.</p>
|
|
||||||
)}
|
|
||||||
<button
|
|
||||||
onClick={handlePasswordSubmit}
|
|
||||||
className="w-full bg-gradient-to-r from-orange-500 to-red-500 text-white font-semibold py-3 rounded-lg hover:opacity-90 transition mb-3"
|
|
||||||
>
|
|
||||||
Unlock Menu
|
|
||||||
</button>
|
|
||||||
<a
|
|
||||||
href="/"
|
|
||||||
className="block w-full bg-gray-200 hover:bg-gray-300 text-gray-800 font-semibold py-3 rounded-lg transition text-center"
|
|
||||||
>
|
|
||||||
Back to Home
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
)}
|
|
||||||
|
|
||||||
{/* Hero Section */}
|
{/* Hero Section */}
|
||||||
{!isPasswordProtected && (
|
<div id="hero" data-section="hero">
|
||||||
<div id="hero" data-section="hero">
|
<HeroSplit
|
||||||
<HeroSplit
|
title="Complete Island Menu"
|
||||||
title="Complete Island Menu"
|
description="Explore our full selection of authentic Caribbean dishes. Every item is crafted fresh and packed with island soul."
|
||||||
description="Explore our full selection of authentic Caribbean dishes. Every item is crafted fresh and packed with island soul."
|
tag="Exclusive"
|
||||||
tag="Exclusive"
|
tagIcon={Flame}
|
||||||
tagIcon={Flame}
|
tagAnimation="slide-up"
|
||||||
tagAnimation="slide-up"
|
background={{ variant: "glowing-orb" }}
|
||||||
background={{ variant: "glowing-orb" }}
|
buttons={[
|
||||||
buttons={[
|
{
|
||||||
{
|
text: "Call to Order", href: "tel:2397850423"},
|
||||||
text: "Call to Order", href: "tel:2397850423"},
|
]}
|
||||||
]}
|
buttonAnimation="slide-up"
|
||||||
buttonAnimation="slide-up"
|
imageSrc="http://img.b2bpic.net/free-vector/summer-label-collectio_23-2148160410.jpg?_wi=3"
|
||||||
imageSrc="http://img.b2bpic.net/free-vector/summer-label-collectio_23-2148160410.jpg?_wi=3"
|
imageAlt="Caribbean Flair Full Menu"
|
||||||
imageAlt="Caribbean Flair Full Menu"
|
mediaAnimation="opacity"
|
||||||
mediaAnimation="opacity"
|
imagePosition="right"
|
||||||
imagePosition="right"
|
ariaLabel="Full menu page hero section"
|
||||||
ariaLabel="Full menu page hero section"
|
/>
|
||||||
/>
|
</div>
|
||||||
</div>
|
|
||||||
)}
|
|
||||||
|
|
||||||
{/* Full Menu Section */}
|
{/* Full Menu Section */}
|
||||||
{!isPasswordProtected && (
|
<div id="full-menu" data-section="full-menu">
|
||||||
<div id="full-menu" data-section="full-menu">
|
<ProductCardFour
|
||||||
<ProductCardFour
|
title="All Menu Items"
|
||||||
title="All Menu Items"
|
description="Discover our complete selection of authentic Caribbean dishes, sides, drinks, and specials. All items are fresh and made to order."
|
||||||
description="Discover our complete selection of authentic Caribbean dishes, sides, drinks, and specials. All items are fresh and made to order."
|
tag="Complete Selection"
|
||||||
tag="Complete Selection"
|
tagIcon={Flame}
|
||||||
tagIcon={Flame}
|
tagAnimation="slide-up"
|
||||||
tagAnimation="slide-up"
|
buttons={[
|
||||||
buttons={[
|
{
|
||||||
{
|
text: "Order Now", href: "/menu"},
|
||||||
text: "Order Now", href: "/menu"},
|
]}
|
||||||
]}
|
buttonAnimation="slide-up"
|
||||||
buttonAnimation="slide-up"
|
textboxLayout="default"
|
||||||
textboxLayout="default"
|
gridVariant="three-columns-all-equal-width"
|
||||||
gridVariant="three-columns-all-equal-width"
|
animationType="slide-up"
|
||||||
animationType="slide-up"
|
useInvertedBackground={false}
|
||||||
useInvertedBackground={false}
|
products={allMenuItems}
|
||||||
products={allMenuItems}
|
/>
|
||||||
/>
|
</div>
|
||||||
</div>
|
|
||||||
)}
|
|
||||||
|
|
||||||
{/* Footer */}
|
{/* Footer */}
|
||||||
<div id="footer" data-section="footer">
|
<div id="footer" data-section="footer">
|
||||||
|
|||||||
@@ -1,38 +1,77 @@
|
|||||||
"use client";
|
"use client";
|
||||||
|
|
||||||
import { useState } from "react";
|
|
||||||
import Link from "next/link";
|
import Link from "next/link";
|
||||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||||
import NavbarStyleCentered from "@/components/navbar/NavbarStyleCentered/NavbarStyleCentered";
|
import NavbarStyleCentered from "@/components/navbar/NavbarStyleCentered/NavbarStyleCentered";
|
||||||
import { ArrowLeft, Lock } from "lucide-react";
|
import HeroSplit from "@/components/sections/hero/HeroSplit";
|
||||||
|
import BlogCardThree from "@/components/sections/blog/BlogCardThree";
|
||||||
|
import FooterMedia from "@/components/sections/footer/FooterMedia";
|
||||||
|
import { Award, Camera, Phone, ShoppingCart } from "lucide-react";
|
||||||
|
import { useState, useEffect } from "react";
|
||||||
|
|
||||||
export default function MenuPage() {
|
export default function MenuPage() {
|
||||||
const [password, setPassword] = useState("");
|
const [isMobileMenuOpen, setIsMobileMenuOpen] = useState(false);
|
||||||
const [isAuthenticated, setIsAuthenticated] = useState(false);
|
const [isDesktopButtonsVisible, setIsDesktopButtonsVisible] = useState(true);
|
||||||
const [error, setError] = useState("");
|
const [showCookiePreferences, setShowCookiePreferences] = useState(false);
|
||||||
|
const [cookiesAccepted, setCookiesAccepted] = useState(false);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
const cookieConsent = localStorage.getItem("cookie-consent");
|
||||||
|
if (!cookieConsent) {
|
||||||
|
setShowCookiePreferences(true);
|
||||||
|
} else {
|
||||||
|
setCookiesAccepted(true);
|
||||||
|
}
|
||||||
|
}, []);
|
||||||
|
|
||||||
|
const handleCookieAccept = () => {
|
||||||
|
localStorage.setItem("cookie-consent", "accepted");
|
||||||
|
setCookiesAccepted(true);
|
||||||
|
setShowCookiePreferences(false);
|
||||||
|
};
|
||||||
|
|
||||||
const navItems = [
|
const navItems = [
|
||||||
{ name: "Home", id: "home" },
|
{ name: "Home", id: "home" },
|
||||||
{ name: "Menu", id: "signature-dishes" },
|
{ name: "Menu", id: "featured-gallery" },
|
||||||
{ name: "About Us", id: "owners-spotlight" },
|
{ name: "About Us", id: "owners-spotlight" },
|
||||||
{ name: "Gallery", id: "featured-gallery" },
|
{ name: "Gallery", id: "featured-gallery" },
|
||||||
{ name: "Reviews", id: "testimonials" },
|
{ name: "Reviews", id: "testimonials" },
|
||||||
{ name: "Locations", id: "footer" },
|
{ name: "Locations", id: "footer" },
|
||||||
];
|
];
|
||||||
|
|
||||||
const handlePasswordSubmit = (e: React.FormEvent) => {
|
const footerColumns = [
|
||||||
e.preventDefault();
|
{
|
||||||
// Replace with your actual password
|
title: "Quick Links", items: [
|
||||||
const correctPassword = "caribbean2025";
|
{ label: "Home", href: "/" },
|
||||||
|
{ label: "Menu", href: "/menu" },
|
||||||
if (password === correctPassword) {
|
{ label: "Gallery", href: "#featured-gallery" },
|
||||||
setIsAuthenticated(true);
|
{ label: "Reviews", href: "#testimonials" },
|
||||||
setError("");
|
],
|
||||||
} else {
|
},
|
||||||
setError("Incorrect password. Please try again.");
|
{
|
||||||
setPassword("");
|
title: "Order & Contact", items: [
|
||||||
}
|
{ label: "Order Online", href: "/order-now" },
|
||||||
};
|
{ label: "Call Us", href: "tel:2397850423" },
|
||||||
|
{ label: "Locations & Hours", href: "#footer" },
|
||||||
|
{ label: "Contact", href: "#footer" },
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "Connect With Us", items: [
|
||||||
|
{ label: "Facebook", href: "https://www.facebook.com/share/1CckZyvyXX/?mibextid=wwXIfr" },
|
||||||
|
{ label: "Privacy Policy", href: "#" },
|
||||||
|
{ label: "Terms of Service", href: "#" },
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "Located In", items: [
|
||||||
|
{ label: "801 Leeland Heights Blvd W", href: "#" },
|
||||||
|
{ label: "Lehigh Acres, FL 33936", href: "#" },
|
||||||
|
{ label: "Open Until 9PM", href: "#" },
|
||||||
|
{ label: "Delivery Available", href: "#" },
|
||||||
|
],
|
||||||
|
},
|
||||||
|
];
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<ThemeProvider
|
<ThemeProvider
|
||||||
@@ -57,6 +96,40 @@ export default function MenuPage() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@keyframes slideInFromLeft {
|
||||||
|
from {
|
||||||
|
opacity: 0;
|
||||||
|
transform: translateX(-60px);
|
||||||
|
}
|
||||||
|
to {
|
||||||
|
opacity: 1;
|
||||||
|
transform: translateX(0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes slideInFromRight {
|
||||||
|
from {
|
||||||
|
opacity: 0;
|
||||||
|
transform: translateX(60px);
|
||||||
|
}
|
||||||
|
to {
|
||||||
|
opacity: 1;
|
||||||
|
transform: translateX(0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes glowHover {
|
||||||
|
0% {
|
||||||
|
box-shadow: 0 0 0px rgba(227, 68, 0, 0.4);
|
||||||
|
}
|
||||||
|
50% {
|
||||||
|
box-shadow: 0 0 20px rgba(227, 68, 0, 0.6);
|
||||||
|
}
|
||||||
|
100% {
|
||||||
|
box-shadow: 0 0 30px rgba(227, 68, 0, 0.8);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
html {
|
html {
|
||||||
scroll-behavior: smooth;
|
scroll-behavior: smooth;
|
||||||
}
|
}
|
||||||
@@ -64,182 +137,204 @@ export default function MenuPage() {
|
|||||||
body {
|
body {
|
||||||
animation: fadeIn 0.8s ease-out;
|
animation: fadeIn 0.8s ease-out;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[data-section] {
|
||||||
|
animation: fadeIn 1.2s ease-out forwards;
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#hero [data-section] {
|
||||||
|
animation-delay: 0.1s;
|
||||||
|
}
|
||||||
|
|
||||||
|
#featured-gallery {
|
||||||
|
animation-delay: 0.2s;
|
||||||
|
}
|
||||||
|
|
||||||
|
#footer {
|
||||||
|
animation-delay: 0.3s;
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
animation: slideInFromRight 1s ease-out forwards;
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#hero img {
|
||||||
|
animation-delay: 0.3s;
|
||||||
|
}
|
||||||
|
|
||||||
|
#featured-gallery img {
|
||||||
|
animation-delay: 0.4s;
|
||||||
|
}
|
||||||
|
|
||||||
|
button, [role="button"], a[href*="#"], a[href*="/"] {
|
||||||
|
position: relative;
|
||||||
|
transition: all 0.3s ease;
|
||||||
|
}
|
||||||
|
|
||||||
|
button:hover, [role="button"]:hover, a[href*="#"]:hover, a[href*="/"]:hover {
|
||||||
|
animation: glowHover 0.6s ease-in-out;
|
||||||
|
}
|
||||||
|
|
||||||
|
.bg-gradient-to-r, .bg-primary-cta, [class*="bg-blue"], [class*="bg-orange"], [class*="bg-red"] {
|
||||||
|
transition: all 0.3s ease;
|
||||||
|
}
|
||||||
|
|
||||||
|
.bg-gradient-to-r:hover, .bg-primary-cta:hover, [class*="bg-blue"]:hover, [class*="bg-orange"]:hover, [class*="bg-red"]:hover {
|
||||||
|
filter: brightness(1.1);
|
||||||
|
animation: glowHover 0.6s ease-in-out;
|
||||||
|
}
|
||||||
`}</style>
|
`}</style>
|
||||||
|
|
||||||
{/* Navigation Bar */}
|
{/* Persistent Top Navigation Bar */}
|
||||||
<div className="sticky top-0 z-40 w-full bg-white/80 backdrop-blur-md border-b border-gray-200">
|
<div id="nav" data-section="nav" className="sticky top-0 z-40 w-full bg-white/80 backdrop-blur-md border-b border-gray-200">
|
||||||
<NavbarStyleCentered
|
<NavbarStyleCentered
|
||||||
brandName="Caribbean Flair"
|
brandName="Caribbean Flair"
|
||||||
navItems={navItems}
|
navItems={navItems}
|
||||||
button={{
|
button={{
|
||||||
text: "See Full Menu", href: "/menu"
|
text: "Order Now", href: "/order-now"
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{/* Main Content */}
|
{/* Floating Mobile Sidebar Menu */}
|
||||||
<div className="min-h-screen bg-gradient-to-b from-white to-gray-50">
|
{isMobileMenuOpen && (
|
||||||
{!isAuthenticated ? (
|
<div className="fixed inset-0 z-30 md:hidden">
|
||||||
// Password Protected View
|
<div
|
||||||
<div className="flex items-center justify-center min-h-[calc(100vh-80px)] px-4">
|
className="absolute inset-0 bg-black/50"
|
||||||
<div className="w-full max-w-md">
|
onClick={() => setIsMobileMenuOpen(false)}
|
||||||
<div className="bg-white/90 backdrop-blur-lg rounded-2xl shadow-2xl border border-white/20 p-8 md:p-10">
|
/>
|
||||||
<div className="flex justify-center mb-6">
|
<div className="absolute right-0 top-16 w-64 bg-white/95 backdrop-blur-lg rounded-lg shadow-2xl m-4 border border-white/20">
|
||||||
<div className="bg-gradient-to-br from-primary-cta to-accent p-3 rounded-full">
|
<div className="p-6 space-y-4">
|
||||||
<Lock className="w-8 h-8 text-white" />
|
{navItems.map((item) => (
|
||||||
</div>
|
<a
|
||||||
</div>
|
key={item.id}
|
||||||
|
href={`#${item.id}`}
|
||||||
<h1 className="text-3xl font-bold text-center text-gray-900 mb-2">
|
className="block text-gray-800 hover:text-primary-cta font-medium"
|
||||||
Full Menu
|
onClick={() => setIsMobileMenuOpen(false)}
|
||||||
</h1>
|
>
|
||||||
<p className="text-center text-gray-600 mb-8">
|
{item.name}
|
||||||
Enter the password to view our complete menu with all available dishes and specials.
|
</a>
|
||||||
</p>
|
))}
|
||||||
|
<a href="/order-now" className="w-full bg-primary-cta text-white py-2 rounded-lg font-semibold hover:opacity-90 text-center block">
|
||||||
<form onSubmit={handlePasswordSubmit} className="space-y-4">
|
Order Now
|
||||||
<div>
|
|
||||||
<label htmlFor="password" className="block text-sm font-medium text-gray-700 mb-2">
|
|
||||||
Password
|
|
||||||
</label>
|
|
||||||
<input
|
|
||||||
id="password"
|
|
||||||
type="password"
|
|
||||||
value={password}
|
|
||||||
onChange={(e) => setPassword(e.target.value)}
|
|
||||||
placeholder="Enter password"
|
|
||||||
className="w-full px-4 py-3 rounded-lg border border-gray-300 focus:outline-none focus:ring-2 focus:ring-primary-cta focus:border-transparent"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
{error && (
|
|
||||||
<div className="p-3 bg-red-50 border border-red-200 rounded-lg">
|
|
||||||
<p className="text-sm text-red-600">{error}</p>
|
|
||||||
</div>
|
|
||||||
)}
|
|
||||||
|
|
||||||
<button
|
|
||||||
type="submit"
|
|
||||||
className="w-full bg-gradient-to-r from-primary-cta to-accent text-white py-3 rounded-lg font-semibold hover:opacity-90 transition-opacity"
|
|
||||||
>
|
|
||||||
Unlock Menu
|
|
||||||
</button>
|
|
||||||
</form>
|
|
||||||
|
|
||||||
<p className="text-center text-xs text-gray-500 mt-6">
|
|
||||||
For password assistance, please contact us
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
) : (
|
|
||||||
// Full Menu View
|
|
||||||
<div className="max-w-6xl mx-auto px-4 py-12 md:py-20">
|
|
||||||
<div className="mb-8 flex items-center gap-4">
|
|
||||||
<Link
|
|
||||||
href="/#signature-dishes"
|
|
||||||
className="flex items-center gap-2 text-primary-cta hover:opacity-70 transition-opacity"
|
|
||||||
>
|
|
||||||
<ArrowLeft className="w-5 h-5" />
|
|
||||||
Back to Home
|
|
||||||
</Link>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h1 className="text-4xl md:text-5xl font-bold text-gray-900 mb-4">
|
|
||||||
Full Menu
|
|
||||||
</h1>
|
|
||||||
<p className="text-lg text-gray-600 mb-12">
|
|
||||||
Discover all of our authentic Caribbean dishes, crafted with love and served fresh off the grill.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
{/* Menu Sections */}
|
|
||||||
<div className="space-y-12">
|
|
||||||
{/* Main Dishes */}
|
|
||||||
<div className="bg-white/80 backdrop-blur-lg rounded-2xl shadow-lg border border-white/20 p-8 md:p-10">
|
|
||||||
<h2 className="text-2xl md:text-3xl font-bold text-gray-900 mb-8">Main Dishes</h2>
|
|
||||||
<div className="grid md:grid-cols-2 gap-6">
|
|
||||||
<div className="pb-6 border-b md:border-b-0 md:pb-0">
|
|
||||||
<h3 className="text-lg font-semibold text-gray-900">Jerk Chicken Platter</h3>
|
|
||||||
<p className="text-gray-600 text-sm mt-1 mb-3">Marinated in authentic Caribbean spices, grilled to perfection. Served with rice & peas, festival dumplings, and tropical slaw.</p>
|
|
||||||
<p className="text-primary-cta font-bold text-lg">$15.95</p>
|
|
||||||
</div>
|
|
||||||
<div className="pb-6 border-b md:border-b-0 md:pb-0">
|
|
||||||
<h3 className="text-lg font-semibold text-gray-900">Curry Shrimp Platter</h3>
|
|
||||||
<p className="text-gray-600 text-sm mt-1 mb-3">Fresh shrimp in our signature curry sauce with Caribbean seasonings. Includes rice & peas, festival dumplings, and tropical slaw.</p>
|
|
||||||
<p className="text-primary-cta font-bold text-lg">$16.95</p>
|
|
||||||
</div>
|
|
||||||
<div className="pb-6 md:pb-0">
|
|
||||||
<h3 className="text-lg font-semibold text-gray-900">Curry Goat</h3>
|
|
||||||
<p className="text-gray-600 text-sm mt-1 mb-3">Tender goat meat cooked in rich curry sauce with traditional island spices. Served with rice & peas and festival dumplings.</p>
|
|
||||||
<p className="text-primary-cta font-bold text-lg">$17.95</p>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<h3 className="text-lg font-semibold text-gray-900">Escovitch Fish</h3>
|
|
||||||
<p className="text-gray-600 text-sm mt-1 mb-3">Fresh fish prepared Jamaican style with pickled vegetables. Authentic island flavors in every bite.</p>
|
|
||||||
<p className="text-primary-cta font-bold text-lg">$16.95</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
{/* Sides & Appetizers */}
|
|
||||||
<div className="bg-white/80 backdrop-blur-lg rounded-2xl shadow-lg border border-white/20 p-8 md:p-10">
|
|
||||||
<h2 className="text-2xl md:text-3xl font-bold text-gray-900 mb-8">Sides & Appetizers</h2>
|
|
||||||
<div className="grid md:grid-cols-2 gap-6">
|
|
||||||
<div className="pb-6 border-b md:border-b-0 md:pb-0">
|
|
||||||
<h3 className="text-lg font-semibold text-gray-900">Conch Fritters Combo</h3>
|
|
||||||
<p className="text-gray-600 text-sm mt-1 mb-3">6 pieces of golden, crispy conch fritters. Served with house-made dipping sauce.</p>
|
|
||||||
<p className="text-primary-cta font-bold text-lg">$12.95</p>
|
|
||||||
</div>
|
|
||||||
<div className="pb-6 border-b md:border-b-0 md:pb-0">
|
|
||||||
<h3 className="text-lg font-semibold text-gray-900">Festival Dumplings</h3>
|
|
||||||
<p className="text-gray-600 text-sm mt-1 mb-3">Crispy, golden fried dumplings. A Caribbean classic that pairs perfectly with any main dish.</p>
|
|
||||||
<p className="text-primary-cta font-bold text-lg">$4.95</p>
|
|
||||||
</div>
|
|
||||||
<div className="pb-6 md:pb-0">
|
|
||||||
<h3 className="text-lg font-semibold text-gray-900">Creamy Island Mac & Cheese</h3>
|
|
||||||
<p className="text-gray-600 text-sm mt-1 mb-3">Smooth, rich, and soul-warming. The perfect comfort food complement to our island mains.</p>
|
|
||||||
<p className="text-primary-cta font-bold text-lg">$5.95</p>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<h3 className="text-lg font-semibold text-gray-900">Tropical Slaw</h3>
|
|
||||||
<p className="text-gray-600 text-sm mt-1 mb-3">Fresh, crisp coleslaw with a tropical twist. Light and refreshing alongside any dish.</p>
|
|
||||||
<p className="text-primary-cta font-bold text-lg">$3.95</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
{/* Beverages */}
|
|
||||||
<div className="bg-white/80 backdrop-blur-lg rounded-2xl shadow-lg border border-white/20 p-8 md:p-10">
|
|
||||||
<h2 className="text-2xl md:text-3xl font-bold text-gray-900 mb-8">Beverages</h2>
|
|
||||||
<div className="grid md:grid-cols-2 gap-6">
|
|
||||||
<div className="pb-6 border-b md:border-b-0 md:pb-0">
|
|
||||||
<h3 className="text-lg font-semibold text-gray-900">Island Ginger Beer</h3>
|
|
||||||
<p className="text-gray-600 text-sm mt-1 mb-3">Refreshing traditional Caribbean ginger beer. Perfectly spiced and ice-cold.</p>
|
|
||||||
<p className="text-primary-cta font-bold text-lg">$2.95</p>
|
|
||||||
</div>
|
|
||||||
<div className="pb-6 md:pb-0">
|
|
||||||
<h3 className="text-lg font-semibold text-gray-900">Fresh Tropical Juice</h3>
|
|
||||||
<p className="text-gray-600 text-sm mt-1 mb-3">Mango, passion fruit, or guava. Fresh squeezed island flavors in every sip.</p>
|
|
||||||
<p className="text-primary-cta font-bold text-lg">$3.95</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
{/* Call to Action */}
|
|
||||||
<div className="mt-12 bg-gradient-to-r from-primary-cta to-accent rounded-2xl shadow-lg p-8 md:p-10 text-white text-center">
|
|
||||||
<h2 className="text-2xl md:text-3xl font-bold mb-4">Ready to Order?</h2>
|
|
||||||
<p className="text-white/90 mb-6">Call us at (239) 785-0423 or visit our location for fresh Caribbean flavors made to order.</p>
|
|
||||||
<a
|
|
||||||
href="tel:2397850423"
|
|
||||||
className="inline-block bg-white text-primary-cta px-8 py-3 rounded-lg font-semibold hover:opacity-90 transition-opacity"
|
|
||||||
>
|
|
||||||
Call Now
|
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
)}
|
</div>
|
||||||
|
)}
|
||||||
|
|
||||||
|
{/* Floating Desktop Action Buttons */}
|
||||||
|
{isDesktopButtonsVisible && (
|
||||||
|
<div className="hidden md:fixed md:right-6 md:bottom-6 md:z-20 md:flex md:flex-col md:gap-3">
|
||||||
|
<a
|
||||||
|
href="tel:2397850423"
|
||||||
|
className="bg-white/90 backdrop-blur-lg border border-white/20 rounded-full p-4 shadow-lg hover:shadow-xl hover:bg-white transition-all flex items-center justify-center group"
|
||||||
|
title="Call Us"
|
||||||
|
>
|
||||||
|
<Phone className="w-6 h-6 text-primary-cta group-hover:scale-110 transition-transform" />
|
||||||
|
</a>
|
||||||
|
<a
|
||||||
|
href="/order-now"
|
||||||
|
className="bg-gradient-to-r from-primary-cta to-accent text-white rounded-full p-4 shadow-lg hover:shadow-xl transition-all flex items-center justify-center group font-semibold"
|
||||||
|
title="Order Now"
|
||||||
|
>
|
||||||
|
<ShoppingCart className="w-6 h-6 group-hover:scale-110 transition-transform" />
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
|
|
||||||
|
{/* Cookie Preferences Popup */}
|
||||||
|
{showCookiePreferences && !cookiesAccepted && (
|
||||||
|
<div className="fixed bottom-6 left-6 right-6 z-50 max-w-sm bg-white/95 backdrop-blur-lg rounded-lg shadow-2xl border border-white/20 p-4 md:p-6">
|
||||||
|
<div className="space-y-3">
|
||||||
|
<h3 className="font-semibold text-gray-900">Cookie Preferences</h3>
|
||||||
|
<p className="text-sm text-gray-600">
|
||||||
|
We use cookies to enhance your experience, personalize content, and analyze site traffic.
|
||||||
|
</p>
|
||||||
|
<div className="flex gap-3">
|
||||||
|
<button
|
||||||
|
onClick={handleCookieAccept}
|
||||||
|
className="flex-1 bg-primary-cta text-white py-2 rounded-lg font-semibold hover:opacity-90 transition-opacity"
|
||||||
|
>
|
||||||
|
Accept All
|
||||||
|
</button>
|
||||||
|
<button
|
||||||
|
onClick={() => setShowCookiePreferences(false)}
|
||||||
|
className="flex-1 border border-gray-300 text-gray-800 py-2 rounded-lg font-semibold hover:bg-gray-50 transition-colors"
|
||||||
|
>
|
||||||
|
Decline
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
|
|
||||||
|
{/* Hero Section - Menu Header */}
|
||||||
|
<div id="hero" data-section="hero">
|
||||||
|
<HeroSplit
|
||||||
|
title="Complete Menu"
|
||||||
|
description="Explore our complete menu across all 5 pages. Fresh Caribbean flavors, authentic recipes, and island-inspired specialties grilled to perfection."
|
||||||
|
tag="Full Menu"
|
||||||
|
tagIcon={Award}
|
||||||
|
tagAnimation="slide-up"
|
||||||
|
background={{ variant: "glowing-orb" }}
|
||||||
|
buttons={[
|
||||||
|
{
|
||||||
|
text: "Order Now", href: "/order-now"
|
||||||
|
},
|
||||||
|
]}
|
||||||
|
buttonAnimation="slide-up"
|
||||||
|
imageSrc="data:image/svg+xml,%3Csvg xmlns=?_wi=1'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3EMenu Cover%3C/text%3E%3C/svg%3E"
|
||||||
|
imageAlt="Caribbean Flair Complete Menu"
|
||||||
|
mediaAnimation="opacity"
|
||||||
|
imagePosition="right"
|
||||||
|
ariaLabel="Menu page hero section"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{/* Full Menu Display - All 5 Pages */}
|
||||||
|
<div id="featured-gallery" data-section="featured-gallery">
|
||||||
|
<BlogCardThree
|
||||||
|
title="All 5 Menu Pages"
|
||||||
|
description="Browse through our complete menu collection featuring all dishes, sides, and beverages."
|
||||||
|
tag="Complete Menu"
|
||||||
|
tagIcon={Camera}
|
||||||
|
tagAnimation="slide-up"
|
||||||
|
textboxLayout="default"
|
||||||
|
animationType="slide-up"
|
||||||
|
useInvertedBackground={false}
|
||||||
|
blogs={[
|
||||||
|
{
|
||||||
|
id: "menu-page-1", category: "Menu Page 1", title: "Menu Page 1 - Main Dishes", excerpt: "Our signature main dishes featuring jerk meats, curry specialties, and authentic Caribbean proteins grilled fresh to order.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Afn0reuidgadYlHif4J2xHlmq8/uploaded-1773887611478-094w00ok.jpg?_wi=1", imageAlt: "Menu Page 1 - Main Dishes", authorName: "Caribbean Flair", authorAvatar: "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Ccircle cx='20' cy='20' r='20' fill='%23e8e8e8'/%3E%3Ctext x='50%' y='50%' font-size='12' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3EMenu%3C/text%3E%3C/svg%3E", date: "Complete Menu"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "menu-page-2", category: "Menu Page 2", title: "Menu Page 2 - Seafood & Sides", excerpt: "Fresh seafood selections including escovitch fish, shrimp dishes, and our famous sides like festival dumplings and tropical slaw.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Afn0reuidgadYlHif4J2xHlmq8/uploaded-1773887611478-8nakpzaa.jpg?_wi=1", imageAlt: "Menu Page 2 - Seafood & Sides", authorName: "Caribbean Flair", authorAvatar: "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Ccircle cx='20' cy='20' r='20' fill='%23e8e8e8'/%3E%3Ctext x='50%' y='50%' font-size='12' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3EMenu%3C/text%3E%3C/svg%3E", date: "Complete Menu"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "menu-page-3", category: "Menu Page 3", title: "Menu Page 3 - Platters & Combos", excerpt: "Our complete platter offerings with combinations of proteins, rice, peas, plantains, and fresh vegetables grilled together.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Afn0reuidgadYlHif4J2xHlmq8/uploaded-1773887611478-i3ll7ifz.jpg?_wi=1", imageAlt: "Menu Page 3 - Platters & Combos", authorName: "Caribbean Flair", authorAvatar: "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Ccircle cx='20' cy='20' r='20' fill='%23e8e8e8'/%3E%3Ctext x='50%' y='50%' font-size='12' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3EMenu%3C/text%3E%3C/svg%3E", date: "Complete Menu"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "menu-page-4", category: "Menu Page 4", title: "Menu Page 4 - Appetizers & Starters", excerpt: "Delicious appetizers to begin your meal including conch fritters, fried plantains, croquettes, and other island favorites.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Afn0reuidgadYlHif4J2xHlmq8/uploaded-1773887611478-60e6tsue.jpg?_wi=1", imageAlt: "Menu Page 4 - Appetizers & Starters", authorName: "Caribbean Flair", authorAvatar: "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Ccircle cx='20' cy='20' r='20' fill='%23e8e8e8'/%3E%3Ctext x='50%' y='50%' font-size='12' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3EMenu%3C/text%3E%3C/svg%3E", date: "Complete Menu"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "menu-page-5", category: "Menu Page 5", title: "Menu Page 5 - Beverages & Desserts", excerpt: "Refresh yourself with authentic Caribbean beverages and indulge in sweet island desserts to complete your meal.", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Afn0reuidgadYlHif4J2xHlmq8/uploaded-1773887611478-gby1l988.jpg?_wi=1", imageAlt: "Menu Page 5 - Beverages & Desserts", authorName: "Caribbean Flair", authorAvatar: "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Ccircle cx='20' cy='20' r='20' fill='%23e8e8e8'/%3E%3Ctext x='50%' y='50%' font-size='12' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3EMenu%3C/text%3E%3C/svg%3E", date: "Complete Menu"
|
||||||
|
},
|
||||||
|
]}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{/* Footer with Local Map Info and Social Links */}
|
||||||
|
<div id="footer" data-section="footer">
|
||||||
|
<FooterMedia
|
||||||
|
imageSrc="data:image/svg+xml,%3Csvg xmlns=?_wi=2'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3EFooter Image%3C/text%3E%3C/svg%3E"
|
||||||
|
imageAlt="Caribbean Flair Island Jerk Grill Trailer"
|
||||||
|
logoText="Caribbean Flair"
|
||||||
|
copyrightText="© 2026 Caribbean Flair Island Jerk Grill | Black & Women-Owned | Lehigh Acres, FL"
|
||||||
|
columns={footerColumns}
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</ThemeProvider>
|
</ThemeProvider>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
228
src/app/order-now/page.tsx
Normal file
228
src/app/order-now/page.tsx
Normal file
@@ -0,0 +1,228 @@
|
|||||||
|
"use client";
|
||||||
|
|
||||||
|
import Link from "next/link";
|
||||||
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||||
|
import NavbarStyleCentered from "@/components/navbar/NavbarStyleCentered/NavbarStyleCentered";
|
||||||
|
import HeroSplit from "@/components/sections/hero/HeroSplit";
|
||||||
|
import FeatureCardTwentySeven from "@/components/sections/feature/FeatureCardTwentySeven";
|
||||||
|
import FooterMedia from "@/components/sections/footer/FooterMedia";
|
||||||
|
import {
|
||||||
|
Award,
|
||||||
|
Truck,
|
||||||
|
Phone,
|
||||||
|
ShoppingCart,
|
||||||
|
MapPin,
|
||||||
|
Clock,
|
||||||
|
Facebook,
|
||||||
|
} from "lucide-react";
|
||||||
|
import { useState, useEffect } from "react";
|
||||||
|
|
||||||
|
export default function OrderNowPage() {
|
||||||
|
const [isMobileMenuOpen, setIsMobileMenuOpen] = useState(false);
|
||||||
|
const [isDesktopButtonsVisible, setIsDesktopButtonsVisible] = useState(true);
|
||||||
|
|
||||||
|
const navItems = [
|
||||||
|
{ name: "Home", id: "home" },
|
||||||
|
{ name: "Menu", id: "signature-dishes" },
|
||||||
|
{ name: "About Us", id: "owners-spotlight" },
|
||||||
|
{ name: "Gallery", id: "featured-gallery" },
|
||||||
|
{ name: "Reviews", id: "testimonials" },
|
||||||
|
{ name: "Locations", id: "footer" },
|
||||||
|
];
|
||||||
|
|
||||||
|
const footerColumns = [
|
||||||
|
{
|
||||||
|
title: "Quick Links", items: [
|
||||||
|
{ label: "Home", href: "/" },
|
||||||
|
{ label: "Menu", href: "/#signature-dishes" },
|
||||||
|
{ label: "Gallery", href: "/#featured-gallery" },
|
||||||
|
{ label: "Reviews", href: "/#testimonials" },
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "Order & Contact", items: [
|
||||||
|
{ label: "Order Online", href: "/order-now" },
|
||||||
|
{ label: "Call Us", href: "tel:2397850423" },
|
||||||
|
{ label: "Locations & Hours", href: "/#footer" },
|
||||||
|
{ label: "Contact", href: "/#footer" },
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "Connect With Us", items: [
|
||||||
|
{ label: "Facebook", href: "https://www.facebook.com/share/1CckZyvyXX/?mibextid=wwXIfr" },
|
||||||
|
{ label: "Privacy Policy", href: "#" },
|
||||||
|
{ label: "Terms of Service", href: "#" },
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "Located In", items: [
|
||||||
|
{ label: "801 Leeland Heights Blvd W", href: "#" },
|
||||||
|
{ label: "Lehigh Acres, FL 33936", href: "#" },
|
||||||
|
{ label: "Open Until 9PM", href: "#" },
|
||||||
|
{ label: "Delivery Available", href: "#" },
|
||||||
|
],
|
||||||
|
},
|
||||||
|
];
|
||||||
|
|
||||||
|
return (
|
||||||
|
<ThemeProvider
|
||||||
|
defaultButtonVariant="bounce-effect"
|
||||||
|
defaultTextAnimation="entrance-slide"
|
||||||
|
borderRadius="pill"
|
||||||
|
contentWidth="compact"
|
||||||
|
sizing="medium"
|
||||||
|
background="none"
|
||||||
|
cardStyle="inset"
|
||||||
|
primaryButtonStyle="radial-glow"
|
||||||
|
secondaryButtonStyle="glass"
|
||||||
|
headingFontWeight="medium"
|
||||||
|
>
|
||||||
|
<style>{`
|
||||||
|
@keyframes fadeIn {
|
||||||
|
from {
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
to {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes slideInFromLeft {
|
||||||
|
from {
|
||||||
|
opacity: 0;
|
||||||
|
transform: translateX(-60px);
|
||||||
|
}
|
||||||
|
to {
|
||||||
|
opacity: 1;
|
||||||
|
transform: translateX(0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes slideInFromRight {
|
||||||
|
from {
|
||||||
|
opacity: 0;
|
||||||
|
transform: translateX(60px);
|
||||||
|
}
|
||||||
|
to {
|
||||||
|
opacity: 1;
|
||||||
|
transform: translateX(0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
html {
|
||||||
|
scroll-behavior: smooth;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
animation: fadeIn 0.8s ease-out;
|
||||||
|
}
|
||||||
|
|
||||||
|
[data-section] {
|
||||||
|
animation: fadeIn 1.2s ease-out forwards;
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#hero [data-section] {
|
||||||
|
animation-delay: 0.1s;
|
||||||
|
}
|
||||||
|
|
||||||
|
#delivery-options {
|
||||||
|
animation-delay: 0.2s;
|
||||||
|
}
|
||||||
|
|
||||||
|
#footer {
|
||||||
|
animation-delay: 0.3s;
|
||||||
|
}
|
||||||
|
`}</style>
|
||||||
|
|
||||||
|
{/* Persistent Top Navigation Bar */}
|
||||||
|
<div id="nav" data-section="nav" className="sticky top-0 z-40 w-full bg-white/80 backdrop-blur-md border-b border-gray-200">
|
||||||
|
<NavbarStyleCentered
|
||||||
|
brandName="Caribbean Flair"
|
||||||
|
navItems={navItems}
|
||||||
|
button={{
|
||||||
|
text: "Order Now", href: "/order-now"
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{/* Hero Section */}
|
||||||
|
<div id="hero" data-section="hero">
|
||||||
|
<HeroSplit
|
||||||
|
title="Order Your Island Feast"
|
||||||
|
description="Choose your delivery service and get your authentic Caribbean meal fresh and hot. We deliver island flavors straight to your door."
|
||||||
|
tag="Quick Delivery"
|
||||||
|
tagIcon={Truck}
|
||||||
|
tagAnimation="slide-up"
|
||||||
|
background={{ variant: "glowing-orb" }}
|
||||||
|
buttons={[
|
||||||
|
{
|
||||||
|
text: "View Menu", href: "/#signature-dishes"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: "Call (239) 785-0423", href: "tel:2397850423"
|
||||||
|
},
|
||||||
|
]}
|
||||||
|
buttonAnimation="slide-up"
|
||||||
|
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Afn0reuidgadYlHif4J2xHlmq8/uploaded-1773887611478-094w00ok.jpg?_wi=2"
|
||||||
|
imageAlt="Caribbean Flair delivery service"
|
||||||
|
mediaAnimation="opacity"
|
||||||
|
imagePosition="right"
|
||||||
|
ariaLabel="Order now section with delivery options"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{/* Delivery Options Section */}
|
||||||
|
<div id="delivery-options" data-section="delivery-options">
|
||||||
|
<FeatureCardTwentySeven
|
||||||
|
title="Choose Your Delivery Service"
|
||||||
|
description="Select your preferred delivery partner to bring Caribbean Flair straight to your table."
|
||||||
|
tag="Multiple Options"
|
||||||
|
tagIcon={Truck}
|
||||||
|
tagAnimation="slide-up"
|
||||||
|
textboxLayout="default"
|
||||||
|
gridVariant="three-columns-all-equal-width"
|
||||||
|
animationType="slide-up"
|
||||||
|
useInvertedBackground={false}
|
||||||
|
features={[
|
||||||
|
{
|
||||||
|
id: "doordash", title: "DoorDash", descriptions: [
|
||||||
|
"Fast delivery with real-time tracking", "Easy app-based ordering", "Contactless delivery available"
|
||||||
|
],
|
||||||
|
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Afn0reuidgadYlHif4J2xHlmq8/uploaded-1773887611478-8nakpzaa.jpg?_wi=2", imageAlt: "DoorDash delivery service logo"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "ubereats", title: "Uber Eats", descriptions: [
|
||||||
|
"Seamless ordering experience", "Fast and reliable delivery", "Track your order in real-time"
|
||||||
|
],
|
||||||
|
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Afn0reuidgadYlHif4J2xHlmq8/uploaded-1773887611478-i3ll7ifz.jpg?_wi=2", imageAlt: "Uber Eats delivery service logo"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "grubhub", title: "Grubhub", descriptions: [
|
||||||
|
"Wide reach and convenient ordering", "Loyalty rewards program", "Quick and professional delivery"
|
||||||
|
],
|
||||||
|
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Afn0reuidgadYlHif4J2xHlmq8/uploaded-1773887611478-60e6tsue.jpg?_wi=2", imageAlt: "Grubhub delivery service logo"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "instacart", title: "Instacart", descriptions: [
|
||||||
|
"Fresh food delivery expertise", "Same-day delivery available", "Easy scheduling options"
|
||||||
|
],
|
||||||
|
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Afn0reuidgadYlHif4J2xHlmq8/uploaded-1773887611478-gby1l988.jpg?_wi=2", imageAlt: "Instacart delivery service logo"
|
||||||
|
},
|
||||||
|
]}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{/* Footer with Local Map Info and Social Links */}
|
||||||
|
<div id="footer" data-section="footer">
|
||||||
|
<FooterMedia
|
||||||
|
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Afn0reuidgadYlHif4J2xHlmq8/uploaded-1773887611478-094w00ok.jpg?_wi=3"
|
||||||
|
imageAlt="Caribbean Flair Island Jerk Grill Trailer"
|
||||||
|
logoText="Caribbean Flair"
|
||||||
|
copyrightText="© 2026 Caribbean Flair Island Jerk Grill | Black & Women-Owned | Lehigh Acres, FL"
|
||||||
|
columns={footerColumns}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</ThemeProvider>
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -61,17 +61,17 @@ export default function HomePage() {
|
|||||||
{
|
{
|
||||||
title: "Quick Links", items: [
|
title: "Quick Links", items: [
|
||||||
{ label: "Home", href: "/" },
|
{ label: "Home", href: "/" },
|
||||||
{ label: "Menu", href: "#signature-dishes" },
|
{ label: "Menu", href: "/menu" },
|
||||||
{ label: "Gallery", href: "#featured-gallery" },
|
{ label: "Gallery", href: "#featured-gallery" },
|
||||||
{ label: "Reviews", href: "#testimonials" },
|
{ label: "Reviews", href: "#testimonials" },
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Order & Contact", items: [
|
title: "Order & Contact", items: [
|
||||||
{ label: "Order Online", href: "#signature-dishes" },
|
{ label: "Order Online", href: "/order-now" },
|
||||||
{ label: "Call Us", href: "tel:2397850423" },
|
{ label: "Call Us", href: "tel:2397850423" },
|
||||||
{ label: "Locations & Hours", href: "#footer" },
|
{ label: "Locations & Hours", href: "#footer" },
|
||||||
{ label: "Contact", href: "#footer" },
|
{ label: "Contact", href: "/contact" },
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -231,7 +231,7 @@ export default function HomePage() {
|
|||||||
brandName="Caribbean Flair"
|
brandName="Caribbean Flair"
|
||||||
navItems={navItems}
|
navItems={navItems}
|
||||||
button={{
|
button={{
|
||||||
text: "See Full Menu", href: "/menu"
|
text: "Order Now", href: "/order-now"
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
@@ -255,8 +255,8 @@ export default function HomePage() {
|
|||||||
{item.name}
|
{item.name}
|
||||||
</a>
|
</a>
|
||||||
))}
|
))}
|
||||||
<a href="/menu" className="w-full bg-primary-cta text-white py-2 rounded-lg font-semibold hover:opacity-90 text-center block">
|
<a href="/order-now" className="w-full bg-primary-cta text-white py-2 rounded-lg font-semibold hover:opacity-90 text-center block">
|
||||||
See Full Menu
|
Order Now
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -274,9 +274,9 @@ export default function HomePage() {
|
|||||||
<Phone className="w-6 h-6 text-primary-cta group-hover:scale-110 transition-transform" />
|
<Phone className="w-6 h-6 text-primary-cta group-hover:scale-110 transition-transform" />
|
||||||
</a>
|
</a>
|
||||||
<a
|
<a
|
||||||
href="/menu"
|
href="/order-now"
|
||||||
className="bg-gradient-to-r from-primary-cta to-accent text-white rounded-full p-4 shadow-lg hover:shadow-xl transition-all flex items-center justify-center group font-semibold"
|
className="bg-gradient-to-r from-primary-cta to-accent text-white rounded-full p-4 shadow-lg hover:shadow-xl transition-all flex items-center justify-center group font-semibold"
|
||||||
title="See Full Menu"
|
title="Order Now"
|
||||||
>
|
>
|
||||||
<ShoppingCart className="w-6 h-6 group-hover:scale-110 transition-transform" />
|
<ShoppingCart className="w-6 h-6 group-hover:scale-110 transition-transform" />
|
||||||
</a>
|
</a>
|
||||||
@@ -320,14 +320,14 @@ export default function HomePage() {
|
|||||||
background={{ variant: "glowing-orb" }}
|
background={{ variant: "glowing-orb" }}
|
||||||
buttons={[
|
buttons={[
|
||||||
{
|
{
|
||||||
text: "Order Online Now", href: "/menu"
|
text: "Order Online Now", href: "/order-now"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: "View Full Menu", href: "/menu"
|
text: "View Full Menu", href: "/menu"
|
||||||
},
|
},
|
||||||
]}
|
]}
|
||||||
buttonAnimation="slide-up"
|
buttonAnimation="slide-up"
|
||||||
imageSrc="data:image/svg+xml,%3Csvg xmlns=?_wi=1'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E"
|
imageSrc="data:image/svg+xml,%3Csvg xmlns=?_wi=3'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E"
|
||||||
imageAlt="Red Caribbean Flair Island Jerk Grill Trailer"
|
imageAlt="Red Caribbean Flair Island Jerk Grill Trailer"
|
||||||
mediaAnimation="opacity"
|
mediaAnimation="opacity"
|
||||||
imagePosition="right"
|
imagePosition="right"
|
||||||
@@ -345,7 +345,7 @@ export default function HomePage() {
|
|||||||
tagAnimation="slide-up"
|
tagAnimation="slide-up"
|
||||||
buttons={[
|
buttons={[
|
||||||
{
|
{
|
||||||
text: "Explore Full Menu", href: "/menu"
|
text: "Order Now", href: "/order-now"
|
||||||
},
|
},
|
||||||
]}
|
]}
|
||||||
buttonAnimation="slide-up"
|
buttonAnimation="slide-up"
|
||||||
@@ -356,15 +356,15 @@ export default function HomePage() {
|
|||||||
products={[
|
products={[
|
||||||
{
|
{
|
||||||
id: "jerk-chicken", name: "Jerk Chicken Platter", price: "$15.95", variant: "Full Rack", imageSrc:
|
id: "jerk-chicken", name: "Jerk Chicken Platter", price: "$15.95", variant: "Full Rack", imageSrc:
|
||||||
"data:image/svg+xml,%3Csvg xmlns=?_wi=2'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E", imageAlt: "Jerk chicken grilled on foil with spices"
|
"https://upload.wikimedia.org/wikipedia/commons/thumb/8/8d/Jerk_chicken.jpg/1024px-Jerk_chicken.jpg", imageAlt: "Jerk chicken grilled on foil with spices"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "curry-shrimp", name: "Curry Shrimp Platter", price: "$16.95", variant: "Fresh Daily", imageSrc:
|
id: "curry-shrimp", name: "Curry Shrimp Platter", price: "$16.95", variant: "Fresh Daily", imageSrc:
|
||||||
"data:image/svg+xml,%3Csvg xmlns=?_wi=3'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E", imageAlt: "Curry shrimp over rice and peas"
|
"https://upload.wikimedia.org/wikipedia/commons/thumb/f/f3/Curry_shrimp.jpg/1024px-Curry_shrimp.jpg", imageAlt: "Curry shrimp over rice and peas"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "conch-fritters", name: "Conch Fritters Combo", price: "$12.95", variant: "6 Pieces", imageSrc:
|
id: "conch-fritters", name: "Conch Fritters Combo", price: "$12.95", variant: "6 Pieces", imageSrc:
|
||||||
"data:image/svg+xml,%3Csvg xmlns=?_wi=4'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E", imageAlt: "Golden conch fritters with dipping sauce"
|
"https://upload.wikimedia.org/wikipedia/commons/thumb/9/9e/Conch_fritters.jpg/1024px-Conch_fritters.jpg", imageAlt: "Golden conch fritters with dipping sauce"
|
||||||
},
|
},
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
@@ -385,38 +385,38 @@ export default function HomePage() {
|
|||||||
{
|
{
|
||||||
id: "jerk-pork", category: "Main Dishes", title: "Jerk Pork Did Not Disappoint", excerpt:
|
id: "jerk-pork", category: "Main Dishes", title: "Jerk Pork Did Not Disappoint", excerpt:
|
||||||
"Perfectly seasoned and grilled, bursting with island spices and authentic Jamaican flavor.", imageSrc:
|
"Perfectly seasoned and grilled, bursting with island spices and authentic Jamaican flavor.", imageSrc:
|
||||||
"data:image/svg+xml,%3Csvg xmlns=?_wi=5'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E", imageAlt: "Jerk pork platter with rice and tropical slaw", authorName: "Caribbean Flair Team", authorAvatar:
|
"data:image/svg+xml,%3Csvg xmlns=?_wi=4'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E", imageAlt: "Jerk pork platter with rice and tropical slaw", authorName: "Caribbean Flair Team", authorAvatar:
|
||||||
"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Ccircle cx='20' cy='20' r='20' fill='%23e8e8e8'/%3E%3Ctext x='50%' y='50%' font-size='12' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3EAuthor%3C/text%3E%3C/svg%3E", date: "Fresh Daily"
|
"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Ccircle cx='20' cy='20' r='20' fill='%23e8e8e8'/%3E%3Ctext x='50%' y='50%' font-size='12' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3EAuthor%3C/text%3E%3C/svg%3E", date: "Fresh Daily"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "curry-goat", category: "Featured", title: "Curry Goat - A Community Favorite", excerpt:
|
id: "curry-goat", category: "Featured", title: "Curry Goat - A Community Favorite", excerpt:
|
||||||
"Tender, aromatic, and cooked to perfection. Every bite transports you straight to Jamaica.", imageSrc:
|
"Tender, aromatic, and cooked to perfection. Every bite transports you straight to Jamaica.", imageSrc:
|
||||||
"data:image/svg+xml,%3Csvg xmlns=?_wi=6'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E", imageAlt: "Rich curry goat served over rice and peas", authorName: "Caribbean Flair Team", authorAvatar:
|
"data:image/svg+xml,%3Csvg xmlns=?_wi=5'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E", imageAlt: "Rich curry goat served over rice and peas", authorName: "Caribbean Flair Team", authorAvatar:
|
||||||
"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Ccircle cx='20' cy='20' r='20' fill='%23e8e8e8'/%3E%3Ctext x='50%' y='50%' font-size='12' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3EAuthor%3C/text%3E%3C/svg%3E", date: "Popular Choice"
|
"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Ccircle cx='20' cy='20' r='20' fill='%23e8e8e8'/%3E%3Ctext x='50%' y='50%' font-size='12' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3EAuthor%3C/text%3E%3C/svg%3E", date: "Popular Choice"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "festival-sides", category: "Sides", title: "Festival Dumplings & Tropical Slaw", excerpt:
|
id: "festival-sides", category: "Sides", title: "Festival Dumplings & Tropical Slaw", excerpt:
|
||||||
"Crispy, golden festival dumplings paired with our signature tropical slaw for the perfect complement.", imageSrc:
|
"Crispy, golden festival dumplings paired with our signature tropical slaw for the perfect complement.", imageSrc:
|
||||||
"data:image/svg+xml,%3Csvg xmlns=?_wi=7'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E", imageAlt:
|
"data:image/svg+xml,%3Csvg xmlns=?_wi=6'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E", imageAlt:
|
||||||
"Festival dumplings with tropical slaw and mac and cheese", authorName: "Caribbean Flair Team", authorAvatar:
|
"Festival dumplings with tropical slaw and mac and cheese", authorName: "Caribbean Flair Team", authorAvatar:
|
||||||
"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Ccircle cx='20' cy='20' r='20' fill='%23e8e8e8'/%3E%3Ctext x='50%' y='50%' font-size='12' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3EAuthor%3C/text%3E%3C/svg%3E", date: "Must Try"
|
"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Ccircle cx='20' cy='20' r='20' fill='%23e8e8e8'/%3E%3Ctext x='50%' y='50%' font-size='12' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3EAuthor%3C/text%3E%3C/svg%3E", date: "Must Try"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "escovitch-fish", category: "Seafood", title: "Escovitch Fish - Island Tradition", excerpt:
|
id: "escovitch-fish", category: "Seafood", title: "Escovitch Fish - Island Tradition", excerpt:
|
||||||
"Fresh fish prepared in authentic Jamaican style with pickled vegetables and bold island flavors.", imageSrc:
|
"Fresh fish prepared in authentic Jamaican style with pickled vegetables and bold island flavors.", imageSrc:
|
||||||
"data:image/svg+xml,%3Csvg xmlns=?_wi=8'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E", imageAlt: "Escovitch fish with pickled vegetables and lime", authorName: "Caribbean Flair Team", authorAvatar:
|
"data:image/svg+xml,%3Csvg xmlns=?_wi=7'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E", imageAlt: "Escovitch fish with pickled vegetables and lime", authorName: "Caribbean Flair Team", authorAvatar:
|
||||||
"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Ccircle cx='20' cy='20' r='20' fill='%23e8e8e8'/%3E%3Ctext x='50%' y='50%' font-size='12' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3EAuthor%3C/text%3E%3C/svg%3E", date: "Customer Favorite"
|
"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Ccircle cx='20' cy='20' r='20' fill='%23e8e8e8'/%3E%3Ctext x='50%' y='50%' font-size='12' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3EAuthor%3C/text%3E%3C/svg%3E", date: "Customer Favorite"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "mac-cheese", category: "Sides", title: "Creamy Island Mac & Cheese", excerpt:
|
id: "mac-cheese", category: "Sides", title: "Creamy Island Mac & Cheese", excerpt:
|
||||||
"Smooth, rich, and soul-warming comfort food that pairs perfectly with any of our signature mains.", imageSrc:
|
"Smooth, rich, and soul-warming comfort food that pairs perfectly with any of our signature mains.", imageSrc:
|
||||||
"data:image/svg+xml,%3Csvg xmlns=?_wi=9'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E", imageAlt: "Creamy mac and cheese side dish", authorName: "Caribbean Flair Team", authorAvatar:
|
"data:image/svg+xml,%3Csvg xmlns=?_wi=8'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E", imageAlt: "Creamy mac and cheese side dish", authorName: "Caribbean Flair Team", authorAvatar:
|
||||||
"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Ccircle cx='20' cy='20' r='20' fill='%23e8e8e8'/%3E%3Ctext x='50%' y='50%' font-size='12' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3EAuthor%3C/text%3E%3C/svg%3E", date: "Comfort Classic"
|
"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Ccircle cx='20' cy='20' r='20' fill='%23e8e8e8'/%3E%3Ctext x='50%' y='50%' font-size='12' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3EAuthor%3C/text%3E%3C/svg%3E", date: "Comfort Classic"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "grill-action", category: "Behind the Scenes", title: "Fresh Off The Grill - Live Action", excerpt:
|
id: "grill-action", category: "Behind the Scenes", title: "Fresh Off The Grill - Live Action", excerpt:
|
||||||
"Watch our expert grill masters prepare your meal with passion, precision, and authentic Caribbean technique.", imageSrc:
|
"Watch our expert grill masters prepare your meal with passion, precision, and authentic Caribbean technique.", imageSrc:
|
||||||
"data:image/svg+xml,%3Csvg xmlns=?_wi=10'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E", imageAlt: "Chef grilling jerk meats on foil with smoke", authorName: "Caribbean Flair Team", authorAvatar:
|
"data:image/svg+xml,%3Csvg xmlns=?_wi=9'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E", imageAlt: "Chef grilling jerk meats on foil with smoke", authorName: "Caribbean Flair Team", authorAvatar:
|
||||||
"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Ccircle cx='20' cy='20' r='20' fill='%23e8e8e8'/%3E%3Ctext x='50%' y='50%' font-size='12' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3EAuthor%3C/text%3E%3C/svg%3E", date: "Daily Special"
|
"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Ccircle cx='20' cy='20' r='20' fill='%23e8e8e8'/%3E%3Ctext x='50%' y='50%' font-size='12' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3EAuthor%3C/text%3E%3C/svg%3E", date: "Daily Special"
|
||||||
},
|
},
|
||||||
]}
|
]}
|
||||||
@@ -491,7 +491,7 @@ export default function HomePage() {
|
|||||||
{
|
{
|
||||||
id: "deb-farrell", name: "Deb Farrell", role: "Co-Owner & Operations Lead", description:
|
id: "deb-farrell", name: "Deb Farrell", role: "Co-Owner & Operations Lead", description:
|
||||||
"Deb ensures every customer experience is smooth, welcoming, and unforgettable. Together with Teria, they are building a thriving Black- and women-owned business that celebrates Caribbean culture and community impact.", videoSrc:
|
"Deb ensures every customer experience is smooth, welcoming, and unforgettable. Together with Teria, they are building a thriving Black- and women-owned business that celebrates Caribbean culture and community impact.", videoSrc:
|
||||||
"data:image/svg+xml,%3Csvg xmlns=?_wi=18'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E", videoAriaLabel: "Deb Farrell, co-owner of Caribbean Flair", socialLinks: [
|
"data:image/svg+xml,%3Csvg xmlns=?_wi=10'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E", videoAriaLabel: "Deb Farrell, co-owner of Caribbean Flair", socialLinks: [
|
||||||
{
|
{
|
||||||
icon: Facebook,
|
icon: Facebook,
|
||||||
url: "https://www.facebook.com/share/1CckZyvyXX/?mibextid=wwXIfr"
|
url: "https://www.facebook.com/share/1CckZyvyXX/?mibextid=wwXIfr"
|
||||||
@@ -512,7 +512,7 @@ export default function HomePage() {
|
|||||||
tagAnimation="slide-up"
|
tagAnimation="slide-up"
|
||||||
buttons={[
|
buttons={[
|
||||||
{
|
{
|
||||||
text: "Order Online Now", href: "/menu"
|
text: "Order Online Now", href: "/order-now"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: "Call (239) 785-0423", href: "tel:2397850423"
|
text: "Call (239) 785-0423", href: "tel:2397850423"
|
||||||
@@ -527,7 +527,7 @@ export default function HomePage() {
|
|||||||
id: "fast-delivery", title: "Fast & Fresh", description:
|
id: "fast-delivery", title: "Fast & Fresh", description:
|
||||||
"Grilled fresh to order. Your meal arrives hot, delicious, and packed with island flavor.", media: {
|
"Grilled fresh to order. Your meal arrives hot, delicious, and packed with island flavor.", media: {
|
||||||
imageSrc:
|
imageSrc:
|
||||||
"data:image/svg+xml,%3Csvg xmlns=?_wi=19'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E"
|
"data:image/svg+xml,%3Csvg xmlns=?_wi=11'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E"
|
||||||
},
|
},
|
||||||
items: [
|
items: [
|
||||||
{
|
{
|
||||||
@@ -548,13 +548,13 @@ export default function HomePage() {
|
|||||||
{/* Footer with Local Map Info and Social Links */}
|
{/* Footer with Local Map Info and Social Links */}
|
||||||
<div id="footer" data-section="footer">
|
<div id="footer" data-section="footer">
|
||||||
<FooterMedia
|
<FooterMedia
|
||||||
imageSrc="data:image/svg+xml,%3Csvg xmlns=?_wi=20'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E"
|
imageSrc="data:image/svg+xml,%3Csvg xmlns=?_wi=12'http://www.w3.org/2000/svg' width='400' height='300' viewBox='0 0 400 300'%3E%3Crect fill='%23e8e8e8' width='400' height='300'/%3E%3Ctext x='50%' y='50%' font-size='16' text-anchor='middle' dominant-baseline='middle' fill='%23999'%3ETemplate Image%3C/text%3E%3C/svg%3E"
|
||||||
imageAlt="Caribbean Flair Island Jerk Grill Trailer"
|
imageAlt="Caribbean Flair Island Jerk Grill Trailer"
|
||||||
logoText="Caribbean Flair"
|
logoText="Caribbean Flair"
|
||||||
copyrightText="© 2025 Caribbean Flair Island Jerk Grill | Black & Women-Owned | Lehigh Acres, FL"
|
copyrightText="© 2026 Caribbean Flair Island Jerk Grill | Black & Women-Owned | Lehigh Acres, FL"
|
||||||
columns={footerColumns}
|
columns={footerColumns}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</ThemeProvider>
|
</ThemeProvider>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user