/* cookieconsent */
@media all {

    .cc-link {
        padding: 0;
        display: inline;
    }

    .cc-window.cc-banner,
    .cc-compliance {
        gap: 1rem;
    }

    .cc-window.cc-banner {
        flex-direction: column;
    }

    .cc-theme-classic .cc-btn:last-child {
        min-width: 160px;
    }

}

@media all and (min-width: 58.75rem) {

    .cc-window.cc-banner {
        flex-direction: row;
    }

}

/* colors */
@media all {
    .ce-bg-violet-1 {
        background-color: rgb(90, 37, 114) !important;
    }

    .ce-bg-violet-2 {
        background-color: rgb(46, 38, 114) !important;
    }

    .ce-bg-violet-3 {
        background-color: rgb(110, 34, 114) !important;
    }

    .ce-bg-violet-4 {
        background-color: rgb(70, 38, 114) !important;
    }

    .ce-bg-blue-1 {
        background-color: rgb(0, 87, 162) !important;
    }

    .ce-bg-yellow-1 {
        background-color: rgb(254, 211, 3) !important;
    }

    .ce-bg-pink-1 {
        background-color: rgb(181, 6, 127) !important;
    }

    .ce-bg-orange-1 {
        background-color: rgb(229, 45, 9) !important;
    }

    .ce-bg-green-1 {
        background-color: rgb(52, 128, 47) !important;
    }

    .ce-bg-red-1 {
        background-color: rgb(229, 48, 18) !important;
    }

    .ce-bg-cyan-1 {
        background-color: rgb(0, 168, 184) !important;
    }

    .ce-bg-cyan-2 {
        background-color: rgb(0, 155, 220) !important;
    }

    .ce-bg-lightgreen-1 {
        background-color: rgb(102, 172, 39) !important;
    }

    .ce-bg-lightgreen-2 {
        background-color: rgb(121, 172, 43) !important;
    }

    .ce-bg-white-1 {
        background-color: rgb(255, 255, 255) !important;
    }
}

/* share buttons */
@media all {
    .shariff ul {
        list-style: none;
        margin: 0;
        padding: 0;
        display: flex;
    }

    .shariff li+li {
        margin-left: 1rem;
    }

    .shariff .share_text {
        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;
    }

    .shariff a {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 2.5rem;
        height: 2.5rem;
        color: rgb(90, 37, 114) !important;
        background: rgb(255, 255, 255) !important;
        border-radius: 50%;
    }

    .shariff .fa {
        font-size: 1.75rem;
        margin: 0;
        padding: 0;
    }

    .shariff .fa::before {
        margin: 0;
    }
}

/* image copyright and lightbox - we have fontawesome? awesome! */
@media all {
    .ce-media-image-inner {
        position: relative;
    }

    .ce-media-copyright {
        position: absolute;
        z-index: 1;
        font-size: 0.625rem;
        line-height: 1;
        text-transform: uppercase;
        text-align: right;
        color: rgba(255, 255, 255, .75);
        text-shadow: 1px 1px 1px rgba(0, 0, 0, .25);
        left: 0.5em;
        right: 0.5em;
        bottom: 0.5em;
    }

    .ce-media-image a {
        position: relative;
    }

    .ce-media-image a::before {
        content: '\f0c1';
        font-family: FontAwesome;
        font-size: 1rem;
        font-weight: 400;
        line-height: 1;

        width: 1rem;
        height: 1rem;
        position: absolute;
        z-index: 1;
        bottom: auto;
        top: 0.3125rem;
        right: 0.3125rem;

        color: rgb(255, 255, 255);
        text-shadow: 0 0 1px rgb(0, 0, 0);
        background: none;
    }

    .ce-media-image a.lightbox::before {
        content: '\f00e';
    }
}

/* news */
@media all {

    .news-list .news-date {
        display: inline-block;
    }

    .news-list-link .fa {
        padding-left: 0.5em;
    }

    .news-list-item-teaser {
        width: 100%;
    }

    .modernizr-flexbox .news-list-teaser .ce-textmedia-inner {
        display: flex;
        flex-direction: column;
    }

    .modernizr-flexbox .news-list-teaser .news-teaser-text {
        flex-grow: 1;
    }

    .news-single .news-teaser {
        font-weight: 600;
    }

}

