generated from knso/webklar-preview-template
Zwei Luecken geschlossen: 1. Beim Umbau auf den Generator hatten die Sprachseiten ihren JSON-LD-Block verloren (Regression von mir). Jetzt erzeugt build.js pro Seite ein SoftwareApplication-Schema mit der Beschreibung IN DER JEWEILIGEN SPRACHE — ein deutscher Block auf der tuerkischen Seite waere widerspruechlich. 2. Die Sitemap war eine nackte URL-Liste ohne Sprachinformation. Jetzt traegt jede der 28 Sprachseiten xhtml:link-Angaben fuer alle Alternativen (812 Eintraege). Getrennte Sitemaps je Sprache waeren der falsche Weg — Google erwartet die Alternativen innerhalb einer Sitemap. Sitemap wird ab jetzt vom Generator mitgeschrieben, bleibt also automatisch synchron. Demo- und Ratgeber-URLs bleiben unveraendert erhalten. Geprueft: 38 gueltige JSON-LD-Bloecke, 0 kaputt; Sitemap als XML valide. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
197 lines
9.5 KiB
HTML
197 lines
9.5 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="{{LANG}}"{{DIR}}>
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>{{TITEL}}</title>
|
|
<meta name="description" content="{{BESCHREIBUNG}}">
|
|
<meta name="robots" content="index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1">
|
|
<meta name="theme-color" content="#1d4e89">
|
|
{{HREFLANG}}
|
|
<link rel="canonical" href="{{URL}}">
|
|
<link rel="icon" href="/favicon.svg" type="image/svg+xml">
|
|
<meta property="og:site_name" content="BehördenKlar">
|
|
<meta property="og:type" content="website">
|
|
<meta property="og:locale" content="{{LOCALE}}">
|
|
<meta property="og:url" content="{{URL}}">
|
|
<meta property="og:title" content="{{OG_TITEL}}">
|
|
<meta property="og:description" content="{{OG_BESCHREIBUNG}}">
|
|
<meta property="og:image" content="https://behoerdenklar.de/vorschau.png">
|
|
<meta property="og:image:width" content="1200">
|
|
<meta property="og:image:height" content="630">
|
|
<meta name="twitter:card" content="summary_large_image">
|
|
<style>
|
|
:root {
|
|
--papier: #faf7f0; --papier-dunkel: #f1ecdf; --tinte: #21211d;
|
|
--grau: #6b675e; --amtsblau: #1d4e89; --stempelrot: #b3372b;
|
|
--marker: #ffe66b; --gruen: #2e7d4f; color-scheme: light;
|
|
}
|
|
* { margin: 0; padding: 0; box-sizing: border-box; }
|
|
html { scroll-behavior: smooth; }
|
|
body {
|
|
font-family: Georgia, 'Times New Roman', serif;
|
|
background: repeating-linear-gradient(0deg, transparent 0 34px, rgba(33,33,29,0.025) 34px 35px), var(--papier);
|
|
color: var(--tinte); line-height: 1.7; font-size: 17px;
|
|
}
|
|
.mono { font-family: 'Courier New', ui-monospace, monospace; letter-spacing: 0.02em; }
|
|
.wrap { max-width: 720px; margin: 0 auto; padding: 0 20px 72px; }
|
|
.briefkopf {
|
|
display: flex; justify-content: space-between; align-items: baseline;
|
|
padding: 20px 0 12px; border-bottom: 2px solid var(--tinte); font-size: 14px;
|
|
}
|
|
.briefkopf .absender { font-weight: 700; font-size: 16px; }
|
|
.briefkopf .az { color: var(--grau); font-size: 13px; }
|
|
.sprachen { padding: 12px 0 0; font-size: 15px; color: var(--grau); display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: center; }{{WAEHLER_CSS}}
|
|
header { padding: 40px 0 8px; }
|
|
h1 { font-size: clamp(30px, 6vw, 46px); line-height: 1.15; font-weight: 700; }
|
|
.markiert {
|
|
background: linear-gradient(104deg, transparent 2%, var(--marker) 4%, var(--marker) 96%, transparent 98%);
|
|
padding: 0 6px; box-decoration-break: clone; -webkit-box-decoration-break: clone;
|
|
}
|
|
.intro { margin-top: 22px; font-size: 18px; max-width: 580px; }
|
|
.hero-fuss { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; margin-top: 28px; }
|
|
.cta {
|
|
display: inline-block; padding: 16px 28px; background: var(--amtsblau); color: #fff;
|
|
text-decoration: none; font-family: inherit; font-size: 17px; font-weight: 700;
|
|
border: 2px solid var(--tinte); box-shadow: 5px 5px 0 var(--tinte);
|
|
transition: transform .12s ease, box-shadow .12s ease;
|
|
}
|
|
.cta:hover { transform: translate(2px,2px); box-shadow: 3px 3px 0 var(--tinte); }
|
|
.stempel {
|
|
display: inline-block; padding: 7px 14px; border: 2.5px solid var(--stempelrot);
|
|
color: var(--stempelrot); font-family: 'Courier New', ui-monospace, monospace;
|
|
font-weight: 700; font-size: 14px; letter-spacing: .1em; text-transform: uppercase;
|
|
transform: rotate(-4deg); opacity: .9;
|
|
}
|
|
section { margin-top: 56px; }
|
|
h2 {
|
|
font-size: 15px; text-transform: uppercase; letter-spacing: .14em; color: var(--grau);
|
|
font-weight: 400; margin-bottom: 18px; display: flex; align-items: center; gap: 12px;
|
|
}
|
|
h2::after { content: ''; flex: 1; border-top: 1px solid rgba(33,33,29,.25); }
|
|
.verwandlung { display: grid; gap: 14px; }
|
|
.brief-karte {
|
|
background: #fff; border: 1px solid rgba(33,33,29,.28); padding: 22px 24px;
|
|
position: relative; box-shadow: 4px 5px 0 rgba(33,33,29,.08);
|
|
}
|
|
.brief-karte.amtsdeutsch { transform: rotate(-.7deg); background: var(--papier-dunkel); }
|
|
.brief-karte.klartext { transform: rotate(.5deg); }
|
|
.karten-label {
|
|
position: absolute; top: -12px; inset-inline-start: 16px;
|
|
font-family: 'Courier New', ui-monospace, monospace; font-size: 12px;
|
|
text-transform: uppercase; letter-spacing: .1em;
|
|
background: var(--tinte); color: var(--papier); padding: 3px 10px;
|
|
}
|
|
.brief-karte.klartext .karten-label { background: var(--gruen); }
|
|
.amtsdeutsch p { font-family: 'Courier New', ui-monospace, monospace; font-size: 15px; direction: ltr; text-align: start; }
|
|
.pfeil { text-align: center; color: var(--grau); font-size: 15px; margin: 4px 0; }
|
|
.hinweis { margin-top: 18px; font-size: 15.5px; color: var(--grau); }
|
|
.schritte { display: grid; gap: 14px; }
|
|
.schritt { background: #fff; border: 1px solid rgba(33,33,29,.28); padding: 16px 20px; }
|
|
.schritt strong { font-weight: 700; }
|
|
.schritt span { color: var(--grau); }
|
|
.antrag {
|
|
background: #fff; border: 2px solid var(--tinte); box-shadow: 7px 8px 0 rgba(33,33,29,.9);
|
|
padding: 30px 28px; position: relative; margin-top: 8px;
|
|
}
|
|
.antrag .formular-kopf {
|
|
font-family: 'Courier New', ui-monospace, monospace; font-size: 13px;
|
|
text-transform: uppercase; letter-spacing: .1em; color: var(--grau); margin-bottom: 6px;
|
|
}
|
|
.antrag h3 { font-size: 26px; line-height: 1.25; }
|
|
.antrag p { margin-top: 12px; max-width: 540px; }
|
|
.bonus {
|
|
margin: 18px 0; padding: 14px 16px; font-size: 17px;
|
|
background: linear-gradient(104deg, transparent 1%, var(--marker) 3%, var(--marker) 97%, transparent 99%);
|
|
}
|
|
.antrag .klein { font-size: 13.5px; color: var(--grau); margin-top: 14px; }
|
|
.antrag .klein a { color: var(--grau); }
|
|
a { color: var(--amtsblau); }
|
|
footer { margin-top: 56px; padding-top: 14px; border-top: 2px solid var(--tinte); font-size: 14.5px; color: var(--grau); }
|
|
.wl-form { display: flex; flex-direction: column; gap: 12px; margin-top: 4px; }
|
|
.wl-input {
|
|
width: 100%; padding: 15px 16px; font-size: 17px; font-family: inherit;
|
|
border: 2px solid var(--tinte); background: #fff; color: var(--tinte);
|
|
}
|
|
.wl-input::placeholder { color: #9a958a; }
|
|
.wl-btn { width: 100%; cursor: pointer; text-align: center; font-family: inherit; }
|
|
</style>
|
|
<script type="application/ld+json">
|
|
{{SCHEMA}}
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<div class="wrap">
|
|
<div class="briefkopf">
|
|
<span class="absender">📬 BehördenKlar <span style="font-weight:400;font-size:.62em;opacity:.6;letter-spacing:.04em;">by Webklar</span></span>
|
|
<span class="az mono">Az: KLAR-01/2026</span>
|
|
</div>
|
|
{{WAEHLER}}
|
|
|
|
<header>
|
|
<h1>{{H1_A}}<br><span class="markiert">{{H1_B}}</span></h1>
|
|
<p class="intro">{{INTRO}}</p>
|
|
<div class="hero-fuss">
|
|
<a class="cta" href="#anmelden">{{CTA_HERO}} →</a>
|
|
<span class="stempel">{{STEMPEL}}</span>
|
|
</div>
|
|
</header>
|
|
|
|
<section>
|
|
<h2>§ 1 {{S1_TITEL}}</h2>
|
|
<div class="verwandlung">
|
|
<div class="brief-karte amtsdeutsch">
|
|
<span class="karten-label">{{VORHER_LABEL}}</span>
|
|
<p>
|
|
„Gemäß § 32 SGB II wird bei Nichterscheinen ohne wichtigen Grund
|
|
eine Minderung des maßgebenden Regelbedarfs in Höhe von 10 vom
|
|
Hundert festgestellt."
|
|
</p>
|
|
</div>
|
|
<p class="pfeil">— 📷 {{PFEIL}} —</p>
|
|
<div class="brief-karte klartext">
|
|
<span class="karten-label">{{NACHHER_LABEL}}</span>
|
|
<p>{{NACHHER_TEXT}}</p>
|
|
</div>
|
|
</div>
|
|
<p class="hinweis">{{HINWEIS}}</p>
|
|
</section>
|
|
|
|
<section>
|
|
<h2>§ 2 {{S2_TITEL}}</h2>
|
|
<div class="schritte">
|
|
<div class="schritt"><div><strong>{{SCHRITT1_T}}</strong> <span>{{SCHRITT1_B}}</span></div></div>
|
|
<div class="schritt"><div><strong>{{SCHRITT2_T}}</strong> <span>{{SCHRITT2_B}}</span></div></div>
|
|
<div class="schritt"><div><strong>{{SCHRITT3_T}}</strong> <span>{{SCHRITT3_B}}</span></div></div>
|
|
</div>
|
|
</section>
|
|
|
|
<section id="anmelden">
|
|
<h2>§ 3 {{S3_TITEL}}</h2>
|
|
<div class="antrag">
|
|
<p class="formular-kopf">{{FORMULAR_KOPF}}</p>
|
|
<h3>{{FORM_H3}}</h3>
|
|
<p>{{FORM_TEXT}}</p>
|
|
<p class="bonus">🎁 {{BONUS}}</p>
|
|
<form class="wl-form" action="{{BREVO}}" method="POST">
|
|
<input class="wl-input" type="email" name="EMAIL" placeholder="{{EMAIL_PLATZHALTER}}" required autocomplete="email">
|
|
<input type="text" name="email_address_check" value="" style="position:absolute; left:-5000px;" tabindex="-1" autocomplete="off" aria-hidden="true">
|
|
<input type="hidden" name="locale" value="de">
|
|
<input type="hidden" name="html_type" value="simple">
|
|
<button class="cta wl-btn" type="submit">{{CTA_FORM}} →</button>
|
|
</form>
|
|
<p class="klein">{{KLEIN}} <a href="datenschutz.html">{{DATENSCHUTZ}}</a>.</p>
|
|
</div>
|
|
</section>
|
|
|
|
<footer>
|
|
{{FUSS_FRAGE}} 📧 <a href="mailto:behoerdenbriefhelfer@gmail.com">behoerdenbriefhelfer@gmail.com</a>
|
|
· <a href="impressum.html">{{IMPRESSUM}}</a>
|
|
· <a href="datenschutz.html">{{DATENSCHUTZ}}</a>
|
|
</footer>
|
|
</div>
|
|
<!-- Cloudflare Web Analytics: cookielose Reichweitenmessung, keine Nutzer-Profile -->
|
|
<script type='module' src='https://static.cloudflareinsights.com/beacon.min.js' data-cf-beacon='{"token": "11f017e9a707466b9151921db6125dde"}'></script>
|
|
</body>
|
|
</html>
|