/* General */

.wrapper {
    margin-bottom: 100px;
}

.page-intro-wrapper + .text-block-wrapper {
    margin-top: -50px;
}

/* Bread-Crumbs */

.wrapper.bread-crumbs-wrapper {
    margin-bottom: 70px;
}

a.bread_crumb,
span.bread_crumb {
    text-transform: uppercase;
    font-size: 0.8rem;
    text-decoration: none;
    color: black;
}

.bread_crumb span.faq {
    text-transform: none;
}



/* Page-Intro */

.HomePage .page-intro h1,
.LocationPage .page-intro h1 {
    margin-bottom: 30px;
    text-transform: uppercase;
}

.HomePage .page-intro .content_and_termine,
.LocationPage .page-intro .content_and_termine {
    position: relative;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
}

.HomePage .page-intro .content,
.LocationPage .page-intro .content {
    margin-right: 30px;
    width: 50vw;
    max-width: 800px;
}

.HomePage .homepage-termin-wrapper {
    display: none;
}

.HomePage .page-intro .termine,
.LocationPage .page-intro .termine,
.HomePage .homepage-termin-wrapper .termine {
    margin-top: -170px;
    z-index: 10;
    box-sizing: border-box;
    max-width: 380px;
    height: 100%;
    padding: 30px;
    background-color: #F8F8F8;
    position: relative;
}

.HomePage .homepage-termin-wrapper .termine {
    margin-top: 0;
    max-width: 100%;
}


.page-intro .termine .home-teaser-link {
    position: absolute;
    left: 0;
    bottom: calc(100% + 30px);
    display: block;
    width: 100%;
}

.page-intro .termine .home-teaser-link > a {
    display: block;
    background: transparent;
    -webkit-transition: background 0.3s linear;
    -moz-transition: background 0.3s linear;
    -ms-transition: background 0.3s linear;
    -o-transition: background 0.3s linear;
    transition: background 0.3s linear;
}

.page-intro .termine .home-teaser-link > a:hover {
    background: rgba(0,0,0,0.5);
}

.page-intro .termine .home-teaser-link > a img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto !important;
}


.LocationPage .page-intro .termine {
    margin-top: -100px;
}

