fix: Onepager Feinschliff
- Mitarbeiter: 5/10/17/25/35 (statt 5→10 etc.) - Wettbewerber: +Gründungsjahr +Kundenzahl Spalten - Umsatzerwartung: +Kundenzahl, höhere Zahlen (30→1.200 Kunden, 8,5M ARR) - Integration: "Jira" entfernt, nur "Ticketsysteme, Workflows" - Compliance Docs: "AGB, DSE" → "Pflichten" - COMPLAI Plattform: "Jitsi, Matrix, volle Integration" entfernt - Problem: "riskieren, die Kontrolle ... zu verlieren" Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -305,12 +305,12 @@ export default function ExecutiveSummarySlide({ lang, data }: ExecutiveSummarySl
|
||||
<div className="space-y-1.5">
|
||||
{(de ? [
|
||||
'Ohne KI verlieren sie ihre Wettbewerbsfähigkeit',
|
||||
'Mit US-KI riskieren sie die Kontrolle über ihre sensibelsten Daten',
|
||||
'Mit US-KI riskieren sie, die Kontrolle über ihre sensibelsten Daten zu verlieren',
|
||||
'Neue EU-Regulierungen (AI Act, CRA, NIS2) zwingen über 30.000 Unternehmen in Deutschland in hochkomplexe Compliance-Prozesse',
|
||||
'Das Ergebnis: Stillstand in einer Phase, in der Geschwindigkeit entscheidend ist',
|
||||
] : [
|
||||
'Without AI they lose their competitiveness',
|
||||
'With US AI they risk control over their most sensitive data',
|
||||
'With US AI they risk losing control over their most sensitive data',
|
||||
'New EU regulations (AI Act, CRA, NIS2) force over 30,000 companies in Germany into complex compliance processes',
|
||||
'The result: standstill in a phase where speed is decisive',
|
||||
]).map((item, idx) => (
|
||||
@@ -408,7 +408,7 @@ export default function ExecutiveSummarySlide({ lang, data }: ExecutiveSummarySl
|
||||
de ? 'Audit Manager — Abweichungen End-to-End mit Eskalation' : 'Audit Manager — deviations end-to-end with escalation',
|
||||
de ? 'Compliance LLM — GPT für Text und Audio, EU-gehostet' : 'Compliance LLM — GPT for text and audio, EU-hosted',
|
||||
de ? 'Academy — Online-Schulungen für GF und Mitarbeiter' : 'Academy — online training for management and employees',
|
||||
de ? 'BSI-Cloud DE / OVH FR — Jitsi, Matrix, volle Integration' : 'BSI Cloud DE / OVH FR — Jitsi, Matrix, full integration',
|
||||
de ? 'BSI-Cloud DE / OVH FR' : 'BSI Cloud DE / OVH FR',
|
||||
].map((item, idx) => (
|
||||
<p key={idx} className="text-xs text-white/60 pl-3 relative">
|
||||
<span className="absolute left-0 top-1 w-1.5 h-1.5 rounded-full bg-cyan-400/60" />
|
||||
@@ -450,11 +450,11 @@ export default function ExecutiveSummarySlide({ lang, data }: ExecutiveSummarySl
|
||||
{[
|
||||
{ name: 'Code Security', desc: de ? 'SAST, DAST, SBOM, kontinuierliches Pentesting' : 'SAST, DAST, SBOM, continuous pentesting', color: '#ef4444', icon: ScanLine },
|
||||
{ name: de ? 'CE-Software-Risikobeurteilung' : 'CE Software Risk Assessment', desc: de ? 'Software-Risikoanalyse für CE-Kennzeichnung' : 'Software risk assessment for CE marking', color: '#f97316', icon: Shield },
|
||||
{ name: de ? 'Compliance-Dokumente' : 'Compliance Documents', desc: de ? 'VVT, DSFA, TOMs, Löschfristen, AGB, DSE' : 'RoPA, DPIA, TOMs, retention, T&Cs, privacy', color: '#6366f1', icon: FileText },
|
||||
{ name: de ? 'Compliance-Dokumente' : 'Compliance Documents', desc: de ? 'VVT, DSFA, TOMs, Löschfristen, Pflichten' : 'RoPA, DPIA, TOMs, retention, obligations', color: '#6366f1', icon: FileText },
|
||||
{ name: 'Audit Manager', desc: de ? 'Abweichungen, Nachweise, Stichtage, Eskalation' : 'Deviations, evidence, deadlines, escalation', color: '#10b981', icon: CheckCircle2 },
|
||||
{ name: 'Compliance LLM', desc: de ? 'GPT für Text und Audio — sicher in der EU' : 'GPT for text and audio — securely in EU', color: '#a855f7', icon: Brain },
|
||||
{ name: 'Academy', desc: de ? 'Online-Schulungen für GF und Mitarbeiter' : 'Online training for management and employees', color: '#ec4899', icon: GraduationCap },
|
||||
{ name: de ? 'Integration in Kundenprozesse' : 'Process Integration', desc: de ? 'Jira, Ticketsysteme, Workflows' : 'Jira, ticket systems, workflows', color: '#0ea5e9', icon: Cpu },
|
||||
{ name: de ? 'Integration in Kundenprozesse' : 'Process Integration', desc: de ? 'Ticketsysteme, Workflows' : 'Ticket systems, workflows', color: '#0ea5e9', icon: Cpu },
|
||||
{ name: de ? 'Sichere Kommunikation' : 'Secure Communication', desc: de ? 'Chat + Video mit AI Notetaker' : 'Chat + video with AI notetaker', color: '#22c55e', icon: Users },
|
||||
].map((mod, idx) => {
|
||||
const Icon = mod.icon
|
||||
@@ -472,17 +472,21 @@ export default function ExecutiveSummarySlide({ lang, data }: ExecutiveSummarySl
|
||||
{/* Umsatzerwartung + Mitarbeiter + Pricing */}
|
||||
<div className="grid md:grid-cols-3 gap-3 mb-4">
|
||||
<GlassCard delay={0.5} hover={false} className="p-3">
|
||||
<h3 className="text-xs font-bold text-indigo-400 uppercase tracking-wider mb-1.5">{de ? 'Umsatzerwartung (ARR)' : 'Revenue Forecast (ARR)'}</h3>
|
||||
<h3 className="text-xs font-bold text-indigo-400 uppercase tracking-wider mb-1.5">{de ? 'Umsatzerwartung' : 'Revenue Forecast'}</h3>
|
||||
<div className="flex justify-between text-[7px] text-white/30 uppercase tracking-wider mb-1">
|
||||
<span></span><span>{de ? 'Kunden' : 'Cust.'}</span><span>ARR</span>
|
||||
</div>
|
||||
<div className="space-y-1 text-xs">
|
||||
{[
|
||||
{ year: '2026', arr: de ? '~22k EUR' : '~EUR 22k' },
|
||||
{ year: '2027', arr: de ? '~588k EUR' : '~EUR 588k' },
|
||||
{ year: '2028', arr: de ? '~1,7 Mio. EUR' : '~EUR 1.7M' },
|
||||
{ year: '2029', arr: de ? '~3,4 Mio. EUR' : '~EUR 3.4M' },
|
||||
{ year: '2030', arr: de ? '~5,4 Mio. EUR' : '~EUR 5.4M' },
|
||||
{ year: '2026', cust: '~30', arr: de ? '~22k EUR' : '~EUR 22k' },
|
||||
{ year: '2027', cust: '~120', arr: de ? '~750k EUR' : '~EUR 750k' },
|
||||
{ year: '2028', cust: '~350', arr: de ? '~2,5 Mio. EUR' : '~EUR 2.5M' },
|
||||
{ year: '2029', cust: '~700', arr: de ? '~5,0 Mio. EUR' : '~EUR 5.0M' },
|
||||
{ year: '2030', cust: '~1.200', arr: de ? '~8,5 Mio. EUR' : '~EUR 8.5M' },
|
||||
].map((r, idx) => (
|
||||
<div key={idx} className="flex justify-between">
|
||||
<span className="text-white/40">{r.year}</span>
|
||||
<span className="text-white/40 text-[10px]">{r.cust}</span>
|
||||
<span className={`font-mono ${idx >= 3 ? 'text-emerald-300 font-bold' : 'text-white/70'}`}>{r.arr}</span>
|
||||
</div>
|
||||
))}
|
||||
@@ -493,11 +497,11 @@ export default function ExecutiveSummarySlide({ lang, data }: ExecutiveSummarySl
|
||||
<h3 className="text-xs font-bold text-purple-400 uppercase tracking-wider mb-1.5">{de ? 'Mitarbeiterentwicklung' : 'Headcount Growth'}</h3>
|
||||
<div className="space-y-1 text-xs">
|
||||
{[
|
||||
{ year: '2026 (ab Aug)', count: '5 → 10' },
|
||||
{ year: '2027', count: '10 → 17' },
|
||||
{ year: '2026', count: '5' },
|
||||
{ year: '2027', count: '10' },
|
||||
{ year: '2028', count: '17' },
|
||||
{ year: '2029', count: '17 → 20' },
|
||||
{ year: '2030', count: '20 → 25' },
|
||||
{ year: '2029', count: '25' },
|
||||
{ year: '2030', count: '35' },
|
||||
].map((r, idx) => (
|
||||
<div key={idx} className="flex justify-between">
|
||||
<span className="text-white/40">{r.year}</span>
|
||||
@@ -539,22 +543,24 @@ export default function ExecutiveSummarySlide({ lang, data }: ExecutiveSummarySl
|
||||
|
||||
<GlassCard delay={0.55} hover={false} className="p-3">
|
||||
<h3 className="text-xs font-bold text-red-400 uppercase tracking-wider mb-1.5">{de ? 'Wettbewerber' : 'Competitors'}</h3>
|
||||
<div className="flex justify-between text-[8px] text-white/30 uppercase tracking-wider mb-1 px-0.5">
|
||||
<span></span><span>{de ? 'Umsatz' : 'Revenue'}</span><span>Invest</span>
|
||||
<div className="flex justify-between text-[7px] text-white/30 uppercase tracking-wider mb-1 px-0.5">
|
||||
<span></span><span>{de ? 'Gegr.' : 'Est.'}</span><span>{de ? 'Kunden' : 'Cust.'}</span><span>{de ? 'Umsatz' : 'Rev.'}</span><span>Invest</span>
|
||||
</div>
|
||||
<div className="space-y-0.5">
|
||||
{[
|
||||
{ name: 'Vanta', flag: '🇺🇸', rev: '$220M ARR', invest: '$504M' },
|
||||
{ name: 'Drata', flag: '🇺🇸', rev: '$100M ARR', invest: '$328M' },
|
||||
{ name: 'Sprinto', flag: '🇮🇳', rev: '—', invest: '$32M' },
|
||||
{ name: 'DataGuard', flag: '🇩🇪', rev: '€52M', invest: '€80M' },
|
||||
{ name: 'Proliance', flag: '🇩🇪', rev: '—', invest: 'Pre-Seed' },
|
||||
{ name: 'heyData', flag: '🇩🇪', rev: '—', invest: '€18M' },
|
||||
{ name: 'Vanta', flag: '🇺🇸', year: '2018', cust: '8.000+', rev: '$220M', invest: '$504M' },
|
||||
{ name: 'Drata', flag: '🇺🇸', year: '2020', cust: '5.000+', rev: '$100M', invest: '$328M' },
|
||||
{ name: 'Sprinto', flag: '🇮🇳', year: '2020', cust: '2.000+', rev: '—', invest: '$32M' },
|
||||
{ name: 'DataGuard', flag: '🇩🇪', year: '2017', cust: '4.000+', rev: '€52M', invest: '€80M' },
|
||||
{ name: 'Proliance', flag: '🇩🇪', year: '2017', cust: '2.500+', rev: '—', invest: 'Pre-Seed' },
|
||||
{ name: 'heyData', flag: '🇩🇪', year: '2019', cust: '1.500+', rev: '—', invest: '€18M' },
|
||||
].map((c, idx) => (
|
||||
<div key={idx} className="flex items-center justify-between text-[10px] gap-1">
|
||||
<span className="text-white/70 shrink-0">{c.flag} {c.name}</span>
|
||||
<span className="text-white/40 text-[9px]">{c.rev}</span>
|
||||
<span className="text-white/60 font-mono text-[9px] shrink-0">{c.invest}</span>
|
||||
<div key={idx} className="flex items-center justify-between text-[9px] gap-1">
|
||||
<span className="text-white/70 shrink-0 min-w-[70px]">{c.flag} {c.name}</span>
|
||||
<span className="text-white/30 text-[8px]">{c.year}</span>
|
||||
<span className="text-white/40 text-[8px]">{c.cust}</span>
|
||||
<span className="text-white/40 text-[8px]">{c.rev}</span>
|
||||
<span className="text-white/60 font-mono text-[8px] shrink-0">{c.invest}</span>
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user