@charset "UTF-8";
/*====================================================================================================================*/
/* @import url("normalize.css"); */
/*====================================================================================================================*/
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
    line-height: 1.15; /* 1 */
    -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
    margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
    display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
    box-sizing: content-box; /* 1 */
    height: 0; /* 1 */
    overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
    font-family: monospace, monospace; /* 1 */
    font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
    background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
    border-bottom: none; /* 1 */
    text-decoration: underline; /* 2 */
    text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
    font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
    font-family: monospace, monospace; /* 1 */
    font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
    font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
    border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
    font-family: inherit; /* 1 */
    font-size: 100%; /* 1 */
    line-height: 1.15; /* 1 */
    margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
    overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
    text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
    -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
    outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
    padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
    box-sizing: border-box; /* 1 */
    color: inherit; /* 2 */
    display: table; /* 1 */
    max-width: 100%; /* 1 */
    padding: 0; /* 3 */
    white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
    vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
    overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
    box-sizing: border-box; /* 1 */
    padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
    height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
    -webkit-appearance: textfield; /* 1 */
    outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
    -webkit-appearance: button; /* 1 */
    font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
    display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
    display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
    display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
    display: none;
}

/*====================================================================================================================*/
/* @import url("fonts-lato-opensans.css"); */
/*====================================================================================================================*/
/* ##### Überschriften #####*/

