/*
Theme Name:		EMK Netzwerk-Seiten
Theme URI: 		https://xeit.ch
Version: 		1.15
Author: 		xeit AG
Author URI: 	https://xeit.ch
*/


@import url('https://fonts.googleapis.com/css2?family=Roboto+Serif:ital,opsz,wght@0,8..144,100..900;1,8..144,100..900&family=Roboto+Slab:wght@100..900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');




html {
    -moz-text-size-adjust: none;
    -webkit-text-size-adjust: none;
    text-size-adjust: none;
}

html, body {
    background: #fff;
    overflow-x: hidden;
    font-weight: 300;
}

body {
    --first-level-group-padding: 3em;
    --gap-medium: 1em;
    --body-padding-top: 8.65em;
    --box-padding: 2.2em;
    --box-padding-large: 3.3em;
    padding-top: var(--body-padding-top) !important;
}

body.home {
    --body-padding-top: 5.85em;
}


    @media (min-width: 600px) {
        body {
            --first-level-group-padding: 3.334em;
            --gap-medium: 4.5em;
        }
    }


    @media (max-width: 1400px) {
        body {
            --wp--preset--font-size--medium: 16px;
            --wp--custom--typography--line-height--normal: 1.4;
        }
    }


    @media (max-width: 1200px) {
        body {
            --wp--preset--font-size--medium: 15px;
            --wp--custom--typography--line-height--normal: 1.4;
        }
    }


    @media (max-width: 800px) {
        body {
            --wp--preset--font-size--medium: 14px;
            --wp--custom--typography--line-height--normal: 1.4;
            --box-padding-large: 2.2em;
        }
    }

    @media (max-width: 899px) {
        body,
        body.home {
            --body-padding-top: 5em;
            --wp--custom--typography--font-size--h-1: 2.6em;
        }
    }

    @media (max-width: 450px) {
        body {
            --box-padding: 1.8em;
            --box-padding-large: 1.8em;
        }
    }



.editor-hint {
    border: 2px solid var(--wp--preset--color--vivid-cyan-blue);
    color: var(--wp--preset--color--vivid-cyan-blue);
    padding: 1em;
}

@media print {
    body {
        /* --wp--preset--color--primary: #000;
        --wp--preset--color--secondary: #000;
        --wp--preset--color--tertiary: #000;
        --wp--preset--color--quaternary: #222;
        --wp--preset--color--foreground: #000;
        --wp--preset--color--background: #fff; */
    }

    * {
        -webkit-print-color-adjust: exact !important;
        color-adjust: exact !important;
        print-color-adjust: exact !important;
    }


    header,
    footer {
        display: none;
    }


    #cmplz-cookiebanner-container,
    .cmplz-cookiebanner,
    .back-button,
    .scroll-up {
        display: none !important;
    }



    .wp-block-post-featured-image,
    .wp-block-post-featured-image img {
        aspect-ratio: 30 / 9 !important;
        object-fit: cover !important;
    }


}

body.is-subsite {
    --wp--preset--color--primary: #CAD8E2;
}

*:focus:not(:focus-visible) {
    outline: none;
}

*:focus:focus-visible {
    outline: 3px solid var(--wp--preset--color--foreground) !important;
    outline-offset: 3px;
    /* border-radius: 3px; */
}

.flickity-enabled:focus:focus-visible {
    outline: none !important
}


:where(.wp-block-group.has-background) {
    padding: 2em
}

    @media (min-width: 800px) {
        :where(.wp-block-group.has-background) {
            padding: 4.5em
        }
    }

/* body.overlay-nav-open {
    padding-top: 0;
}

    body.overlay-nav-open header ~ * {
        display: none !important;
    } */


* {
    box-sizing: border-box;
    font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
}

*:first-child {
    margin-top: 0 !important;
    margin-block-start: 0;
}

*:last-child {
    margin-bottom: 0 !important;
    margin-block-end: 0;
}

a {
    color: inherit;
    text-underline-offset: 0.3em;
}

    .has-foreground-background-color a:not(.has-text-color) {
        color: inherit !important;
    }

.entry-content {

}

    .entry-content,
    .entry-content > *:first-child {
        margin-block-start: 0;
    }

.entry-content > .wp-block-group.has-background,
.entry-content > .wp-block-group:not(.has-background) > .wp-block-group.has-background,
footer >  .wp-block-group.has-background {
    margin-block-start: 0;
    padding-top: var(--first-level-group-padding);
    padding-bottom: var(--first-level-group-padding);
    padding-left: 3em !important;
    padding-right: 3em !important;
}

.entry-content > .wp-block-group:not(.has-background) > .wp-block-group {
    margin-block-start: 0;
}


.entry-content > .wp-block-group.has-background-background-color + .wp-block-group.has-background-background-color,
.entry-content > .wp-block-group.has-primary-background-color + .wp-block-group.has-primary-background-color
.entry-content > .wp-block-group.has-secondary-background-color + .wp-block-group.has-secondary-background-color
.entry-content > .wp-block-group.has-tertiary-background-color + .wp-block-group.has-tertiary-background-color {
    margin-top: calc(var(--first-level-group-padding) * -0.5);
}


.entry-content > .wp-block-group > h2:first-child:not(:last-child) {
    margin-bottom: 3.8rem;
}

h3:not(:last-child) {
    margin-top: 2em;
}

/* Header */
header {
    position: fixed;
    top: 0;
    z-index: 9999;
    width: 100%;
    box-shadow: 0 3px 6px rgba(0,0,0,0.16);
    border-top: 0.5em solid var(--wp--preset--color--primary);
}


header > .wp-block-group.has-background {
    padding-left: calc(var(--first-level-group-padding) / 2);
    padding-right: calc(var(--first-level-group-padding) / 2);
    padding-top: 0.83em;
    padding-bottom: 0.83em;
    box-shadow: 0 3px 6px rgba(0,0,0,0.16);
    z-index: 9;
}

header > .wp-block-group.breadcrumb-holder {
    z-index: 0;
    box-shadow: none;
    transition: all 0.2s ease-out;
}

    @media (max-width: 899px) {
        header > .wp-block-group.breadcrumb-holder {
            display: none;
        }
    }

    .is-scrolling.is-scrolling-down header > .wp-block-group.breadcrumb-holder,
    body.submenu-visible header > .wp-block-group.breadcrumb-holder {
        margin-top: -3.5em
    }

    body.home header > .wp-block-group.breadcrumb-holder {
        display: none;
    }

header .wp-block-site-logo.is-default-size {

}

    header .wp-block-site-logo.is-default-size img,
    header .logo img {
        width: 10.4em !important;
        height: auto;
        max-width: 10.4em !important;
    }

header nav {
    font-weight: 400;
    font-family: var(--wp--preset--font-family--headlines);
}

    @media (max-width: 1000px) {
        header nav {
            font-size: 0.9em;
            line-height: 1.3;
        }
    }

    @media (min-width: 1400px) {
        header nav {
            font-size: 1.1em;
            line-height: 1.3;
        }
    }

    header ul.wp-block-navigation__container {
        gap: 0 2em;
    }


