:root {
    --disylexic-font: "OpenDyslexic", sans-serif;
    --font-size-modifier: 0px;
}
@font-face {
    font-family: "OpenDyslexic";
    font-style: normal;
    font-weight: 400;
    src: url("../fonts/OpenDyslexic-Regular.otf") format("opentype");
}
@font-face {
    font-family: "OpenDyslexic";
    font-style: normal;
    font-weight: 700;
    src: url("../fonts/OpenDyslexic-Bold.otf") format("opentype");
}

body.gray {
    filter: grayscale(100%);
}

body.contrast {
    background-color: black;
    --contrast-color: #80afff;
    --bright-color: #fff;
    --dark-color: #000;

    --color--primary-50: var(--bright-color);
    --button-color: var(--bright-color);
    --button-background-color: var(--dark-color);
    --button-border-color: var(--bright-color);
    --button-color-hover: var(--dark-color);
    --button-background-color-hover: var(--dark-color);
    --button-border-color-hover: var(--bright-color);
    --text-color: var(--bright-color);
    --background-suche: var(--bright-color);
    --button-suche-color: var(--contrast-color);
    --button-suche-color-hover: var(--dark-color);
    --menu-color: var(--dark-color);
    --primary-color: var(--contrast-color);
    --background-color-gray: var(--dark-color);
    --background-color-light: var(--dark-color);
    --background-color-white: var(--dark-color);
    --footer-background: var(--dark-color);
    --color-text-neutral-loud: var(--bright-color);
    --color-text-primary-medium: var(--bright-color);
    --color-text-neutral-medium: var(--bright-color);
}
/* Logo */
.contrast .site-branding__logo img,
.darkMode .site-branding__logo img {
    background: url(/themes/custom/kastaniecustom/kbv-logo-w.png) no-repeat;
    background-size: auto;
    display: block;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 106px;
    height: 90px;
    padding-left: 106px;
    background-size: contain;
}
/*Modal*/
.contrast .ui-dialog {
    background: var(--dark-color);
    color: var(--contrast-color);
}

.contrast .ui-dialog-title {
    color: var(--bright-color);
}

.page-wrapper.contrast {
    background-color: var(--dark-color);
}
/*Menü*/
.page-wrapper.contrast .site-header {
    border: 2px solid var(--bright-color);
}
.primary-nav__menu-link {
    color: var(--bright-color);
}
.primary-nav__menu-link:hover {
    color: var(--bright-color);
}
.primary-nav__menu-link-inner::after {
    border-color: var(--bright-color);
}
.text-content a:where(:not(.button)),
.cke_editable a:where(:not(.button)) {
    color: var(--bright-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(--bright-color);
    }
}
.secondary-nav__menu-link {
    color: var(--bright-color);
}
.secondary-nav__menu-link:hover {
    color: var(--bright-color);
}
@media (min-width: 75rem) {
    body:not(.is-always-mobile-nav) .primary-nav__menu--level-2 {
        /*background: var(--dark-color);*/
        border-top: solid var(--bright-color) var(--sp0-5);
        border-right: 2px solid var(--bright-color);
        border-bottom: 2px solid var(--bright-color);
        border-left: 2px solid var(--bright-color);
    } /*
    body:not(.is-always-mobile-nav) .primary-nav__menu-🥕 {
        border-bottom: solid 10px var(--bright-color);
      }*/
}
/* Suche */
.contrast .form-search::placeholder,
.darkMode .form-search::placeholder {
    color: var(--dark-color);
}
.contrast .block-search-wide__wrapper .search-form__submit .icon--search,
.contrast .block-search-narrow .search-form__submit .icon--search {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='26' height='27.2' viewBox='0 0 26 27.2'%3e %3cpath fill='%23000' d='M25.8,25.5l-5.3-5.3c2.1-2.1,3.4-5.1,3.4-8.3C23.9,5.3,18.5,0,11.9,0C5.3,0,0,5.3,0,11.9c0,6.6,5.3,11.9,11.9,11.9c2.6,0,5.1-0.9,7-2.3l5.4,5.4c0.4,0.4,1,0.4,1.4,0C26.1,26.6,26.1,25.9,25.8,25.5z M11.9,21.9c-5.5,0-9.9-4.4-9.9-9.9S6.4,2,11.9,2c5.5,0,9.9,4.4,9.9,9.9S17.4,21.9,11.9,21.9z'/%3e%3c/svg%3e");
}
.contrast .block-search-wide__wrapper .search-form__submit:hover .icon--search,
.contrast .block-search-narrow .search-form__submit:hover .icon--search {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='26' height='27.2' viewBox='0 0 26 27.2'%3e %3cpath fill='%23fff' d='M25.8,25.5l-5.3-5.3c2.1-2.1,3.4-5.1,3.4-8.3C23.9,5.3,18.5,0,11.9,0C5.3,0,0,5.3,0,11.9c0,6.6,5.3,11.9,11.9,11.9c2.6,0,5.1-0.9,7-2.3l5.4,5.4c0.4,0.4,1,0.4,1.4,0C26.1,26.6,26.1,25.9,25.8,25.5z M11.9,21.9c-5.5,0-9.9-4.4-9.9-9.9S6.4,2,11.9,2c5.5,0,9.9,4.4,9.9,9.9S17.4,21.9,11.9,21.9z'/%3e%3c/svg%3e");
}
.form-search {
    color: var(--dark-color) !important;
}
.mobile-nav-button__label {
    color: var(--bright-color);
}
/* Link */
.page-wrapper.contrast .field--name-field-link a,
.page-wrapper.contrast .field--name-field-anhang a,
.page-wrapper.contrast .links.inline a,
.page-wrapper.contrast .ui-widget-content a {
    box-shadow: inset 0 -2px 0 0 var(--bright-color);
}
.page-wrapper.contrast .field--name-field-link a:hover,
.page-wrapper.contrast .field--name-field-anhang a:hover,
.page-wrapper.contrast .links.inline a:hover,
.page-wrapper.contrast .ui-widget-content a:hover {
    box-shadow: inset 0 -2em 0 0 var(--bright-color);
    text-decoration-color: var(--bright-color);
}
/*Header Startseite*/
.page-wrapper.contrast .header-slogan {
    border: 2px solid var(--bright-color);
}
/*Aktuelles*/
.page-wrapper.contrast .view-aktuelles .views-view-grid__item {
    background: var(--dark-color);
    border: 2px solid var(--bright-color);
}
/*Dienstleistungen*/
.page-wrapper.contrast
    #block-kastaniecustom-views-block-dienstleistungen-block-1
    .views-row
    .node__title
    a {
    color: var(--bright-color);
    border: 2px solid var(--bright-color);
}
.page-wrapper.contrast
    #block-kastaniecustom-views-block-dienstleistungen-block-1
    .views-row
    .node__title
    a:hover {
    background-color: var(--bright-color);
    color: var(--dark-color);
}
.page-wrapper.contrast
    #block-kastaniecustom-views-block-dienstleistungen-block-1
    .views-row
    .node__title
    a:hover
    span {
    box-shadow: inset 0 -2px 0 0 var(--dark-color);
}
/* Stellenanzeigen*/
.page-wrapper.contrast .view-stellenanzeigen .views-view-grid__item {
    border: 2px solid var(--bright-color);
}
.contrast
    #block-kastaniecustom-views-block-termine-startseitenblock
    .field--type-datetime,
