- Phone number: 10 locations now use CMS site-settings contact.phone
- ContactForm: service dropdown options from CMS services
- FAQ categories: display names derived from CMS services
- Footer: Top Fachbereiche column dynamic from CMS services
- SEO metadata: fachbereiche, faq, kontakt use generateMetadata()
- HomeCTA: converted to async server component, fetches settings
- Added phoneToHref() helper to payload-helpers.ts
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace hardcoded content with Payload CMS data for:
- Services overview, listing, and detail pages (features, icons, sections)
- FAQ page with rich text rendering and Schema.org structured data
- Contact info in TopBar, EmergencyBanner, Footer, and Kontakt page
- Header mega-menu with dynamic service list
New utilities: icon-map.ts (Lucide icon mapping), RichTextRenderer.tsx
Fix: ecosystem.config.js PM2 script path for Next.js
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Full medical second opinion website with:
- 10 routes: home, fachbereiche (overview + 6 detail), faq, so-funktionierts,
motivation, ueber-uns, kontakt, impressum, datenschutz
- Premium medical design: navy/blue/gold color system, Roboto Condensed
- Layout: TopBar, sticky Header with mega-menu, EmergencyBanner, Footer
- Service detail pages with benefits, checklist, stats, CTA
- FAQ page with search, category filter, accordion, Schema.org structured data
- Contact form with validation and Payload CMS form submission
- @c2s/payload-contracts integration for type-safe API access
- Tailwind CSS v4 design system with custom animations
- PM2 ecosystem config on port 3002
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>