header .wp-block-search {
    width: 9em;
    margin-left: 1em;
}

    header .mobile-header .wp-block-search {
        margin-left: 0 !important
    }

    @media (min-width: 1400px) {
        header .wp-block-search {
            width: 10em;
            margin-left: 1em;
            margin-right: 1em;
        }
    }

    @media (max-width: 899px) {
        header .main-header .wp-block-search {
            display: none;
        }
    }

    header .wp-block-search .wp-block-search__inside-wrapper {
        border: 1.5px solid #A8A8A8;
        border-radius: 99px;
        width: 100% !important;
    }

    header .mobile-header .wp-block-search .wp-block-search__inside-wrapper {
        background: #fff;
    }


    header .wp-block-search .wp-block-search__inside-wrapper .wp-block-search__input {
        background: none;
        font-size: 1.1em;
        line-height: 1.3;
        font-weight: 400;
        font-family: var(--wp--preset--font-family--headlines);
        padding-left: 1em;
        padding-right: 0;
    }

    header .wp-block-search .wp-block-search__inside-wrapper button {
        background: none;
        padding: 0;
        color: #1F1F1F;
    }

    header .main-header {
        transition: margin-bottom 0.5s ease-out;
    }

    header .menu-bg {
        display: block;
        position: absolute !important;
        bottom: 0 !important;
        left: -1em !important;
        padding: 0 !important;
        width: calc(100% + 2em) !important;
        max-width: calc(100% + 2em) !important;
        height: 0;
        background: var(--wp--preset--color--background) !important;
        z-index: 0 !important;
        border-bottom: 0.5em solid #fff;
        box-shadow: inset 0 0 1em rgba(0,0,0,0.2);
        transition: height 0.5s ease-out, border 0.5s ease-out;

    }

        body.submenu-visible header .menu-bg {
            border-color: var(--wp--preset--color--primary) !important;
        }

    header .main-header nav ul.wp-block-navigation > li ul,
    header .mobile-header nav ul.wp-block-navigation > li ul {
        border: 0 !important;
        padding: 3em 0 0 0 !important;
        background: none !important
    }

    header .main-header nav ul.wp-block-navigation > li > button:not([aria-expanded='true']) ul {
        display: none !important;
    }

    header .main-header nav ul.wp-block-navigation > li:hover > button[aria-expanded='true'] ~ ul {
        display: block !important;
        opacity: 0 !important;
        transition: all 0.3s ease-out;
        transition-delay: 0.2s;
    }

    .submenu-visible header .main-header nav ul.wp-block-navigation > li:hover > button[aria-expanded='true'] ~ ul {
        opacity: 1  !important;
    }


        header .main-header nav ul.wp-block-navigation > li ul a,
        header .mobile-header nav ul.wp-block-navigation > li ul a {
            padding-left: 0 !important;
            padding-top: 0.25em !important;
            padding-bottom: 0.25em !important;
        }


    header .main-header nav ul.wp-block-navigation > li:hover > a,
    header .main-header nav ul.wp-block-navigation > li:hover > button,
    header .mobile-header nav ul.wp-block-navigation > li:hover > a,
    header .mobile-header nav ul.wp-block-navigation > li:hover > button {
        color: var(--wp--preset--color--primary);
    }

    header .main-header nav ul.wp-block-navigation a:hover,
    header .mobile-header nav ul.wp-block-navigation a:hover {
        color: var(--wp--preset--color--primary);
    }

    header .main-header nav ul.wp-block-navigation ul li,
    header .mobile-header nav ul.wp-block-navigation ul li {
        display: flex;
        flex-flow: row wrap;
    }



    header .main-header nav ul.wp-block-navigation ul ul.force-open {
        display: block !important;
        opacity: 1 !important;
        height: auto !important;
        visibility: visible !important;
    }

    header .main-header nav ul.wp-block-navigation ul ul,
    header .mobile-header nav ul.wp-block-navigation ul ul {
        position: static !important;
        display: block !important;
        font-size: 0.85em;
        line-height: 1.2;
        width: 100% !important;
        padding-top: 0 !important
    }


    .main-header .wp-block-navigation-submenu .wp-block-navigation__submenu-icon svg {
        transform: scale(1.6);
        margin-left: 0.3em;
    }


.intern-dropdown {
    font-size: 0.89em;
    line-height: 1.2em;
    font-weight: 700;
    font-family: var(--wp--preset--font-family--headlines);
    padding-left: 0;
    list-style-type: none;
    cursor: pointer;
    white-space: nowrap;
}

    .intern-dropdown:hover {
        color: var(--wp--preset--color--primary);
    }

    .intern-dropdown svg {
        transition: all 0.2s ease-out;
        margin-left: 0.3em;
        width: 1em;
        height: 0.6em;
    }

        .intern-dropdown:hover svg {
            transform: rotate(-180deg);
        }


    .intern-dropdown ul {
        position: absolute;
        padding-left: 0;
        list-style-type: none;
        font-weight: 400;
        opacity: 0;
        pointer-events: none;
        transition: all 0.2s ease-out;
        padding-top: 0.3em !important;
        color: var(--wp--preset--color--foreground);
    }

    .intern-dropdown:hover ul {
        opacity: 1;
        pointer-events: all;
    }

    .intern-dropdown a {
        text-decoration: none;
    }




.header-nav-toggle {
    display: block;
    width: 2em;
    height: 2em;
    outline: none;
    -webkit-appearance: none;
    appearance: none;
    border: 0;
    border-radius: 0;
    background: url(assets/images/nav-toggle.svg) no-repeat center;
    background-size: contain;
}

    @media (min-width: 900px) {
        .header-nav-toggle {
            display: none;
        }
    }

    @media (max-width: 899px) {
        .main-header .wp-block-search__inside-wrapper,
        .main-header .intern-dropdown,
        .main-header nav {
            display: none;
        }

        /* .overlay-nav-open .main-header nav {
            display: block;
        } */
    }


    .mobile-header {
        display: block;
        padding-top: 1em !important;
        padding-bottom: 1em !important;
    }
    
    .frontend .mobile-header {
        display: none;
    }

    .is-root-container .mobile-header {
        display: block !important;
    }
    
        @media (max-width: 899px) {
            body.frontend.overlay-nav-open .mobile-header {
                display: block;
            }
        }


    .mobile-header .main-mobile-nav {
        margin-top: 2em;
    }

        .mobile-header .main-mobile-nav > ul {
            width: 100% !important;
            gap: 0 !important;
        }

        .mobile-header .main-mobile-nav > ul > li {
            width: 100% !important;
            /* border-bottom: 2px solid var(--red); */
            flex-flow: row wrap !important;
        }

            .mobile-header .main-mobile-nav > ul > li > a,
            .mobile-header .main-mobile-nav > ul > li > button {
                font-size: 1.4em;
                display: inline-block;
                width: calc(100% - 1.5em);
                padding: 0.4em 0;
            }

            .mobile-header .main-mobile-nav > ul > li > ul {
                overflow: hidden !important;
            }

            .mobile-header .main-mobile-nav > ul > li > ul {
                overflow: hidden !important;
                height: 0 !important
            }



            .mobile-header .main-mobile-nav .has-child .wp-block-navigation__submenu-icon {
                margin-left: auto !important;
                width: 20px;
                height: auto;
                transition: all 0.2s ease-out;
            }

            .mobile-header .main-mobile-nav .has-child .wp-block-navigation-submenu__toggle[aria-expanded=true]~.wp-block-navigation__submenu-container {
                position: relative;
                display: block;
                height: auto !important;
                width: 100% !important
            }

                .mobile-header .main-mobile-nav .has-child .wp-block-navigation-submenu__toggle[aria-expanded=true]~.wp-block-navigation__submenu-container button {
                    display: none !important;
                }

                .mobile-header .main-mobile-nav .has-child .wp-block-navigation-submenu__toggle[aria-expanded=true]~.wp-block-navigation__submenu-container ul {
                    position: relative;
                    display: block !important;
                    width: 100% !important;
                    padding: 0.5em 0.5em 0.5em 1em !important;
                    height: auto !important;
                    visibility: visible !important;
                    opacity: 1 !important;
                }

                    .mobile-header .main-mobile-nav .has-child .wp-block-navigation-submenu__toggle[aria-expanded=true]~.wp-block-navigation__submenu-container li.has-child {
                        flex-flow: row wrap !important
                    }



            .mobile-header .main-mobile-nav .has-child .wp-block-navigation-submenu__toggle[aria-expanded=true] {
                transform: rotate(180deg);
            }

            .mobile-header .main-mobile-nav .has-child .wp-block-navigation-submenu__toggle[aria-expanded=true] svg {
                stroke: var(--wp--preset--color--foreground) !important;
            }

            .mobile-header .main-mobile-nav .has-child > a:has(+ .wp-block-navigation-submenu__toggle[aria-expanded=true]) {
                font-weight: bold !important;
                color: var(--wp--preset--color--primary) !important;
            }

            .mobile-header .submenu-wrap {
                position: relative;
                width: 100% !important;
                column-count: 1 !important;
            }

                .mobile-header .wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container {
                    background: unset !important;
                    padding: 0 0 0.5em 0 !important;
                    border: 0;
                    margin-top: 0 !important
                }

                    .mobile-header .main-mobile-nav > ul ul li a {
                        padding: 0.2em 0 !important;
                        color: var(--wp--preset--color--foreground) !important;
                    }




/* Home Cover */
.wp-block-cover {
    height: calc(100vh - var(--body-padding-top) - 2em);
    min-height: 350px;
}

    @media (max-width: 899px) {
        .wp-block-cover {
            max-height: calc(100vh - var(--body-padding-top) - 2em);
            height: 150vw;
        }
    }

    .wp-block-cover img,
    .wp-block-cover .wp-block-cover__background {
        -webkit-mask-image: url(./assets/images/mask-1.png);
        mask-image: url(./assets/images/mask-1.png);
        -webkit-mask-size: 100% auto;
        mask-size: 100% auto;
        -webkit-mask-position: bottom;
        mask-position: bottom;
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
    }

    .wp-block-cover h1,
    .wp-block-cover h2,
    .wp-block-cover h3,
    .wp-block-cover p {
        text-shadow: 0 3px 6px rgba(0,0,0,0.2);
    }

    .wp-block-cover * + p.is-style-lead {
        margin: 0.2em 0 0.2em 0;
    }




.entry-content,
footer,
header > *:not(.sidebar-nav) {
    transition: filter 0.3s ease-out;
}

/* body.overlay-nav-open .entry-content,
body.overlay-nav-open footer,
body.overlay-nav-open header > *:not(.sidebar-nav) {

    filter: brightness(1.1) blur(5px);
} */

.frontend .sidebar-nav {
    transform: translateX(100%);
    opacity: 1;
    pointer-events: none;
    width: 17em;
    position: absolute;
    top: 0;
    right: 0;
    height: 100vh;
    z-index: 99999;
    box-shadow: 0 3px 6px rgba(0,0,0,0.05);
    transition: all 0.3s ease-out;
}

    body.overlay-nav-open .sidebar-nav {
        transform: translateX(0);
        opacity: 1;
        pointer-events: all;
    }



