/* lmx261029: Consent in Teamkiste-Farben mit sichtbarem Tastaturfokus. */
.klaro.we_cookie_consent {
    --green1: #819f37;
    --blue1: #1e4d59;
    font-family: inherit;
}
.klaro.we_cookie_consent .cookie-notice,
.klaro.we_cookie_consent .cookie-modal .cm-modal {
    border: 1px solid #1e4d59;
    box-shadow: 0 3px 20px #0002;
}
.klaro.we_cookie_consent .cookie-notice p,
.klaro.we_cookie_consent .cookie-modal p,
.klaro.we_cookie_consent .cookie-modal li,
.klaro.we_cookie_consent a,
.klaro.we_cookie_consent .cm-header h1,
.klaro.we_cookie_consent .cm-header h2 {
    color: #1e4d59;
}
.klaro.we_cookie_consent button.cm-btn,
.tk-consent-placeholder button {
    background: #1e4d59;
    color: white;
    border: 2px solid #1e4d59;
    border-radius: 4px;
    padding: 10px 18px;
    cursor: pointer;
    font: inherit;
    min-height: 44px;
}
.klaro.we_cookie_consent button.cm-btn.cm-btn-success,
.klaro.we_cookie_consent button.cm-btn.cm-btn-info {
    background: #1e4d59;
    color: white;
}
.klaro.we_cookie_consent button.cm-btn:hover,
.tk-consent-placeholder button:hover { background: #819f37; border-color: #819f37; }
.klaro.we_cookie_consent button:focus-visible,
.klaro.we_cookie_consent a:focus-visible,
.tk-consent-placeholder button:focus-visible {
    outline: 3px solid #819f37 !important;
    outline-offset: 3px;
}
.tk-consent-placeholder {
    padding: clamp(24px, 5vw, 64px);
    background: #f1f3f2;
    color: #1e4d59;
    text-align: center;
}
.tk-consent-placeholder p { max-width: 48em; margin: 0 auto 20px; }
.tk-consent-placeholder h2 { margin-top: 0; }
[data-tk-consent-map] > .tk-consent-placeholder { min-height: 360px; display: grid; place-content: center; }
.tk-consent-placeholder[hidden],
[data-tk-consent-map] iframe[hidden],
[data-tk-newsletter-output][hidden] { display: none !important; }
@media (max-width: 600px) {
    .klaro.we_cookie_consent .cookie-notice:not(.cookie-modal-notice) { padding: 16px; }
    .klaro.we_cookie_consent .cn-buttons { display: flex; flex-wrap: wrap; gap: 8px; }
    .klaro.we_cookie_consent .cn-buttons button { margin: 0; flex: 1 1 auto; }
}

/* lmx261029: Alte Teamkiste-Leiste: Petrol, weisse Beschriftung, gruener Hover. */
#klaro .klaro.we_cookie_consent.tk-consent .cookie-notice:not(.cookie-modal-notice) {
    box-sizing: border-box;
    left: 0;
    right: 0;
    width: 100%;
    max-width: 100%;
    padding: 24px 32px;
    border: 0;
    border-top: 1px solid #dde3e1;
    border-radius: 4px 4px 0 0;
}
#klaro .tk-consent .cm-btn,
#klaro .tk-consent .cn-learn-more {
    background: #1e4d59 !important;
    color: #fff !important;
    border: 2px solid #1e4d59 !important;
    border-radius: 4px;
    box-sizing: border-box;
    min-height: 46px;
    padding: 11px 20px;
    font-family: 'Teamkiste Yanone', 'Arial Narrow', sans-serif !important;
    font-size: 21px !important;
    font-weight: 400 !important;
    line-height: 1.1;
    text-decoration: none;
    text-align: center;
    transition: background-color .15s, border-color .15s;
}
#klaro .tk-consent .cm-btn:hover,
#klaro .tk-consent .cn-learn-more:hover {
    background: #819f37 !important;
    border-color: #819f37 !important;
    color: #fff !important;
    opacity: 1 !important;
}
#klaro .tk-consent .cm-btn::before { display: none !important; }
/* lmx261029: Geerbtes Stiftsymbol am Einstellungslink entfernen. */
#klaro .tk-consent .cn-learn-more::before {
    content: none !important;
    display: none !important;
}
#klaro .klaro.we_cookie_consent.tk-consent .cookie-notice .cn-ok {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    width: 100%;
    margin: 16px 0 0;
}
#klaro .klaro.we_cookie_consent.tk-consent .cookie-notice .cn-buttons { display: contents !important; }
#klaro .klaro.we_cookie_consent.tk-consent .cookie-notice .cn-ok .cm-btn,
#klaro .klaro.we_cookie_consent.tk-consent .cookie-notice .cn-ok .cn-learn-more {
    position: static !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0;
    display: grid;
    place-content: center;
    height: auto !important;
    padding: 11px 20px !important;
    line-height: 1.1 !important;
}
#klaro .tk-consent .cn-ok .cn-decline { order: 1; }
#klaro .tk-consent .cn-ok .cm-btn-success { order: 2; }
#klaro .tk-consent .cn-ok .cn-learn-more { order: 3; }
#klaro .klaro.we_cookie_consent.tk-consent .cookie-modal .cm-modal.cm-klaro {
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    min-width: 0;
    height: auto;
    min-height: 0;
    max-height: 88vh;
    margin: 0;
    padding: 0;
    top: auto;
    bottom: 0;
    left: 0;
    border: 0;
    border-radius: 4px 4px 0 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}