/* lato-300 - latin */
@font-face {
    font-family: 'Lato';
    font-style: normal;
    font-weight: 300;
    src: local('Lato'),
    url('../fonts/lato-v17-latin-300.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../fonts/lato-v17-latin-300.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
    font-display: swap;
}

/* lato-regular - latin */
@font-face {
    font-family: 'Lato';
    font-style: normal;
    font-weight: 400;
    src: local('Lato'),
    url('../fonts/lato-v17-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../fonts/lato-v17-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
    font-display: swap;
}

/* lato-700 - latin */
@font-face {
    font-family: 'Lato';
    font-style: normal;
    font-weight: 700;
    src: local('Lato'),
    url('../fonts/lato-v17-latin-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../fonts/lato-v17-latin-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
    font-display: swap;
}

/* ##### Text ##### */

/* open-sans-300 - latin */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 300;
    src: local('Open Sans Light'), local('OpenSans-Light'),
    url('../fonts/open-sans-v17-latin-300.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../fonts/open-sans-v17-latin-300.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
    font-display: swap;
}

/* open-sans-regular - latin */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 400;
    src: local('Open Sans Regular'), local('OpenSans-Regular'),
    url('../fonts/open-sans-v17-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../fonts/open-sans-v17-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
    font-display: swap;
}

/* open-sans-600 - latin */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 600;
    src: local('Open Sans SemiBold'), local('OpenSans-SemiBold'),
    url('../fonts/open-sans-v17-latin-600.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../fonts/open-sans-v17-latin-600.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
    font-display: swap;
}

/* open-sans-700 - latin */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 700;
    src: local('Open Sans Bold'), local('OpenSans-Bold'),
    url('../fonts/open-sans-v17-latin-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ url('../fonts/open-sans-v17-latin-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
    font-display: swap;
}
/*====================================================================================================================*/
/* @import url("set-52-01n-master.css"); */
/*====================================================================================================================*/
/*
    Display Grid für ZuluApp (ZApp)
    ==================================================================================================================
    V53.01 vom 12.09.2022:      Aufgeräumte Version aus 53.dev und 53.00

    ====================================================================================================================
    Folgende Regeln sind zum Löschen vorgesehen:
    - *txt-autocol*
    ====================================================================================================================
*/

*, *:before, *:after {
    -web-kit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

html {
    font-family: 'Lato', Arial, sans-serif;
    font-weight: 400;
    font-size: 100%;
    font-size: 16px;
    font-size: clamp(16px, 16px + .25vw, 1.5rem);
    line-height: 1.6rem;
}

body {
    /* Safari will line.-height in body */
    line-height: 1.6rem;
}

.za-hyphens {
    hyphens: auto;
    widows: 3;
    orphans: 3;
}

footer {
    padding-top: 1.6rem;
    border-top-width: 4px;
    border-top-style: solid;
}

.za-wrapper {
    width: 95%;
    max-width: 90rem; /* Maximaler Nutzbereich vorgeben 90 rem = 2x 44rem (max Textlänge) + 2rem Abstände */
    margin: 0 auto;
}

.za-container {
    margin-bottom: 1.6rem;
}

.zulu-nav h1 {
    margin: 0;
}

/* ****************************************************************************************************************** */
/* Überschriften, Text, Listen */

h2, h3, h4, h5, h6 {line-height: 1.6rem;}
h2 {margin: 0 0 1rem 0;}
h2 {font-size: 1.75em;}
h3 {font-size: 1.5em;}
h4 {font-size: 1.25em;}
h5 {font-size: 1.125em;}
h6 {font-size: 1em;}

h3, h4, h5, h6,
p,
ul, ol,
form, fieldset,
table {
    margin: 0;
    margin-bottom: 1.6rem;
}

ul ul,
ol ol,
ul ol,
ol ul {margin-bottom: 0;}

img {max-width: 100%; height: auto;}

figure {text-align: center; }
figcaption {font-weight:300; font-size: smaller; text-align: center; }

/*
img.za-float-left {margin: .8rem 0;}
img.za-float-right {margin: .8rem 0;}
*/
/* Del ul.za-txt-list-style-inside {list-style: inside;}*/
/* Del ul.za-margin-li li {margin-bottom: .8rem;}*/
/* Verschoben details ul {list-style: none;}*/

/* Del ul.za-no-list-style,
li.za-no-list-style {list-style: none;}*/
/* Del ul.za-force-list-style {list-style: inherit;}*/

ul.za-no-list-style {list-style: none;}

/* ****************************************************************************************************************** */
/* BEREICHE */

article + article,
section + section {margin-top: 3.2rem;}

aside {font-weight: 300;}

/* ****************************************************************************************************************** */
/* HEADER */

header.za-pg-header {text-align: center;}
header[class*="za-page-header"] a {text-decoration: none;}

header.za-header {
    font-size: 1.125rem;
    text-align: center;
    margin-bottom: 1.6rem;
    padding: 1.6rem 1rem;
}
header.za-header:first-child {margin-top: 0;}
header.za-header p {
    max-width: 56rem;
    margin: 0 auto;
}

header.za-resp-item-1s-1::after,
.za-header-border::after {
    display: block;
    content: "";
    height: 1.6rem;
    border-top-width: 1px;
    border-top-style: solid;
    border-top-color: lightgray;
    border-top-color: #e62020;
}

header.za-resp-item-1s-1 h3,
header.za-resp-item-1s-1 h4,
.za-header-border h3,
.za-header-border h4 {
    margin-bottom: 0;
    /*height: 2.4rem;*/
}

/* ****************************************************************************************************************** */
/* HEADER-NAVIGATION */
.za-header-flex {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.za-page-header {line-height: 2rem;}
ul.za-page-header--nav,
ul.za-footer--nav {
    padding: 0;
    margin: 0;
    list-style: none;
}
ul.za-footer--nav li {
    display: inline;
}
ul.za-page-header--nav li {margin: 0;}
ul.za-page-header--nav li:after,
ul.za-footer--nav li:after {
    content: "|";
    padding-left: .25rem;
}
ul.za-page-header--nav li:after {padding-right: .25rem;}
ul.za-page-header--nav li:last-of-type:after,
ul.za-footer--nav li:last-of-type:after {
    content: "";
    padding-right: 0;
}
.za-page-header--logo {
    flex: max-content;
    display: flex;
    line-height: 1.2rem;
}
ul.za-page-header--nav {
    flex: 0 0 auto;
    display: flex;
    flex-direction: row;
    line-height: 1.2rem;
    padding-bottom: 0;
}
.za-layout-header-padding {padding: 0 .25rem;}

/* ****************************************************************************************************************** */
/* Text - Klassen */

.za-txt-center {text-align: center;}
.za-txt-right {text-align: right;}
.za-txt-bold {font-weight: bold;}

/*.za-txt-max {margin: 0 auto;}*/

.za-txt-normal,
.za-txt-normal--block {
    font-weight: 400;
    font-size: 1rem;
}
.za-txt-normal--block {
    display: block;
    margin-top: 1rem;
}
.za-txt-smaller {
    /* Nicht nicht wirklich "smaller" */
    font-weight: 300;
    font-size: 1rem;
}

.za-txt-upper {
    letter-spacing: .05rem;
    word-spacing: .02rem;
    text-transform: uppercase;
}

.za-center {
    margin-left: auto;
    margin-right: auto;
}
.za-hide {display: none;}


[class*="za-border"],
[class*="--border"] {
    padding: .8rem 1rem;
    padding: 1.6rem 1rem;

    border-radius: .25rem;
    border-style: solid;
    border-width: 1px;
}
[class*="--no-border-box"] {
    margin-bottom: 1.6rem;
    padding: .8rem 1rem;
}
[class*="--border-grid"] {margin-bottom: 0;}

.za-block-border::before {
    display: block;
    content: "";
    height: 1.6rem;
    border-top: 1px solid lightgray;
}

[class^="za-txt-2cols"] {margin-bottom: 1.6rem;}

/* ****************************************************************************************************************** */
/* TABLE */

table {width: 100%; hyphens: auto;}
table.za-auto-width {width: auto;}
td {vertical-align: top; padding-left: .25rem; padding-right: .25rem;}

/* ****************************************************************************************************************** */
/* DISPLAY: TABLE */
/* Passt aktuell nur für die Termine auf der Startseite! */
.za-table {display: table;}
.za-table-row {display: table-row;}
.za-table-cell,
.za-table-header {display: table-cell; padding-right: 1rem;}
.za-table-header {font-weight: bolder;}

/* ****************************************************************************************************************** */
/* BUTTONS, SCHALTER */
/* WICHTIG! details[class*="za-button"] => prüfen! Im Einsatz? */
details[class*="za-button"],
a[class*="za-button"] {
    display: inline-block;
    width: 100%;
    padding: .4rem;
    border-width: 1px;
    border-style: solid;
    border-radius: .25rem;
    text-decoration: none;
    text-align: center;
}
a[class*="za-button"]:hover {
    border-width: 1px;
    border-style: solid;
}
a.za-button--weiterlesen:after {content: "Weiterlesen";}
a.za-button--details:after {content: "Details";}
a.za-button--extern:after {content: "Externe Infos";}
a.za-button--zurueck:after {content: "Zurück";}

/* details[class*="za-button"] => prüfen! Im Einsatz? */
details[class*="za-button"] {text-align: left;}
details[class*="za-button"][open] {padding: 0;}
details[class*="za-button"][open] summary {padding: .4rem;}

/* ****************************************************************************************************************** */
/* Details */
details.za-static-pos {position: relative;}
details[open] > div.za-details {
    width: 100%;
    padding: 0 .25rem;
    border-width: 2px;
    border-style: dotted;
    border-radius: 0 0 .25rem .25rem;
    border-top-style: none;
}
details.za-static-pos[open] > div.za-details {position: absolute;}
details > summary::after {
    padding-left: .25rem;
    font-weight: normal;
    content: "anzeigen";
    display: inline-block;
}
details[open] > summary::after {
    content: "schließen";
    display: inline-block;
}
details ul {list-style: none;}

/* ****************************************************************************************************************** */
/* BESONDERHEITEN */

.za-form-checkbox,
[class*="za-form-checkbox"] {
    /* In Verbindung mit <div class="za-txt-box--grau"></div> einsetzten! */
    padding: .25rem;
    border-width: 1px;
    border-style: solid;
    border-color: lightgray;
    border-radius: .25rem;
    overflow:auto;
    height: max-content;
    max-height: 13rem;
}
.za-form-checkbox--noscroll {
    overflow: auto;
    max-height: fit-content;
}
.za-form-chkbox-subgrid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
    column-gap: 1rem;
}
ul.za-form-chkbox-subgrid {list-style: none;}
ul.za-form-chkbox-subgrid li {display: flex;}

.za-event {
    margin-bottom: 0;
    font-weight: normal;
    text-align: center;
}
.za-event h4 .za-dach {
    font-size: 1em;
    font-size: clamp(16px, 16px + .25vw, 1.5rem);
    font-weight: normal;
}
.za-event h4 {
    margin-bottom: 0;
    display: inline;
    font-size: 1.25em;
    font-weight: bold;
}
.za-event--title {
    font-size: 1.25em;
    font-weight: bold;
}

/* ****************************************************************************************************************** */
/* TESTBEREICH */

za-no-margin,
[class*="--no-margin"] {margin: 0;}
.za-no-margin-top,
[class*="--no-margin-top"] {margin-top: 0;}
.za-no-margin-bottom,
[class*="--no-margin-bottom"] {margin-bottom: 0;}
.za-no-padding-bottom {padding-bottom: 0;}

[class^="za-hinweis"],
.za-hinweis {
    display: block;
    padding: .8rem 1rem;
    border-radius: 0 .25rem .25rem 0;
    border-style: solid;
    border-width: 1px;
    border-left-width: .5rem;
}

.za-txt-header::after {
    display: block;
    content: "";
    border-bottom: 1px solid lightgray;
    margin: .8rem 0;
}

.za-grid-self-end {align-self: end;}
.za-last-child-no-margin-bottom *:last-child {
    /* Neu 22.01.2022. Anwendung z.B. in einem Grid-Container, der bereits ein Margin-Bottom hat (Grid-Gap-Row) um ein doppeltes Margin zu verhindern. */
    margin-bottom: 0;
}

/*.za-resp-sub-content--article *:not(.za-txt-2cols),*/
/* Formulare mögen die obige Regel nicht */
[class^="za-txt-max-length"] {max-width: 44rem;}
.za-resp-sub-content--article .za-txt-no-limit,
.za-resp-sub-content--article .za-txt-2cols {max-width: none;}

[class^="za-txt-2max-length"] {max-width: 88rem;}

[class^="za-sub-container"] {
    display: grid;
    grid-gap: 1.6rem 1rem;
}

ul.za-no-padding {padding-left: 0;}
ul.za-farbig li {padding: .8rem 1rem;}
ul.za-farbig ul.za-farbig li {
    border-bottom-width: 1px;
    border-bottom-style: solid;
}
ul.za-farbig ul.za-farbig li:last-of-type {
    border-bottom: none;
    margin-bottom: 0;
}
.za-margin-bottom {margin-bottom: 1.6rem;}
[class*="za-sub-container--2c2r"] {grid-template-rows: auto 1fr;}
/*====================================================================================================================*/
/* @import url("set-52-01n-responsive.css"); */
/*====================================================================================================================*/
/*
    ====================================================================================================================
    Display Grid für ZuluApp (ZApp)
    Datum:          10.07.2022
    Beschreibung:   Überarbeitete Version von set-52-01n-responsive.css
    ====================================================================================================================
*/

/*
    --------------------------------------------------------------------------------------------------------------------
    .za-container
    --------------------------------------------------------------------------------------------------------------------
*/
.za-container {margin: 1.6rem 0;}
.za-container header.za-pg-header h1 {margin-bottom: 0;}
[class^="za-resp-container"] {
    /* Inhalte im Contentbereich (page-content) wird als Grid angezeigt */
    display: grid;
    gap: 1.6rem 2rem;
}

/*
--------------------------------------------------------------------------------------------------------------------
za-resp-container + za-resp-item-*
--------------------------------------------------------------------------------------------------------------------
*/
.za-resp-container--std3c {
    /* Optionen für .za-resp-container */
    /* Standardmässig in 3 gleich große Spalten aufteilen z.B. für 1 Hauptbereich (2/3) und einen Nebenbereich (1/3) */
    grid-template-columns: 1fr;
}

[class^="za-resp-item-fullwidth"],
.za-resp-item-fullwidth {grid-column: 1 / -1;}
.za-resp-item-fullwidth-first {grid-row: 1;}

[class^="za-resp-item-std3c--content-full"],
.za-resp-item-std3c--content-full,
[class^="za-resp-item-std3c--content-before"],
.za-resp-item-std3c--content-before,
[class^="za-resp-item-std3c--content-after"],
.za-resp-item-std3c--content-after {
    grid-column: 1 / -1;
    grid-row: 1;
}

[class^="za-resp-item-std3c--content-after"],
.za-resp-item-std3c--content-after {
    grid-row: 2;
}

[class^="za-resp-item-std3c"] .za-resp-sub-content--txt {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 0 3rem;
}

[class^="za-resp-item-std3c"] [class^="za-resp-sub-content--box"] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 1.6rem 2rem;
}

[class^="za-resp-sub-content--box"] button {align-self: end;}

@media only screen and (max-width: 480px) {
    html {
        font-size: 100%;
        font-size: 16px;
    }

    ul.za-page-header--nav {flex-direction: row;}

    [class^="za-resp-item-std3c"] [class^="za-resp-sub-content--box"] {
        display: grid;
        grid-template-columns: 1fr;
        gap: 1.6rem 2rem;
    }
}

@media only screen and (max-width: 320px) {
    /*
    --------------------------------------------------------------------------------------------------------------------
    za-resp-container + za-resp-item-*
    --------------------------------------------------------------------------------------------------------------------
    */
    [class^="za-resp-item-std3c"] .za-resp-sub-content--txt {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(19.125rem, 1fr));
        gap: 0 3rem;
    }
}

@media only screen and (min-width: 60rem) {
    /*
    --------------------------------------------------------------------------------------------------------------------
    TITEL und HEADER-BILD - GRUNDEINSTELLUNGEN
    --------------------------------------------------------------------------------------------------------------------
    */
    [class*="za-header-image-920x200"] {
        background-repeat: no-repeat;
        background-position: bottom;
        background-size: 100%;
        /* Passt zu den Bildern im Verhältnis 920x200 */
        /* Rückfall-Option */
        height: calc(1px + (.21739130434782609 * 90vw) - 1px);
        /* Maximale Höhe des Bildes begrenzen */
        max-height: 500px;
        /* Und mit Clamp … */
        height: clamp(200px, 1px + (.21739130434782609 * 90vw) - 1px, 500px);
    }
    [class*="za-header-image-920x200-00"] {
        /* Nur Bilddefinition Einstellungen in za-header-image-929x200*/
        background-image: url("../img/TopBG-00-960x266.jpg");
    }
    [class*="za-header-image-920x200-01"] {
        /* Nur Bilddefinition Einstellungen in za-header-image-929x200*/
        background-image: url("../img/TopBG-01-960x266.jpg");
    }
    [class*="za-header-image-920x200-02"] {
        /* Nur Bilddefinition Einstellungen in za-header-image-929x200*/
        background-image: url("../img/TopBG-02-960x266.jpg");
    }
    [class*="za-header-image-920x200-03"] {
        /* Nur Bilddefinition Einstellungen in za-header-image-929x200*/
        background-image: url("../img/TopBG-03-960x266.jpg");
    }
    [class*="za-header-image-920x200-10"] {
        /* Nur Bilddefinition Einstellungen in za-header-image-929x200*/
        background-image: url("../img/TopBG-10-960x266.jpg");
    }

    /*
    --------------------------------------------------------------------------------------------------------------------
    za-resp-container + za-resp-item-*
    --------------------------------------------------------------------------------------------------------------------
    */
    .za-resp-container--std3c {
        /* Optionen für .za-resp-container */
        /* Standardmässig in 3 gleich große Spalten aufteilen z.B. für 1 Hauptbereich (2/3) und einen Nebenbereich (1/3) */
        grid-template-columns: min(34%, 22rem) 1fr min(34%, 22rem);
    }

    [class^="za-resp-item-std3c--content-before"],
    .za-resp-item-std3c--content-before {
        grid-column: 1 / 3;
        grid-row: 1;
    }

    [class^="za-resp-item-std3c--content-after"],
    .za-resp-item-std3c--content-after {
        grid-column: 2 / -1;
        grid-row: 1;
    }

    .za-resp-item-std3c--content-before + aside,
    .za-resp-item-std3c--content-after + aside {
        grid-column: span 1;
        grid-row: 1;
    }

    .za-resp-item-std3c--content-full + aside {grid-column: 1 / -1;}

    [class^="za-resp-item-std3c--content-full"] + aside .za-resp-sub-content--txt {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 1.6rem 3rem;
    }

    [class^="za-resp-item-std3c"] .za-resp-sub-content--box-auto {grid-template-columns: repeat(auto-fit, minmax(auto, auto));}

    [class^="za-resp-item-std3c"] .za-resp-sub-content--box-xtra-small {grid-template-columns: repeat(auto-fit, minmax(6rem, 1fr));}
    [class^="za-resp-item-std3c"] .za-resp-sub-content--box-small {grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));}
    [class^="za-resp-item-std3c"] .za-resp-sub-content--box-medium {grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr));}
    [class^="za-resp-item-std3c"] .za-resp-sub-content--box-large {grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));}
    [class^="za-resp-item-std3c"] .za-resp-sub-content--box-xtra-large {grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));}

    [class^="za-txt-2cols"] {
        margin-bottom: 1.6rem;
        columns: 18rem 2;
        column-gap: 2rem;
        column-fill: balance;
    }
    .za-txt-2cols--xtra-margin {margin-bottom: 3.2rem;}
    [class^="za-txt-2cols"] *:last-child {
        padding-bottom: 0;
        margin-bottom: 0;
    }

    /*
    Neu Float für Bilder mit Fließtext
     */
    img[class^=za-float] {max-width: 45%;}
    img.za-float-left {margin: .8rem 1rem .8rem 0; float: left;}
    img.za-float-right {margin: .8rem 0 .8rem 1rem; float: right;}

    figure.za-float-left {float: left; max-width: 50%; margin: 0; padding-right: 1rem; }
    figure.za-float-right {float: right; max-width: 50%; margin: 0; padding-left: 1rem; }

    .za-flow-root {display: flow-root;}
}