/* .is-style-narrow */
.is-style-narrow {
    max-width: 60em !important;
}

/* .is-style-narrow-mid */
.is-style-narrow-mid {
    max-width: 45em !important;
}

/* .is-style-narrow-mid */
.is-style-narrow-1-3 {
    max-width: 30em !important;
}

.is-style-narrow-1-4 {
    max-width: 22em !important;
}

strong {
    font-weight: 600 !important;
}

/* Normal Button Hover */
.wp-block-button:not([class*='is-style-']) .wp-block-button__link {
    transition: color 0.2s ease-out, background 0.2s ease-out;
}

.wp-block-button:not([class*='is-style-']) .wp-block-button__link:hover {
    background: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--background);
}

/* Button .is-style-outlune */
.wp-block-button.is-style-outline .wp-block-button__link {
    background: transparent !important;
}

/* Button .is-style-underline */
.wp-block-button.is-style-underline {
    font-size: 0.66em;
    line-height: 1.25
}

.wp-block-button.is-style-underline .wp-block-button__link {
    padding: 0 !important;
    font-weight: 600;
    font-size: 1em;
    line-height: 1.45;
    background: transparent !important;
    position: relative !important;
}

.wp-block-button.is-style-underline .wp-block-button__link::before {
    content: "";
    display: block;
    height: 4px;
    background: var(--wp--preset--color--foreground);
    position: absolute;
    bottom: -2px;
    width: 100%;
    border-radius: 99px;
}

    .wp-block-button.is-style-underline .wp-block-button__link.has-primary-background-color::before { background: var(--wp--preset--color--primary); }
    .wp-block-button.is-style-underline .wp-block-button__link.has-secondary-background-color::before { background: var(--wp--preset--color--secondary); }
    .wp-block-button.is-style-underline .wp-block-button__link.has-tertiary-background-color::before { background: var(--wp--preset--color--tertiary); }
    .wp-block-button.is-style-underline .wp-block-button__link.has-quaternary-background-color::before { background: var(--wp--preset--color--quaternary); }
    .wp-block-button.is-style-underline .wp-block-button__link.has-quinary-background-color::before { background: var(--wp--preset--color--quinary); }
    .wp-block-button.is-style-underline .wp-block-button__link.has-foreground-background-color::before { background: var(--wp--preset--color--foreground); }
    .wp-block-button.is-style-underline .wp-block-button__link.has-background-background-color::before { background: var(--wp--preset--color--background); }



/* Intro CTAs */
.wp-block-columns.intro-ctas {

}

.wp-block-columns.intro-ctas > .wp-block-column {
    position: relative;
}

.wp-block-columns.intro-ctas > .wp-block-column + .wp-block-column::before {
    content: "";
    display: block;
    background: #F2F2F2;
    width: 6px;
    border-radius: 99px;
    height: calc(100% - 4.75em);
    position: absolute;
    left: -3px;
    bottom: 0;
}

.intro-ctas .intro-icon img {
    width: auto;
    height: 3.5em;
}

/* Lead .is-style-lead */
p.is-style-lead {
    font-size: 1.33em;
    line-height: 1.4;
    font-family: var(--wp--preset--font-family--headlines);
    font-weight: 400;
}

    .wp-block-cover p.is-style-lead {
        font-size: 2.22em;
        line-height: 1.27;
        font-family: var(--wp--preset--font-family--text);
        font-weight: 300;
    }

        @media (max-width: 899px) {
            .wp-block-cover p.is-style-lead {
                font-size: 2em;
                line-height: 1.27;
            }
        }

/* Breadcrumbs */
.yoast-breadcrumbs {
    font-size: 0.9375em;
    line-height: 1.1;
    max-width: 100% !important;
}

    .yoast-breadcrumbs a[href='https://2025.emk-schweiz.ch/'] {
        display: inline-block;
        width: 1em;
        height: 1em;
        transform: translateY(10%);
        background: url(assets/images/home.svg) no-repeat center;
        background-size: contain;
        overflow: hidden;
        text-indent: -999px;
    }

    .yoast-breadcrumbs .breadcrumb_last {
        font-weight: bold;
        color: var(--wp--preset--color--primary) !important;
    }

        body.is-subsite .yoast-breadcrumbs .breadcrumb_last {
            color: var(--wp--preset--color--secondary) !important;
        }