.HomePage .page-intro .termine::before,
.HomePage .homepage-termin-wrapper .termine::before,
.LocationPage .page-intro .termine::before {
    display: block;
    height: 10px;
    margin-top: -30px;
    margin-left: -30px;
    margin-right: -30px;
    background-image: linear-gradient(to right, #D80017, #981167);
    background-position: left;
    content: '';
}

.HomePage .page-intro .termine *,
.HomePage .homepage-termin-wrapper .termine *,
.LocationPage .page-intro .termine * {
    font-size: 0.9rem;
    line-height: 1.26rem;
}

.HomePage .page-intro .termine .inner a,
.HomePage .homepage-termin-wrapper .termine .inner a {
    text-decoration: none;
    display: block;
    border-bottom: 1px solid transparent;
}

.HomePage .page-intro .termine .inner a:hover,
.HomePage .homepage-termin-wrapper .termine .inner a:hover {
    border-bottom: 1px solid #981167;
}

.HomePage .page-intro .termine .inner a p:last-child,
.HomePage .homepage-termin-wrapper .termine .inner a p:last-child {
    margin-bottom: 0;
}

.HomePage .page-intro .heading,
.HomePage .homepage-termin-wrapper .heading,
.LocationPage .page-intro .heading {
    text-transform: uppercase;
    margin: 25px 0;
}

.HomePage .page-intro .termine .inner:not(:nth-child(4)),
.HomePage .homepage-termin-wrapper .termine .inner:not(:nth-child(4)),
.LocationPage .page-intro .termine .inner:not(:nth-child(4)) {
    margin-bottom: 25px;
}

.HomePage .page-intro .more,
.HomePage .homepage-termin-wrapper .more,
.LocationPage .page-intro .more {
    margin-bottom: 20px;
}

@media(max-width: 1200px){
    .HomePage .page-intro .content,
    .LocationPage .page-intro .content {
        width: 60vw;
    }

    .HomePage .page-intro .termine *,
    .LocationPage .page-intro .termine * {
        font-size: 1.8vw;
        line-height: 2.5vw;
    }
}

@media(max-width: 1000px) {
    .HomePage .page-intro .content,
    .LocationPage .page-intro .content {
        width: 100%;
        max-width: 100%;
        margin-right: 0;
    }
}

@media(max-width: 1000px){
    .HomePage .page-intro .termine,
    .LocationPage .page-intro .termine {
        display: none;
    }

    .HomePage .homepage-termin-wrapper {
        display: block;
    }
}



/* Alle Elemente mit der Klasse triple-grid (3-spaltig) */

.triple-grid-wrapper h2 {
    margin-bottom: 24px;
    text-transform: uppercase;
}

.triple-grid {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin: 0 -10px;
}

.triple-grid .inner {
    width: 33.3%;
    box-sizing: border-box;
    margin-bottom: 75px;
    padding: 0 10px;
}

.triple-grid .image-container {
    display: block;
}

.triple-grid .inner img {
    width: 100%;
    margin-bottom: 15px;
}

.triple-grid h3 {
    margin-bottom: 15px;
}

@media(max-width: 1200px) {
    .triple-grid .inner {
        width: 50%;
    }
}

@media(max-width: 1000px) {
    .triple-grid-wrapper {
        margin-bottom: 50px;
    }

    .triple-grid-wrapper h2 {
        text-align: center;
    }

    .triple-grid {
        justify-content: center;
        margin-left: 0;
        margin-right: 0;
    }

    .triple-grid .inner {
        width: 100%;
        max-width: 560px;
        padding: 0;
    }

    .slider.triple-grid .inner {
        max-width: 100%;
    }
}



/* Quote */

.quote-block {
    display: flex;
    justify-content: center;
}

.quote-block .inner {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    margin-left: 10vw;
}

.quote-block .inner.auto {
    margin-left: 5vw;
}

p.quote {
    font-size: 1.916rem; /*46px*/
    line-height: 2.666rem; /*64px*/
    font-weight: 700;
    color: #B00B4A;
    white-space: nowrap;
    margin-top: 0.5em;
}

.auto p.quote {
    white-space: normal;
}

.quote-block p.quote { /* extra, da p.quote auch auÃŸerhalb des Blockes eingebunden */
    text-indent: -4.1rem;
}

.quote-block .auto p.quote { /* extra, da p.quote auch auÃŸerhalb des Blockes eingebunden */
    text-indent: 0;
}

p.source {
    margin-right: 40px;
}

@media (max-width: 1536px){
    p.quote {
        font-size: 3vw;
        line-height: 4.2vw;
    }

    .quote-block p.quote {
        text-indent: -6.2vw;
    }

    p.source {
        margin-right: 2.6vw;
    }

}

@media (max-width: 1000px){
    p.quote {
        font-size: 1.7rem;
        line-height: 2.4rem;
    }

    .quote-block p.quote {
        text-indent: -3.7rem;
    }

    p.source {
        margin-right: 2.6vw;
    }

}

@media(max-width: 768px){
    .quote-block .inner {
        margin-left: 0;
    }
    p.quote {
        font-size: 3.9vw;
        line-height: 5.46vw;
        white-space: normal;
    }

    .quote-block p.quote {
        text-indent: 0;
    }

    p.source {
        font-size: 2.2vw;
        line-height: 3vw;
        margin-right: 0;
    }
}

@media(max-width: 462px){
    p.quote {
        font-size: 1rem;
        line-height: 1.4rem;
    }

    p.source {
        font-size: 0.8rem;
        line-height: 1.4rem;
    }
}



/* Page-Teaser */

.page-teaser-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.page-teaser-wrapper.bgimage {
    min-height: 47.5vw;
    padding-top: 55px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    color: white;
}

.page-teaser-wrapper .background img {
    max-width: 100%;
}

.bgimage .page-teaser {
    margin-bottom: 55px;
}

.page-teaser h2 {
    margin-bottom: 20px;
    text-transform: uppercase;
}

.page-teaser-wrapper.faq .page-teaser h2 {
    text-transform: none;
}

.page-teaser .outer-flex-container {
    display: flex;
    flex-direction: row;
}

.page-teaser ul li:before {
    display: none;
}

.page-teaser .inner-flex-container {
    display: flex;
    flex-direction: column;
    width: 50%;
    box-sizing: border-box;
    padding-right: 50px;
}

.page-teaser div.faq {
    flex-direction: row;
    width: 100%;
    padding-right: 0;
}

.page-teaser div.faq .text {
    width: 66%;
    padding-right: 50px;
}

.page-teaser-wrapper.bgimage a {
    color: white;
}

.page-teaser .image {
    max-width: 50%;
    width: 50%;
}

.page-teaser .image img {
    max-width: 100%;
    width: 100%;
    height: auto;
}

@media(max-width: 1000px){
    .page-teaser-wrapper.bgimage {
        height: auto;
    }

    .page-teaser h2 {
        text-align: center;
    }

    .page-teaser .outer-flex-container {
        flex-direction: column-reverse;
        align-items: center;
    }

    .page-teaser .inner-flex-container {
        width: 560px;
        max-width: 100%;
        padding: 0;
    }

    .page-teaser .image {
        width: 560px;
        max-width: 100%;
        padding: 0;
        margin-bottom: 20px;
    }
}

@media(max-width: 768px) {
    .page-teaser div.faq {
        flex-direction: column;
        align-items: center;
    }

    .page-teaser div.faq .text,
    .page-teaser div.faq .link {
        width: 560px;
        max-width: 100%;
        padding: 0;
    }

    .page-teaser div.faq .text {
        margin-bottom: 40px;
    }
}



/* Contact-Page */

.ContactPage .page-intro-wrapper {
    margin-bottom: 25px;
}

#contact-map {
    width: 100%;
    height: 490px;
    margin-bottom: 100px;
}