@media only screen and (min-width: 76rem) {
    /*
    --------------------------------------------------------------------------------------------------------------------
    za-resp-container + za-resp-item-*
    --------------------------------------------------------------------------------------------------------------------
    */
    [class^="za-resp-item-std3c"] .za-resp-sub-content--txt,
    [class^="za-resp-item-std3c--content-full"] + aside .za-resp-sub-content--txt {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    [class^="za-resp-item-std3c--content-full"] .za-resp-sub-content--article/*,
    [class^="za-resp-item-std3c--content-full"] + aside .za-resp-sub-content--article*/ {
        display: grid;
        grid-template-columns: 30% 1fr;
        gap: 1.6rem 1rem;
        margin-right: 1rem;
        margin-right: auto;
    }
    [class^="za-resp-item-std3c--content-before"] .za-resp-sub-content--article {
        margin-right: auto;
    }
}

@media only screen and (min-width: 90rem) {
    [class^="za-resp-item-std3c--content"] .za-resp-sub-content--article/*,
    [class^="za-resp-item-std3c--content-full"] + aside .za-resp-sub-content--article*/ {
        display: grid;
        grid-template-columns: 30% 1fr;
        gap: 1.6rem 1rem;
        margin-right: 1rem;
        margin-right: auto;
    }

    [class^="za-resp-item-std3c--content-full"] .za-resp-sub-content--txt,
    [class^="za-resp-item-std3c--content-full"] + aside .za-resp-sub-content--txt {grid-template-columns: repeat(3, 1fr);}
    [class^="za-resp-item-std3c"] .za-resp-sub-content--box-xtra-large {grid-template-columns: repeat(auto-fit, minmax(30rem, 1fr));}
}

@media only screen and (min-width: 158rem) {
    /*
    --------------------------------------------------------------------------------------------------------------------
    za-resp-container + za-resp-item-*
    --------------------------------------------------------------------------------------------------------------------
    */
    [class^="za-resp-item-std3c--content-full"] .za-resp-sub-content--txt,
    [class^="za-resp-item-std3c--content-full"] + aside .za-resp-sub-content--txt {grid-template-columns: repeat(4, 1fr);}
}
/*====================================================================================================================*/
/*@import url("set-52-20n-navigation.css"); */
/*====================================================================================================================*/
/*
    ====================================================================================================================
    Display Grid für ZuluApp (ZApp)
    Datum:          06.09.2022
    Beschreibung:   Überarbeitete Version von set-53-dev-navigation.css
    ====================================================================================================================
*/
nav {
    z-index: 100;
    position: sticky;
    margin: 0;
    top: 0;
}
nav ul {display: none;}
nav li {
    margin-top: 0;
    margin-bottom: 0;
    text-align: center;
    align-content: center;
    align-items: center;
}
nav a {
    text-align: center;
    text-decoration: none;
    display: block;
    padding: .5rem .5rem;
    padding: calc(.5rem - 2px) .5rem;
}
nav a:hover {font-style: normal;}
nav a.zulu-aktiv {font-weight: 400;}
input#zulu-open-menu {display: none;}
input[type=checkbox]:checked#zulu-open-menu ~ ul,
input[type=checkbox]:checked#zulu-open-menu ~ ol {
    display: block;
    margin: 0;
    list-style: none;
}
label.zulu-open-menu-label {
    margin: 0;
    padding: .5rem 0;
    display: inline-block;
    width: 100%;
}
label.zulu-open-menu-label::before {
    font-weight: normal;
    font-stretch: extra-expanded;
    padding-right: .5rem;
    padding-left: .5rem;
    content: "\2261 ";
}
ul.zulu-nav,
ul.zulu-nav ol {
    list-style: none;
    padding-left: 0;
}

