diff --git a/src/components/sections/ContactSection.tsx b/src/components/sections/ContactSection.tsx new file mode 100644 index 0000000..4aee944 --- /dev/null +++ b/src/components/sections/ContactSection.tsx @@ -0,0 +1,88 @@ +'use client' +import { useState } from 'react' +import Link from 'next/link' +import Button from '@/components/ui/Button' +import Input from '@/components/ui/Input' +import { Card, CardHeader, CardTitle, CardContent } from '@/components/ui/Card' +import { Mail, MapPin, MessageCircle, Phone } from 'lucide-react' + +export default function ContactSection() { + const [formData, setFormData] = useState({ name: '', email: '', phone: '', message: '' }) + const handleSubmit = (e: React.FormEvent) => { + e.preventDefault() + alert('Thank you! Your enquiry has been sent to our reservations team.') + setFormData({ name: '', email: '', phone: '', message: '' }) + } + const contactDetails = [ + { icon: Phone, label: 'Phone', value: "+27 35 562 0123", href: "tel:+27355620123" }, + { icon: MessageCircle, label: 'WhatsApp', value: "+27 35 562 0123", href: "https://wa.me/27355620123" }, + { icon: Mail, label: "Email", value: "reservations@zulwinilodge.co.za", href: 'mailto:reservations@zulwinilodge.co.za' }, + { icon: MapPin, label: 'Address', value: 'R22, Hluhluwe, KwaZulu-Natal, 3960' }, + ] + return ( +
+
+

Get in Touch

+
+
+ + + {contactDetails.map((item, i) => { + const Icon = item.icon + return ( +
+ +
+

{item.label}

+ {item.href ? ( + {item.value} + ) : ( +

{item.value}

+ )} +
+
+ ) + })} +
+
+
+ +
+
+
+ + + Send us an Enquiry + + +
+ setFormData({...formData, name: e.target.value})} required /> + setFormData({...formData, email: e.target.value})} required /> + setFormData({...formData, phone: e.target.value})} /> + + +
+
+
+
+
+
+
+ ) +} \ No newline at end of file