.sr-hint {
    border: 0 !important;
    clip: rect(1px, 1px, 1px, 1px) !important;
    -webkit-clip-path: inset(50%) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important;
    white-space: nowrap !important;
}

.ce-type-grid-fullwidth-bg {
    position: relative;
}
:root {
    --body-max-width: 120rem;
}

.page,
.row {
    --bs-gutter-x: var(--size-x2);
}

@media all and (min-width: 47.5em), print {
    .page,
    .row {
        --bs-gutter-x: var(--size-x4);
    }
}
@media all and (min-width: 62.5em) {
    .page,
    .row {
        --bs-gutter-x: var(--size-x8);
    }
}

@media all and (min-width: 82.5em) {
    .page,
    .row {
        --bs-gutter-x: var(--size-x12);
    }
}

/* --- full width --- */

.ce-grid-fullwidth {
    overflow-x: hidden;
    width:100vw;
    left:50%;margin-left:-50vw;
    padding-top: var(--size-x6);
    padding-bottom: 0;
}

.ce-grid-fullwidth > div > .ce-element:last-child {
    margin-bottom: 0;
}

.ce-element.ce-type-grid-fullwidth-content,
.ce-element.ce-type-grid-fullwidth-bg {
    background-color: transparent;
}

.ce-grid-fullwidth-bg {
    background-color: var(--ce-color-bg);

    .ce-grid-bg {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-position: center center;
        background-size: cover;
        z-index: -1;
    }

    .ce-grid-bg-fixed {
        background-attachment: fixed;
    }

    .ce-element {
        background-color: transparent;
    }
}

.is-ios .ce-grid-bg-fixed {
    background-attachment: scroll !important;
}

.ce-grid-bg-opacity-100 {
    opacity: 1;
}

.ce-grid-bg-opacity-75 {
    opacity: 0.75;
}

.ce-grid-bg-opacity-50 {
    opacity: 0.5;
}

.ce-grid-bg-opacity-25 {
    opacity: 0.25;
}

.ce-frame-inverted .ce-grid-fullwidth-bg {
    margin-bottom: var(--size-x6);
}

.js {
    .ce-grid-bg {
        transition: opacity 1s;
    }
    .ce-grid-bg.lazyload {
        opacity: 0;
    }

    .ce-grid-bg.lazyloaded.ce-grid-bg-opacity-100 {
        opacity: 1;
    }

    .ce-grid-bg.lazyloaded.ce-grid-bg-opacity-75 {
        opacity: 0.75;
    }

    .ce-grid-bg.lazyloaded.ce-grid-bg-opacity-50 {
        opacity: 0.5;
    }

    .ce-grid-bg.lazyloaded.ce-grid-bg-opacity-25 {
        opacity: 0.25;
    }
}

@media all and (min-width: 87.5rem) {
    body {
        overflow-x: clip;
    }
    .ce-grid-fullwidth {
        overflow-x: clip;

        position: relative;
        left: 50%;
        margin-right: 0;

        .ce-type-grid-100 {
            margin-left: auto;
            margin-right: auto;
            max-width: 100%;
            width: calc(
                var(--container-maxwidth, 100%) - 2 * var(--bs-gutter-x, 0rem)
                );
        }
    }
}

.fa-long-arrow-alt-right:before {
    content: "\f30b";
}

.ce-carousel.slick-initialized .slick-arrow {
    display: inline-block !important;
}
.ce-carousel.slick-initialized .slick-arrow.slick-prev {
    left: -4rem;
}
.ce-carousel.slick-initialized .slick-arrow.slick-next {
    right: -4rem;
}
.ce-carousel.slick-initialized {
    overflow: visible;
}

.ce-element img[data-sizes="auto"] {
    display: block;
    width: 100%;
    opacity: 0;
}
.ce-element img[data-sizes="auto"].lazyloaded {
    padding-bottom: 0 !important;
    height: auto !important;
    opacity: 1;
}

.no-js .ce-element .lazyload {
    display: none !important;
}

.clear::before,
.clear::after {
    display: table;
    content: "";
}

.clear::after {
    clear: both;
}

.menu-horizontal li {
    display: inline-block;
    vertical-align: top;
}

/* news */

.searchbox-inner {
    position: relative;
}

@media all and (min-width: 62.5em) {
    .news-list-teaser {
        flex-wrap: nowrap;
    }
}

@media all and (min-width: 82.5em) {
    /* accordeon, tabs */
    .ce-tabs,
    .ce-accordeon {
        margin-bottom: 2.5rem;
    }
    .ce-grid-fullwidth-bg {
        padding-top: var(--size-x12);
    }
    .ce-frame-inverted .ce-grid-fullwidth-bg {
        margin-bottom: var(--size-x12);
    }
}