.contact-persons-wrapper {
    margin-bottom: 0;
}

.contact-persons {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin: 0 -20px;
}

.contact-persons .inner {
    display: flex;
    flex-direction: column;
    width: 50%;
    box-sizing: border-box;
    margin-bottom: 100px;
    padding: 0 20px;
}

.contact-persons .contact-name {
    min-height: 4.875rem;
}

.contact-persons .address,
.contact-persons .fon,
.contact-persons .mail {
    margin-bottom: 1rem;
}

.contact-persons h3 {
    font-size: 1.166rem;
    line-height: 1.625rem;
}

.contact-persons .contact-link,
.contact-persons .address-name {
    font-weight: 700;
}

@media (max-width: 1000px) {
    .contact-persons .inner {
        width: 100%;
    }
}



/* Contact-Block */

.contact-block {
    display: flex;
    flex-flow: row nowrap;
}

.contact-block-wrapper h2,
.contact-block h3 {
    margin-bottom: 20px;
    text-transform: uppercase;
}

.contact-block .text {
    display: flex;
    flex-direction: column;
    width: 50%;
    box-sizing: border-box;
    padding-right: 50px;
}

.contact-block .map-container {
    width: 580px;
    max-width: calc(50% - 10px);
    height: 340px;
    margin-left: 10px;
}

@media(max-width: 1000px) {
    .contact-block {
        flex-direction: column;
        align-items: center;
    }

    .contact-block .text {
        width: 100%;
        max-width: 560px;
        margin: 0 0 75px;
        padding: 0;
    }

    .contact-block .map-container {
        width: 785px;
        max-width: 100%;
        margin: 0 0 0.8rem;
    }
}



/* Image-Block */

.full-size div.image-block {
    display: block;
    margin: 0;
}

.full-size div.image-block .inner {
    width: 100%;
    padding: 0;
}

.image-block .inner {
    margin-bottom: 0;
}

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

.image-block.slider img {
    margin-bottom: 0;
}

.image-block .description {
    font-weight: 700;
}

@media(max-width: 768px) {
    .image-block.slider .inner {
        opacity: 0;
        padding: 0;
    }

    .full-size div.image-block.slider .inner {
        opacity: 1;
    }

    .image-block.slider .inner.slick-current {
        opacity: 1;
    }
}



/* Video-Block */

.video-block {
    width: 60%;
    max-width: 100%;
    margin: 0 auto;
    padding: 0;
    box-sizing: border-box;
}

.video-block .video {
    position: relative;
    margin-bottom: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
    height: 0;
}

.video-block .video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    max-width: 100%;
}

.video-block .description {
    font-weight: 700;
}

@media(max-width: 1024px) {
    .video-block {
        min-width: 560px;
    }
}

@media(max-width: 768px) {
    .video-block {
        width: 560px;
        min-width: auto;
    }
}



/* FAQ-Teaser */

.faq-teaser .anker {
    position: relative;
    height: 0;
    overflow: hidden;
}

.faq-teaser .anker span {
    display: none;
    position: absolute;
    top: 5px;
    left: 0;
}

.faq-teaser p.faq-title {
    font-weight: 700;
    text-decoration: underline;
    margin-bottom: 0.8rem;
}

.faq-teaser p.faq-title:hover {
    cursor: pointer;
}

.faq-content {
    display: none;
    margin-bottom: 3rem;
}

.faq-content.open {
    display: block;
}

.faq-teaser > ul {
    display: block;
    margin: 0;
    padding: 0;
}

.faq-teaser > ul > li {
    display: block;
    margin: 0;
    padding: 0;
}

.faq-teaser > ul > li:before {
    display: none;
}


/* Group-Page, Group-Teaser & Groups-Block */

.group-block h3 {
    font-size: 1.166rem;
    line-height: 1.625rem;
}



/* People-Page & People-Block */

.people-block .inner {
    display: flex;
    flex-wrap: nowrap;
    margin-bottom: 130px;
}