#klaro .klaro.we_cookie_consent.tk-consent .cookie-modal .cm-modal .cm-header {
    padding: 24px 32px 12px;
    flex: 0 0 auto;
    border: 0;
}
#klaro .klaro.we_cookie_consent.tk-consent .cookie-modal .cm-header h1,
#klaro .klaro.we_cookie_consent.tk-consent .cookie-modal .cm-header h2 {
    color: #819f37;
    font-family: 'Teamkiste Yanone', 'Arial Narrow', sans-serif;
    font-size: 30px;
    line-height: 1.2;
    font-weight: 400;
    margin: 0 40px 12px 0;
    overflow-wrap: anywhere;
    hyphens: auto;
}
#klaro .klaro.we_cookie_consent.tk-consent .cookie-modal .cm-modal .cm-body {
    padding: 12px 32px;
    height: auto;
    min-height: 0;
    overflow-y: auto;
}
#klaro .klaro.we_cookie_consent.tk-consent .cookie-modal .cm-modal .cm-footer {
    position: static;
    padding: 20px 32px;
    width: auto;
    height: auto;
    flex: 0 0 auto;
    background: #f1f2f1;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
}
#klaro .klaro.we_cookie_consent.tk-consent .cookie-modal .cm-modal .cm-footer .cm-btn {
    width: auto;
    max-width: 100%;
    min-width: 140px;
    margin: 0;
}
#klaro .tk-consent .cm-footer .cm-footer-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}
.tk-consent-placeholder button {
    font-family: 'Teamkiste Yanone', 'Arial Narrow', sans-serif;
    font-size: 21px;
    font-weight: 400;
    line-height: 1.1;
}
#klaro .tk-consent .cm-modal .cm-footer .cm-powered-by {
    position: static;
    margin: 0 0 0 auto;
}
@media (max-width: 600px) {
    #klaro .klaro.we_cookie_consent.tk-consent .cookie-notice:not(.cookie-modal-notice) { padding: 18px; }
    #klaro .klaro.we_cookie_consent.tk-consent .cookie-notice .cn-ok { grid-template-columns: 1fr; gap: 8px; }
    #klaro .klaro.we_cookie_consent.tk-consent .cookie-modal .cm-modal .cm-header,
    #klaro .klaro.we_cookie_consent.tk-consent .cookie-modal .cm-modal .cm-body,
    #klaro .klaro.we_cookie_consent.tk-consent .cookie-modal .cm-modal .cm-footer { padding: 16px 20px; }
    #klaro .klaro.we_cookie_consent.tk-consent .cookie-modal .cm-header h1 { font-size: 26px; }
    #klaro .klaro.we_cookie_consent.tk-consent .cookie-modal .cm-modal .cm-footer .cm-btn { width: 100%; }
    #klaro .tk-consent .cm-footer .cm-footer-buttons { width: 100%; flex-direction: column; }
}
.tk-local-video { display:block; width:100%; max-height:75vh; margin:24px auto; background:#000; }
.tk-video { width:100%; margin:24px auto; }
.tk-video iframe { display:block; width:100%; aspect-ratio:16 / 9; height:auto; border:0; }
.tk-video iframe[hidden], .tk-video .tk-consent-placeholder[hidden] { display:none; }

