feat: Executive Summary komplett überarbeitet
- Problem: Strategisches Dilemma (KI vs. Datensouveränität, 30.000+ Unternehmen) - Lösung: Kontinuierliche Compliance statt punktueller Prüfungen - Roadmap: Go-to-Market Phasen 1-3 (statt Q-Kacheln), Gründung Jul/Aug 2026 - 8 Module als kompakte Baukasten-Leiste - Wettbewerber-Kachel: 6 Wettbewerber mit Flagge + Bewertung - Umlaute: ä, ö, ü statt ae, oe, ue in allen deutschen Texten - COMPLAI statt ComplAI, AI farblich abgesetzt - USP: "auf deutscher oder französischer Cloud" Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -271,7 +271,7 @@ export default function ExecutiveSummarySlide({ lang, data }: ExecutiveSummarySl
|
||||
<div className="bg-gradient-to-r from-indigo-500/10 to-cyan-500/10 border-l-4 border-indigo-500 rounded-r-xl px-5 py-4">
|
||||
<p className="text-sm text-white/70 leading-relaxed">
|
||||
{de
|
||||
? <>BreakPilot COMPL<strong className="text-indigo-300">AI</strong> ist eine <strong className="text-indigo-300">DSGVO-konforme KI-Plattform</strong>, die kontinuierliches Sicherheitsscanning mit intelligenter Compliance-Automatisierung vereint. Wir helfen unseren Kunden, ihren <strong className="text-indigo-300">Code abzusichern</strong>, <strong className="text-indigo-300">Compliance skalierbar durchzusetzen</strong> und <strong className="text-indigo-300">volle Datensouveraenitaet zu bewahren</strong> — gestuetzt auf ueber 25.000 atomaren Sicherheitskontrollen fuer einen lueckenlosen Audit-Trail.</>
|
||||
? <>BreakPilot COMPL<strong className="text-indigo-300">AI</strong> ist eine <strong className="text-indigo-300">DSGVO-konforme KI-Plattform</strong>, die kontinuierliches Sicherheitsscanning mit intelligenter Compliance-Automatisierung vereint. Wir helfen unseren Kunden, ihren <strong className="text-indigo-300">Code abzusichern</strong>, <strong className="text-indigo-300">Compliance skalierbar durchzusetzen</strong> und <strong className="text-indigo-300">volle Datensouveränität zu bewahren</strong> — gestützt auf über 25.000 atomaren Sicherheitskontrollen für einen lückenlosen Audit-Trail.</>
|
||||
: <>BreakPilot COMPL<strong className="text-indigo-300">AI</strong> is a <strong className="text-indigo-300">GDPR-compliant AI platform</strong> that combines continuous security scanning with intelligent compliance automation. We help our customers <strong className="text-indigo-300">secure their code</strong>, <strong className="text-indigo-300">enforce compliance at scale</strong> and <strong className="text-indigo-300">maintain full data sovereignty</strong> — powered by over 25,000 atomic security controls for a complete audit trail.</>
|
||||
}
|
||||
</p>
|
||||
@@ -370,28 +370,56 @@ export default function ExecutiveSummarySlide({ lang, data }: ExecutiveSummarySl
|
||||
</GlassCard>
|
||||
</div>
|
||||
|
||||
{/* Roadmap */}
|
||||
{/* Go-to-Market Roadmap (3 Phasen) */}
|
||||
<FadeInView delay={0.4} className="mb-4">
|
||||
<h3 className="text-xs font-bold text-white/40 uppercase tracking-wider mb-2">Roadmap</h3>
|
||||
<div className="grid grid-cols-2 md:grid-cols-4 gap-2">
|
||||
<h3 className="text-xs font-bold text-white/40 uppercase tracking-wider mb-2">{de ? 'Go-to-Market Roadmap' : 'Go-to-Market Roadmap'}</h3>
|
||||
<div className="grid grid-cols-1 md:grid-cols-3 gap-2">
|
||||
{[
|
||||
{ title: 'Q4 2026', desc: de ? 'Gruendung, Pilotkunden, Cloud live' : 'Founding, pilots, cloud live' },
|
||||
{ title: 'Q2 2027', desc: de ? 'Vertrieb, Messen, Marketing' : 'Sales, trade fairs, marketing' },
|
||||
{ title: 'Q4 2027', desc: de ? 'Enterprise, Distributoren' : 'Enterprise, distributors' },
|
||||
{ title: 'Q3 2029', desc: de ? 'Break-Even, Series A' : 'Break-even, Series A' },
|
||||
].map((item, idx) => (
|
||||
<div key={idx} className="bg-amber-500/10 border border-amber-500/20 rounded-lg px-3 py-2">
|
||||
<p className="text-xs font-bold text-amber-300">{item.title}</p>
|
||||
<p className="text-[10px] text-white/40">{item.desc}</p>
|
||||
{ title: de ? 'Phase 1: Pilot (Jul/Aug 2026)' : 'Phase 1: Pilot (Jul/Aug 2026)', color: 'bg-indigo-500/10 border-indigo-500/20', textColor: 'text-indigo-300',
|
||||
items: de ? ['Gründung GmbH', 'Direktvertrieb an Maschinen- und Anlagenbauer', 'Persönliches Onboarding, White-Glove-Service', 'Case Studies und Referenzkunden'] : ['Company founding', 'Direct sales to machine manufacturers', 'Personal onboarding, white-glove service', 'Case studies and reference customers'] },
|
||||
{ title: de ? 'Phase 2: Skalierung (2027)' : 'Phase 2: Scale (2027)', color: 'bg-purple-500/10 border-purple-500/20', textColor: 'text-purple-300',
|
||||
items: de ? ['Channel-Partnerschaften mit IT-Systemhäusern', 'IHK-Kooperationen, Messen', 'Content Marketing, Compliance-Webinare', '50-200 Kunden in regulierten Branchen'] : ['Channel partnerships with IT integrators', 'Chamber of Commerce, trade fairs', 'Content marketing, compliance webinars', '50-200 customers in regulated industries'] },
|
||||
{ title: de ? 'Phase 3: Expansion (2028+)' : 'Phase 3: Expansion (2028+)', color: 'bg-emerald-500/10 border-emerald-500/20', textColor: 'text-emerald-300',
|
||||
items: de ? ['Enterprise-Kunden (50-500 MA)', 'EU-Expansion: AT, CH, Benelux', 'Distributor-Partnerschaften', 'Break-Even Q3/2029'] : ['Enterprise customers (50-500 emp.)', 'EU expansion: AT, CH, Benelux', 'Distributor partnerships', 'Break-even Q3/2029'] },
|
||||
].map((phase, idx) => (
|
||||
<div key={idx} className={`${phase.color} border rounded-lg px-3 py-2`}>
|
||||
<p className={`text-xs font-bold ${phase.textColor} mb-1`}>{phase.title}</p>
|
||||
{phase.items.map((item, i) => (
|
||||
<p key={i} className="text-[10px] text-white/50 pl-2 relative">
|
||||
<span className="absolute left-0">→</span>{item}
|
||||
</p>
|
||||
))}
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
</FadeInView>
|
||||
|
||||
{/* Bottom 4-column: Geschaeftsmodell + Zielmaerkte + Gruender + Funding */}
|
||||
{/* 8 Module */}
|
||||
<FadeInView delay={0.45} className="mb-4">
|
||||
<h3 className="text-xs font-bold text-white/40 uppercase tracking-wider mb-2">{de ? 'Modularer Baukasten' : 'Modular Toolkit'}</h3>
|
||||
<div className="grid grid-cols-4 md:grid-cols-8 gap-1.5">
|
||||
{[
|
||||
{ name: 'Code Security', color: '#ef4444' },
|
||||
{ name: de ? 'CE-Risiko' : 'CE Risk', color: '#f97316' },
|
||||
{ name: de ? 'Compliance Docs' : 'Compliance Docs', color: '#6366f1' },
|
||||
{ name: 'Audit Manager', color: '#10b981' },
|
||||
{ name: 'Compliance LLM', color: '#a855f7' },
|
||||
{ name: 'Academy', color: '#ec4899' },
|
||||
{ name: 'Jira-Integration', color: '#0ea5e9' },
|
||||
{ name: 'Full Compliance', color: '#22c55e' },
|
||||
].map((mod, idx) => (
|
||||
<div key={idx} className="bg-white/[0.04] border border-white/[0.06] rounded-lg py-1.5 px-1 text-center">
|
||||
<div className="w-2 h-2 rounded-full mx-auto mb-1" style={{ backgroundColor: mod.color }} />
|
||||
<p className="text-[8px] text-white/60 font-medium leading-tight">{mod.name}</p>
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
</FadeInView>
|
||||
|
||||
{/* Bottom: Geschäftsmodell + Gründer + Wettbewerber + Funding */}
|
||||
<div className="grid md:grid-cols-4 gap-3 mb-4">
|
||||
<GlassCard delay={0.45} hover={false} className="p-3">
|
||||
<h3 className="text-xs font-bold text-purple-400 uppercase tracking-wider mb-1.5">{de ? 'Geschaeftsmodell' : 'Business Model'}</h3>
|
||||
<GlassCard delay={0.5} hover={false} className="p-3">
|
||||
<h3 className="text-xs font-bold text-purple-400 uppercase tracking-wider mb-1.5">{de ? 'Geschäftsmodell' : 'Business Model'}</h3>
|
||||
<div className="space-y-1 text-xs text-white/60">
|
||||
<p><strong className="text-white/80">SaaS Cloud</strong> — BSI DE / OVH FR</p>
|
||||
<p><strong className="text-white/80">{de ? 'Modular' : 'Modular'}</strong> — {de ? 'Einzeln oder Full Compliance' : 'Single or full compliance'}</p>
|
||||
@@ -399,17 +427,8 @@ export default function ExecutiveSummarySlide({ lang, data }: ExecutiveSummarySl
|
||||
</div>
|
||||
</GlassCard>
|
||||
|
||||
<GlassCard delay={0.5} hover={false} className="p-3">
|
||||
<h3 className="text-xs font-bold text-blue-400 uppercase tracking-wider mb-1.5">{de ? 'Zielmaerkte' : 'Target Markets'}</h3>
|
||||
<div className="space-y-1 text-xs text-white/60">
|
||||
<p><strong className="text-white/80">{de ? 'Maschinenbau KMU' : 'Manufacturing SMEs'}</strong></p>
|
||||
<p><strong className="text-white/80">{de ? 'Regulierte Branchen' : 'Regulated Industries'}</strong></p>
|
||||
<p><strong className="text-white/80">{de ? 'EU-Datensouveraenitaet' : 'EU Data Sovereignty'}</strong></p>
|
||||
</div>
|
||||
</GlassCard>
|
||||
|
||||
<GlassCard delay={0.55} hover={false} className="p-3">
|
||||
<h3 className="text-xs font-bold text-emerald-400 uppercase tracking-wider mb-1.5">{de ? 'Gruender' : 'Founders'}</h3>
|
||||
<h3 className="text-xs font-bold text-emerald-400 uppercase tracking-wider mb-1.5">{de ? 'Gründer' : 'Founders'}</h3>
|
||||
<div className="space-y-1">
|
||||
{data.team?.slice(0, 4).map((m, idx) => (
|
||||
<div key={idx} className="flex justify-between items-center">
|
||||
@@ -421,6 +440,25 @@ export default function ExecutiveSummarySlide({ lang, data }: ExecutiveSummarySl
|
||||
</GlassCard>
|
||||
|
||||
<GlassCard delay={0.6} 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="space-y-0.5">
|
||||
{[
|
||||
{ name: 'Vanta', flag: '🇺🇸', val: '$4,15 Mrd.' },
|
||||
{ name: 'Drata', flag: '🇺🇸', val: '$2 Mrd.' },
|
||||
{ name: 'Sprinto', flag: '🇮🇳', val: 'Series B' },
|
||||
{ name: 'DataGuard', flag: '🇩🇪', val: '€341 Mio.' },
|
||||
{ name: 'Proliance', flag: '🇩🇪', val: 'Pre-Seed' },
|
||||
{ name: 'heyData', flag: '🇩🇪', val: 'Series A' },
|
||||
].map((c, idx) => (
|
||||
<div key={idx} className="flex items-center justify-between text-[10px]">
|
||||
<span className="text-white/70">{c.flag} {c.name}</span>
|
||||
<span className="text-white/40 font-mono text-[9px]">{c.val}</span>
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
</GlassCard>
|
||||
|
||||
<GlassCard delay={0.65} hover={false} className="p-3">
|
||||
<h3 className="text-xs font-bold text-amber-400 uppercase tracking-wider mb-1.5">{es.theAsk} — {amountLabel}</h3>
|
||||
<div className="space-y-0.5 text-xs">
|
||||
<div className="flex justify-between"><span className="text-white/40">TAM</span><span className="text-white/70">{tam ? formatEur(tam.value_eur, lang) : '—'}</span></div>
|
||||
|
||||
Reference in New Issue
Block a user