.people-block .inner:nth-child(odd) {
    flex-direction: row;
}

.people-block .inner:nth-child(even) {
    flex-direction: row-reverse;
}

.people-block .image-container {
    width: 38%;
    max-width: 560px;
}

.people-block .inner:nth-child(odd) .image-container {
    margin-right: 20px;
}

.people-block .inner:nth-child(even) .image-container {
    margin-left: 20px;
}

.people-block .text {
    width: 60%;
    max-width: 760px;
}

.people-block img {
    width: 100%;
}

.people-block-wrapper h2,
.people-block h3 {
    margin-bottom: 0.8rem;
}

.people-block h3 {
    font-size: 1.166rem;
    line-height: 1.625rem;
}

.people-block .inner.group_image {
    flex-direction: column;
}

.people-block .inner.group_image .image-container {
    width: 100%;
    max-width: 2550px;
    margin: 0 0 40px;
}

@media(max-width: 1200px) {
    .people-block .image-container {
        width: auto;
    }
}

@media(max-width: 1000px) {
    .people-block .inner:nth-child(even),
    .people-block .inner:nth-child(odd) {
        flex-direction: column;
        align-items: center;
    }

    .people-block .inner:nth-child(even) .image-container,
    .people-block .inner:nth-child(odd) .image-container {
        margin: 0 0 0.8rem;
    }

    .people-block .text {
        width: auto;
        max-width: 560px;
    }
}



/* News-Page, News-Teaser & News-Slider */

.NewsPage .page-intro-wrapper {
    margin-bottom: 30px;
}

.NewsPage .page-intro-wrapper h1 {
    margin-bottom: 10px;
}

.news-block a.more,
.termin-news a.more {
    margin: 0;
}

.news-block .text p,
.termin-news p {
    display: inline;
}

.news-block .additional,
.termin-news .additional {
    margin-bottom: 1.4rem;
}

.news-wrapper .pagination {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
}

.news-wrapper .pages,
.news-wrapper .limit {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
}

.news-wrapper .pages a {
    color: black;
    text-decoration: none;
}

.news-wrapper .pagenumber.current {
    background: #d3d3d3;
}

.news-wrapper .pagenumber,
.news-wrapper .limitnumber {
    display: flex;
    justify-content: center;
    align-items: center;
}


.news-wrapper .limitnumber {
    font-size: 0.8rem;
}

.news-wrapper .pagenumber {
    box-sizing: border-box;
    width: 1.4rem;
    height: 1.4rem;
    margin-left: 0.3rem;
    border: 1px solid #808080;
    border-radius: 5px;
    font-size: 0.9rem;
}

.news-wrapper .pages .next {
    margin-left: 0.3rem;
}

.news-wrapper .pages .prev,
.news-wrapper .pages .next {
    margin-top: -2px;
}

.news-wrapper .pagenumber a {
    display: block;
    text-align: center;
    font-size: 0.9rem;
}

.news-wrapper .limit a {
    display: inline-block;
    text-decoration: none;
    vertical-align: baseline;
    font-size: 0.8rem;
}

@media(max-width: 768px) {
    .news-wrapper .pagination {
        flex-direction: column;
        align-items: center;
    }

    .news-wrapper .pages{
        margin-bottom: 1rem;
    }
}

.page-teaser-slider-wrapper .heading,
.news-slider-wrapper .heading {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
}

.page-teaser-slider-wrapper .heading a,
.news-slider-wrapper .heading a {
    margin: 0 0 30px;
}

.page-teaser-slider-wrapper h2,
.news-slider-wrapper h2 {
    display: inline-block;
    margin-bottom: 30px;
}

.page-teaser-slider-wrapper .slider .inner,
.news-block.slider .inner {
    margin-bottom: 0;
}

@media (max-width: 1000px) {
    .page-teaser-slider-wrapper .slider,
    .news-block.slider {
        width: 560px;
        max-width: 100%;
        margin: 0 auto;
    }
}

@media (max-width: 400px) {
    .page-teaser-slider-wrapper .heading,
    .news-slider-wrapper .heading {
        display: block;
        text-align: center;
    }

    .page-teaser-slider-wrapper h2,
    .news-slider-wrapper h2 {
        display: block;
        margin-bottom: 10px;
    }

    .page-teaser-slider-wrapper .heading a,
    .news-slider-wrapper .heading a {
        display: block;
    }
}


/* Slick-Slider */

.slick-list.draggable {
    width: 100%;
}

.slick-lightbox-slick,
.slider {
    position: relative;
    z-index: 1;
}

.slick-lightbox .slick-lightbox-close {
    z-index: 2;
}

.slick-lightbox .slick-lightbox-slick-item-inner {
    color: transparent;
}

