/* @layer is scoped - this header must be set in every file */
@layer bootstrap-legacy, legacy, migration, bootstrap, iconpack, theme;

@layer migration {
    :root {
        --mobile-rel-container-width: 90%;
    }

    .ausklapp-text,
    .ausklapp-text.row {
        display: none;
    }

    [class*=col].cb-shadow {
        position: relative;
    }

    .btn.btn-spenden input[type=radio] {
        position: absolute;
        clip: rect(0, 0, 0, 0);
    }

    .search-lupe {
        width: 40px;
        height: 40px;
        background-color: #fff;
        border-radius: 30px;
        border: none;
        border: 1px solid #007883;
        background-image: url(/fileadmin/custom/assets/Lupe_Button_default.svg);
        background-position: center;
        background-repeat: no-repeat;
        -webkit-transition-duration: .6s;
        transition-duration: .6s;
        color: transparent;
        font-size: 1px
    }

    .search-lupe:focus, .search-lupe:hover {
        background-color: #007883;
        background-image: url(/fileadmin/custom/assets/Lupe_Button_active.svg)
    }

    .mega-dropdown-menu {
        overflow: auto;
    }

    body.nav-offscrolled .nav-next.position-fixed {
        background: white;
        z-index: 3000;
    }

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

    img.img-responsive {
        width: 100%;
    }

    .ButtonGross {
        white-space: normal;
    }

    .flex-gap .flex-row,
    .flex-gap .flex-column {
        gap: 0.25em;
    }

    .footer .respond_registration div[class="block"] {
        background-color: inherit !important;
    }

    .legacy-container .row:not([class*="col"]):not([class*="element"]) {
        /* .row has negative margin, width must be initial */
        width: 100%;
    }

    .sr-only {
        width: 1px !important;
        height: 1px !important;
        padding: 0 !important;
        margin: -1px !important;
        overflow: hidden !important;
        clip: rect(0, 0, 0, 0) !important;
        white-space: nowrap !important;
        border: 0 !important;
        display: none !important;
    }

    .no-gutter .row {
        --bs-gutter-x: 0;
        --bs-gutter-y: 0;
    }

    .element-row-baseline .row {
        align-items: baseline;
    }

    @media(min-width: 768px) {
        .element.element-material .cb-shadow {
            box-shadow: 0 .3rem 1rem -.5rem rgba(0, 0, 0, .5);
        }
    }

    .no-display {
        display: none !important;
    }

    .legacy-container .row {
        --bs-gutter-x: 0;
    }

    @media (max-width: 767px) {
        #page-wrapper > .container {
            --bs-gutter-x: 0;
        }
    }

    @media (min-width: 768px) {
        .youtube-left {
            padding-right: 20px;
        }

        .youtube-right {
            padding-left: 20px;
        }
    }

    @media (max-width: 991px) {

    }

    @media (min-width: 992px) {
        --mobile-rel-container-width: 85%;
    }

    @media (min-width: 992px) {
        .dka-nav-grid .cb-shadow {
            display: flex;
        }

        .scrollable::before,
        .anchortarget::before{
            height: 0;
            margin-top: 3rem;
        }
    }

    @media (max-width: 1199px) {
        .container {
            max-width: var(--mobile-rel-container-width);
        }

        .footer > .container {
            max-width: var(--mobile-rel-container-width);
        }

        .container > .page-title,
        .container > nav > .breadcrumb {
            margin-left: auto;
            margin-right: auto;
        }
    }
}

@layer iconpack {
    .iconpack {
        -moz-osx-font-smoothing: grayscale;
        -webkit-font-smoothing: antialiased;
        display: var(--iconpack-display, inline-block);
        font-style: normal;
        font-variant: normal;
        line-height: 1;
        text-rendering: auto;
        width: var(--iconpack-width, auto);
        height: var(--iconpack-height, 1em);
        vertical-align: var(--iconpack-vertical-align, -.125em);
        margin-right: var(--iconpack-margin-right, .125em);
        overflow: visible
    }

    span.iconpack {
        vertical-align: 0
    }
}