.darkMode
    #block-kastaniecustom-views-block-termine-startseitenblock
    .field--type-datetime {
    color: var(--dark-color);
}
/*Footer*/
.page-wrapper.contrast .site-footer {
    border: 2px solid var(--bright-color);
}
/*Icons*/
.contrast .field--name-field-anhang .field__item::before,
.darkMode .field--name-field-anhang .field__item::before {
    content: url(/themes/custom/kastaniecustom/images/icons/kbv-download-icon-w.svg);
    background-image: url(/themes/custom/kastaniecustom/images/icons/kbv-download-icon-w.svg);
}
.contrast .field--name-field-link .field__item::before,
.darkMode .field--name-field-link .field__item::before {
    content: url(/themes/custom/kastaniecustom/images/icons/kbv-link-icon-w.svg);
    background-image: url(/themes/custom/kastaniecustom/images/icons/kbv-link-icon-w.svg);
}

body.darkMode {
    --background-color: #232a3b;
    --contrast-color: #dde4f8;
    --bright-color: #fff;
    --dark-color: #232a3b;

    --color--primary-50: var(--bright-color);
    --button-color: var(--bright-color);
    --button-background-color: var(--dark-color);
    --button-border-color: var(--contrast-color);
    --button-color-hover: var(--dark-color);
    --button-background-color-hover: var(--contrast-color);
    --button-border-color-hover: var(--contrast-color);
    --text-color: var(--bright-color);
    --background-suche: var(--bright-color);
    --button-suche-color: #1c388f;
    --button-suche-color-hover: var(--contrast-color);
    --menu-color: var(--dark-color);
    --primary-color: var(--contrast-color);
    --background-color-gray: #3b4866;
    --background-color-light: #3b4866;
    --background-color-white: var(--dark-color);
    --footer-background: var(--dark-color);
    --color-text-neutral-loud: var(--bright-color);
    --color-text-primary-medium: var(--contrast-color);
    --box-shadow: rgba(0, 0, 0, 0.5);
    --color-text-neutral-medium: var(--bright-color);
}
.darkMode .page-wrapper {
    background-color: var(--dark-color);
}
/*Modal*/
.darkMode .ui-dialog {
    background: var(--dark-color);
    color: var(--contrast-color);
}
.darkMode .ui-dialog-title {
    color: var(--bright-color);
}
/*dienstleistungen*/
.darkMode
    #block-kastaniecustom-views-block-dienstleistungen-block-1
    .views-row
    .node__title
    a:hover
    span {
    box-shadow: inset 0 -2px 0 0 var(--dark-color);
}
.darkMode .block-search-wide__wrapper .search-form__submit:hover .icon--search,
.darkMode .block-search-narrow .search-form__submit:hover .icon--search {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='26' height='27.2' viewBox='0 0 26 27.2'%3e %3cpath fill='%23000' d='M25.8,25.5l-5.3-5.3c2.1-2.1,3.4-5.1,3.4-8.3C23.9,5.3,18.5,0,11.9,0C5.3,0,0,5.3,0,11.9c0,6.6,5.3,11.9,11.9,11.9c2.6,0,5.1-0.9,7-2.3l5.4,5.4c0.4,0.4,1,0.4,1.4,0C26.1,26.6,26.1,25.9,25.8,25.5z M11.9,21.9c-5.5,0-9.9-4.4-9.9-9.9S6.4,2,11.9,2c5.5,0,9.9,4.4,9.9,9.9S17.4,21.9,11.9,21.9z'/%3e%3c/svg%3e");
}