.slick-lightbox .slick-prev,
.slick-lightbox .slick-next,
.slider .slick-prev,
.slider .slick-next
{
    display: block;
    padding: 0;
    margin: 0;
    position: absolute;
    z-index: 2;
    width: 5vw;
    border-width: 0;
    color: #FFFFFF;
    font-size: 0;
    outline: none;
}

.slick-lightbox .slick-prev,
.slider .slick-prev {
    left: 0;
}

.slick-lightbox .slick-next,
.slider .slick-next {
    right: 0;
}

.slick-lightbox .slick-prev::before,
.slick-lightbox .slick-next::before,
.slider .slick-prev::before,
.slider .slick-next::before
{
    content: '';
    display: block;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    width: 2vw;
    height: 40px;
    margin: 0 auto;
}

.slick-lightbox .slick-prev::before,
.slider .slick-prev::before {
    background-image: url('../images/cursor-left-white.svg');
}

.slick-lightbox .slick-next::before,
.slider .slick-next::before {
    background-image: url('../images/cursor-right-white.svg');
}

.slick-lightbox .slick-prev {
    z-index: 1000;
}

.page-teaser-slider-wrapper .slider .slick-prev,
.news-block.slider .slick-prev {
    top: 23%;
    left: -4.5vw;
}

.page-teaser-slider-wrapper .slider .slick-next,
.news-block.slider .slick-next {
    top: 23%;
    right: -4.5vw;
}

@media (max-width: 1200px) {
    .page-teaser-slider-wrapper .slider .slick-prev,
    .news-block.slider .slick-prev {
        top: 34%;
    }

    .page-teaser-slider-wrapper .slider .slick-next,
    .news-block.slider .slick-next {
        top: 34%;
    }
}

@media (max-width: 1000px) {
    .page-teaser-slider-wrapper .slider .slick-prev,
    .news-block.slider .slick-prev {
        top: 44%;
        left: -6vw;
    }

    .page-teaser-slider-wrapper .slider .slick-next,
    .news-block.slider .slick-next {
        top: 44%;
        right: -6vw;
    }
}

@media (max-width: 666px) {
    .page-teaser-slider-wrapper .slider .slick-prev,
    .news-block.slider .slick-prev {
        top: 34vw;
    }

    .page-teaser-slider-wrapper .slider .slick-next,
    .news-block.slider .slick-next {
        top: 34vw;
    }
}

.page-teaser-slider-wrapper .slider .slick-prev::before,
.news-block.slider .slick-prev::before {
    background-image: url('../images/cursor-left-black.svg');
}

.page-teaser-slider-wrapper .slider .slick-next::before,
.news-block.slider .slick-next::before {
    background-image: url('../images/cursor-right-black.svg');
}

.image-block.slider .slick-track {
    margin-left: 0;
}



/* Termin */

.termin-news-wrapper {
    margin-bottom: 50px;
}

.TerminHolderPage .page-intro-wrapper {
    margin-bottom: 40px;
}

#termin-wrapper {
    background: #F8F8F8;
    padding-top: 40px;
    padding-bottom: 20px;
    margin-bottom: 40px;
}

.termin-filter .inner,
.TerminHolderPage .pagination.triple-grid .inner {
    margin-bottom: 0;
}

.termine select,
.termine input {
    display: block;
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    height: 2.5rem;
    margin-bottom: 15px;
    padding: 0 1rem;
    border: 1px solid #808080;
    border-radius: 3px;
    font-size: 1rem;
}

.termine select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
}

.termine .termin-filter .inner {
    position: relative;
}

.termine .dropdown {
    position: relative;
    background-image: url("../images/down_arrow.png");
    background-position: calc(100% - 25px) center;
    background-repeat: no-repeat;
    color: black;
}

/*IE11*/
@media all and (-ms-high-contrast:none) {
    *::-ms-backdrop, .termine .dropdown {
        background: none;
    }
}

.termine .datepicker {
    background-image: url("../images/calender-icon.svg");
    background-position: calc(100% - 25px) center;
    background-repeat: no-repeat;
    color: black;
}

.TerminHolderPage .ui-state-hover .ui-icon,
.TerminHolderPage .ui-state-focus .ui-icon,
.TerminHolderPage .ui-button:hover .ui-icon,
.TerminHolderPage .ui-button:focus .ui-icon {
    background-image: url("images/ui-icons_444444_256x240.png");
} /* overwrite default hover-behavior for datepickers prev- and next-buttons */

.termine #fulltext_search {
    background-image: url("../images/search-icon.svg");
    background-position: calc(100% - 25px) center;
    background-repeat: no-repeat;
    color: black;
}

