/*-----------------------------------------------------------------------------< News >---*/

.mod_newslist .ce_text{
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 6;
    -webkit-box-orient: vertical;  
}

.date{
    font-size:var(--fs_small);
    font-weight:var(--fw_medium);
    color:var(--light-gray_1);
    margin-bottom:.5rem !important;
}

.mod_newslist:not(.animated) button.next,
.mod_newslist:not(.animated) button.prev{
    display:none;
}

.mod_newslist:not(.animated):not(.headline) .news{
    position:relative;
    box-shadow:var(--box-shadow);
    border-radius:var(--border-radius);
    background-color:#fff;
    overflow:hidden;
}


.mod_newslist:not(.animated):not(.headline) .content{
    display:block;
    padding:1rem 1rem 4.6rem 1rem;
}


.mod_newslist:not(.animated):not(.headline){
    display:grid;
    gap:var(--grid__gutter);
}

@media screen and (max-width:940px){
    .mod_newslist:not(.animated):not(.headline){
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (max-width:768px){
    .mod_newslist:not(.animated):not(.headline){
        grid-template-columns: 1fr
    }
}

@media screen and (min-width:941px){
    .mod_newslist:not(.animated):not(.headline){
        grid-template-columns: repeat(3, 1fr);
    }
}

.mod_newslist:not(.animated):not(.headline) p.more{
    position:absolute;
    bottom:1rem;
    right:1rem;
}

.mod_newslist:not(.animated) img{
    width:100%;
    height:auto;
}

.mod_newslist .image_container{
    position:relative;
}

.mod_newslist .image_container figcaption{
    position: absolute;
    transform:translateY(100%);
    bottom:0;
    right:1rem;
}

.mod_newslist:not(.animated) .image_container{
    margin-bottom:1rem;
}

/*
 * Headline
 */

.mod_newslist.headline .news{
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap:var(--grid__gutter);
}

@media screen and (max-width:639px){
    .mod_newslist.headline .news{
        flex-direction: column;
        align-items: normal;
    }
}


.mod_newslist.headline .news:not(:last-child){
    margin-bottom:var(--grid__gutter);
    padding-bottom:var(--grid__gutter);
    border-bottom:1px solid var(--light-gray_1);
}

.mod_newslist.headline p.more{
    min-width:calc(180px + 1rem);
}

.mod_newslist.headline .date{
    font-size:var(--fs_extra_small);
    color:var(--blue);
    font-weight:var(--fw_medium);
    margin-bottom:1rem;
}

.mod_newslist.headline h2{
    margin:0;
    font-size:1rem;
}


/*
 * Animated
 */

.mod_newslist.animated .content{
    display:block;
    padding:1rem;
}

.mod_newslist.animated p.more{
    display:none;
}

.mod_newslist.carousel.animated{
    position: relative;
    width:100%;
    height:0;
    padding-bottom:33.33333%;
}

.mod_newslist.carousel.animated .news{
    position:absolute;
    top:0;
    opacity: 0;
    width:33.333%;
    transition:transform 1s ease, left 1s ease, opacity 1s ease;
}

.mod_newslist.carousel.animated .news > .inner{
    padding-bottom:100%;
    position:relative;
}

.mod_newslist.carousel.animated .news.out,
.mod_newslist.carousel.animated .news.prevOut,
.mod_newslist.carousel.animated .news.nextOut,
.mod_newslist.carousel.animated .news.active{
    left:33.33333%;
}

.mod_newslist.carousel.animated .news.prev{
    left:0;
}

.mod_newslist.carousel.animated .news.next{
    left:66.66666%;
}
.mod_newslist.carousel.animated .news.active{
    z-index:2;
    opacity:1;
}

.mod_newslist.carousel.animated .news.next,
.mod_newslist.carousel.animated .news.prev{
    z-index:1;
    opacity:.7;
    transform:scale(.7);
}

.mod_newslist.carousel.animated .news.out{
    z-index:0;
}

.mod_newslist.carousel.animated .news.out,
.mod_newslist.carousel.animated .news.prevOut,
.mod_newslist.carousel.animated .news.nextOut,
.mod_newslist.carousel.animated .news.out{
    opacity:0;
    transform:scale(.3);
}

.mod_newslist.carousel.animated button{
    display:block;
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:1.6rem;
    height:2rem;
    border:none;
    color:transparent;
    background-color:transparent;
    background-image: url('../img/arrow.svg');
    background-position:center;
    background-repeat:no-repeat;
    background-size:contain;
    transform-origin: center;
    transform: rotate(0);
    cursor:pointer;
}

.mod_newslist.carousel.animated button.next{
    transform:rotate(180deg);
    right:0;
}

.mod_newslist.carousel.animated .image_container{
    position:absolute;
    transform:translateY(-50%);
    top:50%;
    left:0;
    border-radius:var(--border-radius);
    overflow:hidden;
}

.mod_newslist.carousel.animated .content{
    position:absolute;
    transform:translateY(-50%);
    top:50%;
    right:0;
    width:80%;
    overflow:hidden;
    border-radius:var(--border-radius);
    background-color:#fff;
    box-shadow:var(--box-shadow);
    
}

.mod_newslist.animated figcaption{
    display:none;
}

/*-----------------------------------------------------------------------------< Events >---*/

.mod_eventlist:not(.grouped){
    display:grid;
    grid-template-columns: 1fr;
    row-gap: 2rem;
}

@media screen and (min-width:1024px){
    .mod_eventlist:not(.grouped){
        grid-template-columns: repeat(2, 1fr);
        column-gap: var(--grid__gutter);
        
    }
}


.mod_eventlist:not(.grouped) > .event{
    position:relative;
    border-radius: var(--border-radius);
    box-shadow:var(--box-shadow);
    background-color:#fff;
    display:grid;
    grid-template-columns: 1fr 1.5fr;
}

.mod_eventlist .event .content{
    position:relative;
    padding:1rem 1rem 4.6rem 1rem;
}

.mod_eventlist .event_header{
    font-size:var(--fs_extra_small);
    color:var(--blue);
    font-weight:var(--fw_medium);
    margin-bottom:1rem;
}

.mod_eventlist:not(.grouped) .event_header p.time{
    padding-bottom:.2rem !important;
    border-bottom:1px dotted var(--yellow);
    margin-bottom:.2rem !important;
}

.mod_eventlist .event_header span.location{
    font-weight:var(--fw_bold);
}

.mod_eventlist h3{
    font-size:var(--fs_h3);
    color:var(--blue);
}

.mod_eventlist .teaser{
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;  
    overflow: hidden;
}

.mod_eventlist:not(.grouped) p.more{
    position:absolute;
    bottom:1rem;
    right:1rem;
}

.mod_eventlist .image{
    position:relative;
    overflow:hidden;
    border-radius:var(--border-radius) 0 0 var(--border-radius);
}

.mod_eventlist .image .image_container{
    position:absolute;
    transform:translate(-50%, -50%);
    top:50%;
    left:50%;
}

.mod_eventlist .dateHint{
    position:absolute;
    top:-1rem;
    left:-1.7rem;
    width:11.6rem;
    height:11.6rem;
    overflow:hidden;
    z-index:1;
}

.mod_eventlist .dateHint:before{
    content: "";
    position: absolute;
    width: 5.8rem;
    height: 5.8rem;
    background: var(--font-color);
    transform: rotate(45deg);
    top: -25%;
    left: 25%;
    box-shadow: -1px -1px 10px -2px rgba(0, 0, 0, 0.5);
}

.mod_eventlist .dateHint > div{
    position:absolute;
    transform:translateX(-50%);
    left:50%;
    top:.5rem;
    color:#fff;
    font-weight:var(--fw_bold);
    z-index:1;
}

/*-------------------------------------< gruppiert >---*/

.mod_eventlist.grouped .event{
    margin-bottom:1rem;
    padding-bottom:1rem;
    border-bottom:1px solid var(--light-gray_1);
}

.mod_eventlist.grouped :is(h2, h3, h3):not(:first-child){
    margin-top:5rem;
}

.mod_eventlist.grouped .event_header{
    margin-bottom:1rem;
}

@media screen and (min-width:768px){

    .mod_eventlist.grouped .event_header{
        display:flex;
        justify-content: space-between;
        gap:var(--grid__gutter);
    }

}

.mod_eventlist.grouped .event_header p{
    margin:0;
}

.mod_eventlist.grouped p.location{
    font-weight:100;
}

.mod_eventlist.grouped .event_content{
    display:flex;
    justify-content: space-between;
    align-items: center;
    gap:var(--grid__gutter);
    flex-direction:row;
}

@media screen and (max-width:639px){
    .mod_eventlist.grouped .event_content{
        flex-direction: column;
        align-items:normal;
    
    }
}



.mod_eventlist.mod_eventlist.grouped .event_content :is(h2, h3, h4){
    margin-bottom:0;
}

.mod_eventlist.mod_eventlist.grouped p.more{
    min-width:calc(180px + 1rem);
}








/*-----------------------------------------------------------------------------< Reader >---*/


 .mod_eventreader h1,
 .mod_newsreader h1{
    margin-bottom:2rem;
}

.mod_eventreader .event_header,
.mod_newsreader .news_header{
    color:var(--blue);
    font-weight:var(--fw_medium);
    text-align: center;

    padding:2rem 0;

    border-top:1px dotted var(--yellow);
    border-bottom:1px dotted var(--yellow);
}