4 Commits

Author SHA1 Message Date
f05d05031d Update src/app/page.tsx 2026-03-23 16:17:12 +00:00
282aa8d16d Merge version_6 into main
Merge version_6 into main
2026-03-23 16:15:32 +00:00
c1bbae0949 Update src/app/consultation/page.tsx 2026-03-23 16:15:26 +00:00
879671b69f Merge version_5 into main
Merge version_5 into main
2026-03-23 16:13:11 +00:00
2 changed files with 31 additions and 24 deletions

View File

@@ -8,23 +8,22 @@ import HeroSplitDualMedia from '@/components/sections/hero/HeroSplitDualMedia';
import FeatureHoverPattern from '@/components/sections/feature/featureHoverPattern/FeatureHoverPattern'; import FeatureHoverPattern from '@/components/sections/feature/featureHoverPattern/FeatureHoverPattern';
import TextBox from '@/components/Textbox'; import TextBox from '@/components/Textbox';
import { ClipboardList, Brain, Target, Calendar } from 'lucide-react'; import { ClipboardList, Brain, Target, Calendar } from 'lucide-react';
import ButtonShiftHover from '@/components/button/ButtonShiftHover/ButtonShiftHover'; import ContactCenter from '@/components/sections/contact/ContactCenter';
import { useRouter } from 'next/navigation';
export default function ConsultationPage() { export default function ConsultationPage() {
const router = useRouter();
const navItems = [ const navItems = [
{ name: 'Home', id: 'home', href: '/' }, { name: 'Home', id: '/' },
{ name: 'Services', id: 'services', href: '/#services' }, { name: 'Services', id: '/#services' },
{ name: 'Portfolio', id: 'portfolio', href: '/#portfolio' }, { name: 'Who This Is For', id: '/#who-this-is-for' },
{ name: 'Testimonials', id: 'testimonials', href: '/#testimonials' }, { name: 'What You Get', id: '/#what-you-get' },
{ name: 'Contact', id: 'contact', href: '/#contact' }, { name: 'Portfolio', id: '/#portfolio' },
{ name: 'Consultation', id: '/consultation', href: '/consultation' } { name: 'Testimonials', id: '/#testimonials' },
{ name: 'Consultation', id: '/consultation' },
{ name: 'Contact', id: '/#contact' }
]; ];
const handleConfirmBooking = () => {
alert("Booking Confirmed! (This would submit the form or confirm the booking.)");
// In a real application, this would trigger form submission or a booking confirmation API call.
};
return ( return (
<ThemeProvider <ThemeProvider
defaultButtonVariant="directional-hover" defaultButtonVariant="directional-hover"
@@ -70,15 +69,23 @@ export default function ConsultationPage() {
/> />
</div> </div>
{/* New "Confirm Booking" button below the booking form/scheduler section */} <div id="booking-form" data-section="booking-form">
<div className="flex justify-center py-vw-2_5" data-section="confirm-booking-button"> <ContactCenter
<ButtonShiftHover tag="Booking"
text="Confirm Booking" title="Confirm Your Consultation"
onClick={handleConfirmBooking} description="Enter your email to finalize your booking, and we'll send you a calendar invite."
ariaLabel="Confirm Booking" background={{ variant: "sparkles-gradient" }}
// In a real application, 'disabled' state would be managed by form validation logic. useInvertedBackground={false}
// For this static implementation, it's always enabled. inputPlaceholder="Your Email Address"
// disabled={!isFormFilledOrTimeSelected} buttonText="Confirm Booking"
onSubmit={(email: string) => {
console.log("Email submitted:", email);
router.push('/confirmation');
}}
className="!py-vw-4 !bg-background-accent/50"
contentClassName="!py-vw-4 !px-vw-2_5 !bg-card border border-accent/20 rounded-pill shadow-xl"
titleClassName="!text-3xl lg:!text-4xl"
buttonClassName="!py-vw-0_75 !px-vw-2"
/> />
</div> </div>
@@ -155,4 +162,4 @@ export default function ConsultationPage() {
</ReactLenis> </ReactLenis>
</ThemeProvider> </ThemeProvider>
); );
} }

View File

@@ -121,7 +121,7 @@ export default function LandingPage() {
textboxLayout="default" textboxLayout="default"
useInvertedBackground={false} useInvertedBackground={false}
title="Who This Is For" title="Who This Is For"
description="Our services are designed for ambitious brands ready to make a significant impact online." description="Ambitious brands often struggle to cut through the noise and achieve tangible digital growth. Vertex Digital partners with you to overcome these challenges, delivering bespoke, high-performance digital solutions that not only captivate your audience but also drive measurable results and position you as an industry leader."
features={[ features={[
{ {
id: "who-1", title: "", description: "", media: { id: "who-1", title: "", description: "", media: {
@@ -353,4 +353,4 @@ export default function LandingPage() {
</ReactLenis> </ReactLenis>
</ThemeProvider> </ThemeProvider>
); );
} }