@media screen and (max-width: 699px) {
    nav li {
        margin: 1px 0;
        text-align: left;
        align-content: flex-start;
        align-items: flex-start;
    }
    nav a {text-align: left;}
    ul.zulu-nav {
        border-left: .5rem solid #333;
        border-right: .5rem solid #333;
        border-bottom: .5rem solid #333;
        border-radius: 0 0 .5rem .5rem;
    }
    .zulu-subnav li {
        border-left-width: 1rem;
        border-left-style: solid;
    }
}

@media screen and (min-width: 700px) {
    nav a {
        border-style: solid;
        border-width: 1px;
    }
    nav .zulu-subnav a {border: none;}
    input[type=checkbox]:checked#zulu-open-menu ~ ul,
    ul.zulu-nav,
    ol.zulu-subnav {
        margin-top: 0;
        margin-bottom: 0;
        width: 100%;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
    }
    .zulu-nav {
        border-bottom-width: 4px;
        border-bottom-style: solid;
    }
    .zulu-nav li {flex: 1 1 auto;}
    .zulu-nav li:first-child a {border-left: none;}
    .zulu-nav li:last-child a {border-right: none;}
    .zulu-nav-extra {
        position: static;
        border-bottom-width: 2.4rem;
        border-bottom-style: solid;
    }
    .zulu-subnav {
        position: absolute;
        left: 0;
        padding-left: 0;
        border-top-width: 4px;
        border-top-style: solid;
    }
    .zulu-subnav li {flex: 0 0 auto;}
    label.zulu-open-menu-label {display: none;}
}
/*====================================================================================================================*/
/* @import url("set-1-50-tabelle.css"); */
/*====================================================================================================================*/