/* pagination news & search */
@media all {

    .pagination {
        margin-bottom: 0.9375rem;
    }

    .pagination .pagination-count {
        margin-bottom: 0;
    }

    .pagination ul {
        display: block;
        margin: 0 -0.3125rem;
        padding: 0;
    }

    .pagination li {
        display: block;
        float: left;
        line-height: 1;
        padding: 0.3125rem;
    }

    .pagination span,
    .pagination a {
        display: inline-block;
        font-size: 75%;
        font-weight: 600;
        color: rgb(255, 255, 255);
        background-color: rgb(90, 37, 114);
        text-decoration: none;
        text-align: center;
        line-height: 1;
        width: 1.75rem;
        padding: 0.4375rem 0;
        border: 2px solid rgb(90, 37, 114);
    }

    .pagination a:not(.fa)::before {
        content: none;
    }

    .pagination a:hover,
    .pagination a:focus {
        color: rgb(255, 255, 255);
        background-color: rgb(110, 34, 114);
        box-shadow: none;
    }

    .pagination .fa {
        margin: 0;
        padding: 0;
    }

    .pagination .current {
        color: rgb(90, 37, 114);
        background-color: rgb(255, 255, 255);
        background-clip: padding-box;
    }

    .pagination .current b {
        color: currentColor;
    }

    .pagination .paginator-ellip {
        border: none;
        padding: 0;
        width: auto;
    }
}

