@font-face {
    font-family: "FontAwesome";
    src: url("../fonts/fa-brands-400.woff2") format("woff");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

ul.social {display: flex; flex-wrap: wrap; padding-left: 0 !important; }

ul.social {
 margin: 1rem 0;
}
ul.social > li {
    /*flex: 1;*/ list-style: none;
    font-size: 3.6rem;
    margin-right: 12px; /*margin:0.25em 0.5em;*/

}
ul.social li:last-child {
    margin-right: 0;
}
.social a::before {
    font-family: "FontAwesome";
    display: block; width:36px;  height:36px; background: var(--bs-body-color);
    color: white; transition: all 0.2s ease;

    font-size: 18px; line-height: 36px; text-align: center; border-radius: 50%; overflow: hidden;
}
.social a:hover::before { transform:scale(1.1); }
ul.social li a[href*="mstdn"]::before {
    content: "\f4f6";
}ul.social li a[href*="insta"]::before {
    content: "\f16d";
}ul.social li a[href*="twit"]::before {
    content: "\f099";
}ul.social li a[href*="vimeo"]::before {
    content: "\f27d";
}
.social a span {
    height: 0;
    width: 0;
    position: absolute;
    overflow: hidden;
}

footer#footer svg { max-height: 180px;}

div#page.site { display: flex; flex-direction: column; min-height: 100vh; }
.footer_transition { margin-top: auto; }


#footer .wrapper-content { max-width: 9999px; width: 100%;}

#footer #logos p:not(:last-child){margin: 6px 0 12px 0;}

/*#footer #logos  { display:flex; flex-wrap: wrap;  justify-content: center; }*/
#footer #logos p a { display:block; width: 100%; max-width: 180px;height: auto; margin:0 0; background: none !important }
#footer #logos p img { display:block; width: 100%; height: auto;  transition: all 0.2s ease; }
#footer #logos p a:hover img { transform:scale(1.05); }

@media screen and (max-width: 767px) {
    #footer .row > div {
        width: 100%; margin: 12.5px 0;
    }
/*    #footer *+h6 {margin: 0;}*/

    #footer .justify-content-end { justify-content: flex-start !important;}

    #footer #logos p a { max-width: 240px;  margin:0;    }

}






.events-list .year,
.programm-teaser .read-more {

    color: var(--ra_green_dark);
    font-weight: 500;
}

section.news {
    background: #fade81
}
section.news:first-child { padding-top: 0 !important;}

section.news .row>div { padding-bottom: 30px;}


section, section.news,
section.programm-teaser { margin-top: 0; margin-bottom: 0;
    padding-top:60px;
    padding-bottom:60px;
}
section.programm-teaser:first-child { padding-top: 0; }



#intro+section.partofprev { padding-top: 32px;}

div#pagetitle+section.text { padding-top:10px; }


section+section{margin-top:0px}
/*
section+section{padding-top:60px}
section+.nothere+.sectiontransition+section{padding-top:60px}
section+.sectiontransition+section{padding-top:60px}

.sectiontransition+section{padding-top:60px}
.sectiontransition+.nothere+section{padding-top:60px}
*/


 section div.vid { padding-bottom: 56.25%;
     position: relative;}
 section.video>div>div:not(.vid) { padding: 10px 0;}
section div.vid iframe {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.wrapper-content:not(:first-child)/* div.rich */{ padding-top: 30px;}

.slider-image>h2:first-child {
    position: absolute; display: inline-block; top:0; left: 0; background-color: var(--ra_green_dark); color: white; padding: 0.5em;
    z-index: 100;}

ul.presslist li a strong,
ul.peoplelist li a h3 span,
.rich a {
    position: relative; font-weight: 500;
    background: none;
    border-bottom: 2px dotted currentColor;
}
ul.presslist li a:hover strong,
ul.peoplelist li a:hover h3 span,
.rich a:hover { border-bottom-style: solid;}

div.slide figure figcaption ,
section.text figure figcaption { font-size: 14px; padding: 1em 0;}

div.slide figure { margin: 0;}



@media (max-width: 767px) {

    .slider-image .slider-button.previous svg polygon,
    .slider-image .slider-button.next svg polygon {
        fill: white;
        stroke: white;
    }
    section.declarations .slider-image .slider-button.previous svg polygon,
    section.declarations .slider-image .slider-button.next svg polygon {
             fill: black;
             stroke: black;
         }
    .slider-image .slider-button.previous ,
    .slider-image .slider-button.next {

        padding: 0 10px;
    }
    .slider-image .slider-button.previous {
        right: calc(100% - 35px);

    }

    .slider-image .slider-button.next {
        left: calc(100% - 35px);

    }


    .declarations blockquote {

        padding: 0 48px;
    }


    .programm-teaser .read-more { text-align: left; padding-top: 0.5em; }

    section, section.news:last-child, section.programm-teaser:last-child { padding-bottom: 20px; }
    section, section.news:not(:last-child), section.programm-teaser:not(:last-child) { padding-bottom: 40px; }
}