/*====================================================================================================================*/
/* @import url("set-52-51n-formular.css"); */
/*====================================================================================================================*/
/*
    ====================================================================================================================
    Display Grid für ZuluApp (ZApp)
    Datum:          03.07.2022
    Beschreibung:   Aufgeräumte Version von set-5-51-formular.css
    ====================================================================================================================
*/
button, input, optgroup, select, textarea, option {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.6;
    margin: 0;
}
button, input, /*optgroup,*/ select, textarea {
    border-width: 1px;
    border-style: solid;
    border-radius: .25rem;
}
input[type=checkbox] {
    width: 1.2rem;
    height: 1.2rem;
    line-height: 1.6;
    margin-right: .5rem;
    vertical-align: middle;
}
input, /*optgroup,*/ select /*, option*/ {
    height: 2.4em;
    padding: .4rem;
}
select[multiple] {
    height: calc(5 * 2.4rem);
    height: auto;
}
option[selected] {font-weight: bold;}
button, select, option {width: 100%;}
select {
    -webkit-appearance: menulist-button;
    appearance: auto;
}
input, select, textarea {
    width: 100%;
    padding: .4rem;
    box-sizing: border-box;
}
button {padding: .4rem;}
fieldset {
    padding-top: .8rem;
    padding-bottom: .8rem;
}
legend {
    padding-left: .25rem;
    padding-right: .25rem;
}
checkbox:invalid, input:invalid, select:invalid, textarea:invalid {
    border-width: 2px;
    border-style: solid;
    border-radius: .25rem;
}
input[required][type='checkbox']+label {
    padding: 0 .25rem;
    border-width: 2px;
    border-style: solid;
    border-radius: .25rem;
}