/* teasers */
@media all {

    .ce-frame-teasergrid {
        margin-bottom: 0;
    }

    .ce-grid-teaser {
        margin-bottom: 0.3125rem;
    }

    .ce-teaser-link {
        display: block;
    }

    .ce-teaser-type-text .ce-teaser-link,
    .ce-teaser-type-photo .ce-teaser-link {
        background-color: rgb(46, 38, 114);
    }

    .ce-teaser-type-text .ce-teaser-link:focus,
    .ce-teaser-type-text .ce-teaser-link:hover,
    .ce-teaser-type-photo .ce-teaser-link:focus,
    .ce-teaser-type-photo .ce-teaser-link:hover {
        background-color: rgb(110, 34, 114);
    }

    .ce-teaser-type-icon .ce-teaser-link {
        background-color: rgba(0, 0, 0, 0) !important;
        /* no hover */
    }

    .ce-teaser-caption {
        display: block;
        color: rgb(255, 255, 255) !important;
        font-size: 100%;
        text-align: center;
        padding: 0.625rem;
    }

    .ce-bg-yellow-1 .ce-teaser-caption {
        color: rgb(0, 0, 0) !important;
    }

    .ce-teaser-type-text .ce-teaser-caption {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    /* within carousel */
    .ce-carousel .ce-teaser-link {
        margin: 0;
    }

    /* within tiles grid */
    .ce-grid-teaser-tiles {
        margin-left: -0.625rem;
        margin-right: -0.625rem;
        margin-bottom: 1.25rem;
        background-color: rgb(90, 37, 114);
        /* rounding errors will leave a white border on the right */
    }

    .ce-grid-teaser-tiles .ce-element {
        margin-bottom: 0;
        width: 50%;
        float: left;
    }

    .ce-grid-teaser-tiles .ce-teaser-link {
        margin-bottom: 0;
        font-weight: 600;
    }

    .ce-grid-teaser-tiles .ce-element:nth-child(2n+1) {
        clear: left;
    }

}

@media (min-width:72.5em) {
    
    .ce-carousel .ce-teaser-caption {
        font-size: 125%;
    }

}

@media (min-width:92.5em) {
    
    .ce-carousel .ce-teaser-caption {
        font-size: 150%;
    }

}

.ce-frame-unbold-links a {
    font-weight: 400;
}

@media all {

    .ce-layout-divfullwidth .ce-div {
        position: relative;
        border: 0 none transparent;
        z-index: -1;
    }

    .ce-layout-divfullwidth .ce-div::before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        right: 0;
        left: 0;
        margin: 0 -.625rem;
        height: 5rem;
        background: rgb(244, 244, 244);
        background: linear-gradient(0deg, rgba(244, 244, 244, 0) 0%, rgba(244, 244, 244, 1) 100%);
    }

    .ce-layout-overlay-headline {
        position: relative;
    }

    .ce-layout-overlay-headline .ce-header {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        margin: 0;
        padding: .625rem;
        display: flex;
        align-items: center;
        justify-content: start;
        text-align: left;
        /*
    background-color: rgba(0,155,220,.9);
    background: linear-gradient(90deg, rgba(0,155,220,.9) 0%, rgba(0,155,220,0) 100%);
    */
    }

    .ce-layout-overlay-headline .ce-header>* {
        font-size: 8vw;
        /*
    text-shadow: 0 0 2.5rem rgba(0,155,220,.5);
    */
    }

    .ce-layout-lp-quote .ce-bodytext {
        overflow: hidden;
        padding-left: 1.25rem;
        padding-right: 1.25rem;
    }

    .ce-frame-slider-nostyle .ce-slider .ce-intext {
        margin: 0;
    }

    .ce-frame-slider-nostyle .ce-slider .ce-element {
        background-color: transparent;
    }

    .ce-carousel-testimonials .slick-arrow,
    .ce-frame-slider-nostyle .slick-arrow {
        background: rgb(70, 38, 114);
    }

    .ce-layout-show-as-slider .slick-arrow,
    .ce-carousel-testimonials .slick-arrow,
    .ce-frame-slider-nostyle .slick-arrow {
        background: rgb(70, 38, 114);
    }

    .ce-layout-show-as-slider .slick-arrow.slick-prev {
        margin-left: .3125rem;
    }

    .ce-layout-show-as-slider .slick-arrow.slick-next {
        margin-right: .3125rem;
    }

    .ce-layout-show-as-slider .slick-arrow::before,
    .ce-carousel-testimonials .slick-arrow::before,
    .ce-frame-slider-nostyle .slick-arrow::before {
        color: rgb(255, 255, 255);
    }

    .ce-layout-show-as-slider .slick-arrow:not(.slick-disabled):hover,
    .ce-carousel-testimonials .slick-arrow:not(.slick-disabled):hover,
    .ce-frame-slider-nostyle .slick-arrow:not(.slick-disabled):hover {
        background: rgb(229, 0, 125);
        background: rgb(7, 155, 210);
    }

    .ce-layout-show-as-slider .slick-arrow:not(.slick-disabled):hover::before,
    .ce-carousel-testimonials .slick-arrow:not(.slick-disabled):hover::before,
    .ce-frame-slider-nostyle .slick-arrow:not(.slick-disabled):hover::before {
        background: rgb(229, 0, 125);
        background: rgb(7, 155, 210);
    }

    .ce-layout-show-as-slider .slick-pause,
    .ce-grid-carousel-testimonials .slick-pause,
    .ce-frame-slider-nostyle .slick-pause {
        top: 0;
        right: 0;
    }

    .ce-layout-show-as-slider .slick-pause {
        margin-top: .375rem;
    }

    .ce-uploads .ce-uploads-item {
        padding: 1.25rem;
        box-shadow: 0 0 2.5rem rgba(0, 0, 0, .1);
        position: relative;
    }

    .ce-uploads .ce-uploads-item+.ce-uploads-item {
        margin-top: .625rem;
    }

    .ce-uploads .ce-uploads-filename {
        font-weight: 700;
    }

    .ce-uploads .ce-uploads-item>i {
        font-size: 1.25rem;
        margin-right: .25rem;
        color: rgb(110, 34, 114);
    }

    .ce-uploads .ce-uploads-link {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
    }

    .ce-uploads .ce-uploads-link:focus,
    .ce-uploads .ce-uploads-link:hover {
        background-color: transparent;
        box-shadow: none;
    }

    .ce-uploads .ce-uploads-item:focus,
    .ce-uploads .ce-uploads-item:hover {
        background-color: rgb(90, 37, 114);
        color: #fff;
    }

    .ce-uploads .ce-uploads-item:focus>i,
    .ce-uploads .ce-uploads-item:hover>i {
        color: #fff;
    }

    .ce-carousel-gallery {
        padding: 0;
    }

    .ce-layout-show-as-slider {
        margin-bottom: 0;
    }

    .ce-layout-show-as-slider .ce-gallery {
        position: relative;
    }

    .ce-carousel-gallery {
        margin: 0 -.3125rem;
    }

    .ce-carousel-gallery .slick-track .slick-slide {
        padding: .125rem .3125rem;
    }

}

