feat(pitch-deck): business model redesign + umlauts fix + tab animations
All checks were successful
Build pitch-deck / build-push-deploy (push) Successful in 1m12s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 37s
CI / test-python-voice (push) Successful in 37s
CI / test-bqas (push) Successful in 36s

Business Model slide completely rewritten:
- Left: 3 pricing tiers (Starter/Professional/Enterprise)
- Right: Unit Economics (ACV, Gross Margin, NRR, Payback)
- Bottom-up sizing: 1,200 customers × 8,400 ACV = 10M ARR
- Land & Expand arrow visualization

Umlauts: 75+ ae/oe/ue → ä/ö/ü replacements across 10 slide files

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Benjamin Admin
2026-04-15 22:42:06 +02:00
parent 2de4d03d81
commit f9b9cf0383
11 changed files with 200 additions and 142 deletions

View File

@@ -60,7 +60,7 @@ export default function AIPipelineSlide({ lang }: AIPipelineSlideProps) {
bg: 'bg-blue-500/10 border-blue-500/20', bg: 'bg-blue-500/10 border-blue-500/20',
title: de ? 'EU-Verordnungen (~15)' : 'EU Regulations (~15)', title: de ? 'EU-Verordnungen (~15)' : 'EU Regulations (~15)',
why: de why: de
? 'Bindende Vorgaben fuer alle EU-Unternehmen — Verstoesse fuehren zu Bussgeldern bis 4% des Jahresumsatzes.' ? 'Bindende Vorgaben für alle EU-Unternehmen — Verstöße führen zu Bußgeldern bis 4% des Jahresumsatzes.'
: 'Binding requirements for all EU companies — violations lead to fines up to 4% of annual revenue.', : 'Binding requirements for all EU companies — violations lead to fines up to 4% of annual revenue.',
examples: 'DSGVO · AI Act · NIS2 · CRA · MiCA · DSA · Maschinenverordnung · Batterieverordnung', examples: 'DSGVO · AI Act · NIS2 · CRA · MiCA · DSA · Maschinenverordnung · Batterieverordnung',
}, },
@@ -70,7 +70,7 @@ export default function AIPipelineSlide({ lang }: AIPipelineSlideProps) {
bg: 'bg-purple-500/10 border-purple-500/20', bg: 'bg-purple-500/10 border-purple-500/20',
title: de ? 'DACH-Gesetze (~20)' : 'DACH Laws (~20)', title: de ? 'DACH-Gesetze (~20)' : 'DACH Laws (~20)',
why: de why: de
? 'Nationale Umsetzungen und eigenstaendige Gesetze — oft strenger als EU-Mindeststandards.' ? 'Nationale Umsetzungen und eigenständige Gesetze — oft strenger als EU-Mindeststandards.'
: 'National implementations and standalone laws — often stricter than EU minimum standards.', : 'National implementations and standalone laws — often stricter than EU minimum standards.',
examples: 'BDSG · TKG · GwG · HGB · BGB · UrhG · GewO · KRITIS-DachG · AT ABGB · AT KSchG', examples: 'BDSG · TKG · GwG · HGB · BGB · UrhG · GewO · KRITIS-DachG · AT ABGB · AT KSchG',
}, },
@@ -90,10 +90,10 @@ export default function AIPipelineSlide({ lang }: AIPipelineSlideProps) {
bg: 'bg-amber-500/10 border-amber-500/20', bg: 'bg-amber-500/10 border-amber-500/20',
title: de ? 'DSFA-Leitlinien & Urteile' : 'DPIA Guidelines & Rulings', title: de ? 'DSFA-Leitlinien & Urteile' : 'DPIA Guidelines & Rulings',
why: de why: de
? 'Urteile zeigen wie Gerichte Gesetze auslegen — entscheidend fuer praezise Compliance-Beratung statt generischer Antworten.' ? 'Urteile zeigen wie Gerichte Gesetze auslegen — entscheidend für präzise Compliance-Beratung statt generischer Antworten.'
: 'Court rulings show how laws are interpreted — critical for precise compliance advice instead of generic answers.', : 'Court rulings show how laws are interpreted — critical for precise compliance advice instead of generic answers.',
examples: de examples: de
? '16 Bundeslaender DSFA-Leitlinien · BAG-Urteile · Datenschutzkonferenz-Beschluesse' ? '16 Bundesländer DSFA-Leitlinien · BAG-Urteile · Datenschutzkonferenz-Beschlüsse'
: '16 federal state DPIA guidelines · Labor court rulings · Data protection conference decisions', : '16 federal state DPIA guidelines · Labor court rulings · Data protection conference decisions',
}, },
] ]
@@ -106,7 +106,7 @@ export default function AIPipelineSlide({ lang }: AIPipelineSlideProps) {
bg: 'bg-blue-500/10 border-blue-500/20', bg: 'bg-blue-500/10 border-blue-500/20',
title: de ? '1. Dokument-Ingestion' : '1. Document Ingestion', title: de ? '1. Dokument-Ingestion' : '1. Document Ingestion',
items: de items: de
? ['75+ Rechtsquellen aus EU, Deutschland und Oesterreich', 'Strukturelles Chunking an Artikel- und Absatz-Grenzen', 'Automatische Lizenz-Klassifikation (frei / Zitat / geschuetzt)', 'Geschuetzte Normen (ISO, BSI) werden vollstaendig reformuliert'] ? ['75+ Rechtsquellen aus EU, Deutschland und Österreich', 'Strukturelles Chunking an Artikel- und Absatz-Grenzen', 'Automatische Lizenz-Klassifikation (frei / Zitat / geschützt)', 'Geschützte Normen (ISO, BSI) werden vollständig reformuliert']
: ['75+ legal sources from EU, Germany and Austria', 'Structural chunking at article and paragraph boundaries', 'Automatic license classification (free / citation / restricted)', 'Protected standards (ISO, BSI) are fully reformulated'], : ['75+ legal sources from EU, Germany and Austria', 'Structural chunking at article and paragraph boundaries', 'Automatic license classification (free / citation / restricted)', 'Protected standards (ISO, BSI) are fully reformulated'],
}, },
{ {
@@ -115,7 +115,7 @@ export default function AIPipelineSlide({ lang }: AIPipelineSlideProps) {
bg: 'bg-purple-500/10 border-purple-500/20', bg: 'bg-purple-500/10 border-purple-500/20',
title: de ? '2. Control-Extraktion' : '2. Control Extraction', title: de ? '2. Control-Extraktion' : '2. Control Extraction',
items: de items: de
? ['LLM extrahiert Pflichten und Anforderungen aus jedem Textabschnitt', '6 Pipeline-Versionen mit kontinuierlicher Qualitaetsverbesserung', 'Obligation Extraction: 47.000+ einzelne Pflichten identifiziert', 'Atomic Control Composition: Pflichten werden zu pruefbaren Controls'] ? ['LLM extrahiert Pflichten und Anforderungen aus jedem Textabschnitt', '6 Pipeline-Versionen mit kontinuierlicher Qualitätsverbesserung', 'Obligation Extraction: 47.000+ einzelne Pflichten identifiziert', 'Atomic Control Composition: Pflichten werden zu prüfbaren Controls']
: ['LLM extracts obligations and requirements from each text section', '6 pipeline versions with continuous quality improvement', 'Obligation extraction: 47,000+ individual duties identified', 'Atomic control composition: duties become auditable controls'], : ['LLM extracts obligations and requirements from each text section', '6 pipeline versions with continuous quality improvement', 'Obligation extraction: 47,000+ individual duties identified', 'Atomic control composition: duties become auditable controls'],
}, },
{ {
@@ -124,7 +124,7 @@ export default function AIPipelineSlide({ lang }: AIPipelineSlideProps) {
bg: 'bg-emerald-500/10 border-emerald-500/20', bg: 'bg-emerald-500/10 border-emerald-500/20',
title: de ? '3. Deduplizierung & Speicherung' : '3. Deduplication & Storage', title: de ? '3. Deduplizierung & Speicherung' : '3. Deduplication & Storage',
items: de items: de
? ['97.000 generierte Controls → 70.000+ nach Deduplizierung', 'Embedding-basierte Aehnlichkeitserkennung (Cosine Similarity)', 'Cross-Regulation Harmonisierung: gleiche Pflicht aus verschiedenen Gesetzen wird zusammengefuehrt', 'Ziel: 25.00050.000 atomare Master Controls'] ? ['97.000 generierte Controls → 70.000+ nach Deduplizierung', 'Embedding-basierte Ähnlichkeitserkennung (Cosine Similarity)', 'Cross-Regulation Harmonisierung: gleiche Pflicht aus verschiedenen Gesetzen wird zusammengeführt', 'Ziel: 25.00050.000 atomare Master Controls']
: ['97,000 generated controls → 70,000+ after deduplication', 'Embedding-based similarity detection (cosine similarity)', 'Cross-regulation harmonization: same obligation from different laws is merged', 'Target: 25,00050,000 atomic master controls'], : ['97,000 generated controls → 70,000+ after deduplication', 'Embedding-based similarity detection (cosine similarity)', 'Cross-regulation harmonization: same obligation from different laws is merged', 'Target: 25,00050,000 atomic master controls'],
}, },
{ {
@@ -133,7 +133,7 @@ export default function AIPipelineSlide({ lang }: AIPipelineSlideProps) {
bg: 'bg-indigo-500/10 border-indigo-500/20', bg: 'bg-indigo-500/10 border-indigo-500/20',
title: de ? '4. Hybrid Search & Beratung' : '4. Hybrid Search & Advisory', title: de ? '4. Hybrid Search & Beratung' : '4. Hybrid Search & Advisory',
items: de items: de
? ['Vektorsuche + Keyword-Suche ueber alle Rechtsquellen gleichzeitig', 'Cross-Encoder Re-Ranking fuer praezise Relevanz-Sortierung', 'Quellen-Attribution: Jede Antwort verweist auf Artikel und Absatz', 'Der Compliance-Agent antwortet mit Rechtsgrundlage — nicht mit Vermutungen'] ? ['Vektorsuche + Keyword-Suche über alle Rechtsquellen gleichzeitig', 'Cross-Encoder Re-Ranking für präzise Relevanz-Sortierung', 'Quellen-Attribution: Jede Antwort verweist auf Artikel und Absatz', 'Der Compliance-Agent antwortet mit Rechtsgrundlage — nicht mit Vermutungen']
: ['Vector search + keyword search across all legal sources simultaneously', 'Cross-encoder re-ranking for precise relevance sorting', 'Source attribution: Every answer references article and paragraph', 'The compliance agent answers with legal basis — not guesswork'], : ['Vector search + keyword search across all legal sources simultaneously', 'Cross-encoder re-ranking for precise relevance sorting', 'Source attribution: Every answer references article and paragraph', 'The compliance agent answers with legal basis — not guesswork'],
}, },
] ]
@@ -144,7 +144,7 @@ export default function AIPipelineSlide({ lang }: AIPipelineSlideProps) {
{ name: de ? 'Pflichten-Engine' : 'Obligations Engine', soul: de ? '47.000+ Pflichten' : '47,000+ obligations', desc: de ? 'Multi-Regulation: NIS2, DSGVO, AI Act, CRA, ...' : 'Multi-regulation: NIS2, GDPR, AI Act, CRA, ...', color: 'text-emerald-400' }, { name: de ? 'Pflichten-Engine' : 'Obligations Engine', soul: de ? '47.000+ Pflichten' : '47,000+ obligations', desc: de ? 'Multi-Regulation: NIS2, DSGVO, AI Act, CRA, ...' : 'Multi-regulation: NIS2, GDPR, AI Act, CRA, ...', color: 'text-emerald-400' },
{ name: de ? 'Compliance-Berater' : 'Compliance Advisor', soul: de ? 'Legal RAG + LLM' : 'Legal RAG + LLM', desc: de ? 'Chatbot mit 75+ Rechtsquellen als Wissenbasis' : 'Chatbot with 75+ legal sources as knowledge base', color: 'text-purple-400' }, { name: de ? 'Compliance-Berater' : 'Compliance Advisor', soul: de ? 'Legal RAG + LLM' : 'Legal RAG + LLM', desc: de ? 'Chatbot mit 75+ Rechtsquellen als Wissenbasis' : 'Chatbot with 75+ legal sources as knowledge base', color: 'text-purple-400' },
{ name: de ? 'Dokument-Generator' : 'Document Generator', soul: de ? '7+ Templates' : '7+ templates', desc: de ? 'AGB, DSE, AV-Vertrag, DSFA, FRIA, BV + weitere' : 'T&C, Privacy Policy, DPA, DPIA, FRIA, Works Agreement + more', color: 'text-amber-400' }, { name: de ? 'Dokument-Generator' : 'Document Generator', soul: de ? '7+ Templates' : '7+ templates', desc: de ? 'AGB, DSE, AV-Vertrag, DSFA, FRIA, BV + weitere' : 'T&C, Privacy Policy, DPA, DPIA, FRIA, Works Agreement + more', color: 'text-amber-400' },
{ name: de ? 'DSFA-Agent' : 'DPIA Agent', soul: de ? 'Art. 35 DSGVO' : 'Art. 35 GDPR', desc: de ? 'Risikobewertung mit 16 Bundeslaender-Leitlinien' : 'Risk assessment with 16 federal state guidelines', color: 'text-red-400' }, { name: de ? 'DSFA-Agent' : 'DPIA Agent', soul: de ? 'Art. 35 DSGVO' : 'Art. 35 GDPR', desc: de ? 'Risikobewertung mit 16 Bundesländer-Leitlinien' : 'Risk assessment with 16 federal state guidelines', color: 'text-red-400' },
{ name: de ? 'Control-Pipeline' : 'Control Pipeline', soul: de ? '70.000+ Controls' : '70,000+ controls', desc: de ? 'Automatische Extraktion aus neuen Rechtsquellen' : 'Automatic extraction from new legal sources', color: 'text-blue-400' }, { name: de ? 'Control-Pipeline' : 'Control Pipeline', soul: de ? '70.000+ Controls' : '70,000+ controls', desc: de ? 'Automatische Extraktion aus neuen Rechtsquellen' : 'Automatic extraction from new legal sources', color: 'text-blue-400' },
] ]
@@ -162,7 +162,7 @@ export default function AIPipelineSlide({ lang }: AIPipelineSlideProps) {
color: 'text-emerald-400', color: 'text-emerald-400',
title: de ? 'Control Quality Pipeline' : 'Control Quality Pipeline', title: de ? 'Control Quality Pipeline' : 'Control Quality Pipeline',
items: de items: de
? ['97.000 Controls generiert, 70.000+ nach Deduplizierung', '6 Pipeline-Versionen mit steigender Extraktionsqualitaet', 'Automatische Lizenz-Pruefung: geschuetzte Normen werden reformuliert', 'Jeder Control hat Quellen-Referenz auf Artikel und Absatz'] ? ['97.000 Controls generiert, 70.000+ nach Deduplizierung', '6 Pipeline-Versionen mit steigender Extraktionsqualität', 'Automatische Lizenz-Prüfung: geschützte Normen werden reformuliert', 'Jeder Control hat Quellen-Referenz auf Artikel und Absatz']
: ['97,000 controls generated, 70,000+ after deduplication', '6 pipeline versions with increasing extraction quality', 'Automatic license check: protected standards are reformulated', 'Every control has source reference to article and paragraph'], : ['97,000 controls generated, 70,000+ after deduplication', '6 pipeline versions with increasing extraction quality', 'Automatic license check: protected standards are reformulated', 'Every control has source reference to article and paragraph'],
}, },
{ {
@@ -170,7 +170,7 @@ export default function AIPipelineSlide({ lang }: AIPipelineSlideProps) {
color: 'text-indigo-400', color: 'text-indigo-400',
title: de ? 'Kontinuierliche Erweiterung' : 'Continuous Expansion', title: de ? 'Kontinuierliche Erweiterung' : 'Continuous Expansion',
items: de items: de
? ['Neue Gesetze werden automatisch ingestiert und verarbeitet', 'Pipeline erkennt Ueberschneidungen mit bestehenden Controls', 'Cross-Regulation Mapping: gleiche Pflicht aus DSGVO und BDSG wird verknuepft', 'Wachsender Wissensvorsprung gegenueber manueller Compliance-Beratung'] ? ['Neue Gesetze werden automatisch ingestiert und verarbeitet', 'Pipeline erkennt Überschneidungen mit bestehenden Controls', 'Cross-Regulation Mapping: gleiche Pflicht aus DSGVO und BDSG wird verknuepft', 'Wachsender Wissensvorsprung gegenüber manueller Compliance-Beratung']
: ['New laws are automatically ingested and processed', 'Pipeline detects overlaps with existing controls', 'Cross-regulation mapping: same obligation from GDPR and BDSG is linked', 'Growing knowledge advantage over manual compliance consulting'], : ['New laws are automatically ingested and processed', 'Pipeline detects overlaps with existing controls', 'Cross-regulation mapping: same obligation from GDPR and BDSG is linked', 'Growing knowledge advantage over manual compliance consulting'],
}, },
{ {
@@ -178,7 +178,7 @@ export default function AIPipelineSlide({ lang }: AIPipelineSlideProps) {
color: 'text-purple-400', color: 'text-purple-400',
title: de ? 'CI/CD & Testing' : 'CI/CD & Testing', title: de ? 'CI/CD & Testing' : 'CI/CD & Testing',
items: de items: de
? ['Gitea Actions: Lint → Tests → Validierung bei jedem Push', 'Go-Tests (AI SDK) + Python-Tests (Backend + Pipeline)', 'Coolify Auto-Deploy mit Health-Check-Monitoring', 'arm64 → amd64 Cross-Build fuer Hetzner Production'] ? ['Gitea Actions: Lint → Tests → Validierung bei jedem Push', 'Go-Tests (AI SDK) + Python-Tests (Backend + Pipeline)', 'Coolify Auto-Deploy mit Health-Check-Monitoring', 'arm64 → amd64 Cross-Build für Hetzner Production']
: ['Gitea Actions: Lint → Tests → Validation on every push', 'Go tests (AI SDK) + Python tests (Backend + Pipeline)', 'Coolify auto-deploy with health check monitoring', 'arm64 → amd64 cross-build for Hetzner production'], : ['Gitea Actions: Lint → Tests → Validation on every push', 'Go tests (AI SDK) + Python tests (Backend + Pipeline)', 'Coolify auto-deploy with health check monitoring', 'arm64 → amd64 cross-build for Hetzner production'],
}, },
{ {
@@ -186,7 +186,7 @@ export default function AIPipelineSlide({ lang }: AIPipelineSlideProps) {
color: 'text-amber-400', color: 'text-amber-400',
title: de ? 'Infrastruktur' : 'Infrastructure', title: de ? 'Infrastruktur' : 'Infrastructure',
items: de items: de
? ['Qdrant Vektordatenbank fuer semantische Suche', 'BGE-M3 Multilingual Embedding (lokal gehostet)', 'MinIO Object Storage (S3-kompatibel, TLS-verschluesselt)', '100% EU-Cloud · Keine US-Provider · BSI-konforme Hosting-Partner'] ? ['Qdrant Vektordatenbank für semantische Suche', 'BGE-M3 Multilingual Embedding (lokal gehostet)', 'MinIO Object Storage (S3-kompatibel, TLS-verschlüsselt)', '100% EU-Cloud · Keine US-Provider · BSI-konforme Hosting-Partner']
: ['Qdrant vector database for semantic search', 'BGE-M3 multilingual embedding (locally hosted)', 'MinIO object storage (S3-compatible, TLS-encrypted)', '100% EU cloud · No US providers · BSI-compliant hosting partners'], : ['Qdrant vector database for semantic search', 'BGE-M3 multilingual embedding (locally hosted)', 'MinIO object storage (S3-compatible, TLS-encrypted)', '100% EU cloud · No US providers · BSI-compliant hosting partners'],
}, },
] ]
@@ -335,7 +335,7 @@ export default function AIPipelineSlide({ lang }: AIPipelineSlideProps) {
<div className="mt-3 pt-3 border-t border-white/5"> <div className="mt-3 pt-3 border-t border-white/5">
<p className="text-[10px] text-white/20"> <p className="text-[10px] text-white/20">
{de {de
? 'Wahrheit = Regeln + Evidenz · LLM = Uebersetzer + Subsumtions-Helfer · 100% EU-Cloud' ? 'Wahrheit = Regeln + Evidenz · LLM = Übersetzer + Subsumtions-Helfer · 100% EU-Cloud'
: 'Truth = Rules + Evidence · LLM = Translator + Subsumption Helper · 100% EU Cloud'} : 'Truth = Rules + Evidence · LLM = Translator + Subsumption Helper · 100% EU Cloud'}
</p> </p>
</div> </div>

View File

@@ -55,7 +55,7 @@ export default function ArchitectureSlide({ lang }: ArchitectureSlideProps) {
bg: 'bg-blue-500/10 border-blue-500/20', bg: 'bg-blue-500/10 border-blue-500/20',
title: de ? 'Plattform-Services' : 'Platform Services', title: de ? 'Plattform-Services' : 'Platform Services',
items: [ items: [
{ label: de ? 'Admin-Dashboard' : 'Admin Dashboard', desc: 'Next.js · ' + (de ? 'Mandantenfaehig · Rollenbasiert' : 'Multi-Tenant · Role-Based') }, { label: de ? 'Admin-Dashboard' : 'Admin Dashboard', desc: 'Next.js · ' + (de ? 'Mandantenfähig · Rollenbasiert' : 'Multi-Tenant · Role-Based') },
{ label: 'SDK API', desc: 'Go/Gin · REST · ' + (de ? 'Tenant-isoliert' : 'Tenant-Isolated') }, { label: 'SDK API', desc: 'Go/Gin · REST · ' + (de ? 'Tenant-isoliert' : 'Tenant-Isolated') },
{ label: 'DevSecOps Suite', desc: 'Semgrep · Trivy · Gitleaks · CycloneDX SBOM' }, { label: 'DevSecOps Suite', desc: 'Semgrep · Trivy · Gitleaks · CycloneDX SBOM' },
], ],
@@ -66,7 +66,7 @@ export default function ArchitectureSlide({ lang }: ArchitectureSlideProps) {
{ icon: Lock, label: de ? 'Zero-Trust Architektur' : 'Zero-Trust Architecture' }, { icon: Lock, label: de ? 'Zero-Trust Architektur' : 'Zero-Trust Architecture' },
{ icon: Database, label: de ? 'Daten verlassen nie BSI-zertifizierte Server in DE' : 'Data Never Leaves BSI-Certified Servers in DE' }, { icon: Database, label: de ? 'Daten verlassen nie BSI-zertifizierte Server in DE' : 'Data Never Leaves BSI-Certified Servers in DE' },
{ icon: Globe, label: de ? '100% EU-Cloud · Keine US-Anbieter' : '100% EU Cloud · No US Providers' }, { icon: Globe, label: de ? '100% EU-Cloud · Keine US-Anbieter' : '100% EU Cloud · No US Providers' },
{ icon: Workflow, label: de ? 'Air-Gap faehig' : 'Air-Gap Capable' }, { icon: Workflow, label: de ? 'Air-Gap fähig' : 'Air-Gap Capable' },
] ]
return ( return (

View File

@@ -5,8 +5,7 @@ import { t } from '@/lib/i18n'
import GradientText from '../ui/GradientText' import GradientText from '../ui/GradientText'
import FadeInView from '../ui/FadeInView' import FadeInView from '../ui/FadeInView'
import GlassCard from '../ui/GlassCard' import GlassCard from '../ui/GlassCard'
import AnimatedCounter from '../ui/AnimatedCounter' import { ArrowRight, TrendingUp, Target, Repeat, DollarSign, Users, BarChart3 } from 'lucide-react'
import { Repeat, TrendingUp, PiggyBank, ShieldCheck, Clock, Users } from 'lucide-react'
interface BusinessModelSlideProps { interface BusinessModelSlideProps {
lang: Language lang: Language
@@ -17,89 +16,148 @@ export default function BusinessModelSlide({ lang }: BusinessModelSlideProps) {
const i = t(lang) const i = t(lang)
const de = lang === 'de' const de = lang === 'de'
const tiers = [
{
name: 'Starter',
target: de ? 'Startups & Kleinstunternehmen' : 'Startups & Micro',
employees: '< 10',
price: de ? '3.600' : '3,600',
period: de ? 'EUR/Jahr' : 'EUR/yr',
features: de
? ['Code Security (SAST/DAST)', 'Compliance-Dokumente', 'Consent Management', '1 Anwendung']
: ['Code Security (SAST/DAST)', 'Compliance documents', 'Consent management', '1 application'],
highlight: false,
},
{
name: 'Professional',
target: de ? 'KMU & Mittelstand' : 'SME & Mid-Market',
employees: '10 250',
price: de ? '15.000 40.000' : '15,000 40,000',
period: de ? 'EUR/Jahr' : 'EUR/yr',
features: de
? ['Alle Module inkl. CE-Bewertung', 'Audit Manager End-to-End', 'AI Act Compliance (UCCA)', 'Unbegrenzte Anwendungen']
: ['All modules incl. CE assessment', 'Audit Manager end-to-end', 'AI Act Compliance (UCCA)', 'Unlimited applications'],
highlight: true,
},
{
name: 'Enterprise',
target: de ? 'Konzerne & OEMs' : 'Enterprises & OEMs',
employees: '250+',
price: de ? 'ab 50.000' : 'from 50,000',
period: de ? 'EUR/Jahr' : 'EUR/yr',
features: de
? ['Dedizierte Instanz', 'Custom Integrationen (SAP, MES)', 'SLA & Priority Support', 'Tender Matching & RFQ-Prüfung']
: ['Dedicated instance', 'Custom integrations (SAP, MES)', 'SLA & priority support', 'Tender matching & RFQ verification'],
highlight: false,
},
]
const metrics = [
{ icon: DollarSign, color: 'text-indigo-400', label: 'ACV', value: de ? '15 50k EUR' : '15 50k EUR', sub: de ? 'Durchschnittlicher Vertragswert' : 'Average Contract Value' },
{ icon: TrendingUp, color: 'text-emerald-400', label: 'Gross Margin', value: '> 80%', sub: de ? 'Cloud-native, keine Hardware-Kosten' : 'Cloud-native, no hardware costs' },
{ icon: Repeat, color: 'text-purple-400', label: 'NRR Ziel', value: '> 120%', sub: de ? 'Upsell: mehr Module, mehr Nutzer' : 'Upsell: more modules, more users' },
{ icon: Target, color: 'text-amber-400', label: 'Payback', value: de ? '< 3 Monate' : '< 3 Months', sub: de ? 'Ersparnis übersteigt Kosten ab Q1' : 'Savings exceed costs from Q1' },
]
return ( return (
<div> <div className="max-w-6xl mx-auto">
<FadeInView className="text-center mb-10"> <FadeInView className="text-center mb-6">
<h2 className="text-4xl md:text-5xl font-bold mb-3"> <h2 className="text-4xl md:text-5xl font-bold mb-3">
<GradientText>{i.businessModel.title}</GradientText> <GradientText>{i.businessModel.title}</GradientText>
</h2> </h2>
<p className="text-lg text-white/50 max-w-2xl mx-auto">{i.businessModel.subtitle}</p> <p className="text-lg text-white/50 max-w-2xl mx-auto">
{de ? 'Mitarbeiterbasiertes SaaS — Kunden sparen mehr als sie zahlen' : 'Employee-based SaaS — customers save more than they pay'}
</p>
</FadeInView> </FadeInView>
{/* Key Metrics */} <div className="grid md:grid-cols-12 gap-4">
<div className="grid md:grid-cols-3 gap-4 mb-8"> {/* Left: Pricing Tiers */}
<GlassCard delay={0.2} className="text-center"> <div className="md:col-span-7">
<Repeat className="w-6 h-6 text-indigo-400 mx-auto mb-2" /> <div className="grid grid-cols-3 gap-3">
<p className="text-sm text-white/50 mb-1">{i.businessModel.recurringRevenue}</p> {tiers.map((tier, idx) => (
<p className="text-2xl font-bold text-white">100% SaaS</p> <FadeInView key={idx} delay={0.1 + idx * 0.1}>
<p className="text-xs text-white/30">{de ? 'Mitarbeiterbasiertes Pricing' : 'Employee-based pricing'}</p> <GlassCard hover={false} className={`p-4 h-full ${tier.highlight ? 'border-indigo-500/30 bg-indigo-500/5' : ''}`}>
</GlassCard> {tier.highlight && (
<GlassCard delay={0.3} className="text-center"> <div className="text-[9px] font-bold text-indigo-400 uppercase tracking-wider mb-2">
<TrendingUp className="w-6 h-6 text-green-400 mx-auto mb-2" /> {de ? 'Kernmarkt' : 'Core Market'}
<p className="text-sm text-white/50 mb-1">{i.businessModel.margin}</p>
<p className="text-2xl font-bold text-white">&gt;80%</p>
<p className="text-xs text-white/30">{de ? 'Cloud-native, keine HW-Kosten' : 'Cloud-native, no HW costs'}</p>
</GlassCard>
<GlassCard delay={0.4} className="text-center">
<PiggyBank className="w-6 h-6 text-amber-400 mx-auto mb-2" />
<p className="text-sm text-white/50 mb-1">{de ? 'Kundenersparnis' : 'Customer Savings'}</p>
<p className="text-2xl font-bold text-white">50.000+ EUR</p>
<p className="text-xs text-white/30">{de ? 'pro Kunde pro Jahr' : 'per customer per year'}</p>
</GlassCard>
</div>
{/* Savings Breakdown — the core argument */}
<FadeInView delay={0.5}>
<GlassCard hover={false} className="p-6">
<h3 className="text-lg font-semibold mb-5 text-white/70 text-center">
{de ? 'ROI-Rechnung: Kunde mit 250+ Mitarbeitern' : 'ROI Calculation: Customer with 250+ employees'}
</h3>
<div className="grid md:grid-cols-2 gap-8">
{/* Customer pays */}
<div>
<h4 className="text-xs font-bold text-indigo-400 uppercase tracking-wider mb-3">
{i.businessModel.customerPays}
</h4>
<div className="bg-indigo-500/10 border border-indigo-500/20 rounded-xl p-4">
<p className="text-3xl font-bold text-white text-center mb-1">
<AnimatedCounter target={40} suffix="-50k" duration={1500} /> EUR
</p>
<p className="text-xs text-white/40 text-center">{de ? 'pro Jahr, modular waehlbar' : 'per year, modular choice'}</p>
</div>
</div>
{/* Customer saves */}
<div>
<h4 className="text-xs font-bold text-emerald-400 uppercase tracking-wider mb-3">
{i.businessModel.customerSaves}
</h4>
<div className="space-y-2">
{[
{ label: i.businessModel.savingsPentest, amount: '30.000', icon: ShieldCheck },
{ label: i.businessModel.savingsCE, amount: '20.000', icon: Clock },
{ label: i.businessModel.savingsAudit, amount: '60.000+', icon: Users },
].map((item, idx) => (
<div key={idx} className="flex items-center justify-between bg-emerald-500/10 rounded-lg px-3 py-2">
<div className="flex items-center gap-2">
<item.icon className="w-3.5 h-3.5 text-emerald-400" />
<span className="text-xs text-white/70">{item.label}</span>
</div> </div>
<span className="text-xs font-bold text-emerald-300">{item.amount} EUR</span> )}
<h3 className="text-base font-bold text-white mb-0.5">{tier.name}</h3>
<p className="text-[10px] text-white/40 mb-2">{tier.target}</p>
<p className="text-[10px] text-white/30 mb-3">{tier.employees} {de ? 'Mitarbeiter' : 'employees'}</p>
<div className="mb-3">
<span className="text-xl font-black text-white">{tier.price}</span>
<span className="text-[10px] text-white/40 ml-1">{tier.period}</span>
</div> </div>
))}
<div className="flex items-center justify-between bg-emerald-500/20 border border-emerald-500/30 rounded-lg px-3 py-2"> <ul className="space-y-1.5">
<span className="text-xs font-bold text-white">{i.businessModel.savingsTotal}</span> {tier.features.map((f, i) => (
<span className="text-sm font-bold text-emerald-300">50.000 - 110.000+ EUR</span> <li key={i} className="flex items-start gap-1.5 text-[11px] text-white/50">
</div> <span className="w-1 h-1 rounded-full bg-indigo-400 mt-1.5 shrink-0" />
</div> {f}
</div> </li>
))}
</ul>
</GlassCard>
</FadeInView>
))}
</div> </div>
<p className="text-center text-xs text-white/30 mt-4">
{de {/* Expansion arrow */}
? '+ Strafvermeidung, Echtzeit-Kundenanfragen, kein Auditmanager noetig' <FadeInView delay={0.4} className="flex items-center justify-center gap-2 mt-3">
: '+ penalty avoidance, real-time customer inquiries, no audit manager needed'} <span className="text-[10px] text-white/30">Starter</span>
</p> <ArrowRight className="w-3 h-3 text-indigo-400/40" />
</GlassCard> <span className="text-[10px] text-white/30">Professional</span>
</FadeInView> <ArrowRight className="w-3 h-3 text-indigo-400/40" />
<span className="text-[10px] text-white/30">Enterprise</span>
<span className="text-[10px] text-white/20 ml-2">{de ? 'Land & Expand' : 'Land & Expand'}</span>
</FadeInView>
</div>
{/* Right: Unit Economics */}
<div className="md:col-span-5">
<FadeInView delay={0.3}>
<GlassCard hover={false} className="p-4 h-full">
<h3 className="text-xs font-bold text-white/40 uppercase tracking-wider mb-4">
Unit Economics
</h3>
<div className="space-y-4">
{metrics.map((m, idx) => {
const Icon = m.icon
return (
<div key={idx} className="flex items-start gap-3">
<div className={`w-8 h-8 rounded-lg bg-white/[0.05] border border-white/10 flex items-center justify-center shrink-0`}>
<Icon className={`w-4 h-4 ${m.color}`} />
</div>
<div className="flex-1">
<div className="flex items-baseline justify-between">
<span className="text-[10px] text-white/40 uppercase tracking-wider">{m.label}</span>
<span className={`text-lg font-black ${m.color}`}>{m.value}</span>
</div>
<p className="text-[10px] text-white/30">{m.sub}</p>
</div>
</div>
)
})}
</div>
{/* Bottom-up sizing */}
<div className="mt-4 pt-3 border-t border-white/5">
<div className="flex items-center gap-1.5 mb-1">
<BarChart3 className="w-3 h-3 text-white/30" />
<span className="text-[10px] text-white/30 uppercase tracking-wider">Bottom-Up</span>
</div>
<p className="text-xs text-white/50">
{de
? '1.200 Kunden × 8.400 EUR ACV = ~10 Mio. EUR ARR (2030)'
: '1,200 customers × EUR 8,400 ACV = ~EUR 10M ARR (2030)'}
</p>
</div>
</GlassCard>
</FadeInView>
</div>
</div>
</div> </div>
) )
} }

View File

@@ -54,7 +54,7 @@ const EXTENDED_COMPETITORS: ExtendedCompetitor[] = [
revenue: '$220M ARR', revenue: '$220M ARR',
revenueNum: 220_000_000, revenueNum: 220_000_000,
customers: 12000, customers: 12000,
customerCountries: '58 Laender', customerCountries: '58 Länder',
fundingTotal: '$504M', fundingTotal: '$504M',
fundingRound: 'Series D ($150M, $4.15B val.)', fundingRound: 'Series D ($150M, $4.15B val.)',
investors: ['Sequoia Capital', 'Wellington Mgmt', 'Craft Ventures', 'CrowdStrike', 'Goldman Sachs', 'Y Combinator'], investors: ['Sequoia Capital', 'Wellington Mgmt', 'Craft Ventures', 'CrowdStrike', 'Goldman Sachs', 'Y Combinator'],
@@ -75,7 +75,7 @@ const EXTENDED_COMPETITORS: ExtendedCompetitor[] = [
revenue: '$100M ARR', revenue: '$100M ARR',
revenueNum: 100_000_000, revenueNum: 100_000_000,
customers: 8000, customers: 8000,
customerCountries: '80+ Laender', customerCountries: '80+ Länder',
fundingTotal: '$328M', fundingTotal: '$328M',
fundingRound: 'Series C ($200M, $2B val.)', fundingRound: 'Series C ($200M, $2B val.)',
investors: ['ICONIQ Growth', 'GGV Capital', 'Salesforce Ventures', 'SentinelOne'], investors: ['ICONIQ Growth', 'GGV Capital', 'Salesforce Ventures', 'SentinelOne'],
@@ -96,7 +96,7 @@ const EXTENDED_COMPETITORS: ExtendedCompetitor[] = [
revenue: '$38M ARR', revenue: '$38M ARR',
revenueNum: 38_000_000, revenueNum: 38_000_000,
customers: 3000, customers: 3000,
customerCountries: '75+ Laender', customerCountries: '75+ Länder',
fundingTotal: '$32M', fundingTotal: '$32M',
fundingRound: 'Series B ($20M, 2024)', fundingRound: 'Series B ($20M, 2024)',
investors: ['Accel', 'Elevation Capital', 'Blume Ventures'], investors: ['Accel', 'Elevation Capital', 'Blume Ventures'],
@@ -138,7 +138,7 @@ const EXTENDED_COMPETITORS: ExtendedCompetitor[] = [
revenue: '~€52M', revenue: '~€52M',
revenueNum: 52_000_000, revenueNum: 52_000_000,
customers: 4000, customers: 4000,
customerCountries: '50+ Laender', customerCountries: '50+ Länder',
fundingTotal: '€80M', fundingTotal: '€80M',
fundingRound: 'Series B (€61M, €341M val.)', fundingRound: 'Series B (€61M, €341M val.)',
investors: ['Morgan Stanley Expansion', 'One Peak Partners'], investors: ['Morgan Stanley Expansion', 'One Peak Partners'],
@@ -237,7 +237,7 @@ const ALL_FEATURES: ComparisonFeature[] = [
{ de: 'Integrations (Slack, Jira, etc.)', en: 'Integrations (Slack, Jira, etc.)', bp: 'partial', vanta: true, drata: true, sprinto: true, proliance: false, dataguard: 'partial', heydata: false, isDiff: false, isUSP: false }, { de: 'Integrations (Slack, Jira, etc.)', en: 'Integrations (Slack, Jira, etc.)', bp: 'partial', vanta: true, drata: true, sprinto: true, proliance: false, dataguard: 'partial', heydata: false, isDiff: false, isUSP: false },
{ de: 'API / SDK', en: 'API / SDK', bp: true, vanta: true, drata: true, sprinto: 'partial', proliance: false, dataguard: 'partial', heydata: false, isDiff: false, isUSP: false }, { de: 'API / SDK', en: 'API / SDK', bp: true, vanta: true, drata: true, sprinto: 'partial', proliance: false, dataguard: 'partial', heydata: false, isDiff: false, isUSP: false },
{ de: 'Datensouveraenitaet (EU)', en: 'Data Sovereignty (EU)', bp: true, vanta: false, drata: false, sprinto: false, proliance: true, dataguard: true, heydata: true, isDiff: false, isUSP: false }, { de: 'Datensouveraenitaet (EU)', en: 'Data Sovereignty (EU)', bp: true, vanta: false, drata: false, sprinto: false, proliance: true, dataguard: true, heydata: true, isDiff: false, isUSP: false },
{ de: 'Mehrmandantenfaehig', en: 'Multi-Tenancy', bp: true, vanta: true, drata: true, sprinto: true, proliance: 'partial', dataguard: true, heydata: false, isDiff: false, isUSP: false }, { de: 'Mehrmandantenfähig', en: 'Multi-Tenancy', bp: true, vanta: true, drata: true, sprinto: true, proliance: 'partial', dataguard: true, heydata: false, isDiff: false, isUSP: false },
{ de: 'Data Mapping / Datenfluss', en: 'Data Mapping / Data Flow', bp: true, vanta: 'partial', drata: 'partial', sprinto: false, proliance: false, dataguard: 'partial', heydata: false, isDiff: false, isUSP: false }, { de: 'Data Mapping / Datenfluss', en: 'Data Mapping / Data Flow', bp: true, vanta: 'partial', drata: 'partial', sprinto: false, proliance: false, dataguard: 'partial', heydata: false, isDiff: false, isUSP: false },
{ de: 'Cookie-Banner Generator', en: 'Cookie Banner Generator', bp: true, vanta: false, drata: false, sprinto: false, proliance: 'partial', dataguard: false, heydata: 'partial', isDiff: false, isUSP: false }, { de: 'Cookie-Banner Generator', en: 'Cookie Banner Generator', bp: true, vanta: false, drata: false, sprinto: false, proliance: 'partial', dataguard: false, heydata: 'partial', isDiff: false, isUSP: false },
{ de: 'Dokument-Generator (61 Vorlagen)', en: 'Document Generator (61 Templates)', bp: true, vanta: 'partial', drata: 'partial', sprinto: false, proliance: 'partial', dataguard: 'partial', heydata: false, isDiff: false, isUSP: false }, { de: 'Dokument-Generator (61 Vorlagen)', en: 'Document Generator (61 Templates)', bp: true, vanta: 'partial', drata: 'partial', sprinto: false, proliance: 'partial', dataguard: 'partial', heydata: false, isDiff: false, isUSP: false },
@@ -526,7 +526,7 @@ export default function CompetitionSlide({ lang, features, competitors }: Compet
{/* Tab Bar */} {/* Tab Bar */}
<FadeInView delay={0.15} className="flex justify-center gap-2 mb-4 flex-wrap"> <FadeInView delay={0.15} className="flex justify-center gap-2 mb-4 flex-wrap">
{([ {([
{ key: 'overview' as ViewTab, de: 'Ueberblick & Vergleich', en: 'Overview & Comparison' }, { key: 'overview' as ViewTab, de: 'Überblick & Vergleich', en: 'Overview & Comparison' },
{ key: 'features' as ViewTab, de: 'Feature-Matrix (Detail)', en: 'Feature Matrix (Detail)' }, { key: 'features' as ViewTab, de: 'Feature-Matrix (Detail)', en: 'Feature Matrix (Detail)' },
{ key: 'pricing' as ViewTab, de: 'Pricing-Vergleich', en: 'Pricing Comparison' }, { key: 'pricing' as ViewTab, de: 'Pricing-Vergleich', en: 'Pricing Comparison' },
{ key: 'appsec' as ViewTab, de: 'Pentesting & AppSec', en: 'Pentesting & AppSec' }, { key: 'appsec' as ViewTab, de: 'Pentesting & AppSec', en: 'Pentesting & AppSec' },
@@ -705,7 +705,7 @@ export default function CompetitionSlide({ lang, features, competitors }: Compet
<th className="py-2 px-1.5 text-white/40 font-medium text-center">Mid</th> <th className="py-2 px-1.5 text-white/40 font-medium text-center">Mid</th>
<th className="py-2 px-1.5 text-white/40 font-medium text-center">Enterprise</th> <th className="py-2 px-1.5 text-white/40 font-medium text-center">Enterprise</th>
<th className="py-2 px-1.5 text-white/40 font-medium text-center">Setup</th> <th className="py-2 px-1.5 text-white/40 font-medium text-center">Setup</th>
<th className="py-2 px-1.5 text-white/40 font-medium text-center">{lang === 'de' ? 'Oeffentlich' : 'Public'}</th> <th className="py-2 px-1.5 text-white/40 font-medium text-center">{lang === 'de' ? 'Öffentlich' : 'Public'}</th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
@@ -776,7 +776,7 @@ export default function CompetitionSlide({ lang, features, competitors }: Compet
<p className="text-[10px] text-white/25 text-center mt-3 italic"> <p className="text-[10px] text-white/25 text-center mt-3 italic">
{lang === 'de' {lang === 'de'
? '~ = geschaetzte Preise (nicht oeffentlich). Alle Preise ohne MwSt. Stand: Q1 2026.' ? '~ = geschätzte Preise (nicht öffentlich). Alle Preise ohne MwSt. Stand: Q1 2026.'
: '~ = estimated pricing (not public). All prices excl. VAT. As of Q1 2026.'} : '~ = estimated pricing (not public). All prices excl. VAT. As of Q1 2026.'}
</p> </p>
</FadeInView> </FadeInView>

View File

@@ -610,7 +610,7 @@ export default function ExecutiveSummarySlide({ lang, data }: ExecutiveSummarySl
<h4 className="text-[10px] font-bold text-white/30 uppercase tracking-wider mb-1">{de ? 'Hinweis / Haftungsausschluss' : 'Disclaimer'}</h4> <h4 className="text-[10px] font-bold text-white/30 uppercase tracking-wider mb-1">{de ? 'Hinweis / Haftungsausschluss' : 'Disclaimer'}</h4>
<p className="text-[9px] text-white/20 leading-relaxed"> <p className="text-[9px] text-white/20 leading-relaxed">
{de {de
? 'Dieses Dokument dient ausschliesslich Informationszwecken und stellt weder ein Angebot zum Verkauf noch eine Aufforderung zum Kauf von Anteilen oder Wertpapieren dar. Die enthaltenen Informationen wurden vom Team Breakpilot (Gruenderteam, noch keine Gesellschaft gegruendet) nach bestem Wissen und Gewissen erstellt, koennen jedoch unvollstaendig sein und jederzeit ohne vorherige Ankuendigung geaendert werden. Es wird keine ausdrueckliche oder konkludente Gewaehr fuer die Richtigkeit, Vollstaendigkeit oder Aktualitaet der Inhalte uebernommen. Dieses Dokument enthaelt zukunftsgerichtete Aussagen, die auf aktuellen Annahmen und Erwartungen beruhen und mit erheblichen Risiken und Unsicherheiten verbunden sind. Die tatsaechlichen Ergebnisse koennen wesentlich von den dargestellten abweichen. Eine Investitionsentscheidung sollte ausschliesslich auf Grundlage weitergehender, rechtlich verbindlicher Unterlagen sowie unter Hinzuziehung eigener rechtlicher, steuerlicher und finanzieller Beratung getroffen werden. Soweit gesetzlich zulaessig, wird jede Haftung des Team Breakpilot sowie seiner Mitglieder fuer etwaige Schaeden, die direkt oder indirekt aus der Nutzung dieses Dokuments entstehen, ausgeschlossen. Dieses Dokument ist vertraulich und ausschliesslich fuer den vorgesehenen Empfaenger bestimmt. Eine Weitergabe, Vervielfaeltigung oder Veroeffentlichung ist ohne vorherige schriftliche Zustimmung nicht gestattet.' ? 'Dieses Dokument dient ausschließlich Informationszwecken und stellt weder ein Angebot zum Verkauf noch eine Aufforderung zum Kauf von Anteilen oder Wertpapieren dar. Die enthaltenen Informationen wurden vom Team Breakpilot (Gründerteam, noch keine Gesellschaft gegründet) nach bestem Wissen und Gewissen erstellt, können jedoch unvollständig sein und jederzeit ohne vorherige Ankündigung geändert werden. Es wird keine ausdrückliche oder konkludente Gewähr für die Richtigkeit, Vollständigkeit oder Aktualität der Inhalte übernommen. Dieses Dokument enthält zukunftsgerichtete Aussagen, die auf aktuellen Annahmen und Erwartungen beruhen und mit erheblichen Risiken und Unsicherheiten verbunden sind. Die tatsächlichen Ergebnisse können wesentlich von den dargestellten abweichen. Eine Investitionsentscheidung sollte ausschließlich auf Grundlage weitergehender, rechtlich verbindlicher Unterlagen sowie unter Hinzuziehung eigener rechtlicher, steuerlicher und finanzieller Beratung getroffen werden. Soweit gesetzlich zulässig, wird jede Haftung des Team Breakpilot sowie seiner Mitglieder für etwaige Schäden, die direkt oder indirekt aus der Nutzung dieses Dokuments entstehen, ausgeschlossen. Dieses Dokument ist vertraulich und ausschließlich für den vorgesehenen Empfaenger bestimmt. Eine Weitergabe, Vervielfältigung oder Veröffentlichung ist ohne vorherige schriftliche Zustimmung nicht gestattet.'
: 'This document is for informational purposes only and does not constitute an offer to sell or a solicitation to purchase shares or securities. The information contained herein was prepared by Team Breakpilot (founding team, no company incorporated yet) to the best of their knowledge, but may be incomplete and subject to change without prior notice. No express or implied warranty is given for the accuracy, completeness or timeliness of the content. This document contains forward-looking statements based on current assumptions and expectations that involve significant risks and uncertainties. Actual results may differ materially. Any investment decision should be based solely on further legally binding documents and with the advice of independent legal, tax and financial counsel. To the extent permitted by law, all liability of Team Breakpilot and its members for any damages arising directly or indirectly from the use of this document is excluded. This document is confidential and intended solely for the designated recipient. Distribution, reproduction or publication without prior written consent is prohibited.' : 'This document is for informational purposes only and does not constitute an offer to sell or a solicitation to purchase shares or securities. The information contained herein was prepared by Team Breakpilot (founding team, no company incorporated yet) to the best of their knowledge, but may be incomplete and subject to change without prior notice. No express or implied warranty is given for the accuracy, completeness or timeliness of the content. This document contains forward-looking statements based on current assumptions and expectations that involve significant risks and uncertainties. Actual results may differ materially. Any investment decision should be based solely on further legally binding documents and with the advice of independent legal, tax and financial counsel. To the extent permitted by law, all liability of Team Breakpilot and its members for any damages arising directly or indirectly from the use of this document is excluded. This document is confidential and intended solely for the designated recipient. Distribution, reproduction or publication without prior written consent is prohibited.'
} }
</p> </p>

View File

@@ -47,7 +47,7 @@ export default function FinancialsSlide({ lang, investorId }: FinancialsSlidePro
const initialFunding = (fm.activeScenario?.assumptions.find(a => a.key === 'initial_funding')?.value as number) || 200000 const initialFunding = (fm.activeScenario?.assumptions.find(a => a.key === 'initial_funding')?.value as number) || 200000
const tabs: { id: FinTab; label: string }[] = [ const tabs: { id: FinTab; label: string }[] = [
{ id: 'overview', label: de ? 'Uebersicht' : 'Overview' }, { id: 'overview', label: de ? 'Übersicht' : 'Overview' },
{ id: 'guv', label: de ? 'GuV (Jahres)' : 'P&L (Annual)' }, { id: 'guv', label: de ? 'GuV (Jahres)' : 'P&L (Annual)' },
{ id: 'cashflow', label: de ? 'Cashflow & Finanzbedarf' : 'Cashflow & Funding' }, { id: 'cashflow', label: de ? 'Cashflow & Finanzbedarf' : 'Cashflow & Funding' },
] ]

View File

@@ -369,7 +369,7 @@ export default function FinanzplanSlide({ lang }: FinanzplanSlideProps) {
{rows.map(row => { {rows.map(row => {
const values = getValues(row) const values = getValues(row)
const label = getLabel(row) const label = getLabel(row)
const isSumRow = row.is_sum_row || label.includes('EBIT') || label.includes('Summe') || label.includes('Rohergebnis') || label.includes('Gesamtleistung') || label.includes('Jahresueberschuss') || label.includes('Ergebnis') const isSumRow = row.is_sum_row || label.includes('EBIT') || label.includes('Summe') || label.includes('Rohergebnis') || label.includes('Gesamtleistung') || label.includes('Jahresüberschuss') || label.includes('Ergebnis')
return ( return (
<tr key={row.id} className={`border-b border-white/[0.03] ${isSumRow ? 'bg-white/[0.03]' : ''} hover:bg-white/[0.02]`}> <tr key={row.id} className={`border-b border-white/[0.03] ${isSumRow ? 'bg-white/[0.03]' : ''} hover:bg-white/[0.02]`}>

View File

@@ -32,7 +32,7 @@ export default function GTMSlide({ lang }: GTMSlideProps) {
color: 'border-purple-500/30 bg-purple-500/5', color: 'border-purple-500/30 bg-purple-500/5',
textColor: 'text-purple-400', textColor: 'text-purple-400',
items: [ items: [
de ? 'Channel-Partnerschaften mit IT-Systemhaeusern' : 'Channel partnerships with IT system integrators', de ? 'Channel-Partnerschaften mit IT-Systemhäusern' : 'Channel partnerships with IT system integrators',
de ? 'IHK- und Handwerkskammer-Kooperationen' : 'Chamber of Commerce & Industry partnerships', de ? 'IHK- und Handwerkskammer-Kooperationen' : 'Chamber of Commerce & Industry partnerships',
de ? 'Content Marketing: Compliance-Webinare, Whitepaper' : 'Content marketing: Compliance webinars, whitepapers', de ? 'Content Marketing: Compliance-Webinare, Whitepaper' : 'Content marketing: Compliance webinars, whitepapers',
de ? 'Zielkunden: 50-200 in regulierten Branchen' : 'Target: 50-200 customers in regulated industries', de ? 'Zielkunden: 50-200 in regulierten Branchen' : 'Target: 50-200 customers in regulated industries',
@@ -43,9 +43,9 @@ export default function GTMSlide({ lang }: GTMSlideProps) {
color: 'border-emerald-500/30 bg-emerald-500/5', color: 'border-emerald-500/30 bg-emerald-500/5',
textColor: 'text-emerald-400', textColor: 'text-emerald-400',
items: [ items: [
de ? 'Cloud-Tier fuer groessere Unternehmen (50-500 MA)' : 'Cloud tier for larger companies (50-500 employees)', de ? 'Cloud-Tier für größere Unternehmen (50-500 MA)' : 'Cloud tier for larger companies (50-500 employees)',
de ? 'EU-Expansion: Oesterreich, Schweiz, Benelux, Nordics' : 'EU expansion: Austria, Switzerland, Benelux, Nordics', de ? 'EU-Expansion: Österreich, Schweiz, Benelux, Nordics' : 'EU expansion: Austria, Switzerland, Benelux, Nordics',
de ? 'OEM/Whitelabel fuer Steuerberater und Wirtschaftspruefer' : 'OEM/whitelabel for tax advisors and auditors', de ? 'OEM/Whitelabel für Steuerberater und Wirtschaftsprüfer' : 'OEM/whitelabel for tax advisors and auditors',
de ? 'Self-Service-Onboarding und PLG-Motion' : 'Self-service onboarding and PLG motion', de ? 'Self-Service-Onboarding und PLG-Motion' : 'Self-service onboarding and PLG motion',
], ],
}, },
@@ -53,7 +53,7 @@ export default function GTMSlide({ lang }: GTMSlideProps) {
const channels = [ const channels = [
{ icon: Target, label: de ? 'Direktvertrieb' : 'Direct Sales', pct: '40%', desc: de ? 'Outbound + Inbound, 2 AEs ab 2027' : 'Outbound + Inbound, 2 AEs from 2027' }, { icon: Target, label: de ? 'Direktvertrieb' : 'Direct Sales', pct: '40%', desc: de ? 'Outbound + Inbound, 2 AEs ab 2027' : 'Outbound + Inbound, 2 AEs from 2027' },
{ icon: Handshake, label: de ? 'Channel-Partner' : 'Channel Partners', pct: '30%', desc: de ? 'IT-Haendler, Systemhaeuser, MSPs' : 'IT resellers, system integrators, MSPs' }, { icon: Handshake, label: de ? 'Channel-Partner' : 'Channel Partners', pct: '30%', desc: de ? 'IT-Händler, Systemhäuser, MSPs' : 'IT resellers, system integrators, MSPs' },
{ icon: Megaphone, label: de ? 'Content & Events' : 'Content & Events', pct: '20%', desc: de ? 'Webinare, Messen (it-sa), SEO' : 'Webinars, trade shows (it-sa), SEO' }, { icon: Megaphone, label: de ? 'Content & Events' : 'Content & Events', pct: '20%', desc: de ? 'Webinare, Messen (it-sa), SEO' : 'Webinars, trade shows (it-sa), SEO' },
{ icon: Users, label: de ? 'Empfehlungen' : 'Referrals', pct: '10%', desc: de ? 'Bestandskunden-Empfehlungsprogramm' : 'Customer referral program' }, { icon: Users, label: de ? 'Empfehlungen' : 'Referrals', pct: '10%', desc: de ? 'Bestandskunden-Empfehlungsprogramm' : 'Customer referral program' },
] ]

View File

@@ -22,21 +22,21 @@ interface MarketSourceInfo {
excerpt_en: string excerpt_en: string
} }
// Quellenangaben fuer die Marktzahlen // Quellenangaben für die Marktzahlen
const marketSources: Record<string, MarketSourceInfo[]> = { const marketSources: Record<string, MarketSourceInfo[]> = {
TAM: [ TAM: [
{ {
name: 'Bottom-Up-Validierung: Echte Umsatzdaten der Top-10 Compliance-Anbieter', name: 'Bottom-Up-Validierung: Echte Umsatzdaten der Top-10 Compliance-Anbieter',
url: 'https://sacra.com/c/vanta/', url: 'https://sacra.com/c/vanta/',
date: '2025-2026', date: '2025-2026',
excerpt_de: 'Die Top-10 Compliance-Automation-Anbieter erzielen zusammen ~$1,13 Mrd. Umsatz (Vanta $220M, OneTrust $500M, Drata $100M, Usercentrics $117M, Securiti $76M, DataGuard €52M, Sprinto $38M, heyData €15M, Caralegal €5.8M, Proliance €3.9M). Mit 50+ weiteren Anbietern liegt der Gesamtmarkt bei ~$1,6-2 Mrd. — aktuell nur ~20% des adressierbaren Volumens (Gartner: 80% der Unternehmen managen Compliance noch manuell). Inkl. DevSecOps fuer Manufacturing (~$3,5 Mrd.) ergibt sich ein TAM von $8-12 Mrd.', excerpt_de: 'Die Top-10 Compliance-Automation-Anbieter erzielen zusammen ~$1,13 Mrd. Umsatz (Vanta $220M, OneTrust $500M, Drata $100M, Usercentrics $117M, Securiti $76M, DataGuard €52M, Sprinto $38M, heyData €15M, Caralegal €5.8M, Proliance €3.9M). Mit 50+ weiteren Anbietern liegt der Gesamtmarkt bei ~$1,6-2 Mrd. — aktuell nur ~20% des adressierbaren Volumens (Gartner: 80% der Unternehmen managen Compliance noch manuell). Inkl. DevSecOps für Manufacturing (~$3,5 Mrd.) ergibt sich ein TAM von $8-12 Mrd.',
excerpt_en: 'The top 10 compliance automation providers generate ~$1.13B combined revenue (Vanta $220M, OneTrust $500M, Drata $100M, Usercentrics $117M, Securiti $76M, DataGuard €52M, Sprinto $38M, heyData €15M, Caralegal €5.8M, Proliance €3.9M). With 50+ additional vendors, the total market is ~$1.6-2B — currently only ~20% of addressable volume (Gartner: 80% manage compliance manually). Incl. DevSecOps for manufacturing (~$3.5B), the TAM is $8-12B.', excerpt_en: 'The top 10 compliance automation providers generate ~$1.13B combined revenue (Vanta $220M, OneTrust $500M, Drata $100M, Usercentrics $117M, Securiti $76M, DataGuard €52M, Sprinto $38M, heyData €15M, Caralegal €5.8M, Proliance €3.9M). With 50+ additional vendors, the total market is ~$1.6-2B — currently only ~20% of addressable volume (Gartner: 80% manage compliance manually). Incl. DevSecOps for manufacturing (~$3.5B), the TAM is $8-12B.',
}, },
{ {
name: 'Grand View Research — GRC Market Report 2024', name: 'Grand View Research — GRC Market Report 2024',
url: 'https://www.grandviewresearch.com/industry-analysis/governance-risk-management-compliance-market', url: 'https://www.grandviewresearch.com/industry-analysis/governance-risk-management-compliance-market',
date: '2024', date: '2024',
excerpt_de: 'Der globale GRC-Software-Markt wurde 2023 auf 11,8 Mrd. USD bewertet, CAGR 13,8%. Die Compliance-Automation-Welle (Vanta, Drata) zeigt 30-45% Wachstum p.a. — deutlich ueber dem Branchendurchschnitt.', excerpt_de: 'Der globale GRC-Software-Markt wurde 2023 auf 11,8 Mrd. USD bewertet, CAGR 13,8%. Die Compliance-Automation-Welle (Vanta, Drata) zeigt 30-45% Wachstum p.a. — deutlich über dem Branchendurchschnitt.',
excerpt_en: 'The global GRC software market was valued at USD 11.8B in 2023, CAGR 13.8%. The compliance automation wave (Vanta, Drata) shows 30-45% p.a. growth — well above industry average.', excerpt_en: 'The global GRC software market was valued at USD 11.8B in 2023, CAGR 13.8%. The compliance automation wave (Vanta, Drata) shows 30-45% p.a. growth — well above industry average.',
}, },
], ],
@@ -45,7 +45,7 @@ const marketSources: Record<string, MarketSourceInfo[]> = {
name: 'Bottom-Up: DACH Compliance-Anbieter + NIS2/CRA/AI-Act Expansion', name: 'Bottom-Up: DACH Compliance-Anbieter + NIS2/CRA/AI-Act Expansion',
url: 'https://www.vdma.org/statistics', url: 'https://www.vdma.org/statistics',
date: '2025-2026', date: '2025-2026',
excerpt_de: 'DACH-Compliance-Umsaetze heute: DataGuard €52M + heyData €15M + Proliance €3.9M + Caralegal €5.8M + OneTrust DACH ~€30M + Secjur/andere ~€10M = ~€120M (nur DSGVO-Compliance). NIS2 erweitert die Regulierung auf 30.000+ Unternehmen (bisher 4.500). CRA und AI Act schaffen voellig neue Pflichten fuer Maschinenbauer. DACH-DevSecOps-Markt: +€300-400M. Gesamtes SAM fuer Compliance + Code-Security in DACH Manufacturing: €850M-1,2 Mrd.', excerpt_de: 'DACH-Compliance-Umsaetze heute: DataGuard €52M + heyData €15M + Proliance €3.9M + Caralegal €5.8M + OneTrust DACH ~€30M + Secjur/andere ~€10M = ~€120M (nur DSGVO-Compliance). NIS2 erweitert die Regulierung auf 30.000+ Unternehmen (bisher 4.500). CRA und AI Act schaffen voellig neue Pflichten für Maschinenbauer. DACH-DevSecOps-Markt: +€300-400M. Gesamtes SAM für Compliance + Code-Security in DACH Manufacturing: €850M-1,2 Mrd.',
excerpt_en: 'DACH compliance revenues today: DataGuard €52M + heyData €15M + Proliance €3.9M + Caralegal €5.8M + OneTrust DACH ~€30M + Secjur/others ~€10M = ~€120M (GDPR compliance only). NIS2 expands regulation to 30,000+ companies (from 4,500). CRA and AI Act create entirely new obligations for manufacturers. DACH DevSecOps market: +€300-400M. Total SAM for compliance + code security in DACH manufacturing: €850M-1.2B.', excerpt_en: 'DACH compliance revenues today: DataGuard €52M + heyData €15M + Proliance €3.9M + Caralegal €5.8M + OneTrust DACH ~€30M + Secjur/others ~€10M = ~€120M (GDPR compliance only). NIS2 expands regulation to 30,000+ companies (from 4,500). CRA and AI Act create entirely new obligations for manufacturers. DACH DevSecOps market: +€300-400M. Total SAM for compliance + code security in DACH manufacturing: €850M-1.2B.',
}, },
], ],
@@ -84,7 +84,7 @@ const pentestMarketSources: Record<string, MarketSourceInfo[]> = {
name: 'MarketsAndMarkets — Application Security Testing Market 2025', name: 'MarketsAndMarkets — Application Security Testing Market 2025',
url: 'https://www.marketsandmarkets.com/Market-Reports/application-security-testing-market-150735030.html', url: 'https://www.marketsandmarkets.com/Market-Reports/application-security-testing-market-150735030.html',
date: '2025', date: '2025',
excerpt_de: 'Der globale AST-Markt (SAST, DAST, IAST, SCA) wird auf $8,5 Mrd. (2025) geschaetzt und soll bis 2030 auf $19,5 Mrd. wachsen (CAGR 18,2%). Hinzu kommt der Pentesting-Markt ($2,7 Mrd.) und der Compliance-Convergence-Anteil ($1,8 Mrd.). Gesamt-TAM fuer integriertes AppSec + Compliance: ~$13 Mrd.', excerpt_de: 'Der globale AST-Markt (SAST, DAST, IAST, SCA) wird auf $8,5 Mrd. (2025) geschaetzt und soll bis 2030 auf $19,5 Mrd. wachsen (CAGR 18,2%). Hinzu kommt der Pentesting-Markt ($2,7 Mrd.) und der Compliance-Convergence-Anteil ($1,8 Mrd.). Gesamt-TAM für integriertes AppSec + Compliance: ~$13 Mrd.',
excerpt_en: 'The global AST market (SAST, DAST, IAST, SCA) is estimated at $8.5B (2025), projected to reach $19.5B by 2030 (CAGR 18.2%). Adding the pentesting market ($2.7B) and compliance convergence share ($1.8B), total TAM for integrated AppSec + compliance: ~$13B.', excerpt_en: 'The global AST market (SAST, DAST, IAST, SCA) is estimated at $8.5B (2025), projected to reach $19.5B by 2030 (CAGR 18.2%). Adding the pentesting market ($2.7B) and compliance convergence share ($1.8B), total TAM for integrated AppSec + compliance: ~$13B.',
}, },
{ {
@@ -100,7 +100,7 @@ const pentestMarketSources: Record<string, MarketSourceInfo[]> = {
name: 'Bottom-Up: DACH AppSec + Manufacturing Pentesting', name: 'Bottom-Up: DACH AppSec + Manufacturing Pentesting',
url: 'https://www.bitkom.org/Marktdaten/ITK-Konjunktur/IT-Markt-Deutschland', url: 'https://www.bitkom.org/Marktdaten/ITK-Konjunktur/IT-Markt-Deutschland',
date: '2025-2026', date: '2025-2026',
excerpt_de: 'DACH IT-Security-Markt: €8,2 Mrd. (Bitkom 2025). AppSec-Anteil: ~15% = €1,2 Mrd. Davon Pentesting/DAST/SAST fuer produzierende Industrie: ~€400M. CRA-Pflicht fuer Maschinenbauer erzeugt neue Nachfrage: geschaetzt +€200M bis 2028. SAM fuer integriertes AppSec + Compliance im DACH-Manufacturing: ~€1,6 Mrd.', excerpt_de: 'DACH IT-Security-Markt: €8,2 Mrd. (Bitkom 2025). AppSec-Anteil: ~15% = €1,2 Mrd. Davon Pentesting/DAST/SAST für produzierende Industrie: ~€400M. CRA-Pflicht für Maschinenbauer erzeugt neue Nachfrage: geschaetzt +€200M bis 2028. SAM für integriertes AppSec + Compliance im DACH-Manufacturing: ~€1,6 Mrd.',
excerpt_en: 'DACH IT security market: €8.2B (Bitkom 2025). AppSec share: ~15% = €1.2B. Pentesting/DAST/SAST for manufacturing: ~€400M. CRA obligation for manufacturers creates new demand: est. +€200M by 2028. SAM for integrated AppSec + compliance in DACH manufacturing: ~€1.6B.', excerpt_en: 'DACH IT security market: €8.2B (Bitkom 2025). AppSec share: ~15% = €1.2B. Pentesting/DAST/SAST for manufacturing: ~€400M. CRA obligation for manufacturers creates new demand: est. +€200M by 2028. SAM for integrated AppSec + compliance in DACH manufacturing: ~€1.6B.',
}, },
], ],
@@ -304,7 +304,7 @@ export default function MarketSlide({ lang, market }: MarketSlideProps) {
</div> </div>
<p className="text-[10px] text-indigo-400/60 group-hover:text-indigo-400 transition-colors mt-0.5"> <p className="text-[10px] text-indigo-400/60 group-hover:text-indigo-400 transition-colors mt-0.5">
{sourceCount} {lang === 'de' ? (sourceCount === 1 ? 'Quelle' : 'Quellen') : (sourceCount === 1 ? 'source' : 'sources')} {sourceCount} {lang === 'de' ? (sourceCount === 1 ? 'Quelle' : 'Quellen') : (sourceCount === 1 ? 'source' : 'sources')}
{' · '}{lang === 'de' ? 'Klicken fuer Details' : 'Click for details'} {' · '}{lang === 'de' ? 'Klicken für Details' : 'Click for details'}
</p> </p>
</div> </div>
</div> </div>
@@ -380,7 +380,7 @@ export default function MarketSlide({ lang, market }: MarketSlideProps) {
</div> </div>
<p className="text-[10px] text-red-400/60 group-hover:text-red-400 transition-colors mt-0.5"> <p className="text-[10px] text-red-400/60 group-hover:text-red-400 transition-colors mt-0.5">
{sourceCount} {lang === 'de' ? (sourceCount === 1 ? 'Quelle' : 'Quellen') : (sourceCount === 1 ? 'source' : 'sources')} {sourceCount} {lang === 'de' ? (sourceCount === 1 ? 'Quelle' : 'Quellen') : (sourceCount === 1 ? 'source' : 'sources')}
{' · '}{lang === 'de' ? 'Klicken fuer Details' : 'Click for details'} {' · '}{lang === 'de' ? 'Klicken für Details' : 'Click for details'}
</p> </p>
</div> </div>
</div> </div>

View File

@@ -25,7 +25,7 @@ interface ProblemCardData {
sources: SourceInfo[] sources: SourceInfo[]
} }
// Quellenangaben fuer jede Behauptung // Quellenangaben für jede Behauptung
const cardSources: ProblemCardData[] = [ const cardSources: ProblemCardData[] = [
{ {
// KI-Dilemma: Maschinenbauer wollen KI, aber nicht US-SaaS // KI-Dilemma: Maschinenbauer wollen KI, aber nicht US-SaaS
@@ -34,7 +34,7 @@ const cardSources: ProblemCardData[] = [
name: 'Bitkom Cloud Monitor 2024 — Industrieunternehmen', name: 'Bitkom Cloud Monitor 2024 — Industrieunternehmen',
url: 'https://www.bitkom.org/Themen/Datenschutz-Sicherheit/Cloud-Monitor', url: 'https://www.bitkom.org/Themen/Datenschutz-Sicherheit/Cloud-Monitor',
date: '2024', date: '2024',
excerpt_de: 'Laut Bitkom Cloud Monitor lehnen 64% der deutschen Industrieunternehmen US-Cloud-Dienste fuer sensible Daten ab. Im Maschinenbau liegt die Ablehnung bei ueber 70%. Unternehmen wollen KI nutzen, aber nicht auf Kosten ihrer Datensouveraenitaet.', excerpt_de: 'Laut Bitkom Cloud Monitor lehnen 64% der deutschen Industrieunternehmen US-Cloud-Dienste für sensible Daten ab. Im Maschinenbau liegt die Ablehnung bei über 70%. Unternehmen wollen KI nutzen, aber nicht auf Kosten ihrer Datensouveraenitaet.',
excerpt_en: 'According to Bitkom Cloud Monitor, 64% of German industrial companies reject US cloud services for sensitive data. In machine manufacturing, rejection exceeds 70%. Companies want AI but not at the cost of their data sovereignty.', excerpt_en: 'According to Bitkom Cloud Monitor, 64% of German industrial companies reject US cloud services for sensitive data. In machine manufacturing, rejection exceeds 70%. Companies want AI but not at the cost of their data sovereignty.',
}, },
{ {
@@ -53,7 +53,7 @@ const cardSources: ProblemCardData[] = [
name: 'Schrems II — EuGH C-311/18', name: 'Schrems II — EuGH C-311/18',
url: 'https://curia.europa.eu/juris/liste.jsf?num=C-311/18', url: 'https://curia.europa.eu/juris/liste.jsf?num=C-311/18',
date: '2020', date: '2020',
excerpt_de: 'Der EuGH erklaerte das EU-US Privacy Shield fuer ungueltig. US-Unternehmen unterliegen dem CLOUD Act und dem FISA 702 — auch fuer Daten auf europaeischen Servern. Selbst EU-Rechenzentren von AWS, Google und Microsoft bieten keinen Schutz vor US-Zugriff.', excerpt_de: 'Der EuGH erklaerte das EU-US Privacy Shield für ungueltig. US-Unternehmen unterliegen dem CLOUD Act und dem FISA 702 — auch für Daten auf europaeischen Servern. Selbst EU-Rechenzentren von AWS, Google und Microsoft bieten keinen Schutz vor US-Zugriff.',
excerpt_en: 'The CJEU invalidated the EU-US Privacy Shield. US companies are subject to the CLOUD Act and FISA 702 — even for data on European servers. Even EU data centers of AWS, Google and Microsoft offer no protection from US access.', excerpt_en: 'The CJEU invalidated the EU-US Privacy Shield. US companies are subject to the CLOUD Act and FISA 702 — even for data on European servers. Even EU data centers of AWS, Google and Microsoft offer no protection from US access.',
}, },
], ],
@@ -65,14 +65,14 @@ const cardSources: ProblemCardData[] = [
name: 'VDMA — Compliance-Kosten im Maschinenbau', name: 'VDMA — Compliance-Kosten im Maschinenbau',
url: 'https://www.vdma.org/', url: 'https://www.vdma.org/',
date: '2024', date: '2024',
excerpt_de: 'Externe Pentests kosten 15.000-40.000 EUR pro Durchlauf, CE-Software-Risikobeurteilungen 10.000-25.000 EUR. Diese Pruefungen erfolgen einmal jaehrlich und decken nur eine Momentaufnahme ab. KMU mit 10-500 Mitarbeitern koennen sich weder Personal noch Budget fuer kontinuierliche Compliance leisten.', excerpt_de: 'Externe Pentests kosten 15.000-40.000 EUR pro Durchlauf, CE-Software-Risikobeurteilungen 10.000-25.000 EUR. Diese Prüfungen erfolgen einmal jaehrlich und decken nur eine Momentaufnahme ab. KMU mit 10-500 Mitarbeitern können sich weder Personal noch Budget für kontinuierliche Compliance leisten.',
excerpt_en: 'External pentests cost EUR 15,000-40,000 per run, CE software risk assessments EUR 10,000-25,000. These audits occur annually, covering only a snapshot. SMEs with 10-500 employees can afford neither staff nor budget for continuous compliance.', excerpt_en: 'External pentests cost EUR 15,000-40,000 per run, CE software risk assessments EUR 10,000-25,000. These audits occur annually, covering only a snapshot. SMEs with 10-500 employees can afford neither staff nor budget for continuous compliance.',
}, },
{ {
name: 'Compliance-Markt: Top-10 Anbieter >$1,1 Mrd. Umsatz', name: 'Compliance-Markt: Top-10 Anbieter >$1,1 Mrd. Umsatz',
url: 'https://sacra.com/c/vanta/', url: 'https://sacra.com/c/vanta/',
date: '2025', date: '2025',
excerpt_de: 'Vanta ($220M ARR, $4,15 Mrd. Bewertung), Drata ($100M), OneTrust ($500M+), DataGuard (€52M). Der Markt ist validiert — aber keiner dieser Anbieter kombiniert Code-Security mit Compliance fuer den Maschinenbau.', excerpt_de: 'Vanta ($220M ARR, $4,15 Mrd. Bewertung), Drata ($100M), OneTrust ($500M+), DataGuard (€52M). Der Markt ist validiert — aber keiner dieser Anbieter kombiniert Code-Security mit Compliance für den Maschinenbau.',
excerpt_en: 'Vanta ($220M ARR, $4.15B valuation), Drata ($100M), OneTrust ($500M+), DataGuard (€52M). The market is validated — but none of these providers combine code security with compliance for manufacturing.', excerpt_en: 'Vanta ($220M ARR, $4.15B valuation), Drata ($100M), OneTrust ($500M+), DataGuard (€52M). The market is validated — but none of these providers combine code security with compliance for manufacturing.',
}, },
], ],
@@ -194,7 +194,7 @@ export default function ProblemSlide({ lang }: ProblemSlideProps) {
<p className="text-[10px] text-indigo-400/60 group-hover:text-indigo-400 transition-colors"> <p className="text-[10px] text-indigo-400/60 group-hover:text-indigo-400 transition-colors">
{sourceCount} {lang === 'de' ? (sourceCount === 1 ? 'Quelle' : 'Quellen') : (sourceCount === 1 ? 'source' : 'sources')} {sourceCount} {lang === 'de' ? (sourceCount === 1 ? 'Quelle' : 'Quellen') : (sourceCount === 1 ? 'source' : 'sources')}
{' · '} {' · '}
{lang === 'de' ? 'Klicken fuer Details' : 'Click for details'} {lang === 'de' ? 'Klicken für Details' : 'Click for details'}
</p> </p>
</GlassCard> </GlassCard>
) )

View File

@@ -48,8 +48,8 @@ export default function RegulatorySlide({ lang }: RegulatorySlideProps) {
keyRequirements: de keyRequirements: de
? [ ? [
'Verzeichnis von Verarbeitungstaetigkeiten (VVT)', 'Verzeichnis von Verarbeitungstaetigkeiten (VVT)',
'Datenschutz-Folgenabschaetzung (DSFA)', 'Datenschutz-Folgenabschätzung (DSFA)',
'Technische und organisatorische Massnahmen (TOM)', 'Technische und organisatorische Maßnahmen (TOM)',
'Betroffenenrechte (Auskunft, Loeschung, Portabilitaet)', 'Betroffenenrechte (Auskunft, Loeschung, Portabilitaet)',
'Auftragsverarbeitungsvertraege (AVV)', 'Auftragsverarbeitungsvertraege (AVV)',
'Datenschutzbeauftragter (ab 20 MA)', 'Datenschutzbeauftragter (ab 20 MA)',
@@ -68,9 +68,9 @@ export default function RegulatorySlide({ lang }: RegulatorySlideProps) {
howWeHelp: de howWeHelp: de
? [ ? [
'Automatische VVT-Erstellung aus Unternehmensdaten', 'Automatische VVT-Erstellung aus Unternehmensdaten',
'KI-gestuetzte DSFA-Durchfuehrung', 'KI-gestützte DSFA-Durchführung',
'TOM-Generator mit Branchenvorlagen', 'TOM-Generator mit Branchenvorlagen',
'Self-Service-Portal fuer Betroffenenanfragen', 'Self-Service-Portal für Betroffenenanfragen',
'Automatische Dokumentation und Audit-Trail', 'Automatische Dokumentation und Audit-Trail',
] ]
: [ : [
@@ -86,17 +86,17 @@ export default function RegulatorySlide({ lang }: RegulatorySlideProps) {
status: de ? 'Schrittweise ab Aug 2025' : 'Phased from Aug 2025', status: de ? 'Schrittweise ab Aug 2025' : 'Phased from Aug 2025',
statusColor: 'text-amber-400', statusColor: 'text-amber-400',
statusIcon: Clock, statusIcon: Clock,
deadline: de ? 'Aug 2025: Verbote · Aug 2026: Hochrisiko · Aug 2027: Vollstaendig' : 'Aug 2025: Prohibitions · Aug 2026: High-Risk · Aug 2027: Full', deadline: de ? 'Aug 2025: Verbote · Aug 2026: Hochrisiko · Aug 2027: Vollständig' : 'Aug 2025: Prohibitions · Aug 2026: High-Risk · Aug 2027: Full',
affectedCompanies: de ? 'Anbieter und Betreiber von KI-Systemen in der EU' : 'Providers and deployers of AI systems in the EU', affectedCompanies: de ? 'Anbieter und Betreiber von KI-Systemen in der EU' : 'Providers and deployers of AI systems in the EU',
keyRequirements: de keyRequirements: de
? [ ? [
'Risikoklassifizierung aller KI-Systeme (Art. 6)', 'Risikoklassifizierung aller KI-Systeme (Art. 6)',
'Konformitaetsbewertung fuer Hochrisiko-KI (Art. 43)', 'Konformitätsbewertung für Hochrisiko-KI (Art. 43)',
'Technische Dokumentation und Transparenz (Art. 11-13)', 'Technische Dokumentation und Transparenz (Art. 11-13)',
'Menschliche Aufsicht (Art. 14)', 'Menschliche Aufsicht (Art. 14)',
'Registrierung in EU-Datenbank (Art. 49)', 'Registrierung in EU-Datenbank (Art. 49)',
'GPAI-Modell-Pflichten (Art. 51-56)', 'GPAI-Modell-Pflichten (Art. 51-56)',
'Grundrechte-Folgenabschaetzung (Art. 27)', 'Grundrechte-Folgenabschätzung (Art. 27)',
] ]
: [ : [
'Risk classification of all AI systems (Art. 6)', 'Risk classification of all AI systems (Art. 6)',
@@ -111,10 +111,10 @@ export default function RegulatorySlide({ lang }: RegulatorySlideProps) {
howWeHelp: de howWeHelp: de
? [ ? [
'Automatische Risikoklassifizierung von KI-Systemen', 'Automatische Risikoklassifizierung von KI-Systemen',
'Konformitaets-Checklisten mit KI-Unterstuetzung', 'Konformitäts-Checklisten mit KI-Unterstützung',
'Technische Dokumentation per Template-Engine', 'Technische Dokumentation per Template-Engine',
'Audit-Vorbereitung fuer Hochrisiko-Systeme', 'Audit-Vorbereitung für Hochrisiko-Systeme',
'Monitoring von Rechtsaenderungen', 'Monitoring von Rechtsänderungen',
] ]
: [ : [
'Automatic AI system risk classification', 'Automatic AI system risk classification',
@@ -129,17 +129,17 @@ export default function RegulatorySlide({ lang }: RegulatorySlideProps) {
status: de ? 'In Kraft seit Dez 2024' : 'In effect since Dec 2024', status: de ? 'In Kraft seit Dez 2024' : 'In effect since Dec 2024',
statusColor: 'text-amber-400', statusColor: 'text-amber-400',
statusIcon: Clock, statusIcon: Clock,
deadline: de ? 'Sep 2026: Meldepflichten · Dez 2027: Vollstaendig anzuwenden' : 'Sep 2026: Reporting · Dec 2027: Fully applicable', deadline: de ? 'Sep 2026: Meldepflichten · Dez 2027: Vollständig anzuwenden' : 'Sep 2026: Reporting · Dec 2027: Fully applicable',
affectedCompanies: de ? 'Alle Hersteller von Produkten mit digitalen Elementen (Hardware & Software)' : 'All manufacturers of products with digital elements (hardware & software)', affectedCompanies: de ? 'Alle Hersteller von Produkten mit digitalen Elementen (Hardware & Software)' : 'All manufacturers of products with digital elements (hardware & software)',
keyRequirements: de keyRequirements: de
? [ ? [
'Security by Design fuer alle Produkte mit Software', 'Security by Design für alle Produkte mit Software',
'Schwachstellen-Management ueber gesamten Produktlebenszyklus', 'Schwachstellen-Management über gesamten Produktlebenszyklus',
'Software Bill of Materials (SBOM) fuer jedes Produkt', 'Software Bill of Materials (SBOM) für jedes Produkt',
'Kostenlose Sicherheitsupdates fuer Kunden', 'Kostenlose Sicherheitsupdates für Kunden',
'Meldepflicht bei aktiv ausgenutzten Schwachstellen (24h)', 'Meldepflicht bei aktiv ausgenutzten Schwachstellen (24h)',
'Konformitaetsbewertung durch Drittstelle (fuer kritische Produkte)', 'Konformitätsbewertung durch Drittstelle (für kritische Produkte)',
'CE-Kennzeichnung fuer Cybersecurity-Compliance', 'CE-Kennzeichnung für Cybersecurity-Compliance',
] ]
: [ : [
'Security by design for all products with software', 'Security by design for all products with software',
@@ -157,7 +157,7 @@ export default function RegulatorySlide({ lang }: RegulatorySlideProps) {
'Kontinuierliches Schwachstellen-Scanning (Trivy, Grype)', 'Kontinuierliches Schwachstellen-Scanning (Trivy, Grype)',
'Security-Fixes durch 1000B Cloud-LLM implementiert', 'Security-Fixes durch 1000B Cloud-LLM implementiert',
'CRA-konforme Dokumentation und Audit-Trail', 'CRA-konforme Dokumentation und Audit-Trail',
'Risikoanalysen fuer Embedded-Software und Firmware', 'Risikoanalysen für Embedded-Software und Firmware',
] ]
: [ : [
'Automatic SBOM generation from code repositories', 'Automatic SBOM generation from code repositories',
@@ -176,7 +176,7 @@ export default function RegulatorySlide({ lang }: RegulatorySlideProps) {
affectedCompanies: de ? '30.000+ Unternehmen in DE (Energie, Transport, Gesundheit, Digital, KRITIS)' : '30,000+ companies in DE (Energy, Transport, Healthcare, Digital, Critical Infrastructure)', affectedCompanies: de ? '30.000+ Unternehmen in DE (Energie, Transport, Gesundheit, Digital, KRITIS)' : '30,000+ companies in DE (Energy, Transport, Healthcare, Digital, Critical Infrastructure)',
keyRequirements: de keyRequirements: de
? [ ? [
'Risikomanagement-Massnahmen (Art. 21)', 'Risikomanagement-Maßnahmen (Art. 21)',
'Incident-Meldepflichten: 24h Fruehwarnung, 72h Bericht (Art. 23)', 'Incident-Meldepflichten: 24h Fruehwarnung, 72h Bericht (Art. 23)',
'Business Continuity und Krisenmanagement', 'Business Continuity und Krisenmanagement',
'Supply-Chain-Security (Lieferkettenrisiken)', 'Supply-Chain-Security (Lieferkettenrisiken)',
@@ -197,7 +197,7 @@ export default function RegulatorySlide({ lang }: RegulatorySlideProps) {
howWeHelp: de howWeHelp: de
? [ ? [
'Cybersecurity-Policy-Generator nach BSI-Grundschutz', 'Cybersecurity-Policy-Generator nach BSI-Grundschutz',
'Incident-Response-Plaene mit KI-Unterstuetzung', 'Incident-Response-Pläne mit KI-Unterstützung',
'Supply-Chain-Risikoanalyse', 'Supply-Chain-Risikoanalyse',
'Automatische Audit-Dokumentation', 'Automatische Audit-Dokumentation',
'NIS2-Readiness-Assessment', 'NIS2-Readiness-Assessment',