/* Media - Text */
.wp-block-media-text:not([class*='is-style-']) {

}

    .wp-block-media-text.is-style-mini-link {
        cursor: pointer;
        position: relative;
        text-decoration: none !important;
    }

        .wp-block-media-text.is-style-mini-link::after {
            content: "";
            display: block;
            width: 1.5em;
            height: 1em;
            bottom: 0.55em;
            right: 0.55em;
            position: absolute;
            background: url(assets/images/arrow-right-long.svg?v4) no-repeat center;
            background-size: contain;
        }

    .wp-block-media-text.is-style-mini-link a {
        text-decoration: none !important;
    }

    .wp-block-media-text.shadow {
        box-shadow: 0 0.66em 1.22em rgba(0,0,0,0.16);
    }

    .wp-block-media-text:not([class*='is-style-']) .wp-block-media-text__content,
    .wp-block-media-text.is-style-mini-link .wp-block-media-text__content {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .wp-block-media-text.has-background:not([class*='is-style-']) .wp-block-media-text__content {
        padding: var(--box-padding-large) !important;
    }

    .wp-block-media-text.has-background.is-style-mini-link .wp-block-media-text__content {
        padding: 1.1em !important;
        font-family: var(--wp--preset--font-family--headlines);
        /*font-weight: bold;*/
        font-size: 1.11em;
    }

    @media (max-width: 599px) {
        .wp-block-media-text:not([class*='is-style-']) .wp-block-media-text__media,
        .wp-block-media-text.is-style-mini-link .wp-block-media-text__media {
            -webkit-mask-image: url(./assets/images/mask-1.png);
            mask-image: url(./assets/images/mask-1.png);
            -webkit-mask-size: 100% auto;
            mask-size: 100% auto;
            -webkit-mask-position: bottom;
            mask-position: bottom;
            -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
        }
    }

    @media (min-width: 600px) {
        .wp-block-media-text:not([class*='is-style-']) .wp-block-media-text__media,
        .wp-block-media-text.is-style-mini-link .wp-block-media-text__media {
            -webkit-mask-image: url(assets/images/mask-left.png);
            mask-image: url(assets/images/mask-left.png);
            -webkit-mask-size: auto 100%;
            mask-size: auto 100%;
            -webkit-mask-position: right;
            mask-position: right;
            -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
        }
    }

    .wp-block-media-text.is-style-mini-link .wp-block-media-text__media {
        min-height: 6.5em !important;
    }

    @media (min-width: 600px) {
        .wp-block-media-text.has-media-on-the-right:not([class*='is-style-']) .wp-block-media-text__media,
        .wp-block-media-text.has-media-on-the-right.is-style-mini-link .wp-block-media-text__media {
            -webkit-mask-image: url(assets/images/mask-right-2.png);
            mask-image: url(assets/images/mask-right-2.png);
            -webkit-mask-position: left;
            mask-position: left;
        }

        .wp-block-media-text.has-media-on-the-right.right-v2:not([class*='is-style-']) .wp-block-media-text__media,
        .wp-block-media-text.has-media-on-the-right.right-v2.is-style-mini-link .wp-block-media-text__media {
            -webkit-mask-image: url(assets/images/mask-right.png);
            mask-image: url(assets/images/mask-right.png);
            -webkit-mask-position: left;
            mask-position: left;
        }
    }

.mini-link-a-wrap {
    text-decoration: none;
    display: block;
}

.mini-link-a-wrap + .mini-link-a-wrap {
    margin-top: 0.66em;
}

.wp-block-columns.is-style-large-image {
    gap: 0 !important;
}

.wp-block-columns.is-style-large-image > .wp-block-column:nth-child(2) {
    padding: 0 !important
}
.wp-block-columns.is-style-large-image > .wp-block-column:nth-child(2) > .wp-block-group.has-background {
    padding: var(--box-padding) !important;
}


@media (min-width: 900px) {
.wp-block-media-text.is-style-large-image,
.wp-block-columns.is-style-large-image {
    display: flex;
    flex-flow: row wrap;
    position: relative;
}


    .wp-block-media-text.is-style-large-image.has-media-on-the-right {
        display: flex;
        flex-flow: row wrap-reverse;
        position: relative;
    }

    .wp-block-columns.is-style-large-image.has-media-on-the-right {
        display: flex;
        flex-flow: row-reverse wrap;
        position: relative;
    }

    /* .wp-block-columns.is-style-large-image > .wp-block-column:nth-child(1) {
        flex: 1;
        width: unset;
    } */

    .wp-block-media-text.is-style-large-image .wp-block-media-text__media,
    .wp-block-columns.is-style-large-image .wp-block-column:nth-child(1) {
        width: 56% !important;
        transform: scale(1.25);
        transform-origin: left;
        margin-top: var(--first-level-group-padding) !important;
        margin-bottom: var(--first-level-group-padding) !important;
    }

        .wp-block-media-text.is-style-large-image.has-media-on-the-right .wp-block-media-text__media,
        .wp-block-columns.is-style-large-image.has-media-on-the-right > .wp-block-column:nth-child(1) {
            transform-origin: right !important;
        }

        .wp-block-columns.is-style-large-image:not(.has-media-on-the-right) > .wp-block-column:nth-child(1),
        .wp-block-columns.is-style-large-image.has-media-on-the-right > .wp-block-column:nth-child(1) {
            flex-basis: 56% !important;
            z-index: 0;
        }

        .wp-block-columns.is-style-large-image > .wp-block-column:nth-child(2) {
            flex-basis: 44% !important;
            z-index: 9 !important;
        }

        .wp-block-media-text.is-style-large-image .wp-block-media-text__media img {
            aspect-ratio: 3 / 2;
        }

    .wp-block-media-text.is-style-large-image .wp-block-media-text__content,
    .wp-block-columns.is-style-large-image > .wp-block-column:nth-child(2) > .wp-block-group.has-background {
        background: var(--wp--preset--color--background) !important;
        box-shadow: 0 0.66em 1.22em rgba(0,0,0,0.16);
        padding: var(--box-padding-large) !important;
        width: 44%;
        z-index: 9;
    }

    .wp-block-columns.is-style-large-image > .wp-block-column:nth-child(2) > .wp-block-group.has-background {
        width: 100%;
    }
}

.wp-block-media-text__media img {
    object-fit: cover !important;
}

@media (max-width: 899px) {
    .wp-block-media-text.is-style-large-image,
    .wp-block-columns.is-style-large-image {
        display: flex;
        flex-flow: row wrap;
    }

    .wp-block-columns.is-style-large-image {
        display: block;
    }

    .wp-block-columns.is-style-large-image > .wp-block-column {
        flex-basis: unset !important;
    }

    .wp-block-media-text.is-style-large-image .wp-block-media-text__media,
    .wp-block-columns.is-style-large-image > .wp-block-column:nth-child(1) {
        order: 1;
        width: 100%;
    }

    .wp-block-media-text.is-style-large-image .wp-block-media-text__content,
    .wp-block-columns.is-style-large-image > .wp-block-column:nth-child(2) {
        order: 2;
        width: 100%;
        background: var(--wp--preset--color--background) !important;
        padding: var(--box-padding);
    }
}

/* Lists */
ul {
    padding-left: 1.2em;
}

    ul li.is-style-check {
        list-style-type: none;
        position: relative;
    }

        ul li.is-style-check::before {
            content: "";
            width: 1em;
            height: 1em;
            background: url(assets/images/check.svg) no-repeat left center;
            position: absolute;
            top: 0.2em;
            left: -1.2em;
        }

/* Linklist */
ul.is-style-linklist {
    padding-left: 4em;
    list-style-type: none;
}

    ul.is-style-linklist li {
        position: relative;
    }

        ul.is-style-linklist li + li {
            margin-top: 1.25em;
        }

        ul.is-style-linklist li a {
            text-decoration: none;
        }

        ul.is-style-linklist li::before {
            content: "";
            display: block;
            position: absolute;
            background: url(assets/images/linklist-arrow.svg) no-repeat center;
            background-size: contain;
            width: 0.67em;
            height: 1em;
            left: -2.8em;
            top: 50%;
            transform: translateY(-50%);
        }


/* Article Meta Nav */
.article-meta-nav {
    border-top: 2px solid #575757;
    padding: 0.667em 0;
    margin-top: 2em;
}

    .share-bar {
        gap: 0.5em;
    }

        .share-bar > p {
            white-space: nowrap;
        }

    .social-share-buttons {
        display: flex;
        flex-flow: row wrap;
        justify-content: center;
        align-items: center;
        gap: 0.7em;
        margin-top: 0.5em;
    }

        .social-share-buttons > a {
            width: 2.22em;
            height: 2.22em;
            overflow: hidden;
            display: block;
            background: #fff;
            text-indent: -10000px;
            background-size: contain;
            background-position: center;

        }

        .social-share-buttons > a.share-facebook { background-image: url(assets/images/share-facebook.svg?v4); }
        .social-share-buttons > a.share-whatsapp { background-image: url(assets/images/share-whatsapp.svg?v4); }
        .social-share-buttons > a.share-email { display: none; background-image: url(assets/images/share-email.svg?v4); }
        .social-share-buttons > a.share-print { background-image: url(assets/images/share-download.svg?v4); }

/* Media-Text .wp-block-media-text[class*='is-style-stacked']-* */
.wp-block-media-text[class*='is-style-stacked'] {
    display: block;
    box-shadow: 0 0.66em 1.22em rgba(0,0,0,0.16);
}

    .wp-block-media-text[class*='is-style-stacked'] .wp-block-media-text__media {
        background: none;
        position: relative;
    }

        .wp-block-media-text[class*='is-style-stacked'].is-video .wp-block-media-text__media::before {
            content: "";
            display: block;
            position: absolute;
            width: 3.5em;
            height: 3.5em;
            background: url(assets/images/video-play.svg?v4) no-repeat center;
            background-size: cover;
            border-radius: 999px;
            bottom: 0;
            left: var(--box-padding);
            z-index: 9999;
        }

    .wp-block-media-text[class*='is-style-stacked'] .wp-block-media-text__media img,
    .wp-block-media-text[class*='is-style-stacked'] .wp-block-media-text__media video {
        width: 100%;
        aspect-ratio: 3 / 2;
        object-fit: cover;
        -webkit-mask-image: url(./assets/images/mask-1.png);
        mask-image: url(./assets/images/mask-1.png);
        -webkit-mask-size: 100% auto;
        mask-size: 100% auto;
        -webkit-mask-position: bottom;
        mask-position: bottom;
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
    }

        .wp-block-media-text.is-style-stacked-spacious .wp-block-media-text__media img,
        .wp-block-media-text.is-style-stacked-spacious .wp-block-media-text__media video {
            aspect-ratio: 3 / 2;
        }


        .page-id-35621 .wp-block-media-text[class*='is-style-stacked'] .wp-block-media-text__media img,
        .page-id-35621 .wp-block-media-text[class*='is-style-stacked'] .wp-block-media-text__media video {
            aspect-ratio: 1 / 1;
        }

    .wp-block-media-text[class*='is-style-stacked'].has-background .wp-block-media-text__content {
        padding: var(--box-padding);
    }




/* Row Three / Four / Six */
.is-style-row-2,
.is-style-row-3,
.is-style-row-4,
.is-style-row-6 {
    gap: var(--gap-medium) var(--gap-medium);
    flex-flow: row wrap !important
}

    .is-style-row-2 > *[class*='wp-block'],
    .is-style-row-2 .flickity-slider > *,
    .is-style-row-3 > *[class*='wp-block'],
    .is-style-row-3 .flickity-slider > *,
    .is-style-row-4 > *[class*='wp-block'],
    .is-style-row-4 .flickity-slider > *,
    .is-style-row-6 > *[class*='wp-block'],
    .is-style-row-6 .flickity-slider > * {
        width: 100% !important;
        min-height: 100%;
    }

    .is-style-row-2 .flickity-slider > *,
    .is-style-row-3 .flickity-slider > *,
    .is-style-row-4 .flickity-slider > *,
    .is-style-row-6 .flickity-slider > * {
        width: 100% !important;
        margin: 0 calc(var(--gap-medium) / 2);
    }

    @media (min-width: 600px) {
        .is-style-row-2 > *[class*='wp-block'],
        .is-style-row-2 .flickity-slider > *,
        .is-style-row-3 > *[class*='wp-block'],
        .is-style-row-3 .flickity-slider > *,
        .is-style-row-4 > *[class*='wp-block'],
        .is-style-row-4 .flickity-slider > *,
        .is-style-row-6 > *[class*='wp-block'],
        .is-style-row-6 .flickity-slider > * {
            width: calc(50% - var(--gap-medium)*0.5) !important;
            gap: var(--gap-medium);
        }
    }

    @media (min-width: 900px) {
        .is-style-row-3 > *[class*='wp-block'],
        .is-style-row-3 .flickity-slider > * {
            width: calc(33.33% - var(--gap-medium)*0.667) !important;
        }


        .is-style-row-4 > *[class*='wp-block'],
        .is-style-row-4 .flickity-slider > * {
            width: calc(25% - var(--gap-medium)*0.75) !important;
        }

        .is-style-row-6 > *[class*='wp-block'],
        .is-style-row-6 .flickity-slider > * {
            width: calc(16.66% - var(--gap-medium)*0.834) !important;
        }
    }

    div[class*='is-style-row-'] > .wp-block-media-text[class*='is-style-stacked'] {
        min-height: 100%;
        align-self: stretch;
    }


/* Footer */
footer {
    margin-top: 0;
    border-bottom: 0.5em solid var(--wp--preset--color--primary)
}

    footer a {
        text-decoration: none ;
    }

    footer a:hover,
    footer a:focus {
        color: var(--wp--preset--color--primary) !important;
    }

    footer .footer-cols {
    }

    footer .footer-cols > * {
        font-size: 0.67em;
        line-height: 1.4;
    }

    footer .is-footer-quicknav {
        flex: 1;
    }

        footer .is-footer-quicknav p.has-large-font-size + p.has-large-font-size {
            margin-top: 0.5em;
        }

    footer .is-footer-contact {
        flex: 2;
    }

    footer .is-footer-mainnav {
        flex: 3;
    }

        footer .is-footer-mainnav > .wp-block-group {
            width: 100%;
        }

            footer .is-footer-mainnav > .wp-block-group + .wp-block-group {
                margin-top: 2em;
            }

        footer .is-footer-mainnav > .wp-block-group > * {
            flex: 1;
        }

    footer .imprint {
        margin-top: calc(var(--first-level-group-padding) * 1.5) !important;
        margin-bottom: calc(var(--first-level-group-padding) * -0.75) !important
    }

    @media (min-width: 500px) and (max-width: 1200px) {
        footer .wp-block-group .wp-block-group .wp-block-columns {
            display: block;
        }

        .sitemap-col {
            display: block;
            flex-basis: 100%;
            margin-top: 5em !important;
        }

            .sitemap-col > * {
                flex: 1;
                margin-top: 2em !important
            }

            .sitemap-col .wp-block-columns {
                display: flex !important;
                flex-flow: row wrap !important;
            }

                .sitemap-col .wp-block-columns .wp-block-column {
                    flex: 1;
                }
    }

.editor-editor-canvas__post-title-wrapper {
    margin-top: 0 !important;
}

h1.editor-post-title {
    border: 1px dashed var(--wp-admin-theme-color);
    padding: 0.5em;
    margin: 0 1em 1em 1em !important;
}


.grid-button-holder {
    align-self: center;
}


/* Slider */
* > .is-style-slider {
    margin-top: 3em;
}
body:not(.frontend) .wp-block-group.is-style-slider,
body:not(.frontend) .wp-block-query.is-style-slider {
    border: 2px solid var(--wp--preset--color--primary);
    position: relative;
    padding: 1em;
}


    body:not(.frontend) .wp-block-group.is-style-slider > *,
    body:not(.frontend) .wp-block-query.is-style-slider li.wp-block-post  {
        border: 2px solid var(--wp--preset--color--primary);
        position: relative;
    }

        body:not(.frontend) .wp-block-group.is-style-slider > *::before,
        body:not(.frontend) .wp-block-query.is-style-slider li.wp-block-post::before {
            content: "Slide";
            position: absolute;
            left: 0;
            top: 0;
            padding: 0.5em 1em;
            background: var(--wp--preset--color--primary);
            z-index: 9999;
            font-weight: bold;
            color: #fff;
            font-size: 13px;
            opacity: 0.7;
        }

    .flickity-slider > * {
        margin-top: 0 !important
    }

.flickity-viewport,
.flickity-slider {
    width: 100%;
}

    .flickity-slider > * {
        width: 100%;
        margin: 0 1em;
        opacity: 0;
        transition: opacity 0.5s ease-out;
    }

    .flickity-slider > *.is-selected,
    .flickity-slider > *.is-next,
    .flickity-slider > *.is-prev {
        opacity: 1;
    }

    .flickity-slider > *.is-next,
    .flickity-slider > *.is-prev {
        opacity: 0.75;
        filter: blur(0)
    }

    .flickity-slider > *.is-next.is-video,
    .flickity-slider > *.is-prev.is-video,
    .is-style-row-3.is-style-slider *.is-prev,
    .is-style-row-3.is-style-slider *.is-next {
        opacity: 1;
        filter: blur(0)
    }

    .flickity-slider > *.is-prev:not(.is-video)::before {
        content: "";
        display: block;
        position: absolute;
        top: -1em;
        left: -1em;
        width: calc(100% + 2em);
        height: calc(100% + 2em);
        background: rgb(255,255,255);
        background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 33%, rgba(255,255,255,0) 100%);
        z-index: 999;
    }

    .flickity-slider > *.is-next:not(.is-video)::before {
        content: "";
        display: block;
        position: absolute;
        top: -1em;
        left: -1em;
        width: calc(100% + 2em);
        height: calc(100% + 2em);
        background: rgb(255,255,255);
            background: linear-gradient(270deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 33%, rgba(255,255,255,0) 100%);
        z-index: 999;
    }

    .is-style-row-3.is-style-slider *.is-next::before,
    .is-style-row-3.is-style-slider *.is-prev::before {
        display: none;
    }

    .flickity-viewport {
        overflow: visible;
    }

    @media (max-width: 781px) {
        .flickity-viewport {
            margin-bottom: 3em !important;
        }
    }

