/*
 * Widerrufsseiten (/vertrag-widerrufen): schlanke Vorlage ohne Bootstrap, Navigation und
 * Tracking. Kontraste: Text #1a1a1a 17,4:1, Hilfetext #4a4a4a 8,9:1, Fehler #b00020 7,3:1,
 * Knopf Weiss auf #8b1e3f 8,9:1 (WCAG 2.1 AA verlangt 4,5:1).
 */
.widerruf-seite {
    margin: 0;
    background-color: #ffffff;
    color: #1a1a1a;
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
    font-size: 1rem;
    line-height: 1.5;
}

.widerruf-rahmen {
    box-sizing: border-box;
    max-width: 42rem;
    margin: 0 auto;
    padding: 0 1rem;
}

.widerruf-kopf {
    border-bottom: 1px solid #d0d0d0;
}

.widerruf-anbieter {
    margin: 0;
    padding: 1rem 0;
    font-weight: 700;
}

.widerruf-inhalt {
    padding-top: 1.5rem;
    padding-bottom: 2rem;
}

.widerruf-inhalt h1 {
    margin: 0 0 1rem;
    font-size: 1.75rem;
    line-height: 1.25;
}

.widerruf-inhalt h2 {
    margin: 1.5rem 0 0.75rem;
    font-size: 1.25rem;
}

.widerruf-feld {
    margin-bottom: 1.25rem;
}

.widerruf-feld label {
    display: block;
    margin-bottom: 0.25rem;
    font-weight: 700;
}

.widerruf-feld input,
.widerruf-feld textarea {
    box-sizing: border-box;
    width: 100%;
    padding: 0.6rem;
    border: 2px solid #5c5c5c;
    border-radius: 0.25rem;
    background-color: #ffffff;
    color: inherit;
    font: inherit;
}

.widerruf-feld input[aria-invalid="true"],
.widerruf-feld textarea[aria-invalid="true"] {
    border-color: #b00020;
}

.widerruf-hilfe {
    margin: 0 0 0.35rem;
    color: #4a4a4a;
    font-size: 0.95rem;
}

.widerruf-fehler {
    margin: 0.35rem 0 0;
    color: #b00020;
    font-weight: 700;
}

.widerruf-fehlerhinweis {
    padding: 0.75rem 1rem;
    border: 2px solid #b00020;
    border-radius: 0.25rem;
    color: #b00020;
    font-weight: 700;
}

.widerruf-absenden,
.widerruf-drucken {
    box-sizing: border-box;
    min-height: 44px;
    padding: 0.6rem 1.5rem;
    border: 2px solid #8b1e3f;
    border-radius: 0.4rem;
    background-color: #8b1e3f;
    color: #ffffff;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}

.widerruf-absenden:hover {
    background-color: #6e1732;
}

.widerruf-drucken {
    margin-top: 1.5rem;
    background-color: #ffffff;
    color: #8b1e3f;
}

.widerruf-drucken[hidden] {
    display: none;
}

.widerruf-seite a {
    color: #1a1a1a;
}

.widerruf-seite :focus-visible {
    outline: 3px solid #1a1a1a;
    outline-offset: 2px;
}

/* Honeypot: zusaetzlich zum Attribut hidden, falls ein Domain-Stylesheet [hidden] ueberschreibt. */
.widerruf-hp {
    display: none;
}

.widerruf-inhaltsliste dt {
    margin-top: 0.75rem;
    font-weight: 700;
}

.widerruf-inhaltsliste dd {
    margin: 0.15rem 0 0;
    overflow-wrap: anywhere;
}

.widerruf-mehrzeilig {
    white-space: pre-line;
}

.widerruf-fuss {
    padding: 1rem 0 2rem;
    border-top: 1px solid #d0d0d0;
    font-size: 0.95rem;
}

/* Der Kopf mit dem Empfaenger bleibt im Ausdruck; nur Fusszeile und Druckknopf entfallen. */
@media print {
    .widerruf-fuss,
    .widerruf-drucken {
        display: none;
    }
}
