import { notFound, redirect } from 'next/navigation'; import { getImageProps } from 'next/image'; import { ScaleOfImpact } from '@/components/blocks/ScaleOfImpact'; import { Container, Badge, Heading } from '@/components/ui'; import { getTranslations, setRequestLocale } from 'next-intl/server'; import { Metadata } from 'next'; import { getPageBySlug } from '@/lib/pages'; import { mapSlugToFileSlug, mapFileSlugToTranslated } from '@/lib/slugs'; import { MDXRemote } from 'next-mdx-remote/rsc'; import { SITE_URL } from '@/lib/schema'; import TrackedLink from '@/components/analytics/TrackedLink'; import { getButtonClasses, ButtonOverlay } from '@/components/ui/Button'; import { getAllReferences } from '@/lib/references'; import { defaultLocations, minorLocations } from '@/lib/map-data'; // Import components used in MDX import { HeroVideo as HomeHero } from '@/components/blocks/HeroVideo'; import { SubCompanyTiles as HomeSubCompanyTiles } from '@/components/blocks/SubCompanyTiles'; import { CompetenceBentoGrid as HomeCompetenceBentoGrid } from '@/components/blocks/CompetenceBentoGrid'; import { ReferencesSlider as HomeReferencesSlider } from '@/components/blocks/ReferencesSlider'; import { CompanyTimeline } from '@/components/blocks/CompanyTimeline'; import { JobListingBlock } from '@/components/blocks/JobListingBlock'; import { ServiceDetailGrid } from '@/components/blocks/ServiceDetailGrid'; import { BenefitGrid } from '@/components/blocks/BenefitGrid'; import { InteractiveGermanyMap } from '@/components/blocks/InteractiveGermanyMap'; import { FaqBlock } from '@/components/blocks/FaqBlock'; import { CertificatesBlock } from '@/components/blocks/CertificatesBlock'; import { HeroSection } from '@/components/blocks/HeroSection'; import { TeamGrid } from '@/components/blocks/TeamGrid'; import { DeepDrillAnimation } from '@/components/blocks/DeepDrillAnimation'; import { DataGridPulse } from '@/components/blocks/DataGridPulse'; import { GrowthChart } from '@/components/blocks/GrowthChart'; import JsonLd from '@/components/JsonLd'; import { Button } from '@/components/ui/Button'; import { AnimatedCounter } from '@/components/ui'; const mdxComponents = { HomeHero, HomeSubCompanyTiles, HomeCompetenceBentoGrid, HomeReferencesSlider, CompanyTimeline, JobListingBlock, ServiceDetailGrid, BenefitGrid, InteractiveGermanyMap, FaqBlock, CertificatesBlock, HeroSection, TeamGrid, JsonLd, Button, Badge, Heading, AnimatedCounter, GrowthChart, DeepDrillAnimation, DataGridPulse, ScaleOfImpact, ResponsiveImage: (props: any) => { let src = props.src; if (typeof src === 'string' && src.startsWith('/_next/image')) { try { const urlParam = new URLSearchParams(src.split('?')[1]).get('url'); if (urlParam) src = decodeURIComponent(urlParam); } catch (_e) { // Ignore invalid URL parsing } } const { props: { srcSet, src: finalSrc, sizes } } = getImageProps({ src, alt: props.alt || '', width: 1920, height: 1080, sizes: '(max-width: 768px) 100vw, (max-width: 1200px) 75vw, 50vw', quality: 80, }); return ( ); }, // Standard HTML element mapping for consistent E-TIB typography h1: (props: any) => , // Hidden because Hero handles H1 h2: (props: any) => , h3: (props: any) => , h4: (props: any) => , p: (props: any) =>

, ul: (props: any) =>