.termine input:-ms-input-placeholder {
    color: black;
}
.termine input::-ms-input-placeholder {
    color: black;
}
.termine input:-moz-placeholder {
    color: black;
}
.termine input::-moz-placeholder {
    color: black;
}
.termine input::-webkit-input-placeholder {
    color: black;
}
.termine input::placeholder {
    color: black;
}

.TerminHolderPage button.reset{
    display: block;
    margin: 10px auto;
    padding: 4px 5px;
    float: none;
    border: none;
    background: none;
    color: #8A0606;
    font-size: 0.8rem;
    text-transform: lowercase;
    outline: none;
}

.termine #pagelinks button,
#termin-content-wrapper #pagelinks2 button {
    min-width: 1.4rem;
    height: 1.4rem;
    margin-right: 0.3rem;
    padding: 4px 0;
    border: 1px solid #808080;
    border-radius: 5px;
    background: white;
    color: black;
    font-size: 0.9rem;
    outline: none;
}

/*IE11*/
@media all and (-ms-high-contrast:none) {
    *::-ms-backdrop, .termine #pagelinks button,
    #termin-content-wrapper #pagelinks2 button {
        padding: 0 0 8px;
    }
}

.termine #pagelinks button:first-child,
#termin-content-wrapper #pagelinks2 button:first-child {
    margin-right: 0.2rem;
}

.termine #pagelinks button:last-child,
#termin-content-wrapper #pagelinks2 button:last-child {
    margin-left: -0.1rem;
}

.termine #pagelinks .active,
#termin-content-wrapper #pagelinks2 .active {
    background: #d3d3d3;
}

.termine #pagelinks button.prev,
.termine #pagelinks button.next,
#termin-content-wrapper #pagelinks2 button.prev,
#termin-content-wrapper #pagelinks2 button.next
{
    width: 0.77rem;
    border: none;
    background: #F8F8F8;
    font-size: 1rem;
    padding-top: 0;
}

.termine #pagelinks button.spacer,
#termin-content-wrapper #pagelinks2 button.spacer {
    width: auto;
    border-color: #F8F8F8;
    background: #F8F8F8;
    cursor: default;
    font-size: 1.1rem;
}

/*IE11*/
@media all and (-ms-high-contrast:none) {
    .termine #pagelinks button.spacer,
    #termin-content-wrapper #pagelinks2 button.spacer {
        padding: 2px 0 0;
    }
}

#termin-content-wrapper #pagelinks2 button.prev,
#termin-content-wrapper #pagelinks2 button.next,
#termin-content-wrapper #pagelinks2 button.spacer {
    border-color: white;
    background: white;
}

.termine #pagelimit button,
#termin-content-wrapper #pagelimit2 button {
    margin-right: 0;
    padding: 4px 0;
    border: none;
    background: none;
    color: #8A0606;
    font-size: 0.8rem;
    text-transform: lowercase;
    outline: none;
}
/*

.termine #pagelimit *,
#termin-content-wrapper #pagelimit2 *{
    float: right;
}
*/

.termine #pagelimit,
#termin-content-wrapper #pagelimit2 {
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-end;
    align-items: baseline;
    font-size: 0.8rem;
}

.termine #pagelimit .active,
#termin-content-wrapper #pagelimit2 .active {
    color: #808080;
}

.TerminHolderPage .pagination .separator {
    padding: 10px 0;
    line-height: 1;
    font-size: 0.8rem;
}

.termine #pagelinks .active:hover,
.termine #pagelimit .active:hover,
#termin-content-wrapper #pagelinks2 .active:hover,
#termin-content-wrapper #pagelimit2 .active:hover {
    cursor: default;
}

#termin-content-wrapper #termin-content {
    border-bottom: 2px solid black;
    margin-bottom: 10px;
    min-height: 100px;
}

#termin-content-wrapper #termin-content > img {
    display: block;
    margin: 30px auto;
}

#termin-content-wrapper .termin-entry {
    margin-bottom: 3rem;
}

#termin-content-wrapper .termin-entry img {
    max-width: 190px;
    height: auto !important;
    width: 100%;
}

#termin-content-wrapper .termin-entry p {
    margin-bottom: 10px;
    line-height: 1.1;
}

#termin-content-wrapper .termin-entry h2 {
    margin-bottom: 10px;
    line-height: 1;
    text-align: left;
}

#termin-content-wrapper .entry_header{
    font-weight: 700;
    padding-top: 0.7rem;
    margin-bottom: 1.8rem;
}

#termin-content-wrapper .entry_header:not(.first) {
    border-top: 2px solid black;
}

