/* Ergänzung zu den übernommenen Prototyp-Stylesheets (seiten-basis.css, pages.css): Newsletter-Bereich im Fuß der echten
   Website sowie die serverseitigen Teile der Formulare Kontakt und Newsletter. Der Prototyp zeigt dort Demo-Formulare; die
   Website braucht zusätzlich Einwilligung (Double-Opt-In), Honigtopf, Fehler- und Erfolgsmeldungen und einen Hinweis zum Testtext.
   Nutzt nur Tokens des Prototyps; keine Inline-Styles, keine externen Ressourcen. */
.brand--light,
.brand--light:hover { color: var(--z-ink); }
.newsletter__consent { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 0 10px; align-items: start; margin: 12px 0 0; font-size: 0.8125rem; line-height: 1.5; color: var(--z-body); }
.newsletter__consent input { width: 20px; height: 20px; margin: 1px 0 0; accent-color: var(--z-link); }
.newsletter__consent label { margin: 0; }
.newsletter__more { margin: 0; }
.newsletter__hint a { font-weight: 600; }
.form-hp { position: absolute; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden; }
.site-footer a:focus-visible { outline: 3px solid var(--z-link); outline-offset: 2px; }

/* Formularseiten Kontakt und Newsletter: Meldungen, Einwilligung, Hinweis zum Testtext (Farben wie field__error des Prototyps) */
.form-notice { margin: 0 0 18px; padding: 12px 16px; border: 1px solid transparent; border-radius: var(--z-radius-sm); }
.form-notice p { margin: 0; font-weight: 600; }
.form-notice--success { background: #ECFDF3; border-color: #05603A; color: #05603A; }
.form-notice--error { background: #FEF3F2; border-color: #B3261E; color: #B3261E; }
.form-legal { margin: 0 0 18px; padding: 12px 16px; background: var(--z-soft); border-left: 4px solid var(--z-link); border-radius: 0 var(--z-radius-sm) var(--z-radius-sm) 0; font-size: 0.9375rem; }
.form-legal p { margin: 0 0 8px; }
.form-legal p:last-child { margin-bottom: 0; }
.form-legal__marker { color: var(--z-muted); font-style: italic; }
.field--check { display: grid; grid-template-columns: 24px minmax(0, 1fr); gap: 0 12px; align-items: start; }
.field--check input { width: 24px; height: 24px; margin: 2px 0 0; accent-color: var(--z-link); }
.field--check input:focus-visible { outline: 3px solid var(--z-link); outline-offset: 2px; }
.field--check label { margin: 0; font-weight: 400; color: var(--z-body); }
.field--check .field__error { grid-column: 2; }
.form-panel__actions { margin: 24px 0 0; }