.flickity-prev-next-button {
    width: 3em !important;
    height: 3em !important;
    position: absolute !important;
    bottom: -0.25em !important;
    top: unset !important;
    right: unset !important;
    left: calc(50% + 10em) !important;
    transform: translateX(-50%) translateY(-50%) !important;
    z-index: 999;
    box-shadow: 0 6px 12px rgba(0,0,0,0.16);
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}

    .media-text-slider > .flickity-prev-next-button {
        bottom: -3em !important;
    }

    .flickity-prev-next-button.previous {
        left: calc(50% - 10em) !important;
    }

    .flickity-prev-next-button .flickity-button-icon {
        transform: scale(0.6);
    }

    @media (max-width: 350px) {
        .flickity-prev-next-button { left: calc(50% + 8em) !important; }
        .flickity-prev-next-button.previous { left: calc(50% - 8em) !important; }
    }


.flickity-page-dots {
    display: flex;
    flex-flow: row wrap;
    gap: 0.5em;
    justify-content: center;
    left: 0;
    width: 100%;
    padding: 0;
    position: relative;
    bottom: auto;
    margin-top: 2em;
    margin-bottom: 2em !important;
    padding-left: 0 !important
}

    .entry-content .flickity-page-dots {
        padding-left: 0 !important
    }

    .entry-content .flickity-page-dots li.dot {
        margin: 0;
        width: 0.6em;
        height: 0.6em;
        opacity: 1;
        background: #fff;
        box-shadow: 0 3px 6px rgba(0,0,0,0.2);
        position: relative;
        box-sizing: border-box;
        transition: all 0.2s ease-out;
    }

    .entry-content .flickity-page-dots li.dot.is-selected {
        box-shadow: none;
    }

        .entry-content .flickity-page-dots li.dot::before {
            content: "";
            box-sizing: border-box;
            display: block;
            width: calc(100% + 6px);
            height: calc(100% + 6px);
            border: 3px solid var(--wp--preset--color--primary);
            border-radius: 999px;
            position: absolute;
            left: -3px;
            top: -3px;
            opacity: 0;
            transform: scale(0);
            transition: all 0.2s ease-out;
        }

        .entry-content .flickity-page-dots li.dot.is-selected::before {
            content: "";
            opacity: 1;
            transform: scale(1);
        }

.hero-slider > * {
    max-width: 100%;
}



.wp-block-file {
    font-size: 0.833em;
    line-height: 1.2;
}

.wp-block-file > a {
    text-decoration: none;
    font-weight: 600;
    background: #F6F6F6;
    color: #575757;
    padding: 0.5em 0.75em;
    display: block;
}

.wp-block-file .file-meta {
    font-weight: 300;
    font-size: 0.8em;
    line-height: 1.2;
}



.wp-block-query ul {
    gap: var(--gap-medium);
}

.wp-block-query ul li.wp-block-post {
    background: #fff;
    box-shadow: 0 0.66em 1.22em rgba(0,0,0,0.16);
    padding: var(--box-padding);
    padding-bottom: 6em;
    position: relative;
}

.wp-block-query .wp-block-post-date {
    font-family: var(--wp--preset--font-family--headlines);
    font-size: 0.88em;
    line-height: 1.3;
}

    .wp-block-query .wp-block-post-date + .wp-block-post-title {
        margin-top: 0;
        font-weight: bold;
    }

    .wp-block-query .wp-block-post-title a {
        text-decoration: none;
    }

.wp-block-query .wp-block-post > .wp-block-post-featured-image:first-child {
    margin: calc(var(--box-padding) * -1) calc(var(--box-padding) * -1) 1.5em calc(var(--box-padding) * -1) !important;
}

.wp-block-query .wp-block-post-featured-image img {
    -webkit-mask-image: url(./assets/images/mask-1.png);
    mask-image: url(./assets/images/mask-1.png);
    -webkit-mask-size: 100% auto;
    mask-size: 100% auto;
    -webkit-mask-position: bottom;
    mask-position: bottom;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
}


.wp-block-query ul li.wp-block-post .wp-block-post-excerpt__more-text {
    margin-top: 0;
}


.is-root-container .wp-block-post-excerpt {
    position: static;
}