@media all and (min-width: 30em) {

    .ce-layout-divfullwidth .ce-div::before {
        margin: 0 -1.25rem;
    }

    .ce-layout-overlay-headline .ce-header {
        padding: 1.25rem;
    }

    .ce-layout-overlay-headline .ce-header>* {
        font-size: 8vw;
    }

}

@media all and (min-width: 58.75em) {

    .ce-layout-maxtextwidth .ce-header,
    .ce-layout-maxtextwidth .ce-bodytext {
        max-width: 66.666%;
    }

    .ce-layout-divfullwidth .ce-div::before {
        margin: 0 -2.5rem;
    }

    .ce-layout-overlay-headline .ce-header {
        padding: 1.25rem;
    }

    .ce-layout-overlay-headline .ce-header>* {
        font-size: 8vw;
    }

}


@media all and (min-width: 30em) {

    /* teaser */
    .ce-grid-teaser:not(.ce-grid-teaser-tiles) {
        margin-bottom: 0.625rem;
    }

    .ce-grid-teaser:not(.ce-grid-teaser-tiles) .ce-element {
        padding: 0 0.3125rem;
        width: 50%;
        float: left;
    }

    .ce-grid-teaser:not(.ce-grid-teaser-tiles) .ce-teaser-link {
        margin-bottom: 0.625rem;
    }

    .ce-grid-teaser-tiles {
        margin-left: -1.25rem;
        margin-right: -1.25rem;
    }

    .ce-grid-teaser .ce-element:nth-child(2n+1) {
        clear: left;
    }
}

@media all and (min-width: 47.5em),
print {
    .ce-media-image a::before {
        right: 0.625rem;
        bottom: 0.625rem;
    }

    .pagination-list-item .pagination-previous,
    .pagination-list-item .pagination-next {
        width: auto;
        padding-left: 0.3125rem;
        padding-right: 0.32125rem;
    }

    /* news teaser */
    .news-list-teaser {
        margin: 0 -0.625rem;
    }

    .news-list-item-teaser {
        width: 50%;
        float: left;
        padding: 0 0.625rem;
    }

    .news-list-teaser .news-list-item-teaser:nth-child(2n+1) {
        clear: left;
    }

    /* teaser */
    .ce-teaser-caption {
        padding: 1.25rem;
    }

    .ce-grid-teaser:not(.ce-grid-teaser-tiles) {
        margin: 0 -0.625rem;
    }

    .ce-grid-teaser:not(.ce-grid-teaser-tiles) .ce-element {
        padding: 0 0.6125rem;
    }

    .ce-grid-teaser:not(.ce-grid-teaser-tiles) .ce-teaser-link {
        margin-bottom: 1.25rem;
    }

    .ce-grid-teaser-tiles .ce-element {
        width: 33.3333%;
    }

    .ce-grid-teaser-tiles .ce-element:nth-child(2n+1) {
        clear: none;
    }

    .ce-grid-teaser-tiles .ce-element:nth-child(3n+1) {
        clear: none;
    }

    .ce-layout-overlay-headline .ce-header>* {
        font-size: 6vw;
    }

    .ce-carousel-gallery {
        margin: 0 -.625rem;
    }

    .ce-carousel-gallery .slick-track .slick-slide {
        padding: .125rem .625rem;
    }

    .ce-layout-show-as-slider .slick-arrow.slick-prev {
        margin-left: .625rem;
    }

    .ce-layout-show-as-slider .slick-arrow.slick-next {
        margin-right: .625rem;
    }
}

