diff --git a/src/components/sections/NewsletterSection.tsx b/src/components/sections/NewsletterSection.tsx new file mode 100644 index 0000000..e64d348 --- /dev/null +++ b/src/components/sections/NewsletterSection.tsx @@ -0,0 +1,63 @@ +'use client' + +import { useState } from 'react' +import Input from '@/components/ui/Input' +import Button from '@/components/ui/Button' +import { Leaf, Send } from 'lucide-react' + +export default function NewsletterSection() { + const [email, setEmail] = useState('') + const [status, setStatus] = useState<"idle" | "subscribed">('idle') + + const handleSubmit = (e: React.FormEvent) => { + e.preventDefault() + if (!email) return + // Simulate subscription — in production send to API + setStatus('subscribed') + setEmail('') + } + + return ( +
+
+
+
+ +

Join the Ngcobo Naturals Circle

+

+ Receive exclusive herbal recipes, seasonal skincare rituals, and early access to limited small-batch releases. +

+
+ + {status === 'subscribed' ? ( +
+ ✓ You're on the list! Welcome to the community. +
+ ) : ( +
+
+ setEmail(e.target.value)} + required + className="rounded-xl border-[#daddd4] bg-[#f4f5f2]" + /> +
+ +
+ )} +
+
+
+ ) +} \ No newline at end of file