diff --git a/components/PDFDownloadBlock.tsx b/components/PDFDownloadBlock.tsx
index 64c2de89..1a0fcc36 100644
--- a/components/PDFDownloadBlock.tsx
+++ b/components/PDFDownloadBlock.tsx
@@ -3,7 +3,11 @@
import React from 'react';
import { usePathname } from 'next/navigation';
-export const PDFDownloadBlock: React.FC<{ label: string; style: string }> = ({ label, style }) => {
+export const PDFDownloadBlock: React.FC<{ label: string; style: string; url?: string }> = ({
+ label,
+ style,
+ url,
+}) => {
const pathname = usePathname();
// Extract slug from pathname
@@ -12,7 +16,7 @@ export const PDFDownloadBlock: React.FC<{ label: string; style: string }> = ({ l
// We want the page slug.
const slug = segments[segments.length - 1] || 'home';
- const href = `/api/pages/${slug}/pdf`;
+ const href = url || `/api/pages/${slug}/pdf`;
return (
diff --git a/content/pages/agbs.mdx b/content/pages/agbs.mdx
index 13c30679..f37b20a4 100644
--- a/content/pages/agbs.mdx
+++ b/content/pages/agbs.mdx
@@ -247,7 +247,7 @@ _status: published
Stand: April 2026
-
+
diff --git a/lib/pdf-business-card.tsx b/lib/pdf-business-card.tsx
index 6a0d195f..98252a14 100644
--- a/lib/pdf-business-card.tsx
+++ b/lib/pdf-business-card.tsx
@@ -302,7 +302,7 @@ const styles = StyleSheet.create({
flexDirection: 'column',
},
nameSection: {
- marginBottom: '2.5mm', // Clear separation between name block and contact block
+ marginBottom: '6mm', // Clear separation between name block and contact block
},
nameText: {
fontSize: 13,
diff --git a/lib/pdf-page.tsx b/lib/pdf-page.tsx
index 4e67e371..ef648ed2 100644
--- a/lib/pdf-page.tsx
+++ b/lib/pdf-page.tsx
@@ -329,6 +329,42 @@ const renderLexicalNode = (node: any, idx: number): React.ReactNode => {
}
};
+const renderMarkdown = (markdown: string) => {
+ const blocks = markdown.split('\n\n').filter((b) => b.trim());
+ return blocks.map((block, idx) => {
+ if (block.startsWith('### ')) {
+ return (
+
+ {block.replace('### ', '').trim()}
+
+ );
+ }
+ if (block.startsWith('## ')) {
+ return (
+
+ {block.replace('## ', '').trim()}
+
+ );
+ }
+ if (block.startsWith('# ')) {
+ return (
+
+ {block.replace('# ', '').trim()}
+
+ );
+ }
+
+ // Ignore block components like
+ if (block.startsWith('
+ {block.trim()}
+
+ );
+ });
+};
+
interface PDFPageProps {
page: any;
locale?: string;
@@ -360,9 +396,11 @@ export const PDFPage: React.FC = ({ page, locale = 'de' }) => {
- {page.content?.root?.children?.map((node: any, i: number) =>
- renderLexicalNode(node, i),
- )}
+ {typeof page.content === 'string'
+ ? renderMarkdown(page.content)
+ : page.content?.root?.children?.map((node: any, i: number) =>
+ renderLexicalNode(node, i),
+ )}
diff --git a/public/downloads/business-cards/KLZ_Visitenkarte_Johannes_Gleich.pdf b/public/downloads/business-cards/KLZ_Visitenkarte_Johannes_Gleich.pdf
index b86137fb..78eb3ca9 100644
Binary files a/public/downloads/business-cards/KLZ_Visitenkarte_Johannes_Gleich.pdf and b/public/downloads/business-cards/KLZ_Visitenkarte_Johannes_Gleich.pdf differ
diff --git a/public/downloads/business-cards/KLZ_Visitenkarte_Johannes_Gleich_CropMarks.pdf b/public/downloads/business-cards/KLZ_Visitenkarte_Johannes_Gleich_CropMarks.pdf
index 39aeba60..5b402adb 100644
Binary files a/public/downloads/business-cards/KLZ_Visitenkarte_Johannes_Gleich_CropMarks.pdf and b/public/downloads/business-cards/KLZ_Visitenkarte_Johannes_Gleich_CropMarks.pdf differ
diff --git a/public/downloads/business-cards/KLZ_Visitenkarte_Johannes_Gleich_NoTruck.pdf b/public/downloads/business-cards/KLZ_Visitenkarte_Johannes_Gleich_NoTruck.pdf
index 25a2aaf5..a8e5cc8c 100644
Binary files a/public/downloads/business-cards/KLZ_Visitenkarte_Johannes_Gleich_NoTruck.pdf and b/public/downloads/business-cards/KLZ_Visitenkarte_Johannes_Gleich_NoTruck.pdf differ
diff --git a/public/downloads/business-cards/KLZ_Visitenkarte_Johannes_Gleich_Viaprinto_CMYK_91x61mm_3mmBleed.pdf b/public/downloads/business-cards/KLZ_Visitenkarte_Johannes_Gleich_Viaprinto_CMYK_91x61mm_3mmBleed.pdf
index d0f704e3..7d50e855 100644
Binary files a/public/downloads/business-cards/KLZ_Visitenkarte_Johannes_Gleich_Viaprinto_CMYK_91x61mm_3mmBleed.pdf and b/public/downloads/business-cards/KLZ_Visitenkarte_Johannes_Gleich_Viaprinto_CMYK_91x61mm_3mmBleed.pdf differ
diff --git a/public/downloads/business-cards/KLZ_Visitenkarte_Klaus_Mintel.pdf b/public/downloads/business-cards/KLZ_Visitenkarte_Klaus_Mintel.pdf
index b90c8eb4..1903d70e 100644
Binary files a/public/downloads/business-cards/KLZ_Visitenkarte_Klaus_Mintel.pdf and b/public/downloads/business-cards/KLZ_Visitenkarte_Klaus_Mintel.pdf differ
diff --git a/public/downloads/business-cards/KLZ_Visitenkarte_Klaus_Mintel_CropMarks.pdf b/public/downloads/business-cards/KLZ_Visitenkarte_Klaus_Mintel_CropMarks.pdf
index 05d0bc52..c89bf58a 100644
Binary files a/public/downloads/business-cards/KLZ_Visitenkarte_Klaus_Mintel_CropMarks.pdf and b/public/downloads/business-cards/KLZ_Visitenkarte_Klaus_Mintel_CropMarks.pdf differ
diff --git a/public/downloads/business-cards/KLZ_Visitenkarte_Klaus_Mintel_NoTruck.pdf b/public/downloads/business-cards/KLZ_Visitenkarte_Klaus_Mintel_NoTruck.pdf
index b87c1ccb..11d6ed30 100644
Binary files a/public/downloads/business-cards/KLZ_Visitenkarte_Klaus_Mintel_NoTruck.pdf and b/public/downloads/business-cards/KLZ_Visitenkarte_Klaus_Mintel_NoTruck.pdf differ
diff --git a/public/downloads/business-cards/KLZ_Visitenkarte_Klaus_Mintel_Viaprinto_CMYK_91x61mm_3mmBleed.pdf b/public/downloads/business-cards/KLZ_Visitenkarte_Klaus_Mintel_Viaprinto_CMYK_91x61mm_3mmBleed.pdf
index 93ce3b5c..6421445b 100644
Binary files a/public/downloads/business-cards/KLZ_Visitenkarte_Klaus_Mintel_Viaprinto_CMYK_91x61mm_3mmBleed.pdf and b/public/downloads/business-cards/KLZ_Visitenkarte_Klaus_Mintel_Viaprinto_CMYK_91x61mm_3mmBleed.pdf differ
diff --git a/public/downloads/business-cards/KLZ_Visitenkarte_Michael_Bodemer.pdf b/public/downloads/business-cards/KLZ_Visitenkarte_Michael_Bodemer.pdf
index 0089e078..14245e4e 100644
Binary files a/public/downloads/business-cards/KLZ_Visitenkarte_Michael_Bodemer.pdf and b/public/downloads/business-cards/KLZ_Visitenkarte_Michael_Bodemer.pdf differ
diff --git a/public/downloads/business-cards/KLZ_Visitenkarte_Michael_Bodemer_CropMarks.pdf b/public/downloads/business-cards/KLZ_Visitenkarte_Michael_Bodemer_CropMarks.pdf
index de9d6c9b..5b1af76f 100644
Binary files a/public/downloads/business-cards/KLZ_Visitenkarte_Michael_Bodemer_CropMarks.pdf and b/public/downloads/business-cards/KLZ_Visitenkarte_Michael_Bodemer_CropMarks.pdf differ
diff --git a/public/downloads/business-cards/KLZ_Visitenkarte_Michael_Bodemer_NoTruck.pdf b/public/downloads/business-cards/KLZ_Visitenkarte_Michael_Bodemer_NoTruck.pdf
index c505170e..6e32af23 100644
Binary files a/public/downloads/business-cards/KLZ_Visitenkarte_Michael_Bodemer_NoTruck.pdf and b/public/downloads/business-cards/KLZ_Visitenkarte_Michael_Bodemer_NoTruck.pdf differ
diff --git a/public/downloads/business-cards/KLZ_Visitenkarte_Michael_Bodemer_Viaprinto_CMYK_91x61mm_3mmBleed.pdf b/public/downloads/business-cards/KLZ_Visitenkarte_Michael_Bodemer_Viaprinto_CMYK_91x61mm_3mmBleed.pdf
index 1232ebf9..12c7e71b 100644
Binary files a/public/downloads/business-cards/KLZ_Visitenkarte_Michael_Bodemer_Viaprinto_CMYK_91x61mm_3mmBleed.pdf and b/public/downloads/business-cards/KLZ_Visitenkarte_Michael_Bodemer_Viaprinto_CMYK_91x61mm_3mmBleed.pdf differ