@layer theme {
    #main-navbar > .container,
    .footer > .container,
    .legacy-container > .row,
    .main-content.container {
        --bs-gutter-x: 0;
    }

    #main-navbar [data-expandable] [data-button] {
        display: none;
    }

    .element-bild-opener .bildbeschreibung {
        display: none;
    }

    .initiative-footer .gallery .row {
        align-items: center;
        gap: 1.5rem;
    }

    .initiative-footer .gallery .row > div {
        flex-basis: content;
    }

    .overlay-dynamic-marker {
        padding: 0.5em 1.5em 0.5em 0.5em;
    }

    .overlay-dynamic-marker .text {
        padding-left: 0.5rem;
    }

    .quick-search fieldset legend {
        display: none;
    }

    .google-search label,
    .quick-search .tx-indexedsearch-form label {
        display: none;
    }

    .google-search .submit,
    .quick-search .tx-indexedsearch-search-submit {
        display: none;
    }

    .google-search .sword,
    .quick-search .tx-indexedsearch-searchbox-sword {
        width: 100%;
    }

    .quick-search form p {
        display: none;
    }

    .main-navbarnav {
        justify-content: space-between;
    }

    .main-navbarnav .dropdown-toggle {
        white-space: normal;
    }

    .main-navbarnav > .nav-item > a {
        text-wrap-mode: nowrap;
    }

    .respond_registration div[class="block"] {
        position: static !important;
    }

    @media (max-width: 767px) {
        .d-wide {
            display: none
        }
    }

    @media (min-width: 768px) {
        .d-small {
            display: none
        }
    }

    @media (max-width: 991px) {
        #main-navbar {
            width: 100%;
            overflow: auto;
            padding-top: 1rem !important;
        }

        #main-navbar .navbar-toggler {
            position: fixed;
            left: 1rem;
            top: 1rem;
            z-index: 3000;
            background-color: white;
            --bs-navbar-toggler-padding-x: 0.6rem;
            --bs-navbar-toggler-padding-y: 0.5rem;
            border-radius: 100%;
        }

        #main-navbar .navbar-toggler svg {
            --iconpack-width: 2rem;
            --iconpack-height: 2rem;
            --iconpack-margin-right: 0;
        }

        #main-navbar .navbar-toggler[aria-expanded=false] [data-nav-toggle=open] {
            display: none;
        }

        #main-navbar .navbar-toggler[aria-expanded=true] [data-nav-toggle=default] {
            display: none;
        }

        #main-navbar [data-expandable] {
            display: flex;
            justify-content: space-between;
        }

        #main-navbar [data-expandable]::after {
            display: none;
        }

        #main-navbar [data-expandable] .title {
            flex-grow: 1;
        }

        #main-navbar [data-expandable].show {
            justify-content: unset;
        }

        #main-navbar [data-expandable].show {
            text-align: center;
        }

        #main-navbar [data-expandable] [data-button=next] {
            display: inline;
        }

        #main-navbar [data-expandable].show [data-button=next] {
            display: none;
            --iconpack-display: none;
        }

        #main-navbar [data-expandable].show [data-button=back] {
            display: inline;
        }

        #main-navbar .nav-first > .hstack {
            flex-direction: column;
            align-items: start;
        }

        /* not the button */
        #navbarToggler {
            position: fixed;
            z-index: 1080;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-color: white;
            padding-top: 5rem;
        }

        .dka-nav-grid {
            margin: 0;
            width: 100%;
        }

        .square-wrap > div.single-square {
            margin-left: 0;
            margin-right: 0;
        }
    }

    @media (min-width: 992px) {
        .d-mobile-only {
            display: none;
        }

        .initiative-footer .gallery figure {
            margin-left: auto !important;
            margin-right: auto !important;
        }
    }

    @media (min-width: 992px) and (max-width: 1199px) {
        .nav-item.nav-dynamic-marker {
            display: none;
        }
    }

    @media (min-width: 1200px) {
        .overlay-dynamic-marker {
            display: none;
        }
    }
}

/* non layer - highest priority */
@media (min-width: 992px) {
    .main-navbarnav .dropdown-menu {
        max-height: 75vh;
        overflow-y: auto;
    }
}

@media screen and (min-width: 993px) {
    .navbar-nav.main-navbarnav > .nav-item {
        flex: 0 1 auto;
    }
}

body.nav-offscrolled .nav-item.nav-mini-logo {
    flex: unset;
}

body.nav-offscrolled .nav-item.nav-mini-logo img {
    height: 2em;
    width: auto;
}

.main-navbarnav {
    gap: 1rem;
    flex-wrap: wrap;
}

.main-navbarnav .spenden-nav-hervorhebung-li {
    margin: 0;
    text-align: center;
}

.main-navbarnav .spenden-nav-hervorhebung-li a {
    margin: 0;
}


