/* Impressum und Datenschutz – schlicht, in den Farben und Schriften der Webseite.
   Gelb markierte Stellen (.luecke) sind noch auszufüllen, orange umrandete (.pruefen) zu prüfen. */
@font-face { font-family: 'Fraunces'; font-weight: 100 900; font-display: swap; src: url(fraunces-latin-wght-normal.woff2) format('woff2'); }
@font-face { font-family: 'Instrument Sans'; font-weight: 400 700; font-display: swap; src: url(instrument-sans-latin-wght-normal.woff2) format('woff2'); }
:root { --grund: #f5efe4; --papier: #ffffff; --tinte: #110f10; --nebel: #4a4244; --rot: #661722; --rand: #dfd0be; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--grund); color: var(--tinte); font: 400 17px/1.6 'Instrument Sans', system-ui, sans-serif; }
a { color: var(--rot); }
.kopf { display: flex; flex-wrap: wrap; gap: 12px 24px; justify-content: space-between; align-items: center; max-width: 820px; margin: 0 auto; padding: 24px 20px; }
.kopf .marke { font-family: 'Fraunces', Georgia, serif; font-size: 24px; text-decoration: none; color: var(--tinte); }
.kopf .marke small { display: block; font-family: 'Instrument Sans', sans-serif; font-size: 13px; color: var(--rot); letter-spacing: .02em; }
.kopf nav { display: flex; flex-wrap: wrap; gap: 6px 18px; }
.kopf nav a { color: var(--tinte); text-decoration: none; font-weight: 500; }
.kopf nav a:hover, .kopf nav a[aria-current] { color: var(--rot); }
main { overflow-wrap: anywhere; max-width: 820px; margin: 0 auto 64px; padding: 40px 20px 48px; background: var(--papier); border-radius: 20px; }
@media (min-width: 860px) { main { padding: 56px 64px 64px; } }
h1 { font-family: 'Fraunces', Georgia, serif; font-weight: 400; font-size: clamp(36px, 6vw, 52px); line-height: 1.05; letter-spacing: -.02em; margin: 0 0 24px; }
h2 { font-family: 'Fraunces', Georgia, serif; font-weight: 500; font-size: 24px; line-height: 1.2; margin: 40px 0 8px; }
h3 { font-size: 17px; margin: 24px 0 4px; }
p, ul, address { margin: 0 0 14px; }
address { font-style: normal; }
ul { padding-left: 20px; }
.luecke { background: #ffe14d; color: #1a1400; padding: 1px 6px; border-radius: 4px; font-weight: 600; box-decoration-break: clone; -webkit-box-decoration-break: clone; }
.pruefen { background: #fff1e0; color: #6b2f00; outline: 2px solid #f08c2c; padding: 1px 6px; border-radius: 4px; box-decoration-break: clone; -webkit-box-decoration-break: clone; }
.vorlage { border: 2px dashed #c98a00; background: #fff9db; border-radius: 12px; padding: 16px 18px; margin: 0 0 32px; font-size: 15px; }
.vorlage strong { display: block; font-size: 16px; margin-bottom: 4px; }
.stand { color: var(--nebel); font-size: 15px; margin-top: 40px; }
.fuss { max-width: 820px; margin: 0 auto 40px; padding: 0 20px; color: var(--nebel); font-size: 14px; }