@media(max-width: 1200px) {
    .TerminHolderPage .pagination.triple-grid {
        margin: 0 -10px;
    }

    .TerminHolderPage .pagination.triple-grid .inner {
        width: 42%;
        padding: 0 10px;
    }

    .TerminHolderPage .pagination.triple-grid .inner.reset {
        width: 16%;
    }

    .TerminHolderPage .pagination .separator {
        padding: 11px 0;
    }
}

@media(max-width: 1000px) {
    .termine .termin-filter .inner {
        max-width: 100%;
    }

    .termine #pagelinks button.prev,
    .termine #pagelinks button.next,
    #termin-content-wrapper #pagelinks2 button.prev,
    #termin-content-wrapper #pagelinks2 button.next {
        padding-top: 2px;
    }

}

@media(max-width: 768px) {
    .TerminHolderPage .pagination.triple-grid {
        justify-content: space-between;
        margin-left: 0;
        margin-right: 0;
    }

    .TerminHolderPage .pagination.triple-grid .inner {
        width: 100%;
        max-width: 500px;
        padding: 0;
    }

    .TerminHolderPage .pagination.triple-grid div.inner.pagelimit {
        order: 1;
        width: 70%;
    }

    .TerminHolderPage .pagination #pagelimit,
    .TerminHolderPage .pagination #pagelimit2 {
        display: inline-flex;
        flex-direction: row-reverse;
        justify-content: flex-end;
    }

    #termin-content-wrapper #pagelimit2 {
        justify-content: flex-start;
    }

    .TerminHolderPage .pagination #pagelimit,
    .TerminHolderPage .pagination #pagelimit2 button {
        float: none;
    }

    .TerminHolderPage .pagination.triple-grid div.inner.reset {
        order: 2;
        width: auto;
    }

    .TerminHolderPage .pagination .pagelinks {
        order: 3;
    }
}



.kirchenmusik-block-wrapper {
    background: #FFF8EF;
    padding: 48px 0 36px;
}

.kirchenmusik-block-wrapper .kirchenmusik-block {
    display: flex;
    flex-flow: row nowrap;
}

.kirchenmusik-block-wrapper .kirchenmusik-block .left {
    flex: 0 0 45%;
    width: 45%;
    padding-right: 30px;
    box-sizing: border-box;
}

.kirchenmusik-block-wrapper .kirchenmusik-block .left .logo {
    max-width: 385px;
    width: 100%;
    text-align: center;
    margin: 0 auto 0 0;
}

.kirchenmusik-block-wrapper .kirchenmusik-block .left .logo a {
    display: block;
}

.kirchenmusik-block-wrapper .kirchenmusik-block .left .logo a img {
    display: block;
    margin: 0 auto;
    max-width: 100%;
    width: 260px;
    height: auto;
}

.kirchenmusik-block-wrapper .kirchenmusik-block .left .text {
    max-width: 385px;
    width: 100%;
    text-align: center;
    margin-top: 30px;
    margin: 30px auto 0 0;
}

.kirchenmusik-block-wrapper .kirchenmusik-block .left .text p {
    font-size: 0.75rem;
    line-height: 1.5em;
    font-family:'Ciutadella Rounded W01 Regular','Gotham', Arial, Helvetica, 'sans-serif';
    margin-bottom: 0.6em;
}

.kirchenmusik-block-wrapper .kirchenmusik-block .left .text a {
    font-weight: 500;
    font-family:'Ciutadella Rounded W01 Medium','Gotham', Arial, Helvetica, 'sans-serif';
    color: #000000;
}

.kirchenmusik-block-wrapper .kirchenmusik-block .right {
    flex: 0 0 55%;
    width: 55%;
}

.kirchenmusik-block-wrapper .kirchenmusik-block .right ul {
    display: block;
    margin: 0;
    padding: 0;
}
.kirchenmusik-block-wrapper .kirchenmusik-block .right ul li {
    display: flex;
    flex-flow: row nowrap;
    margin: 0 0 30px 0;
    padding: 0 0 30px 0;
    border-bottom: 2px solid #ABA6A0;
}

.kirchenmusik-block-wrapper .kirchenmusik-block .right ul li:before {
    display: none;
}

.kirchenmusik-block-wrapper .kirchenmusik-block .right ul li:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom-width: 0;
}

.kirchenmusik-block-wrapper .kirchenmusik-block .right .image {
    flex: 0 0 30%;
}

.kirchenmusik-block-wrapper .kirchenmusik-block .right .image-wrapper {
    display: block;
    width: 180px;
    height: 180px;
    max-width: 100%;
    overflow: hidden;
    border-radius: 50%;
    margin-right: 50px;
}

.kirchenmusik-block-wrapper .kirchenmusik-block .right .image-wrapper img {
    width: 100%;
    max-width: 100%;
    height: auto;
}