.darkMode #schriftgroesse-plus,
.contrast #schriftgroesse-plus {
    background-image: url(/themes/custom/kastanieolivero/images/icons/plus-icon-hover.svg);
}
.darkMode #schriftgroesse-minus,
.contrast #schriftgroesse-minus {
    background-image: url(/themes/custom/kastanieolivero/images/icons/minus-icon-hover.svg);
}
.darkMode #schriftgroesse-plus:hover,
.contrast #schriftgroesse-plus:hover {
    background-image: url(/themes/custom/kastanieolivero/images/icons/plus-icon.svg);
}
.darkMode #schriftgroesse-minus:hover,
.contrast #schriftgroesse-minus:hover {
    background-image: url(/themes/custom/kastanieolivero/images/icons/minus-icon.svg);
}

/*Schriftgröße*/
.terminkategorien a,
#main .text-content,
#main .cke_editable,
#main .paragraph,
#main .list-more-link,
#main .button--primary,
#main .slide__caption h2,
#main #toggle-more-items,
#main #block-kastaniecustom-footermenu {
    font-size: calc(1.125rem + var(--font-size-modifier));
    line-height: calc(2.125rem + var(--font-size-modifier));
}
#main .block__title {
    font-size: calc(2.625rem + var(--font-size-modifier));
    line-height: calc(3.938rem + var(--font-size-modifier));
}
.field--name-field-titel,
.node--view-mode-teaser .node__top-wrapper,
.dokumente__titel {
    font-size: 2rem;
    margin: 2rem 0;
}
#main .links.inline {
    font-size: calc(1.25rem + var(--font-size-modifier));
}
#block-kastaniecustom-views-block-dienstleistungen-block-1 .item h2 {
    font-size: calc(1.25rem + var(--font-size-modifier));
    line-height: calc(2rem + var(--font-size-modifier));
}
#block-kastaniecustom-views-block-partner-block-1 .field--name-field-link a {
    font-size: calc(1.25rem + var(--font-size-modifier));
}
.breadcrumb {
    font-size: calc(0.875rem + var(--font-size-modifier));
    line-height: calc(var(--sp1) + var(--font-size-modifier));
}
.zahl {
    font-size: calc(50px + var(--font-size-modifier));
}
.form-item__label {
    font-size: calc(1.25rem + var(--font-size-modifier));
    line-height: calc(2.25rem + var(--font-size-modifier));
}
.listenansicht.termine h2 a {
    font-size: calc(2.125rem + var(--font-size-modifier));
}
/*Schriftgröße*/
@media (min-width: 43.75rem) {
    #main .text-content,
    #main .cke_editable,
    #main .paragraph,
    #main .list-more-link,
    #main .button--primary,
    #main .slide__caption h2,
    #main #toggle-more-items,
    #main #block-kastaniecustom-footermenu {
        font-size: calc(1.25rem + var(--font-size-modifier));
        line-height: calc(2.25rem + var(--font-size-modifier));
    }
    #main .header-slogan {
        font-size: calc(4.5rem + var(--font-size-modifier));
        line-height: calc(5.625rem + var(--font-size-modifier));
    }
    #main h1 {
        font-size: calc(3.25rem + var(--font-size-modifier));
        line-height: calc(4.5rem + var(--font-size-modifier));
    }
    #main h2 {
        font-size: calc(2.625rem + var(--font-size-modifier));
        line-height: calc(4.25rem + var(--font-size-modifier));
    }
    #main h3 {
        font-size: calc(2.25rem + var(--font-size-modifier));
        line-height: calc(3.375rem + var(--font-size-modifier));
    }
    #main h4 {
        font-size: calc(1.875rem + var(--font-size-modifier));
        line-height: calc(3rem + var(--font-size-modifier));
    }
    #main h5 {
        font-size: calc(1.75rem+ var(--font-size-modifier));
        line-height: calc(2.625rem + var(--font-size-modifier));
    }
    #main h6 {
        font-size: calc(1.25rem + var(--font-size-modifier));
        line-height: calc(2.25rem + var(--font-size-modifier));
    }
    .text-content blockquote {
        font-size: 2rem;
        line-height: 2.75rem;
    }
}