/* desktop */
@media all and (min-width: 58.75em) {

    .ce-grid-teaser:not(.ce-grid-teaser-tiles) {
        margin: 0 -1.25rem;
    }

    .ce-grid-teaser:not(.ce-grid-teaser-tiles) .ce-element {
        padding: 0 1.25rem;
    }

    .ce-grid-teaser:not(.ce-grid-teaser-tiles) .ce-teaser-link {
        margin-bottom: 2.5rem;
    }

    .ce-grid-teaser-tiles .ce-element {
        width: 33.3333%;
    }

    .ce-grid-teaser-tiles {
        margin-left: -2.5rem;
        margin-right: -2.5rem;
        margin-bottom: 2.5rem;
    }

    /* news teaser */
    .news-list-teaser {
        margin: 0 -1.25rem;
    }

    .news-list-item-teaser {
        width: 33.3333%;
        float: left;
        padding: 0 1.25rem;
    }

    .news-list-teaser .news-list-item-teaser:nth-child(2n+1) {
        clear: none;
    }

    .news-list-teaser .news-list-item-teaser:nth-child(3n+1) {
        clear: left;
    }

    .ce-layout-overlay-headline .ce-header {
        padding: 2.5rem;
    }

    .ce-carousel-gallery {
        margin: 0 -1.25rem;
    }

    .ce-carousel-gallery .slick-track .slick-slide {
        padding: .125rem 1.25rem;
    }

    .ce-layout-show-as-slider .slick-arrow.slick-prev {
        margin-left: 1.25rem;
    }

    .ce-layout-show-as-slider .slick-arrow.slick-next {
        margin-right: 1.25rem;
    }
}

/* desktop - xlarge */
@media (min-width:72.5em) {

    .ce-grid-teaser:not(.ce-grid-teaser-tiles) .ce-element {
        width: 33.3333%;
    }

    .ce-grid-teaser:not(.ce-grid-teaser-tiles) .ce-element:nth-child(2n+1) {
        clear: none;
    }

    .ce-grid-teaser:not(.ce-grid-teaser-tiles) .ce-element:nth-child(3n+1) {
        clear: left;
    }

    .ce-layout-overlay-headline .ce-header {
        padding: 5rem;
    }

}

@media (min-width:92.5em) {

    .ce-layout-overlay-headline .ce-header>* {
        font-size: 5.5rem;
    }

    .ce-layout-overlay-headline .ce-header {
        padding: 7.5rem;
    }

}

/* TABLE */
@media all {
    .contenttable-container {
        overflow-x: auto;
    }

    .ce-frame-table-nowrap tr>* {
        white-space: nowrap;
        text-align: center;
    }

    .ce-type-table tr>* {
        padding: .825rem 1rem;
        vertical-align: unset;
    }

    .table-striped>thead {
        background-color: rgb(110, 34, 114);
        color: white;
    }

    .table-striped tbody>tr {
        background-color: rgba(110, 34, 114, .05);
    }

    .table-striped thead+tbody>tr:nth-child(2n),
    .table-striped tbody:first-child>tr:nth-child(2n - 1) {
        background-color: rgba(110, 34, 114, .2);
    }

    .table-striped tbody th {
        background-color: rgb(110, 34, 114);
        color: white;
    }

    .table-bordered tr>* {
        border: 1px solid rgba(230, 230, 230);
        border-collapse: collapse;
    }

}

@media (max-width: 47.499999em) {    

    .ce-carousel-testimonials .ce-layout-lp-quote :is(.ce-gallery, .ce-bodytext) {
        float: none;
    }

    .ce-carousel-testimonials .ce-layout-lp-quote .ce-gallery {
        margin-inline: auto;
        margin-bottom: 1.25rem;
    }

}