.wp-block-query ul li.wp-block-post .wp-block-post-excerpt__more-link {
    position: absolute;
    bottom: 2em;
    font-family: var(--wp--preset--font-family--headlines);
    font-weight: 600;
    letter-spacing: 0.02em;
    line-height: 1.6;
    padding: 0.5em 1.5em !important;
    background: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--secondary) !important;
    border-radius: 99px;
    text-decoration: none !important;
}

    body.search .wp-block-query ul li.wp-block-post .wp-block-post-excerpt__more-link {
        position: relative;
        bottom: 0;
        margin-top: 1.5em !important;
    }

    body.search .wp-block-query ul li.wp-block-post {
        padding-bottom: var(--box-padding) !important;
    }

    @media (max-width: 781px) {
        body.search .wp-block-query ul li.wp-block-post .wp-block-columns {
            flex-flow: row wrap-reverse !important;
            gap: 1em;
        }

        body.search .wp-block-query ul li.wp-block-post .wp-block-post-featured-image {
            margin-left: calc(var(--box-padding) * -1) !important;
            margin-top: calc(var(--box-padding) * -1) !important;
            width: calc(100% + calc(var(--box-padding) * 2)) !important
        }
    }

    @media (min-width: 782px) {
        body.search .wp-block-query ul li.wp-block-post .wp-block-post-featured-image {
            margin-right: calc(var(--box-padding) * -1) !important;
            margin-top: calc(var(--box-padding) * -1) !important;
            height: calc(100% + calc(var(--box-padding) * 2)) !important
        }

        body.search .wp-block-query ul li.wp-block-post .wp-block-post-featured-image img {
            -webkit-mask-image: url(assets/images/mask-right.png);
            mask-image: url(assets/images/mask-right.png);
            -webkit-mask-size: auto 100%;
            mask-size: auto 100%;
            -webkit-mask-position: left;
            mask-position: left;
            -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
            height: 100% !important;
        }
    }

.wp-block-button.is-style-outline .wp-block-button__link {
    border-color: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--secondary);
}


* + .wp-block-query {
    margin-top: 3em;
}

.wp-block-query + .wp-block-buttons {
    margin-top: 3.5em;
}



/* Accordion */
.wp-block-columns.is-style-accordion {
    display: block;
    padding: 0;
	box-sizing: border-box;
    box-shadow: 0 0.66em 1.22em rgba(0,0,0,0.16);
}

    .wp-block-columns.is-style-accordion + .wp-block-columns.is-style-accordion {
        border-top: 0;
        margin-top: 1.1em !important
    }

    .wp-block-columns.is-style-accordion:hover,
    .wp-block-columns.is-style-accordion.is-open {

    }

    .wp-block-columns.is-style-accordion.is-open {

    }

    .wp-block-columns.is-style-accordion .wp-block-column {
		box-sizing: border-box;
        width: 100%;
        padding: 1.5em 2.5em !important;
        margin: 0 !important;
        background: #fff;
    }


    .wp-block-columns.is-style-accordion .wp-block-column:nth-child(1) {
        padding-right: 6em !important;
        transition: all 0.2s ease-out;
    }

    .wp-block-columns.is-style-accordion.is-open .wp-block-column:nth-child(1) {
        box-shadow: 0 0.66em 1.22em rgba(0,0,0,0.16);
    }

    .wp-block-columns.is-style-accordion .wp-block-column:nth-child(1),
    .wp-block-columns.is-style-accordion.is-open:last-child .wp-block-column:nth-child(1) {
        cursor: pointer;
        position: relative;
        background: #fff;
    }


        .wp-block-columns.is-style-accordion:last-child .wp-block-column:nth-child(1) {

        }



		.wp-block-columns.is-style-accordion .wp-block-column:nth-child(1) h2 {
			font-size: 1.5em !important;
			line-height: 100% !important;
		}


        .wp-block-columns.is-style-accordion .wp-block-column:nth-child(1)::before {
            content: "";
            display: block;
            width: 2.3em;
            height: 2.3em;
            background: url(assets/images/accordion-x.svg?v4) no-repeat center;
            background-size: 100% auto;
            position: absolute;
            right: 2.5em;
            top: 50%;
            transform: translateY(-50%) rotate(45deg);
            transition: all 0.2s ease-in-out;
        }


                .reduced-motion .wp-block-columns.is-style-accordion .wp-block-column:nth-child(1)::before {
                    transition: all 0s;
                }

                @media print {
                    .wp-block-columns.is-style-accordion .wp-block-column:nth-child(1)::before {
                        display: none;
                    }
                }


        .wp-block-columns.is-style-accordion.is-open .wp-block-column:nth-child(1)::before {
            transform: translateY(-50%) rotate(180deg);
            background-image: url(assets/images/accordion-x.svg?v4)
        }

		.wp-block-columns.is-style-accordion .wp-block-column:nth-child(1) > *:first-child {
			margin-top: 0 !important;
			margin-bottom: 0 !important;
            margin-block-start: 0 !important;
		}

    .wp-block-columns.is-style-accordion .wp-block-column:nth-child(2) {
        margin: 0 auto !important;
        overflow: hidden;
        padding-top: 2.8em !important;
    }

	.frontend .wp-block-columns.is-style-accordion .wp-block-column:nth-child(2) {
        display: none;
    }

        @media print {
            .frontend .wp-block-columns.is-style-accordion .wp-block-column:nth-child(2) {
                display: block;
            }
        }

    .wp-block-columns.is-style-accordion .wp-block-column:nth-child(2) > *:first-child {
        /* margin-top: 1.5em !important; */
    }

    .wp-block-columns.is-style-accordion .wp-block-column:nth-child(2) > *:last-child {
        margin-bottom: 1.5em !important;
    }

    .wp-block-columns.is-style-accordion+.wp-block-columns.is-style-accordion {
        margin-top: 0.5em;
    }



body:not(.frontend) .is-root-container > .wp-block-group,
body:not(.frontend) .is-root-container > .wp-block-cover,
body:not(.frontend) .is-root-container > .is-reusable {
    border: 2px solid #00c2ff;
}

    body:not(.frontend) .is-root-container > .is-reusable {
        border: 2px solid #7a00df;
    }

    body:not(.frontend) .is-root-container > .wp-block-group + *,
    body:not(.frontend) .is-root-container > .wp-block-cover + *,
    body:not(.frontend) .is-root-container > .is-reusable + * {
        margin-top: 0.5em;
    }

    body:not(.frontend) .is-root-container > .wp-block-group::before,
    body:not(.frontend) .is-root-container > .wp-block-cover::before,
    body:not(.frontend) .is-root-container > .is-reusable::before {
        content: "Abschnitt";
        font-weight: bold;
        position: absolute;
        background: #00c2ff;
        color: #fff;
        display: block;
        padding: 0.5em 1em;
        font-size: 14px;
        line-height: 1.2;
        top: 0;
        left: 0;
        z-index: 9;
    }

    body:not(.frontend) .is-root-container > .is-reusable::before {
        content: "Synchronisierter Abschnitt";
        background: #7a00df;
    }


.newsletter-holder {
    box-shadow: 0 0.66em 1.22em rgba(0,0,0,0.16);
    display: flex;
    flex-flow: row wrap;
}

    .newsletter-holder > * {
        flex: 1;
        align-self: flex-start;
    }

    .newsletter-holder > *:nth-child(1) {
        flex: 3;
        align-self: stretch;
    }

        @media (min-width: 782px) {
            .newsletter-holder > *:nth-child(1) {
                -webkit-mask-image: url(assets/images/mask-left.png);
                mask-image: url(assets/images/mask-left.png);
                -webkit-mask-position: right;
                mask-position: right;
            }
        }

    .newsletter-holder > *:nth-child(2) {
        flex: 2;
    }

.wp-block-social-links {
    gap: 0.5em;
}

.wp-block-social-link {
    border-radius: 0.25em !important;
}

    .wp-block-social-link svg {
        width: 1.5em !important;
        height: 1.5em !important;
    }

    @media (min-width: 1100px) {
        .wp-block-social-links {
            gap: 1em;
        }

        .wp-block-social-link svg {
            width: 2.5em !important;
            height: 2.5em !important;
        }
    }


/* Forms */
.wpcf7 {
    max-width: 56.83em !important;
    margin-left: auto;
    margin-right: auto;
}

.appointment-3 .wpcf7 {
    max-width: 100% !important;
}


.wpcf7 .flex {
    display: flex;
    flex-flow: row wrap;
    gap: 1em;
}

@media (min-width: 350px) {
    .wpcf7 .flex > * {
        flex: 1;
    }
}

.wpcf7 .half > label {
    margin-bottom: 1.5em !important;
    display: block;
}

.wpcf7 p.has-large-font-size {
    margin-bottom: 1em !important;
}

.wpcf7 p.has-large-font-size:not(:first-child) {
    margin-top: 1.5em !important;
}

.cmplz-marketing .wpcf7 {
	display: block;
}

.wpcf7-cookie-alert {
	display: block;
	border: 0 !important;
	border-left: 0.5em solid #dfbd29 !important;
	padding: 2em !important;
	background: #fff;
	box-shadow: 0 0 0.5em rgba(0,0,0,0.1);
	font-family: var(--wp--preset--font-family--ui);
}

.cmplz-marketing .wpcf7-cookie-alert {
	display: none;
}

