From dec3aee7cbbf25115e48369f3fcbccd342ec100a Mon Sep 17 00:00:00 2001 From: Vula Builder Date: Tue, 15 Sep 2026 18:02:58 +0000 Subject: [PATCH] Deploy --- .../sections/VisitTheClinicSection.tsx | 130 ++++++++++++++++++ 1 file changed, 130 insertions(+) create mode 100644 src/components/sections/VisitTheClinicSection.tsx diff --git a/src/components/sections/VisitTheClinicSection.tsx b/src/components/sections/VisitTheClinicSection.tsx new file mode 100644 index 0000000..ade3fad --- /dev/null +++ b/src/components/sections/VisitTheClinicSection.tsx @@ -0,0 +1,130 @@ +'use client' + +import { useState, type ChangeEvent } from 'react' +import Link from 'next/link' +import { ArrowRight } from 'lucide-react' +import Button from '@/components/ui/Button' +import Input from '@/components/ui/Input' +import { Card, CardHeader, CardTitle, CardContent } from '@/components/ui/Card' +import BusinessContact from '@/components/BusinessContact' +import BusinessHours from '@/components/BusinessHours' +import BusinessMap from '@/components/BusinessMap' +import { useEnquiry } from '@/hooks/useEnquiry' + +type Form = { name: string; phone: string; email: string; message: string } + +export default function VisitTheClinicSection() { + const enquiry = useEnquiry() + const [form, setForm] = useState
({ name: '', phone: '', email: '', message: '' }) + const [result, setResult] = useState<{ ok: boolean; message: string } | null>(null) + const [sending, setSending] = useState(false) + + const set = + (key: keyof Form) => + (e: ChangeEvent) => + setForm((f) => ({ ...f, [key]: e.target.value })) + + return ( +
+
+
+
+ Visit the clinic +

+ Come in for an adjustment, or send us a message first. +

+

+ The practice is set up for families: a pram fits through the door, there is room for kids in the waiting area, and a newborn check does not need a full adult appointment slot. +

+ +
+
+

Where to find us

+ +
+ +
+ +
+ +
+
+ +
+ + + Send a message + + + {result?.ok ? ( +

{result.message}

+ ) : enquiry.available ? ( +
+ + + +
+ +