.kirchenmusik-block-wrapper .kirchenmusik-block .right .description {
    flex: 0 0 50%;
    font-size: 0.7rem;
    line-height: 1.4em;
}

.kirchenmusik-block-wrapper .kirchenmusik-block .right .description .date {
    display: block;
    font-size: 0.65rem;
    line-height: 1.4em;
    font-family:'Ciutadella Rounded W01 Medium','Gotham', Arial, Helvetica, 'sans-serif';
}

.kirchenmusik-block-wrapper .kirchenmusik-block .right .description h2 {
    font-size: 1.0rem;
    line-height: 1.3em;
    margin-bottom: 0.7em;
    font-family:'Ciutadella Rounded W01 Medium','Gotham', Arial, Helvetica, 'sans-serif';
}

.kirchenmusik-block-wrapper .kirchenmusik-block .right .description a
{
    font-size: 0.85rem;
    line-height: 1.4em;
    color: #000000;
    font-family:'Ciutadella Rounded W01 Medium','Gotham', Arial, Helvetica, 'sans-serif';
}

.kirchenmusik-block-wrapper .kirchenmusik-block .right .description p {
    font-size: 0.85rem;
    line-height: 1.4em;
    color: #7C7874;
    font-family:'Ciutadella Rounded W01 Regular','Gotham', Arial, Helvetica, 'sans-serif';
}

.kirchenmusik-block-wrapper .kirchenmusik-block .right .description p:last-child {
    margin-bottom: 0;
}

.kirchenmusik-block-wrapper .kirchenmusik-block .right .description a {
    text-decoration: none;
}

@media (max-width: 1000px){
    .kirchenmusik-block-wrapper .kirchenmusik-block {
        display: flex;
        flex-flow: row wrap;
    }


    .kirchenmusik-block-wrapper .kirchenmusik-block .left,
    .kirchenmusik-block-wrapper .kirchenmusik-block .right {
        flex: 0 0 100%;
        width: 100%;
    }



    .kirchenmusik-block-wrapper .kirchenmusik-block .left {
        margin-bottom: 50px;
        padding-right: 0;
    }

    .kirchenmusik-block-wrapper .kirchenmusik-block .left .logo,
    .kirchenmusik-block-wrapper .kirchenmusik-block .left .text
    {
        margin-left: auto;
        margin-right: auto;
    }

    .kirchenmusik-block-wrapper .kirchenmusik-block .left .text p {
        font-size: 1rem;
    }

    .kirchenmusik-block-wrapper .kirchenmusik-block .right .description .date {
        font-size: 1rem;
    }

    .kirchenmusik-block-wrapper .kirchenmusik-block .right .description,
    .kirchenmusik-block-wrapper .kirchenmusik-block .right .description h2,
    .kirchenmusik-block-wrapper .kirchenmusik-block .right .description p,
    .kirchenmusik-block-wrapper .kirchenmusik-block .right .description a
    {
        font-size: 1rem;
    }

    .kirchenmusik-block-wrapper .kirchenmusik-block .right .image {
        flex: 0 0 30%;
    }

    .kirchenmusik-block-wrapper .kirchenmusik-block .right .description {
        flex: 1 1 70%;
        align-self: flex-start;
    }

    .kirchenmusik-block-wrapper .kirchenmusik-block .right .description .date {
        font-size: 0.8rem;
    }

    .kirchenmusik-block-wrapper .kirchenmusik-block .right .description h2 {
        font-size: 1rem;
    }

    .kirchenmusik-block-wrapper .kirchenmusik-block .right .description p {
        font-size: 0.9rem;
    }
}

@media (max-width: 600px){
    .kirchenmusik-block-wrapper .kirchenmusik-block .right ul li {
        flex-flow: row wrap;
    }

    .kirchenmusik-block-wrapper .kirchenmusik-block .right .image {
        flex: 0 0 100%;
        margin-bottom: 30px;
    }

    .kirchenmusik-block-wrapper .kirchenmusik-block .right .image-wrapper {
        margin: 0 auto;
    }

    .kirchenmusik-block-wrapper .kirchenmusik-block .right .description {
        flex: 0 0 100%;
    }
}

.featherlight .featherlight-close-icon {
    position: absolute;
    z-index: 9999;
    top: 20px;
    right: 30px;
    line-height: 25px;
    width: 50px;
    cursor: pointer;
    text-align: center;
    font-family: Arial,sans-serif;
    background: #fff;
    background: rgba(0,0,0,1);
    color: #FFF;
    border: 0;
    padding: 0;
    height: 50px;
    font-size: 30px;
    margin: 0;
}