.wpcf7 input[type='text'],
.wpcf7 input[type='email'],
.wpcf7 input[type='phone'],
.wpcf7 input[type='tel'],
.wpcf7 input[type='date'],
.wpcf7 input[type='password'],
.wpcf7 input[type='submit'],
.wpcf7 select,
.wpcf7 textarea,
#mc_embed_signup .mc-field-group input {
	box-sizing: border-box;
	-webkit-appearance: none;
	appearance: none;
	outline: none;
    min-height: 2.3em;
    border: none;
    background: #F3F3F2;
	border-radius: 2em;
	font-family: var(--wp--preset--font-family--ui);
	font-size: 1em;
	line-height: 120%;
	padding: 0.75em 2em;
	width: 100%;
	margin: 0 0 1em 0 !important;
}

.contrast-mode .wpcf7 input[type='text'],
.contrast-mode .wpcf7 input[type='email'],
.contrast-mode .wpcf7 input[type='phone'],
.contrast-mode .wpcf7 input[type='tel'],
.contrast-mode .wpcf7 input[type='date'],
.contrast-mode .wpcf7 input[type='password'],
.contrast-mode .wpcf7 select,
.contrast-mode .wpcf7 textarea {
    background: #fff;
    border: 1px solid #222 !important;
}

.wpcf7 input[type='text']:focus,
.wpcf7 input[type='email']:focus,
.wpcf7 input[type='phone']:focus,
.wpcf7 input[type='tel']:focus,
.wpcf7 input[type='date']:focus,
.wpcf7 input[type='password']:focus,
.wpcf7 textarea:focus,
.wpcf7 select:focus
#mc_embed_signup .mc-field-group input:focus {

}


.wpcf7 *::placeholder {
    color: #A8A8A8;
    font-weight: bold;
}


.wpcf7 input[type='submit'],
#mc_embed_signup .button {
	background: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--secondary);
	border-width: 0;
	font-weight: 700;
	width: auto;
	padding: 0.75em 2em;
	margin-top: 2em !important
}

.wpcf7 input[type='submit'][disabled] {
    background: #ccc;
}

.wpcf7 label,
#mc_embed_signup .mc-field-group label {
	font-family: var(--wp--preset--font-family--ui);
	line-height: 120%;
	font-weight: 400;
}

.wpcf7-list-item {
	margin: 0 1em 0 0
}

.wpcf7 p {
	margin: 0 !important
}

.wpcf7-not-valid-tip {
	font-family: var(--wp--preset--font-family--ui);
	margin-top: -0.5em;
	padding: 0.5em 1em;
	background: #eee;
	margin-bottom: 0.5em;
	font-size: 0.8em;
	line-height: 120%;
}



    .wpcf7-form-control.wpcf7-checkbox > *,
    .wpcf7-form-control.wpcf7-acceptance > * {
        display: block;
        width: 100%;
        margin-bottom: 0.5em;
        font-size: inherit;
    }

        .wpcf7-form-control.wpcf7-checkbox input[type='checkbox'],
        .wpcf7-form-control.wpcf7-acceptance input[type='checkbox'] {
            margin: 0 0.5em 0 0 !important;
            appearance: none;
            -webkit-appearance: none;
            font-size: inherit;
            background: #fff;
            border: 0.25em solid #fff;
            width: 1.25em;
            height: 1.25em;
            transform: translateY(17%);
        }
            .wpcf7-form-control.wpcf7-checkbox input[type='checkbox']:checked,
            .wpcf7-form-control.wpcf7-acceptance input[type='checkbox']:checked {
                background: var(--wp--preset--color--primary);
            }


.wpcf7-form-control-wrap .wpcf7-not-valid-tip {
	display: none;
}

	.wpcf7-not-valid {
		border-left: 0.25rem solid #c75c5c !important;
		padding-left: 0.75rem !important;
	}


	.wpcf7-response-output {
		border: 0 !important;
		border-left: 0.5rem solid #dfbd29 !important;
		padding: 2rem !important;
		background: #fff;
		box-shadow: 0 0 0.5rem rgba(0,0,0,0.1);
		font-family: var(--wp--preset--font-family--ui);
        z-index: 99;
        position: relative;
        color: var(--wp--preset--color--foreground);
	}

	.sent .wpcf7-response-output {
		border-left-color: #12A25A !important;
	}


h2 + .is-quote-slider {
    margin-top: 4em;
}

blockquote.wp-block-quote {
    background: #fff;
    box-shadow: 0 0.5em 1em rgba(0,0,0,0.16);
    padding: 2em 3.8em !important;
    display: flex;
    flex-flow: column;
    gap: 0 !important;
}

    blockquote.wp-block-quote figure img {
        width: 6em;
        height: 6em;
        object-fit: cover;
        border-radius: 100%;
    }

    blockquote.wp-block-quote .copyright-notice {
        display: none !important;
    }

    blockquote.wp-block-quote figure {
        order: 0;
    }

    blockquote.wp-block-quote cite {
        order: 1;
        font-size: 1.33em;
        line-height: 1.33;
        font-weight: bold;
        font-family: var(--wp--preset--font-family--headlines);
    }

        blockquote.wp-block-quote cite::after {
            content: "";
            display: block;
            width: 1.75em;
            height: 1.25em;
            background: url(assets/images/quote.svg?v4) no-repeat center;
            margin: 0.5em auto -0.3em auto;
        }

    blockquote.wp-block-quote p {
        order: 2;
    }


h3 + .is-subtitle {
    margin-top: -1.2em;
    font-size: 0.88em;
    line-height: 1.2;
}


.scroll-up {
    background: var(--wp--preset--color--primary) url(assets/images/scroll-up.svg) no-repeat center right 1em;
    background-size: 0.8em auto;
    color: var(--wp--preset--color--secondary);
    position: fixed;
    bottom: 3em;
    right: 0;
    font-size: 1.33;
    line-height: 1;
    font-weight: bold;
    padding: 0.5em 2.5em 0.5em 1.5em;
    border-radius: 99px 0 0 99px;
    cursor: pointer;
    z-index: 999999;
    transition: all 0.3s ease-out;
    transform: translateX(100%);
}

    .is-scrolling.is-scrolling-down .scroll-up {
        transform: translateX(0);
    }


#servicepartner-map {
    aspect-ratio: 2 / 1;
    background: #efefef;
}

    .home #servicepartner-map,
    .home #servicepartner-map > div {
        background: #fff !important;
    }

#pac-input {
    font: inherit;
    background: #fff url(assets/images/pac-search.svg?v=2) no-repeat center right 1em;
    background-size: 1em auto;
    width: 12em;
    padding: 0.5em 2.5em 0.5em 1.5em !important;
    outline: 0;
    font: inherit;
    font-family: var(--wp--preset--font-family--headlines);
    font-weight: 400;
    border: 1px solid #8E8E8E;
    border-radius: 999px;
    appearance: none;
    -webkit-appearance: none;
    box-sizing: border-box;
}

.js-pac-reset {
    font: inherit;
    background: #CAD8E2;
    background-size: 1em auto;
    width: auto;
    padding: 0.5em 1.5em 0.5em 1.5em !important;
    outline: 0;
    font: inherit;
    font-family: var(--wp--preset--font-family--headlines);
    font-weight: 400;
    color: #315364;
    font-weight: 700;
    border: 1px solid #CAD8E2;
    border-radius: 999px;
    appearance: none;
    -webkit-appearance: none;
    box-sizing: border-box;
    cursor: pointer;
}

    .home .js-pac-reset {
        display: none;
    }

    #pac-input::placeholder {
        color: #A8A8A8;
    }

    @media (min-width: 782px) {
        #pac-input {
            width: 12em;
        }
    }

    .pac-container {
        margin-top: 0.5em !important;
        border: 1px solid #8E8E8E;
        border-radius: 1em !important;
    }

        .pac-container .pac-item {
            padding-left: 1em;
        }

        .pac-container .pac-icon {
            display: none;
        }


        .home .map-item li {
            display: none;
        }

        .home .map-item li.highlight {
            display: block;
        }

.wp-block-query.map-item {
    padding-left: 0 !important;
    list-style-type: none;
}

.wp-block-query ul li.wp-block-post.type-church {
    padding: 0;
    box-shadow: none;
    font-family: var(--wp--preset--font-family--headlines);
    font-weight: 400;
}

    li.wp-block-post.type-church + li.wp-block-post.type-church {
        margin-top: 5em !important;
    }


    li.wp-block-post.type-church a {
        text-decoration: none;
    }

    .marker-link,
    .external-link {
        color: var(--wp--preset--color--secondary) !important;
        font-family: var(--wp--preset--font-family--headlines);
        font-weight: 700;
        transition: all 0.2s ease-out;
        fill: currentColor;
    }

        .marker-link svg,
        .external-link svg {
            height: 0.9em;
            width: auto;
            margin-left: 0.6em;
            display: inline-block;
        }

        .external-link svg {
            height: 0.7em;
        }

        li.wp-block-post.type-church .marker-link:hover,
        li.wp-block-post.type-church .external-link:hover {
            color: #fff !important;
        }

    .church-address,
    .church-options {
        min-height: 4.4em;
    }


    a[href^='tel:'],
    a[href^='mailto:'] {
        display: inline-block;
        padding-left: 2em;
        position: relative;
        fill: currentColor;
    }

    a[href^='tel:'] svg,
    a[href^='mailto:'] svg {
        position: absolute;
        left: 0;
        top: 0.3em;
        height: 0.9em;
        width: 0.9em;
    }

    .church-options > span {
        display: inline-block;
        padding-left: 2em;
        position: relative;
        fill: currentColor;
        background-size: 0.9em auto;
        background-position: center left;
        background-repeat: no-repeat;
    }

        .church-options > span.has-option-childcare { background-image: url(assets/images/childcare.svg); }
        .church-options > span.has-option-accessible { background-image: url(assets/images/accessible.svg); }



