import { lazy, Suspense, useState, useEffect, useRef } from 'react'; import { useTranslation } from 'react-i18next'; import { useFadeInRef } from '../../hooks/useFadeIn'; import { useIsMobile } from '../../hooks/useIsMobile'; import HexCanvas from './HexCanvas'; import HomeFinalCta from './HomeFinalCta'; import BottomIllustration from './BottomIllustration'; import { TickerValue } from '../ui/TickerValue'; import { CheckIcon, ChevronIcon, LogoIcon, PlayIcon } from '../ui/icons'; import { trackEvent } from '../../lib/analytics'; import { apiUrl } from '../../lib/api'; const BRAND_NAME = 'Perfect Postcode'; const BRAND_TEXT_CLASS = 'text-teal-600 dark:text-teal-400'; const HOME_SECTION_CONTAINER_CLASS = 'max-w-7xl mx-auto px-6 md:px-10'; const HOME_SECTION_HEADING_CLASS = 'text-2xl md:text-3xl font-bold text-navy-950 dark:text-warm-100'; const HOME_BODY_CLASS = 'text-base leading-relaxed text-warm-600 dark:text-warm-400'; const HOME_PRIMARY_BUTTON_CLASS = 'border border-[#d27a11] bg-[#f09a22] text-navy-950 rounded-lg font-semibold hover:bg-[#df8614] transition-colors text-base shadow-lg shadow-[#7a3905]/25 text-center focus:outline-none focus-visible:ring-4 focus-visible:ring-teal-300/80'; const PRODUCT_DEMO_VIDEO_BY_LANGUAGE: Record = { en: 'recording', de: 'recording-de', zh: 'recording-zh', hi: 'recording-hi', }; const PRODUCT_DEMO_SECTION_ID = 'product-demo-video'; const ProductShowcase = lazy(() => import('./ProductShowcase')); function ProductShowcaseFallback({ className = '' }: { className?: string }) { return (