generated from knso/webklar-preview-template
tools/sprachseiten/ enthaelt jetzt vorlage.html + texte.js + build.js. 'node tools/sprachseiten/build.js' erzeugt alle 27 Sprachseiten und pflegt hreflang + Sprachwaehler auch in der handgemachten index.html nach. Warum ein Generator: 28 Seiten von Hand zu pflegen heisst, jede kuenftige Aenderung 28-mal zu machen. So ist es eine Aenderung an einer Stelle. Neue Sprachen u. a. Rumaenisch, Kurdisch (Kurmanci), Bulgarisch, Kroatisch, Serbisch, Bosnisch, Albanisch, Italienisch, Griechisch, Vietnamesisch, Hindi, Urdu, Paschtu, Tigrinya, Somali, Chinesisch. Sprachleiste ist jetzt ein Aufklappmenue — 28 Links nebeneinander waeren unbenutzbar, besonders auf dem Handy. Google findet die Seiten weiter ueber hreflang (28 + x-default, auf jeder Seite identisch) und die Sitemap (38 URLs). Ausserdem: Hinweis in beiden Kauf-Boxen, warum sich die E-Mail-Angabe lohnt (Zugangs-Link -> Guthaben auf jedem Geraet nutzbar). Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
194 lines
9.4 KiB
HTML
194 lines
9.4 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>
|
|
</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>
|