.article-header-meta {
    font-family: var(--wp--preset--font-family--headlines);
    font-weight: 700;
}

    .article-header-meta + h1 {
        margin-top: 0;
    }

.article-footer-meta {
    font-size: 0.834em;
}

    .article-footer-meta > * {
        gap: 0.33em;
    }



.wp-block-query-pagination {
    margin: 3em auto !important;
    display: flex;
    align-items: center;
}

    .has-taxfilter .wp-block-query-pagination {
        display: none !important;
    }

    .wp-block-query-pagination .wp-block-query-pagination-numbers {
        margin-bottom: 0 !important;
    }

        .wp-block-query-pagination .wp-block-query-pagination-numbers a:not(:last-child) {
            display: none;
        }

        .wp-block-query-pagination .wp-block-query-pagination-numbers a:last-child {
            text-decoration: none;
            pointer-events: none;
        }

        .wp-block-query-pagination .wp-block-query-pagination-numbers a:last-child::before {
            content: "von ";
        }

        .wp-block-query-pagination .wp-block-query-pagination-numbers .dots {
            display: none;
        }


        .wp-block-query-pagination .wp-block-query-pagination-numbers .current,
        .wp-block-query-pagination .wp-block-query-pagination-next,
        .wp-block-query-pagination .wp-block-query-pagination-previous {
            font-family: var(--wp--preset--font-family--headlines);
            font-weight: 600;
            letter-spacing: 0.02em;
            line-height: 1.6;
            padding: 0.5em 1.5em !important;
            background: var(--wp--preset--color--background);
            color: var(--wp--preset--color--foreground) !important;
            border: 1px solid #A8A8A8 !important;
            border-radius: 99px;
            text-decoration: none !important;
            margin-top: 0 !important;
            margin-bottom: 0 !important;
        }

            .wp-block-query-pagination .wp-block-query-pagination-numbers .current {
                margin-right: 0.25em
            }



.single-post .wp-block-post-featured-image {
    width: 100%;
    max-height: 50vh;
    overflow: hidden;
}

.single-post .wp-block-post-featured-image img {
    position: static;
    display: block;
    width: 100% !important;
    height: auto !important;
    max-height: 50vh;
    object-fit: cover !important;
    max-width: 100% !important;
}


body.single-post h2 {
    font-size: 1.7em;
    font-weight: bold;
}

body.single-post h3 {
    font-size: 1.4em;
    font-weight: bold;
}

body.single-post h4 {
    font-size: 1.1em;
    font-weight: bold;
}

@media (max-width: 450px) {
    h2 {
        font-size: 1.7em;
        font-weight: bold;
    }

    h3 {
        font-size: 1.4em;
        font-weight: bold;
    }

    h4 {
        font-size: 1.1em;
        font-weight: bold;
    }
}

/*
h1:not(:first-child),
h2:not(:first-child),
h3:not(:first-child),
h4:not(:first-child),
h5:not(:first-child),
h6:not(:first-child) {
    margin-top: 2em;
} */


.wp-block-categories-list {
    list-style: none;
    padding: 0 !important;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    gap: 1em 1.5em;
}

    .wp-block-categories-list > * {

    }

    .wp-block-categories-list a {
        text-decoration: none !important;
        border: 2px solid #A8A8A8;
        text-decoration: none;
        bottom: 2em;
        font-family: var(--wp--preset--font-family--headlines);
        font-weight: 600;
        letter-spacing: 0.02em;
        line-height: 1.6;
        padding: 0.5em 1.5em !important;
        background: var(--wp--preset--color--backround);
        color: var(--wp--preset--color--foreground) !important;
        border-radius: 99px;
        display: block;
    }


    /* Blog Filter */
    .filter-holder {
        display: flex;
        flex-flow: row wrap;
        justify-content: center;
        gap: 2em;
    }

    .blog-filters {
        width: 13em;
        border: 2px solid var(--wp--preset--color--primary);
        position: relative;
        margin: 0 auto !important;
        z-index: 999;
        border-radius: 1.5em !important;

    }

        .filter-holder .blog-filters {
            margin: 0 !important;
        }

        /* body .is-layout-constrained > .blog-filters {
            margin-left: 0 !important;
        } */

        .blog-filters button.blog-filter-label {
            padding-right: 2em;
            background: url(assets/images/blog-filter-arrow-green.svg?v4) repeat-y center right;
            background-size: 2em 200%;
            border-radius: 0 1.5em 1.5em 0 !important;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .blog-filters button {
            display: block;
            font: inherit;
            color: var(--wp--preset--color--foreground);
            appearance: none;
            -webkit-appearance: none;
            background: none;
            border: 0;
            width: 100%;
            padding-top: 0.5em;
            padding-bottom: 0.5em;
            cursor: pointer;
        }

        .blog-filter-options {
            position: absolute;
            display: none;
            background: #ECF4F6;
            width: 100%;
            border: 2px solid var(--wp--preset--color--primary);
            left: -2px;
            width: calc(100% + 4px);
            max-height: 80vh;
            overflow: auto;
        }

            .is-active .blog-filter-options {
                display: block;
                margin-top: 1em;
                border-radius: 1.5em;

            }

            .blog-filter-options button {
                background: #fff;
            }


                .blog-filter-options button:hover,
                .blog-filter-options button:focus,
                .blog-filter-options button.is-active {
                    color: #fff !important;
                    background: var(--wp--preset--color--primary) !important
                }

                .blog-filter-options button+button {
                    border-top: 1px solid var(--wp--preset--color--primary) !important
                }



.event-query {

}

    .event-query li.wp-block-post {
        padding: 0 !important
    }

    .event-query li.wp-block-post .wp-block-media-text__content {
        padding: 2.7em 4.7em !important;
    }


.event-query-meta-holder p {
    margin: 0.5em 0;
    font-family: var(--wp--preset--font-family--headlines);
    font-weight: 400;
}


    .event-query-meta-holder p.event-meta-date,
    .event-query-meta-holder p.event-meta-time,
    .event-query-meta-holder p.event-meta-location {
        padding-left: 1.7em;
        background-image: url(assets/images/event-date.svg);
        background-repeat: no-repeat;
        background-position: top 0.2em left;
        background-size: 1em auto;
    }

    .event-query-meta-holder p.event-meta-time {
        background-image: url(assets/images/event-time.svg);
    }

    .event-query-meta-holder p.event-meta-location {
        background-image: url(assets/images/event-location.svg);
    }


    li.wp-block-post.type-event .wp-block-columns {
        gap: 2em !important
    }

.wp-block-media-text:not(.has-media-on-the-right) .copyright-notice {
	right: unset !important;
	left: 0.5em !important;
}

.copyright-notice {
    font-size: 0.8em !important;
    line-height: 1.2 !important;
    position: absolute;
    bottom: 0.75em;
    right: 0.5em;
    font-weight: 400;
    color: #fff;
    text-shadow: 0 0 2px #000;
    display: block;
    padding: 0.3em 0.5em;
    border-radius: 0.25em;
}


.is-relative {
    position: relative;
}

    .is-relative:hover .copyright-notice {
        background: rgba(0,0,0,0.5);
    }


    .wbdvtest{
        background: red;;
    }



    .is-root-container .is-style-row-3.is-style-slider {
        flex-wrap: wrap !important;
    }



 /* einzelne Kirchen */

.single-church-map {
    position: relative;
}

.single-church-map .single-church-map-address {
    position: absolute;
    top: 2em;
    left: 2em;
    background: #fff;
    padding: 2em;
    border-radius: 1em;
    box-shadow: 0 0 1em rgba(0,0,0,0.1);
    z-index: 999;
    display: flex;
    flex-flow: row wrap;
    gap: 2em;
    align-items: center;
}


.single-church-map .single-church-map-address h3 {
    margin-bottom: 0;
}

.single-church-map-address-info {
    
}

.single-church-map-address-actions {
    
}

.single-church-map-address-actions a {
    display: block;
    text-align: center;
}

.single-church-map-address-actions a svg {
    display: block;
    margin: 0 auto 1em auto;
    width: 2em;
    height: 2em;
    fill: var(--wp--preset--color--primary);
}

@media (max-width: 750px) {
    .single-church-map {
        margin-bottom: 6em !important;
    }

    .single-church-map .single-church-map-address {
        position: absolute !important;
        top: calc(100% - 2em) !important;
        left: 2em !important;
        width: calc(100% - 4em) !important;
        margin: 0 !important;
    }
}