/**
 * Styles
 */

/* Buttons */

.button--primary,
.form-submit,
.site-footer .text-content a.button-footer,
#ausbildung-bewerbungslink {
    background-color: var(--button-background-color);
    padding: 7px 25px;
    color: var(--button-color);
    border: solid 3px var(--button-border-color);
    box-shadow: none;
    text-decoration: none;
    transition: 0.3s;
    cursor: pointer;
    text-align: center;
    border-radius: 50px;
    font-family: var(--font-sans);
    font-size: var(--font-size-l);
    font-weight: normal;
    display: inline-flex;
    align-items: center;
    height: fit-content;
    min-height: 48px;
}

.button--primary:hover,
.form-submit:hover,
.site-footer .text-content a.button-footer:hover {
    font-weight: 400;
    color: var(--button-color-hover);
    border-color: var(--button-border-color-hover);
    background-color: var(--button-background-color-hover);
    text-decoration: none;
}

.list-more-link,
.mitglied-akkordeon-contentlink a,
.button--secondary {
    padding: 5px 25px;
    color: var(--font-color-light-background);
    border: solid 3px var(--button-border-color);
    box-shadow: none;
    text-decoration: none;
    transition: 0.3s;
    cursor: pointer;
    text-align: center;
    border-radius: 50px;
    font-family: var(--font-sans);
    font-size: var(--font-size-l);
    font-weight: normal;
    display: inline-flex;
    align-items: center;
    height: fit-content;
    min-height: 48px;
    background-color: transparent !important;
}

.list-more-link:hover,
.mitglied-akkordeon-contentlink a:hover,
.button--secondary:hover {
    border: solid 3px var(--button-border-color-hover);
    background-color: var(--button-background-color-hover);
    text-decoration: none;
    font-weight: normal;
}

/* Links */
.text-content a:where(:not(.button)),
.cke_editable a:where(:not(.button)) {
    color: var(--primary-color);
}
@supports (box-shadow: none) {
    .text-content a:where(:not(.button)),
    .cke_editable a:where(:not(.button)) {
        box-shadow: inset 0 -2px 0 0 var(--primary-color);
    }
    .text-content a:where(:not(.button)):hover,
    .cke_editable a:where(:not(.button)):hover {
        color: var(--font-color-light-background);
        box-shadow: inset 0 -2em 0 0 #addeff;
        text-decoration-line: underline;
        text-decoration-thickness: 3px;
        text-decoration-color: var(--button-border-color);
    }
}
main a {
    color: var(--primary-color);
    transition: 0.2s;
    text-decoration-line: underline;
    text-decoration-thickness: 2px;
    text-decoration-color: var(--primary-color);
    text-underline-offset: 5px;
}
main a:hover {
    color: var(--font-color-light-background);
    text-decoration-line: underline;
    text-decoration-thickness: 5px;
    text-decoration-color: var(--button-border-color);
}

/* Page Title */
#block-kastaniecustom-page-title {
    border-left: solid 5px var(--secondary-color);
    padding-left: 10px;
}
@media (min-width: 43.75rem) {
    #block-kastaniecustom-page-title {
        padding-left: 20px;
    }
}
/* Title Links */
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    color: var(--font-color-light-background);
    text-decoration: none;
    -webkit-transition: 0.1s;
    -moz-transition: 0.1s;
    -o-transition: 0.1s;
    transition: 0.1s;
}
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover {
    color: var(--font-color-light-background);
    box-shadow: inset 0 -5px 0 0 var(--button-border-color);
    text-decoration: none;
}

/* Blockquote */
.text-content blockquote::before,
.cke_editable blockquote::before {
    display: none;
}
.text-content blockquote::after,
.cke_editable blockquote::after {
    width: 6px;
    height: 100%;
    background: var(--secondary-color);
}
.text-content blockquote,
.cke_editable blockquote {
    padding-inline-start: 25px;
}
@media (min-width: 43.75rem) {
    .text-content blockquote,
    .cke_editable blockquote {
        font-size: 1.75rem; /*28px*/
        line-height: 2.5rem; /*40px*/
        padding-inline-start: 36px;
    }
}
@media (min-width: 62.5rem) {
    .text-content blockquote,
    .cke_editable blockquote {
        font-size: 1.875rem; /*30px*/
        line-height: 2.625rem; /*42px*/
    }
}

/* Sortirte und Unsortirte Listen*/
.text-content,
.cke_editable {
    color: var(--font-color-light-background);
}
.text-content li {
    margin-bottom: 8px;
}
.text-content li::marker {
    color: var(--secondary-color);
    font-size: 1.625rem;
    font-family: var(--font-sans);
}
@media (min-width: 43.75rem) {
    .text-content li::marker {
        font-size: 2rem;
    }
}

/* Tags */
.field--name-field-bereich.field__items,
.field--name-field-bereich .field__items {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
    margin-block-end: 1.5rem;
}
.field--name-field-bereich .field__item {
    background-color: var(--tag-color);
    width: fit-content;
    border-radius: 50px;
    transition: 0.2s;
}
.field--name-field-bereich .field__item:hover {
    background-color: var(--button-background-color-hover);
}
.field--name-field-bereich .field__item a {
    color: var(--font-color-light-background);
    text-decoration: none;
    margin: 5px 20px;
    display: inline-block;
    line-height: 1.5rem;
}
.view-display-id-startseitenblock .field--name-field-bereich .field__item {
    background-color: unset;
}

.view-display-id-startseitenblock .field--name-field-bereich .field__item li,
.view-display-id-startseitenblock .field--name-field-bereich .field__item ul {
    list-style: none;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left;
}
.view-display-id-startseitenblock .field--name-field-bereich .field__item a {
    background-color: var(--tag-color);
    width: fit-content;
    border-radius: 50px;
    transition: 0.2s;
    padding: 6px 20px;
    margin: 5px 0;
}
.view-display-id-startseitenblock
    .field--name-field-bereich
    .field__item
    a:hover {
    background-color: var(--button-background-color-hover);
}
/* Datum */
.listenansicht .field--name-field-veranstaltungsdatum {
    color: var(--mo-background);
    font-size: 1.2em;
    margin-block-end: 1rem;
}

/* Fields und labels */
.field--name-field-titel,
.node--view-mode-teaser .node__top-wrapper,
.field--name-field-bereich .field__label {
    font-size: 2rem;
    font-weight: bold;
    margin: 4rem 0 2rem 0;
}

/* Dialog */
@media (max-width: 650px) {
    .ui-dialog {
        width: 90% !important;
        max-width: 600px;
        left: 5% !important;
    }
}

/* IFrames*/
iframe {
    max-width: 100%;
}