/* ************************************************************************************************************++++++ */
/* NEU am 05.08.2022 hinzugefügt */

input[required][type='checkbox']:checked+label {border-width: 1px;}
img.za-spam-schutz {
    width: clamp(140px, 140px + 2vw, 280px);
    height: clamp(40px, 40px + 2vw, 80px);
}
[class^="za-form-flex"] {display: flex;}
.za-form-flex label {flex-basis: fit-content;}
fieldset {border-radius: .25rem;}
/*====================================================================================================================*/
/* @import url("set-52-91n-farben-01.css"); */
/*====================================================================================================================*/
html {color: #333333;}
header.za-header {
    background-color: oldlace;
    background-color: #EEEEEE;
}

.za-hinweis,
.za-border,
[class*="--border"] {border-color: lightgray;}
.za-hinweis--achtung {border-color: #ffba00;}
.za-hinweis--warnung {border-color: #e62020;}
.za-page-header {background-color: #EEEEEE;}

ul.za-breadcrumb {background-color: transparent;}
.za-breadcrumb a,
.za-breadcrumb h1 {color: #333333;}
h1:after, h2 {
    color: #333333;
    border-color: #333333;
}
h2.za-article {
    color: #333333;
    border-color: transparent;
}
[class*="za-article-title-"] {color: #333333;}
a {color: #e62020;}
footer {
    background-color: transparent;
    color: #333333;
    border-top-color: #e62020;
}
/* Del Am 18.09.2023 entfernt */
/* figure {background-color: ghostwhite;}*/
.za-modul-header {background-color: #EEEEEE;}
th {
    background-color: #333333;
    color: #FFFFFF;
}

/* ****************************************************************************************************************** */
/* HEADER */

header.za-resp-item-1s-1::after,
.za-header-border::after {
    border-top-color: lightgray;
    border-top-color: #e62020;
}
aside .za-header-border::after {
    border-top-color: lightgray;
}


/* Navigation ################################################################################################### */
nav {
    color: #FFFFFF; /* Standard-Schriftfarbe bei dunklem Hintergrund */
    background-color: #FFFFFF;
}
.zulu-open-menu-label {background-color: #333333; /* Standard-Schriftfarbe als Hintergrund */}
nav a {
    color: #FFFFFF;
    background-color: #333333;
    border-color: #333333;
}

ul.za-breadcrumb li {color: #999999;}
.za-breadcrumb a {color: #e62020;}

/* Navigation ################################################################################################### */
@media screen and (max-width: 699px) {
    /* Navigation ################################################################################################### */
    nav a.zulu-aktiv {
        background-color: #e62020;
        color: #ffffff;
    }
    .zulu-subnav {
        background-color: #EEEEEE;
        background-color: #333333;
    }
    .zulu-subnav li {border-left-color: #e62020;}
    .zulu-subnav a {
        background-color: #EFEFEF;
        color: #333333;
    }
    .zulu-subnav a.zulu-aktiv {
        background-color: #e62020;
        color: #ffffff;
    }
    /* Navigation ################################################################################################### */
}
@media screen and (max-width: 59.99rem) {
    /*
    .za-sidebox-li {
        border-color: #996600;
    }
    */
}
@media screen and (min-width: 700px) {
    /* Navigation ################################################################################################### */
    nav {background-color: #FFFFFF;}
    nav a {
        background-color: #333333;
        color: #ffffff;
        border-color: #FFFFFF;
    }
    nav a.zulu-aktiv,
    .zulu-nav a.zulu-aktiv:hover {
        background-color: #e62020;
        border-color: #FFFFFF;
        border-bottom-color: #e62020;
        color: #ffffff;
    }
    .zulu-nav {border-bottom-color: #e62020;}
    .zulu-nav a:hover {
        background-color: #e62020;
        color: #ffffff;
    }
    .zulu-nav-extra {border-bottom-color: #e62020;}
    .zulu-subnav {
        border-top-color: #e62020;
        background-color: lightgray;
    }
    .zulu-subnav a {
        background-color: lightgray;
        color: #333333;
    }
    .zulu-subnav a:hover,
    .zulu-subnav a.zulu-aktiv,
    .zulu-subnav a.zulu-aktiv:hover {
        background-color: #e62020;
        color: #ffffff;
    }
    /* Navigation ################################################################################################### */
}

tr {background-color: #FEFEFE;}
tr:nth-child(2n+1) {background-color: #EFEFEF;}
table.za-tbl-transparent tr {background-color: transparent;}
[class*="za-txt-box"] {
    border-color: lightgray;
    background-color: transparent;
}

/* ****************************************************************************************************************** */
/* HEADER + HEADER-NAVIGATION */

.za-header-flex {
    background-color: rgba(255,255,255,0.75);
    background-color: #333333;
}
.za-header-flex {color: #ffffff;}
.za-header-flex a {color: #ffffff;}

/* ****************************************************************************************************************** */
/* ???? */

/*
.za-txt-box--termin {
    color: #ffffff;
    background-color: #e62020;
    border-color: #333333;
    border-right-color: transparent;
}
.za-bgcolor--cornsilk {
    background-color: cornsilk;
}
.za-txt-box--achtung,
.za-txt--achtung {
    background-color: #e62020;
    color: #ffffff;
}
.za-test {
    color: #FFFFFF;
}
*/

/* ****************************************************************************************************************** */
/* BUTTONS, SCHALTER */
details[class*="za-button"],
a[class*="za-button"] {
    background-color: #EFEFEF;
    color: #333333;
}
a[class*="za-button"]:hover,
a[class*="za-button"].zulu-aktiv {
    border-color: #333333;
    background-color: lightgray;
}
details[class*="za-button"][open] {background-color: #EFEFEF;}
details[class*="za-button"][open] summary {background-color: transparent;}
details[class*="za-button"][open] ul {background-color: #f5f5f5;}
/* ****************************************************************************************************************** */
/* Details */
details[open] {background-color: #ffffff;}
details[open] > div.za-details {border-color: lightgray;}
details[open] > summary {background-color: lightgray;}

div.za-td--subinfo {border-top-color: #999999;}
[class*="za-border-top-bottom"] {border-color: lightgray;}
[class*="za-background--farbe"] {
    background-color: #333333;
    color: #ffffff;
}

[class*="--border-color-main"] {border-color: #e62020;}
ul.za-farbig li:nth-child(odd) {background-color: #EEEEEE;}
ul.za-farbig li:nth-child(even) {background-color: #FBFBFB;}
ul.za-farbig ul.za-farbig li {background-color: transparent;}

/* ************************************************************************************************************++++++ */
/* FORMULARE */

button, input, /*optgroup,*/ select, textarea {border-color: lightgray;}
button, button:active, input, select, textarea {
    /* Safari auf mobilen Endgeräten nimmt sonst eine helle Schriftfarbe an */
    color:#333333;
}
button:hover, select:hover {
    background-color: lightgray;
    border-color: #333333;
}


option[selected] {background-color: #996600;}
button, select, option {background-color: #EFEFEF;}
select[multiple]:hover {background-color: #EFEFEF;}
input:hover,
input:focus,
textarea:hover,
textarea:focus {border-color: #333333;}
select {background-color: #EFEFEF;}
input:invalid, input[checkbox]:invalid {background-color: #ffdddd;}

checkbox:invalid, input:invalid, select:invalid, textarea:invalid {
    border-color: #b31b7a;
    border-color: #e62020;
}
input[readonly], input[disabled], button[disabled] {background-color: #EFEFEF;}
button[disabled] {color: lightgray;}
input[readonly]:hover, input[disabled]:hover, button[disabled]:hover {border-color: lightgray;}
input[required][type='checkbox']+label {
    border-color: #e62020;
    background-color: #ffdddd;
}
input[required][type='checkbox']:checked+label {
    border-color: lightgray;
    background-color: transparent;
}

/* ****************************************************************************************************************** */
/* BESONDERHEITEN */
.za-form-checkbox,
[class*="za-form-checkbox"] {border-color: lightgray;}

/* Erster Fehler in RC2208 vom 06.08.2022 */
.za-details {background-color: #ffffff;}


/*====================================================================================================================*/
/* Ende */
ul.za-breadcrumb {
    padding-left: 0;
    margin-bottom: 0;
    list-style-type: none;
    font-size: .85rem;
}
ul.za-breadcrumb li {
    display: inline;
}
ul.za-breadcrumb li:not(:first-child)::before {
    content: " » ";
}

.za-breadcrumb h1 {
    font-size: clamp(16px, 16px + .25vw, 1.5rem);
    font-size: .85rem;
    font-weight: 400;
    display: inline;
}

/* Klappt (noch) nicht bei display:grid und mehreren Containern */
.text-overflow {
    display: block; /* in seltenen Faellen in Kombination mit "(max-)width" auch "inline-block" */
    overflow: hidden;
    -moz-text-overflow: ellipsis;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.za-txt-overflow {
    display: block; /* in seltenen Faellen in Kombination mit "(max-)width" auch "inline-block" */
    overflow: hidden;
    -moz-text-overflow: ellipsis;
    text-overflow: ellipsis;
}

.za-header-line-clamp {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}


.za-txt-autocols {
    /*repeat(auto-fit, minmax(25rem, 1fr))*/

    margin-bottom: 1.6rem;
    column-width: 22rem;
    column-width: min(100%, 22rem);
    column-count: auto;
    column-gap: 2rem;
    column-fill: balance;

}
.za-txt-autocols header {
    column-span: all;
}

.za-resp-item-std3c--content-full + .za-txt-autocols header:not(:first-of-type) {
    margin-top: 1.6rem;
}

[class^="za-txt-2cols"] {
    columns: 18rem 2;
}

.za-event-info-box {
    margin: -1.6rem -1rem 0;
    margin: calc(-1.6rem - 1px) calc(-1rem - 1px) 0;
    border-radius: .25rem .25rem 0 0;
    border-width: 1px;
    border-style: solid;
    border-color: #333333;
}

.za-small-margin-bottom {
    margin-bottom: .8rem;
}

.za-no-whitespace {
    white-space: nowrap;
}

.text-overflow {
    display: block; /* in seltenen Faellen in Kombination mit "(max-)width" auch "inline-block" */
    overflow: hidden;
    -moz-text-overflow: ellipsis;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.za-txt-fontsize-xxs {
    font-size: 75%;
    font-weight: 300;
}

/*====================================================================================================================*/


:root {
    --fg:#111;
    --bg:#fff;
    --err:#b00020;
    --ok:#0a7a2f;
    --muted:#666;
    --err-bg:#ffeaea;
    --ok-bg:#f6fff6;
}

body {
    /*
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, sans-serif;
    color:var(--fg);
    background:var(--bg);
    margin:0;
    padding:2rem;
    */
}

form { max-width: 860px; margin: 0 auto; }

.row { display:flex; flex-wrap:wrap; gap:1rem; }
.col { flex:1 1 280px; min-width: 220px; }

label { display:block; font-weight:600; margin:.5rem 0 .25rem; }

input, textarea, select {
    width:100%;
    padding:.6rem .7rem;
    border:1px solid #ccc;
    border-radius:6px;
    font:inherit;
    box-sizing:border-box;
    transition: all .15s ease;
}

textarea { min-height:160px; resize:vertical; }

.req::after { content:" *"; color:var(--err); font-weight:700; }

.hint { color:var(--muted); font-size:.9rem; margin:.25rem 0 0; }
.error { color:#fff; background:var(--err); padding:.5rem .75rem; border-radius:6px; margin:.25rem 0 .5rem; }
.ok { color:#fff; background:var(--ok); padding:.75rem 1rem; border-radius:8px; margin:0 0 1rem; }

.actions { margin-top:1rem; display:flex; gap:.75rem; }
button {
    padding:.7rem 1.1rem;
    border:0;
    border-radius:8px;
    background:#0b5bd3;
    color:#fff;
    font-weight:700;
    cursor:pointer;
}
button:hover {
    color: #111111;
}

/* Pflichtfelder: leer/ungültig rot, gültig grün */
input[required]:invalid,
textarea[required]:invalid,
select[required]:invalid {
    border-color: var(--err);
    background-color: var(--err-bg);
}

input[required]:valid,
textarea[required]:valid,
select[required]:valid {
    border-color: #8cc63f;
    background-color: var(--ok-bg);
}

fieldset {
    border:1px solid #e3e3e3;
    border-radius:8px;
    padding:1rem;
    margin:1rem 0;
}
legend { font-weight:700; padding:0 .4rem; }

.address-row {
    display:flex;
    flex-wrap:wrap;
    gap:0.75rem;
    align-items:flex-end;
}
.address-row .col {
    flex: 1 1 auto;
    min-width: 140px;
}
#hausnummer, #plz { max-width: 120px; }

/* Honeypot (unsichtbar) */
.visually-hidden {
    position:absolute !important;
    height:1px;
    width:1px;
    overflow:hidden;
    clip:rect(1px,1px,1px,1px);
    white-space:nowrap;
}

/* Einwilligung: Textblock färben */
/*.consent-label { display:block; font-weight:600; }*/
.consent-label { display: flex; align-items: flex-start; gap: .5em; font-weight:600; }
.consent-label input[type="checkbox"] { width:auto; margin-right:.5rem; vertical-align: top; }
.consent-text { display:inline-block; border-radius:6px; padding:.5rem; }
.consent-label input[type="checkbox"][required]:not(:checked) + .consent-text { background-color: var(--err-bg); border-color: var(--err); border-width: 1px; border-style: solid;}
.consent-label input[type="checkbox"][required]:checked + .consent-text { background-color: var(--ok-bg); border-color: var(--ok); border-width: 1px; border-style: solid; }
