'use client'; import { useTranslations } from 'next-intl'; import { motion } from 'framer-motion'; import { Calendar, Mail } from 'lucide-react'; import AnimatedCheckmark from '@/components/icons/AnimatedCheckmark'; import Button from '@/components/ui/Button'; import CalButton from '@/components/ui/CalButton'; import type { WizardFormData } from './WizardContainer'; // ─── Brief Renderer ─────────────────────────────────────────────────────────── function renderBrief(brief: string) { // Split on double newlines for paragraph blocks const blocks = brief.split('\n\n').filter(Boolean); return blocks.map((block, blockIdx) => { const lines = block.split('\n').filter(Boolean); // Detect a heading block (starts with **) const isSectionHeading = lines.length === 1 && lines[0].startsWith('**') && lines[0].endsWith('**'); if (isSectionHeading) { const text = lines[0].replace(/\*\*/g, ''); // Top heading is larger if (blockIdx === 0) { return (
{text}
); } return ({text}
); } // Separator line if (lines.length === 1 && lines[0] === '---') { return0 ? 'mt-1' : ''}> {parts.map((part, pIdx) => part.startsWith('**') && part.endsWith('**') ? ( {part.slice(2, -2)} ) : ( {part} ), )}
); })}Book a Consultation
30 minutes to discuss your brief with our team
{t('complete.subtitle', { email: displayEmail })}
Your project brief
{t('complete.bookTitle')}
Or reach us directly at{' '} hello@letsbe.biz