Files
onepager/sites/kainco.de/index.html
m 5c92a7b021 feat: i18n annotations — data-de/data-en + toggle for all 54 custom sites
Phase 2 of i18n rollout:
- All 54 static custom sites now have data-de/data-en attributes on
  visible text elements with English translations
- i18n.js script tag injected into all sites
- Language toggle button with machine-translation disclaimer added
  to every site's footer area
- Brand names / domain wordplay preserved unchanged in both languages
- 2 dynamic sites (dasbes.de, dumusst.com) skipped — no static HTML
2026-04-01 13:19:40 +02:00

622 lines
23 KiB
HTML

<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>KeinCo.de — Kein Code. Nur Ergebnisse.</title>
<meta name="description" content="KeinCo.de — Du beschreibst das Problem, KI baut die Loesung. Kein Code, kein No-Code-Tool. Einfach Ergebnisse.">
<link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><text y='.9em' font-size='90'>K</text></svg>">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap" rel="stylesheet">
<style>
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
:root {
--bg: #08090c;
--bg-elevated: #0e1014;
--bg-card: #12141a;
--border: #1a1d25;
--border-hover: #252830;
--text: #e4e5ea;
--text-secondary: #9496a1;
--text-muted: #505264;
--accent: #2dd4bf;
--accent-light: #5eead4;
--accent-glow: rgba(45, 212, 191, 0.15);
--accent-glow-strong: rgba(45, 212, 191, 0.25);
--accent-subtle: rgba(45, 212, 191, 0.06);
}
html { scroll-behavior: smooth; }
body {
font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
background: var(--bg);
color: var(--text);
line-height: 1.6;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
overflow-x: hidden;
}
/* Subtle grain overlay */
body::after {
content: '';
position: fixed;
inset: 0;
background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.7' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.025'/%3E%3C/svg%3E");
pointer-events: none;
z-index: 9999;
}
.container {
max-width: 900px;
margin: 0 auto;
padding: 0 28px;
}
/* ---- NAV ---- */
nav {
position: fixed;
top: 0;
left: 0;
right: 0;
z-index: 100;
padding: 18px 0;
background: rgba(8, 9, 12, 0.85);
backdrop-filter: blur(24px);
-webkit-backdrop-filter: blur(24px);
border-bottom: 1px solid var(--border);
}
nav .container {
display: flex;
justify-content: space-between;
align-items: center;
}
.nav-brand {
font-size: 1.05rem;
font-weight: 600;
letter-spacing: -0.01em;
color: var(--text);
}
.nav-brand .hi {
color: var(--accent);
font-weight: 700;
}
.nav-brand .dim {
color: var(--text-muted);
}
nav a.nav-link {
color: var(--text-secondary);
text-decoration: none;
font-size: 0.84rem;
font-weight: 500;
transition: color 0.2s;
}
nav a.nav-link:hover {
color: var(--text);
}
/* ---- HERO ---- */
.hero {
padding: 200px 0 140px;
text-align: center;
position: relative;
}
.hero::before {
content: '';
position: absolute;
top: 40px;
left: 50%;
transform: translateX(-50%);
width: 800px;
height: 600px;
background: radial-gradient(ellipse at center, var(--accent-glow) 0%, rgba(45, 212, 191, 0.04) 40%, transparent 70%);
pointer-events: none;
}
.hero-badge {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 7px 18px;
border: 1px solid var(--border);
border-radius: 100px;
font-size: 0.72rem;
font-weight: 600;
color: var(--text-secondary);
letter-spacing: 0.08em;
text-transform: uppercase;
margin-bottom: 40px;
background: var(--bg-elevated);
}
.hero-badge .dot {
width: 6px;
height: 6px;
background: var(--accent);
border-radius: 50%;
box-shadow: 0 0 10px var(--accent-glow-strong);
animation: pulse 2.5s ease-in-out infinite;
}
@keyframes pulse {
0%, 100% { opacity: 1; }
50% { opacity: 0.35; }
}
.brand-main {
font-size: clamp(3.5rem, 8vw, 6.5rem);
font-weight: 800;
letter-spacing: -0.05em;
line-height: 1;
margin-bottom: 8px;
position: relative;
}
.brand-main .hi {
color: var(--accent);
text-shadow: 0 0 40px var(--accent-glow-strong);
}
.brand-tld {
font-size: clamp(1.5rem, 3.5vw, 2.8rem);
font-weight: 300;
color: var(--text-muted);
letter-spacing: -0.02em;
margin-bottom: 36px;
}
.tagline {
font-size: clamp(1.15rem, 2.5vw, 1.55rem);
font-weight: 400;
color: var(--text-secondary);
margin-bottom: 16px;
letter-spacing: -0.01em;
}
.tagline strong {
color: var(--text);
font-weight: 600;
}
.hero-desc {
font-size: 1.05rem;
color: var(--text-muted);
max-width: 500px;
margin: 0 auto 48px;
line-height: 1.7;
font-weight: 400;
}
.cta-row {
display: flex;
gap: 14px;
justify-content: center;
flex-wrap: wrap;
}
.btn {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 14px 30px;
border-radius: 10px;
font-size: 0.88rem;
font-weight: 600;
text-decoration: none;
transition: all 0.2s ease;
border: none;
cursor: pointer;
font-family: inherit;
}
.btn-accent {
background: var(--accent);
color: #08090c;
box-shadow: 0 0 30px var(--accent-glow), 0 1px 0 rgba(255,255,255,0.1) inset;
}
.btn-accent:hover {
background: var(--accent-light);
transform: translateY(-1px);
box-shadow: 0 0 50px var(--accent-glow-strong), 0 1px 0 rgba(255,255,255,0.15) inset;
}
.btn-outline {
background: transparent;
color: var(--text-secondary);
border: 1px solid var(--border);
}
.btn-outline:hover {
color: var(--text);
border-color: var(--border-hover);
background: var(--bg-elevated);
}
/* ---- DIVIDER ---- */
.divider {
height: 1px;
background: var(--border);
max-width: 900px;
margin: 0 auto;
}
/* ---- SECTION COMMON ---- */
section {
padding: 100px 0;
}
.section-label {
font-size: 0.7rem;
font-weight: 700;
letter-spacing: 0.14em;
text-transform: uppercase;
color: var(--accent);
margin-bottom: 16px;
}
h2 {
font-size: clamp(1.6rem, 3vw, 2rem);
font-weight: 700;
letter-spacing: -0.03em;
margin-bottom: 16px;
line-height: 1.2;
}
.section-desc {
color: var(--text-secondary);
font-size: 1rem;
max-width: 540px;
margin-bottom: 56px;
font-weight: 400;
line-height: 1.7;
}
/* ---- PROBLEM / SOLUTION ---- */
.contrast {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 20px;
}
.contrast-card {
background: var(--bg-card);
border: 1px solid var(--border);
border-radius: 14px;
padding: 36px;
position: relative;
overflow: hidden;
}
.contrast-card.old {
opacity: 0.7;
}
.contrast-card.old::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(135deg, transparent 60%, rgba(8, 9, 12, 0.5));
pointer-events: none;
}
.contrast-card.new {
border-color: rgba(45, 212, 191, 0.2);
box-shadow: 0 0 40px rgba(45, 212, 191, 0.05);
}
.contrast-label {
font-size: 0.68rem;
font-weight: 700;
letter-spacing: 0.12em;
text-transform: uppercase;
margin-bottom: 20px;
}
.contrast-card.old .contrast-label {
color: var(--text-muted);
}
.contrast-card.new .contrast-label {
color: var(--accent);
}
.contrast-card h3 {
font-size: 1.15rem;
font-weight: 700;
margin-bottom: 14px;
letter-spacing: -0.02em;
}
.contrast-card ul {
list-style: none;
padding: 0;
}
.contrast-card ul li {
position: relative;
padding-left: 20px;
margin-bottom: 10px;
font-size: 0.88rem;
line-height: 1.5;
color: var(--text-secondary);
}
.contrast-card.old ul li::before {
content: '\2013';
position: absolute;
left: 0;
color: var(--text-muted);
}
.contrast-card.new ul li::before {
content: '\2713';
position: absolute;
left: 0;
color: var(--accent);
font-weight: 700;
}
.contrast-card.old ul li {
color: var(--text-muted);
text-decoration: line-through;
text-decoration-color: var(--text-muted);
}
/* ---- STEPS ---- */
.steps {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 20px;
counter-reset: step;
}
.step {
background: var(--bg-card);
border: 1px solid var(--border);
border-radius: 14px;
padding: 36px 28px;
counter-increment: step;
transition: border-color 0.3s, box-shadow 0.3s;
}
.step:hover {
border-color: var(--border-hover);
box-shadow: 0 8px 40px rgba(0, 0, 0, 0.3);
}
.step-number {
display: flex;
align-items: center;
justify-content: center;
width: 36px;
height: 36px;
border-radius: 10px;
background: var(--accent-subtle);
border: 1px solid rgba(45, 212, 191, 0.12);
color: var(--accent);
font-size: 0.82rem;
font-weight: 700;
margin-bottom: 20px;
}
.step h3 {
font-size: 1rem;
font-weight: 700;
margin-bottom: 8px;
letter-spacing: -0.01em;
}
.step p {
color: var(--text-secondary);
font-size: 0.86rem;
line-height: 1.6;
}
/* ---- CAPABILITIES GRID ---- */
.capabilities-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 16px;
}
.cap-card {
background: var(--bg-card);
border: 1px solid var(--border);
border-radius: 14px;
padding: 32px;
transition: border-color 0.3s, box-shadow 0.3s;
}
.cap-card:hover {
border-color: var(--border-hover);
box-shadow: 0 8px 40px rgba(0, 0, 0, 0.3);
}
.cap-icon {
width: 40px;
height: 40px;
border-radius: 10px;
background: var(--accent-subtle);
border: 1px solid rgba(45, 212, 191, 0.12);
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 20px;
font-size: 1.1rem;
}
.cap-card h3 {
font-size: 0.98rem;
font-weight: 700;
margin-bottom: 8px;
}
.cap-card p {
color: var(--text-secondary);
font-size: 0.84rem;
line-height: 1.6;
}
/* ---- FOOTER ---- */
footer {
padding: 48px 0;
text-align: center;
border-top: 1px solid var(--border);
}
footer .footer-brand {
font-size: 1rem;
font-weight: 600;
margin-bottom: 8px;
color: var(--text);
}
footer .footer-brand .hi {
color: var(--accent);
}
footer .footer-sub {
color: var(--text-muted);
font-size: 0.78rem;
}
/* ---- RESPONSIVE ---- */
@media (max-width: 768px) {
.hero { padding: 160px 0 100px; }
section { padding: 72px 0; }
.contrast { grid-template-columns: 1fr; }
.steps { grid-template-columns: 1fr; }
.capabilities-grid { grid-template-columns: 1fr; }
.contrast-card { padding: 28px; }
.step { padding: 28px 24px; }
}
@media (max-width: 480px) {
.hero { padding: 140px 0 80px; }
.container { padding: 0 20px; }
.brand-main { letter-spacing: -0.04em; }
}
</style>
</head>
<body>
<!-- NAV -->
<nav>
<div class="container">
<div class="nav-brand"><span class="hi">K</span>e<span class="hi">I</span>nCo<span class="dim">.de</span></div>
<a href="mailto:kainco@msbls.de?subject=KeinCo.de%20%E2%80%94%20Interesse" class="nav-link" data-de="Kontakt" data-en="Contact">Kontakt</a>
</div>
</nav>
<!-- HERO -->
<section class="hero">
<div class="container">
<div class="hero-badge" data-de="Coming Soon" data-en="Coming Soon">
<span class="dot"></span>
Coming Soon
</div>
<div class="brand-main"><span class="hi">K</span>e<span class="hi">I</span>nCo</div>
<div class="brand-tld">.de</div>
<div class="tagline" data-de="&lt;strong&gt;Kein Code.&lt;/strong&gt; Nur Ergebnisse." data-en="&lt;strong&gt;No code.&lt;/strong&gt; Just results."><strong>Kein Code.</strong> Nur Ergebnisse.</div>
<p class="hero-desc" data-de="Du beschreibst das Problem. KI baut die Loesung. Kein Framework, kein No-Code-Tool, kein Entwickler noetig." data-en="You describe the problem. AI builds the solution. No framework, no no-code tool, no developer needed.">
Du beschreibst das Problem. KI baut die Loesung. Kein Framework, kein No-Code-Tool, kein Entwickler noetig.
</p>
<div class="cta-row">
<a href="mailto:kainco@msbls.de?subject=KeinCo.de%20%E2%80%94%20Interesse" class="btn btn-accent" data-de="Zugang anfragen" data-en="Request access">Zugang anfragen</a>
<a href="#so-gehts" class="btn btn-outline" data-de="So funktioniert's" data-en="How it works">So funktioniert's</a>
</div>
</div>
</section>
<div class="divider"></div>
<!-- PROBLEM / SOLUTION -->
<section>
<div class="container">
<div class="section-label" data-de="Das Problem" data-en="The Problem">Das Problem</div>
<h2 data-de="Du hast eine Idee. Du brauchst keinen Entwickler." data-en="You have an idea. You don't need a developer.">Du hast eine Idee. Du brauchst keinen Entwickler.</h2>
<div class="section-desc" data-de="Bisher hiess Software bauen: Entwickler suchen, Wochen warten, Budget verbrennen. Oder sich durch No-Code-Tools kaempfen, die am Ende doch nicht reichen." data-en="Until now, building software meant: finding developers, waiting weeks, burning budget. Or struggling through no-code tools that never quite cut it.">
Bisher hiess Software bauen: Entwickler suchen, Wochen warten, Budget verbrennen. Oder sich durch No-Code-Tools kaempfen, die am Ende doch nicht reichen.
</div>
<div class="contrast">
<div class="contrast-card old">
<div class="contrast-label" data-de="Bisher" data-en="Before">Bisher</div>
<h3 data-de="Der klassische Weg" data-en="The classic way">Der klassische Weg</h3>
<ul>
<li data-de="Entwickler briefen" data-en="Brief a developer">Entwickler briefen</li>
<li data-de="Wochen auf Ergebnis warten" data-en="Wait weeks for results">Wochen auf Ergebnis warten</li>
<li data-de="Aenderungen kosten extra" data-en="Changes cost extra">Aenderungen kosten extra</li>
<li data-de="No-Code-Tools mit Workarounds" data-en="No-code tools with workarounds">No-Code-Tools mit Workarounds</li>
<li data-de="Ergebnis passt nie ganz" data-en="Result never quite fits">Ergebnis passt nie ganz</li>
</ul>
</div>
<div class="contrast-card new">
<div class="contrast-label" data-de="Mit KeinCo.de" data-en="With KeinCo.de">Mit KeinCo.de</div>
<h3 data-de="Der KI-Weg" data-en="The AI way">Der KI-Weg</h3>
<ul>
<li data-de="Problem beschreiben, fertig" data-en="Describe the problem, done">Problem beschreiben, fertig</li>
<li data-de="Ergebnis in Minuten, nicht Wochen" data-en="Results in minutes, not weeks">Ergebnis in Minuten, nicht Wochen</li>
<li data-de="Anpassen durch Feedback" data-en="Adjust through feedback">Anpassen durch Feedback</li>
<li data-de="Keine Tools lernen" data-en="No tools to learn">Keine Tools lernen</li>
<li data-de="Genau das, was du brauchst" data-en="Exactly what you need">Genau das, was du brauchst</li>
</ul>
</div>
</div>
</div>
</section>
<div class="divider"></div>
<!-- HOW IT WORKS -->
<section id="so-gehts">
<div class="container">
<div class="section-label" data-de="So funktioniert's" data-en="How it works">So funktioniert's</div>
<h2 data-de="Drei Schritte. Kein Code." data-en="Three steps. No code.">Drei Schritte. Kein Code.</h2>
<div class="section-desc" data-de="Du redest. KI arbeitet. Du bekommst das Ergebnis." data-en="You talk. AI works. You get the result.">
Du redest. KI arbeitet. Du bekommst das Ergebnis.
</div>
<div class="steps">
<div class="step">
<div class="step-number">01</div>
<h3 data-de="Beschreiben" data-en="Describe">Beschreiben</h3>
<p data-de="Erklaer in deinen Worten, was du brauchst. Kein Fachwissen noetig, kein Pflichtenheft, keine Spezifikation." data-en="Explain in your own words what you need. No expertise required, no spec sheet, no specification.">Erklaer in deinen Worten, was du brauchst. Kein Fachwissen noetig, kein Pflichtenheft, keine Spezifikation.</p>
</div>
<div class="step">
<div class="step-number">02</div>
<h3 data-de="KI baut" data-en="AI builds">KI baut</h3>
<p data-de="Kuenstliche Intelligenz entwirft, programmiert und testet die Loesung. Du siehst den Fortschritt und gibst Feedback." data-en="Artificial intelligence designs, programs and tests the solution. You watch the progress and give feedback.">Kuenstliche Intelligenz entwirft, programmiert und testet die Loesung. Du siehst den Fortschritt und gibst Feedback.</p>
</div>
<div class="step">
<div class="step-number">03</div>
<h3 data-de="Laeuft" data-en="Done">Laeuft</h3>
<p data-de="Deine Loesung wird deployed und ist sofort einsatzbereit. Hosting, Wartung, Updates — alles inklusive." data-en="Your solution is deployed and immediately ready to use. Hosting, maintenance, updates — all included.">Deine Loesung wird deployed und ist sofort einsatzbereit. Hosting, Wartung, Updates — alles inklusive.</p>
</div>
</div>
</div>
</section>
<div class="divider"></div>
<!-- WHAT'S POSSIBLE -->
<section>
<div class="container">
<div class="section-label" data-de="Was moeglich ist" data-en="What's possible">Was moeglich ist</div>
<h2 data-de="Alles, wofuer man frueher Code brauchte." data-en="Everything that used to require code.">Alles, wofuer man frueher Code brauchte.</h2>
<div class="section-desc" data-de="Von der einfachen Landing Page bis zur komplexen Daten-Pipeline. KI kennt keine Grenzen des Drag-and-Drop." data-en="From a simple landing page to a complex data pipeline. AI knows no drag-and-drop limits.">
Von der einfachen Landing Page bis zur komplexen Daten-Pipeline. KI kennt keine Grenzen des Drag-and-Drop.
</div>
<div class="capabilities-grid">
<div class="cap-card">
<div class="cap-icon">
<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="color:var(--accent)"><rect x="3" y="3" width="18" height="18" rx="2"/><path d="M3 9h18"/><path d="M9 21V9"/></svg>
</div>
<h3 data-de="Websites und Web-Apps" data-en="Websites and web apps">Websites und Web-Apps</h3>
<p data-de="Landing Pages, Dashboards, interne Tools, Kundenportale — responsive, modern, deployed." data-en="Landing pages, dashboards, internal tools, customer portals — responsive, modern, deployed.">Landing Pages, Dashboards, interne Tools, Kundenportale — responsive, modern, deployed.</p>
</div>
<div class="cap-card">
<div class="cap-icon">
<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="color:var(--accent)"><polyline points="16 3 21 3 21 8"/><line x1="4" y1="20" x2="21" y2="3"/><polyline points="21 16 21 21 16 21"/><line x1="15" y1="15" x2="21" y2="21"/><line x1="4" y1="4" x2="9" y2="9"/></svg>
</div>
<h3 data-de="Automatisierungen" data-en="Automations">Automatisierungen</h3>
<p data-de="Wiederkehrende Aufgaben, Workflows, Benachrichtigungen — laeuft im Hintergrund, zuverlaessig, ohne Aufwand." data-en="Recurring tasks, workflows, notifications — runs in the background, reliably, without effort.">Wiederkehrende Aufgaben, Workflows, Benachrichtigungen — laeuft im Hintergrund, zuverlaessig, ohne Aufwand.</p>
</div>
<div class="cap-card">
<div class="cap-icon">
<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="color:var(--accent)"><ellipse cx="12" cy="5" rx="9" ry="3"/><path d="M21 12c0 1.66-4 3-9 3s-9-1.34-9-3"/><path d="M3 5v14c0 1.66 4 3 9 3s9-1.34 9-3V5"/></svg>
</div>
<h3 data-de="Daten-Pipelines" data-en="Data pipelines">Daten-Pipelines</h3>
<p data-de="CSVs verarbeiten, APIs anbinden, Datenbanken fuellen. Strukturiert, sauber, automatisch." data-en="Process CSVs, connect APIs, fill databases. Structured, clean, automatic.">CSVs verarbeiten, APIs anbinden, Datenbanken fuellen. Strukturiert, sauber, automatisch.</p>
</div>
<div class="cap-card">
<div class="cap-icon">
<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="color:var(--accent)"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"/><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"/></svg>
</div>
<h3 data-de="Integrationen" data-en="Integrations">Integrationen</h3>
<p data-de="E-Mail, Kalender, CRM, Slack, APIs — alles verbinden, ohne Zapier, ohne Webhook-Gefummel." data-en="Email, calendar, CRM, Slack, APIs — connect everything, no Zapier, no webhook fiddling.">E-Mail, Kalender, CRM, Slack, APIs — alles verbinden, ohne Zapier, ohne Webhook-Gefummel.</p>
</div>
</div>
</div>
</section>
<div class="divider"></div>
<!-- FOOTER -->
<footer>
<div class="container">
<div class="footer-brand"><span class="hi">K</span>e<span class="hi">I</span>nCo<span style="color:var(--text-muted)">.de</span></div>
<p class="footer-sub" data-de="Kein Code. Nur Ergebnisse. — Ein Projekt von msbls.de" data-en="No code. Just results. — A project by msbls.de">Kein Code. Nur Ergebnisse. — Ein Projekt von msbls.de</p>
<button data-i18n-toggle style="margin-top:16px;background:none;border:1px solid var(--border);color:var(--text-secondary);padding:6px 14px;border-radius:6px;font-size:0.75rem;cursor:pointer;font-family:inherit;letter-spacing:0.06em;">EN</button>
</div>
</footer>
<script src="/shared/i18n.js"></script>
</body>
</html>