/**
 * customized stylesheet for www.volkssolidaritaet.de
 * last modified: 2025-06-16
 * based on bootstrap v5.2.3
 */

/* inria-serif-regular - latin */
@font-face {
    font-family: 'Inria Serif';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('/static/skins/voso/default/fonts/inria-serif-v2-latin-regular.eot'); /* IE9 Compat Modes */
    src: local('Inria Serif Regular'), local('InriaSerif-Regular'),
       url('/static/skins/voso/default/fonts/inria-serif-v2-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/static/skins/voso/default/fonts/inria-serif-v2-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('/static/skins/voso/default/fonts/inria-serif-v2-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('/static/skins/voso/default/fonts/inria-serif-v2-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/static/skins/voso/default/fonts/inria-serif-v2-latin-regular.svg#InriaSerif') format('svg'); /* Legacy iOS */
}
/* inria-serif-700 - latin */
@font-face {
    font-family: 'Inria Serif';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('/static/skins/voso/default/fonts/inria-serif-v2-latin-700.eot'); /* IE9 Compat Modes */
    src: local('Inria Serif Bold'), local('InriaSerif-Bold'),
    url('/static/skins/voso/default/fonts/inria-serif-v2-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ url('/static/skins/voso/default/fonts/inria-serif-v2-latin-700.woff2') format('woff2'), /* Super Modern Browsers */ url('/static/skins/voso/default/fonts/inria-serif-v2-latin-700.woff') format('woff'), /* Modern Browsers */ url('/static/skins/voso/default/fonts/inria-serif-v2-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */ url('/static/skins/voso/default/fonts/inria-serif-v2-latin-700.svg#InriaSerif') format('svg'); /* Legacy iOS */
}
/* sen-regular - latin */
@font-face {
    font-family: 'Sen';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('/static/skins/voso/default/fonts/sen-v2-latin-regular.eot'); /* IE9 Compat Modes */
    src: local('Sen Regular'), local('Sen-Regular'),
       url('/static/skins/voso/default/fonts/sen-v2-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/static/skins/voso/default/fonts/sen-v2-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('/static/skins/voso/default/fonts/sen-v2-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('/static/skins/voso/default/fonts/sen-v2-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/static/skins/voso/default/fonts/sen-v2-latin-regular.svg#Sen') format('svg'); /* Legacy iOS */
}
/* sen-700 - latin */
@font-face {
    font-family: 'Sen';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('/static/skins/voso/default/fonts/sen-v2-latin-700.eot'); /* IE9 Compat Modes */
    src: local('Sen Bold'), local('Sen-Bold'),
       url('/static/skins/voso/default/fonts/sen-v2-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/static/skins/voso/default/fonts/sen-v2-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('/static/skins/voso/default/fonts/sen-v2-latin-700.woff') format('woff'), /* Modern Browsers */
       url('/static/skins/voso/default/fonts/sen-v2-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/static/skins/voso/default/fonts/sen-v2-latin-700.svg#Sen') format('svg'); /* Legacy iOS */
}
/* sen-800 - latin */
@font-face {
    font-family: 'Sen';
    font-style: normal;
    font-weight: 800;
    font-display: swap;
    src: url('/static/skins/voso/default/fonts/sen-v2-latin-800.eot'); /* IE9 Compat Modes */
    src: local('Sen ExtraBold'), local('Sen-ExtraBold'),
    url('/static/skins/voso/default/fonts/sen-v2-latin-800.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ url('/static/skins/voso/default/fonts/sen-v2-latin-800.woff2') format('woff2'), /* Super Modern Browsers */ url('/static/skins/voso/default/fonts/sen-v2-latin-800.woff') format('woff'), /* Modern Browsers */ url('/static/skins/voso/default/fonts/sen-v2-latin-800.ttf') format('truetype'), /* Safari, Android, iOS */ url('/static/skins/voso/default/fonts/sen-v2-latin-800.svg#Sen') format('svg'); /* Legacy iOS */
}


/**
 * general style
 **/
* {
  outline: 0 !important;
}
:focus {
    outline:none;
}
::-moz-focus-inner {
    border:0;
}

body {
    font-family: "Sen", Arial, sans-serif;
    font-size: 1.15rem;
    font-variant-numeric: lining-nums;
    -moz-font-feature-settings: "lnum";
    -webkit-font-feature-settings: "lnum";
    font-feature-settings: "lnum";
    text-rendering: optimizeSpeed;
    color: #000;
}

/**
 * links
 **/
a {
    -webkit-transition-property: color, background-color;
    -webkit-transition-duration: 0.45s;
    -webkit-timing-function: ease-out;
    -moz-transition: all ease-out 0.45s;
    -ms-transition: all ease-out 0.45s;
    -o-transition: all ease-out 0.45s;
    transition: all ease-out 0.45s;
    color: #D0003A;
    text-decoration: none;
}
a:hover {
    color: #238B59;
}
a > i {
    color: #D0003A;
}

/**
 * buttons
 **/
.btn {
    -webkit-transition-property: color, background-color;
    -webkit-transition-duration: 0.35s;
    -webkit-timing-function: ease-out;
    -moz-transition: all ease-out 0.35s;
    -ms-transition: all ease-out 0.35s;
    -o-transition: all ease-out 0.35s;
    transition: all ease-out 0.35s;
    font-family: "Sen", Arial, sans-serif;
    font-weight: 700;
    padding: 0.5rem 1.25rem;
    text-decoration: none;
}
.btn:focus {
    box-shadow: none;
}
.btn-lg {
    padding: 0.5rem 2rem;
}
.btn-default,
.btn-primary,
.btn-secondary,
.btn-danger,
.btn-light {
    text-transform: uppercase;
    border: solid 1px #238B59;
    border-radius: 24px;
    -moz-border-radius: 24px;
    -webkit-border-radius: 24px;
    color: #fff;
    background-color: transparent;
}
.btn-primary {
    background-color: #238B59 !important;
}
.btn-primary i {
    color: #fff !important;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
    background-color: #fff !important;
    border-color: #238B59 !important;
    color: #238B59 !important;
}
.btn-primary:hover i,
.btn-primary:focus i,
.btn-primary:active i {
    color: #238B59 !important;
}
.btn-secondary {
    border-color: #D0003A !important;
    background-color: #D0003A !important;
}
.btn-secondary:hover,
.btn-secondary:focus,
.btn-secondary:active {
    background-color: #fff !important;
    border-color: #D0003A !important;
    color: #D0003A !important;
}
.btn-default {
    color: #238B59  !important;
}
.btn-default:hover,
.btn-default:focus,
.btn-default:active {
    color: #fff !important;
    background-color: #238B59 !important;
}
.btn-danger {
    color: #238B59 !important;
    background-color: #fff  !important;
}
.btn-danger:hover,
.btn-danger:focus,
.btn-danger:active {
    background-color: #238B59 !important;
    border-color: #238B59 !important;
    color: #fff !important;
}
.btn-light {
    background-color: #fff  !important;
    border-color: #fff  !important;
    color: #259B62  !important;
}
.btn-light:hover,
.btn-light:focus,
.btn-light:active {
    background-color: #238B59 !important;
    border-color: #fff !important;
    color: #fff !important;
}
.btn-link {
    color: #238B59 !important;
}
.btn-link:hover,
.btn-link:focus {
    color: #D0003A !important;
}

button.page-link {
    font-size: 1rem;
}
#btn-back {
    border-top-left-radius: 0;
    -moz-border-radius-topleft: 0;
    -webkit-border-top-left-radius: 0;
     border-bottom-left-radius: 0;
    -moz-border-radius-bottomleft: 0;
    -webkit-border-bottom-left-radius: 0;
    border-top-right-radius: 50px;
    -moz-border-radius-topright: 50px;
    -webkit-border-top-right-radius: 50px;
     border-bottom-right-radius: 50px;
    -moz-border-radius-bottomright: 50px;
    -webkit-border-bottom-right-radius: 50px;
    left: 0;
    bottom: 5%;
    padding-left: 0.5rem;
    background-color: #D0003A;
    border-color: #D0003A;
    color: #fff;
    text-transform: uppercase;
    line-height: initial;
    font-size: 75%;
}
#btn-back:hover,
#btn-back:focus {
    background-color: #238B59;
    border-color: #238B59;
}

/**
 * typo
 **/
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: "Inria Serif", Arial, sans-serif;
    font-weight: 700;
    color: #238B59;
}
h3, .h3 {
    font-size: 1.5rem;
}
h6, .h6 {
    font-size: 1.25rem;
    font-weight: bold;
    font-family: "Sen", Arial, sans-serif;
    color: #000;
}

.text-pink {
    color: #D0003A;
}
.text-success {
    color: #259B62;
}
.list-group-item-action {
    color: #000;
}
.list-group-item-action:hover {
    background-color: transparent;
    color: #000;
}

/**
 * backgrounds / wrapper
 **/
#site-content {
    #min-height: 1080px;
    #height: 100%;
}
#site-content > div {
    padding-top: 92px;
}
.bg-light {
    background-color: #F0EAE4 !important;
}
.bg-secondary {
    background-color: #f7f7f7 !important;
}
.bg-success {
    background: rgb(37,155,98);
    background: -moz-linear-gradient(top,  rgb(37,155,98) 0%, rgb(33,113,75) 100%);
    background: -webkit-linear-gradient(top,  rgb(37,155,98) 0%,rgb(33,113,75) 100%);
    background: linear-gradient(to bottom,  rgb(37,155,98) 0%,rgb(33,113,75) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#259b62', endColorstr='#21714b',GradientType=0 );
    color: #fff;
}

/**
 * custom icons
 **/
.icon {
    display: inline-block;
    width: 42px;
    height: 42px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
}
.burger-menu {
    width: 43px;
    background-image: url('/static/skins/voso/default/img/Burger_menu.svg');
}
.search {
    width: 31px;
    height: 31px;
    background-image: url('/static/skins/voso/default/img/search.svg');
}

/**
 * breadcrumbs
 **/
.breadcrumbs {
    color: #8E8E8E;
}
.breadcrumb-item a {
    color: #8E8E8E;
}
.breadcrumb-item a:hover,
.breadcrumb-item a:focus {
    color: #238B59;
}
.breadcrumb-item + .breadcrumb-item::before {
    color: #8E8E8E;
    content: var(--bs-breadcrumb-divider, ">");
    margin: 0 1rem;
}

/**
 * navigation
 **/
#site-nav {
    background: -moz-linear-gradient(top,  rgba(255,255,255,0.9) 0%, rgba(255,255,255,0.9) 100%);
    background: -webkit-linear-gradient(top,  rgba(255,255,255,0.9) 0%,rgba(255,255,255,0.9) 100%);
    background: linear-gradient(to bottom,  rgba(255,255,255,0.9) 0%,rgba(255,255,255,0.9) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e6ffffff', endColorstr='#e6ffffff',GradientType=0 );
    width: auto;
    max-width: 100vw;
    z-index: 9050;
}
#site-nav .btn-close {
    font-size: 1.5rem;
}
.btn-close {
    opacity: 1;
    color: #000 !important;
}

#nav_topnav {
    margin-left: 2rem;
}
#nav_topnav .nav-link {
    font-family: "Inria Serif", Arial, sans-serif;
    font-weight: 700;
    font-size: 1.55rem;
    color: #000;
    padding-left: 0.35rem;
    cursor:pointer;
}
#nav_topnav .nav-link:hover,
#nav_topnav .nav-link:focus,
#nav_topnav .nav-link.active,
#nav_topnav .nav-item:nth-last-child(3) .nav-link:hover,
#nav_topnav .nav-item:nth-last-child(3) .nav-link.active {
    color: #238B59;
}
#nav_topnav .dropdown-toggle,
#nav_topnav .dropdown-toggle:hover,
#nav_topnav .dropdown-toggle:focus,
#nav_topnav .nav-item:nth-last-child(3) .nav-link {
    color: #D0003A;
}
#nav_topnav .dropdown-toggle::after {
    display: none;
}
#nav_topnav .dropdown-toggle {
    padding-left: 0;
    white-space: normal;
    word-break: break-word;
    hyphens: auto; -moz-hyphens: auto; -o-hyphens: auto; -webkit-hyphens: auto; -ms-hyphens: auto;
}
#nav_topnav .dropdown-toggle::before {
    content: "\f107";
    display: inline-block;
    font-family: "Font Awesome 6 Pro";
    font-size: 1.8rem;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    margin-left: -1.5rem;
    width: 1.5rem;
}
#nav_topnav .dropdown-toggle.show::before {
    content: "\f106";
}

.dropdown-menu.show {
    position: relative !important;
    transform: none !important;
    will-change: auto !important;
    border: none;
    padding: 0 0 2rem;
    background-color: transparent;
}
.dropdown-item {
    color: #000;
    font-size: 20px;
    padding: 0.25rem 0.35rem;
}
.dropdown-item:hover,
.dropdown-item:focus,
.dropdown-item.active {
    background-color: transparent;
    color: #238B59;
}

/**
 * sub navigation (press)
 **/
ul.nav.subnav {
    margin-top: 1.75rem;
}
ul.nav.subnav .nav-item {
    margin-right: 2rem;
}
ul.nav.subnav .nav-iten:last-child {
    margin-right: 0;
}
ul.nav.subnav .nav-link {
    padding-left: 0;
    padding-right: 0;
}

/**
 * site footer (sticky)
 **/
html,
body {
    height: 100%;
}
#site-wrapper {
    display: flex;
    min-height: 100vh;
    flex-direction: column;
    margin: 0 auto -488px;
    padding: 0 0 488px;
}
#site-content {
    flex: 1;
}

#site-footer {
    height: 488px;
    font-size: 1rem;
    color: #2f2f2f;
}
#footer-top {
    height: 312px;
}
#footer-btm {
    height: 80px;
}
#footer-btm a {
    font-weight: bold;
}
#site-footer a {
    color: #2f2f2f;
    text-decoration: none;
}
#site-footer a:hover,
#site-footer a:focus {
    color: #D0003A;
}
#site-footer .btn-link {
    background-color: transparent;
    color: #2f2f2f !important;
    border:none;
    text-decoration: none;
}
#site-footer .btn-link:hover,
#site-footer .btn-link:focus {
    color: #D0003A !important;
    text-decoration: none;
}
#site-footer h3 {
    color: #2f2f2f;
    font-size: 1.25rem;
    font-family: "Sen", Arial, sans-serif;
}

/**
 * footer navigation
 **/
#nav_footernav {
    flex-direction: row;
    width: 100%;
}
#nav_footernav > li {
    float: left;
    width: 25%;
}
#nav_footernav > li .nav-link {
    font-weight: bold;
    font-size: 1.25rem;
    padding: 0;
}
#nav_footernav > li .nav-link:hover,
#nav_footernav > li .nav-link:focus {
    color: #2f2f2f;
    cursor: default;
}
#nav_footernav .dropdown-toggle::after {
    display: none;
}
#nav_footernav .dropdown-menu {
    position: relative;
    display: block;
    top: 0;
    border:none;
    background-color: transparent;
    padding: 0;
    margin: 1rem 0 0;
}
#nav_footernav .dropdown-item {
    font-size: 1rem;
    padding: 0;
    margin-bottom: 0.25rem;
}

/**
 *  privacy settings
 **/
#privacy-settings-dialog .modal-body > p {
    font-size: 1rem;
}
#privacy-settings-dialog .modal-content {
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
}
#privacy-settings-dialog .modal-header {
    background-color: #21714B;
    border-top-left-radius: 0;
    -moz-border-radius-topleft: 0;
    -webkit-border-top-left-radius: 0;
    border-top-right-radius: 0;
    -moz-border-radius-topright: 0;
    -webkit-border-top-right-radius: 0;
}
#privacy-settings-dialog .modal-title {
    font-size: 1.5rem;
    color: #fff;
    font-family: "Sen", Arial, sans-serif;
}
#privacy-settings-dialog .modal-body {
    padding: 15px;
}
#privacy-settings-dialog .modal-body > p {
    line-height: 1.5rem;
}
#privacy-settings-dialog .btn-secondary {
    background-color: #ccc;
    border-color: #ccc;
    color: #fff;
    text-transform: none;
    padding: 0 1rem;
}
#privacy-settings-dialog .btn-secondary:hover,
#privacy-settings-dialog .btn-secondary:focus {
    background-color: #656565;
    color: #fff;
    border-color: #656565;
}
#privacy-settings-dialog .form-text.small {
    font-size: 75%;
}
#privacy-settings-dialog .form-check {
    font-size: 1.2rem;
}
#privacy-settings-dialog .form-check-input:checked {
    background-color:#D0003A;
    border-color: #D0003A;
}

/**
 * custom lists (links, downloads, article)
 **/
.custom-list ul {
    padding-left: 0;
    margin: 0 0 1.5rem 1.55rem;
}
.custom-list li {
    list-style-type: none;
    padding-left: 0;
    margin-bottom: 0.25rem;
}
.custom-list li:before {
    content: "\f111";
    display: inline-block;
    font-family: "Font Awesome 6 Pro";
    font-size: 1.25rem;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    margin-left: -1.5rem;
    width: 1.5rem;
}
.article-list li:before {
    content: "\f45c";
    color: #21714B;
    font-size: 0.5rem;
    font-weight: bold;
    position: relative;
    top: -0.25rem;
}
.link-list li:before {
    content: "\f105";
    color: #D0003A;
}

/**
 * download list
 */
.download-list li {
    margin-bottom: 0.5rem;
}
.download-list li:last-child {
    margin-bottom: 0;
}
.download-list li:before {
    content: "\f019";
    color: #D0003A;
    font-size: 1rem;
}

/**
 * site header
 */
#site-header {
    position: relative;
    z-index: 50;
}
#site-header.btm-shadow {
    -webkit-transition-property: background-color;
    -webkit-transition-duration: .1s;
    -webkit-timing-function: ease-in-out;
    -moz-transition: all ease-in-out .1s;
    -ms-transition: all ease-in-out .1s;
    -o-transition: all ease-in-out .1s;
    transition: all .1s ease-in-out;
}
#site-header #logo {
    width: 265px;
}
#site-header.fixed-top {
    position: fixed !important;
}
#site-header .border-bottom {
    border-color: #000 !important;
}
#site-header.btm-shadow .border-bottom {
    border-bottom: none !important;
}
#site-header.btm-shadow .d-flex.pb-md-3 {
    padding-bottom: 0 !important;
}
#site-header.btm-shadow {
    box-shadow: 0px 25px 25px -18px rgba(0, 0, 0, 0.185);
    -webkit-box-shadow: 0px 25px 25px -18px rgba(0, 0, 0, 0.185);
    -moz-box-shadow: 0px 25px 25px -18px rgba(0,0,0,0.185);
}
#site-header.btm-shadow > .container.py-md-3 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
}

/**
 * slider / home slider
 */
#homeslider.carousel {
    display: table;
    width: 100%;
    height: 100vh;
    min-height: 720px;
    margin-top: -140px;
}
#homeslider.carousel .carousel-inner .carousel-item {
    height: 100vh;
    min-height: 720px;
    width: 100%;
    overflow-y: hidden;
}
#homeslider.carousel .carousel-inner .carousel-item .bg-img {
    height: 100vh;
    min-height: 720px;
    width: 100%;
    background-position:center center;
    background-repeat:no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size:cover;
    overflow-y: hidden;
}
#homeslider.carousel .carousel-caption {
    bottom: auto;
    left: 40px;
    width: 50%;
    top: 50%;
    transform: translateY(-50%);
    background-color: rgba(255,255,255,0.85);
    border-radius: 32px;
    color: #000;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    padding: 40px;
    font-size: 1.125rem;
}
#homeslider.carousel .carousel-caption::after {
    content: '';
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 100%;
    width: 0;
    height: 0;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    border-top: 40px solid rgba(255,255,255,0.85);
    clear: both;
    #margin-top: -1px;
}
#homeslider.carousel .carousel-caption.caption-left {
    left: 10%;
    right: inherit;
    width: 25%;
    text-align: left;
}
#homeslider.carousel .carousel-caption.caption-left::after {
    left: 25%;
}
#homeslider.carousel .carousel-caption.caption-center {
    left: 25%;
    width: 50%;
    text-align: center;
}
#homeslider.carousel .carousel-caption.caption-right {
    right: 10%;
    left: inherit;
    width: 25%;
    text-align: left;
}
#homeslider.carousel .carousel-caption.caption-right::after {
    left: 75%;
}
#homeslider.carousel .carousel-caption h2 {
    color: #D0003A;
    font-size: 2rem;
    font-weight: 700;
    hyphens: none;
    margin-bottom: 1rem;
}
.carousel .carousel-indicators {
    bottom: -60px;
}
.carousel-indicators [data-bs-target] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    background-color: #238b59;
    opacity: 1;
    margin-left: 5px;
    margin-right: 5px;
}
.carousel-indicators [data-bs-target].active {
    background-color: #D0003A;
}
.carousel .carousel-control-next,
.carousel .carousel-control-prev {
    width: 5%;
}
.carousel .carousel-control-prev-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e");
}
.carousel .carousel-control-next-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}
.carousel .carousel-control-next-icon,
.carousel .carousel-control-prev-icon {
    width: 52px;
    height: 52px;
    background-image: none !important;
    background-color: rgba(208, 208, 208, 0.5);
    border-radius: 50%;
}

/**
 * home slider / jarallax
 */
.jarallax {
    position: relative;
    z-index: 0;
}
.jarallax > .jarallax-img {
    position: absolute;
    object-fit: cover;
    /* support for plugin https://github.com/bfred-it/object-fit-images */
    font-family: 'object-fit: cover;';
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

/**
 * jobs slider
 */
#jobslider.carousel {
    display: table;
    width: 100%;
    margin-bottom: 100px;
}
#jobslider.carousel .carousel-inner .carousel-item {
    width: 100%;
    height: 663px;
    overflow-y: hidden;
}
#jobslider.carousel .carousel-inner .carousel-item .bg-img {
    width: 100%;
    height: 663px;
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    overflow-y: hidden;
}
#jobslider.carousel .carousel-caption {
    display: none;
}

/**
 * overlay
 */
.overlay > .overlay-content {
    background-color: rgba(50, 144, 99, 0.8);
}

/**
 * fullscreen-modal
**/
.modal > .modal-fullscreen > .modal-content {
    background-color: rgba(50, 144, 99, 0.9);
    color: #fff !important;
}
.modal > .modal-fullscreen .modal-header {
    border-bottom:0;
}
.modal > .modal-fullscreen .btn-close {
    filter: invert(1) grayscale(100%) brightness(200%);
    opacity: 1;
    font-size: 36px;
    margin-right: 25px;
    margin-top: 10px;
}
.modal > .modal-fullscreen h2,
.modal > .modal-fullscreen a > .fa-stack,
.modal > .modal-fullscreen  a:hover  > .fa-stack > .fa-download.fa-inverse {
    color: #fff !important;
}
.modal > .modal-fullscreen h2 small {
    font-weight: normal;
    font-size: 1rem;
}

.modal > .modal-fullscreen  a  > .fa-stack > .fa-download.fa-inverse {
    color: #238B59 !important;
}

.modal > .modal-fullscreen a:hover > .fa-stack {
    color: #D0003A !important;
}

.modal > .modal-fullscreen img:hover {
    box-shadow: #444 0 0 10px;
}

/**
 * video in modal
**/
.video-container-wrapper {
    max-width: 100%;
    width: 1080px;
    left: 0;
    right: 0;
    margin: auto;
}
.video-container {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
}
.video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/**
 * paginator
 **/
.object-list-pagination {
    margin: 3rem 0;
}
.page-item .page-link {
    background-color: transparent !important;
    border-color: transparent !important;
}
.page-link {
    color: #000;
}
.page-item.active .page-link,
.page-link:hover,
.page-link:focus {
    color: #238B59;
}
.page-item.active {
    border-bottom: solid 2px #238B59;
}
.page-link:focus {
    box-shadow: none;
}
.object-list-pagination .form-select {
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    display: none;
}
.object-list-pagination .form-select:focus {
    box-shadow: none;
    border-color: #238B59;
}

/**
 * accordion
 **/
.accordion .card-header {
    background-color: transparent;
    border-bottom: none;
}
.accordion .card-header h4 {
    font-size: 1.25rem;
    font-family: "Sen", Arial, sans-serif;
}
.accordion .show .card-header h4 {
}
.accordion .card-header button {
    padding-left: 1rem;
    padding-right: 1rem;
}
.accordion .card-header button i,
.accordion .card-header button:hover i,
.accordion .card-header button:focus i {
    color: #238B59;
}
.accordion > .card {
    background-color: transparent;
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border-left: none;
    border-right: none;
    border-color: #D3D3D3;
    margin-bottom:-1px;
}

/**
 * image wrapper
 */
.img-wrapper {
    overflow: hidden;
}
.img-wrapper-rounded-top-left.img-wrapper-small,
.img-wrapper-rounded-top-left.img-wrapper-small img {
    border-top-right-radius: 30px;
    -moz-border-radius-topright: 30px;
    -webkit-border-top-right-radius: 30px;
}
.img-wrapper-rounded-top-left,
.img-wrapper-rounded-top-left img {
    border-top-right-radius: 50px;
    -moz-border-radius-topright: 50px;
    -webkit-border-top-right-radius: 50px;
}
.img-wrapper-rounded-bottom-left.img-wrapper-large,
.img-wrapper-rounded-bottom-left.img-wrapper-large img {
    border-bottom-left-radius: 100px;
    -moz-border-radius-bottomleft: 100px;
    -webkit-border-bottom-left-radius: 100px;
}

/**
 * global search
 **/
#global-search-dialog.show {
    box-shadow: 0 8px 6px -6px rgba(0,0,0,0.4);
    border-bottom-left-radius: 25px;
    -moz-border-radius-bottomleft: 25px;
    -webkit-border-bottom-left-radius: 25px;
    border-bottom-right-radius: 25px;
    -moz-border-radius-bottomright: 25px;
    -webkit-border-bottom-right-radius: 25px;
}
#global-search-dialog.results {
    background: #238B59;
}
#global-search-dialog .input-group {
    margin-top: 1.2rem;
}
#global-search-dialog input[type="text"] {
    background: rgba(0,0,0, 0.15);
    border-color: #d9d9d9 !important;
    color: black;
    border-top-left-radius: 24px;
    border-bottom-left-radius: 24px;
}
#global-search-dialog input[type="text"]:focus {
    box-shadow: 0 0 10px rgba(0,0,0,0.1) inset !important;
    outline: none;
}
#global-search-dialog input::placeholder {
    color: rgba(0,0,0, 0.5);
}
#global-search-dialog .btn-reset,
#global-search-dialog .btn-search {
    background: rgba(0,0,0, 0.25) !important;
    border-color: #d9d9d9 !important;
    border-left-color: #fff !important;
}
#global-search-dialog .btn-reset:hover,
#global-search-dialog .btn-search:hover {
    background: #238B59 !important;
}
#global-search-dialog .btn-search:hover i {
    color: #fff !important;
}
#global-search-dialog .modal-header {
    width: 50%;
    margin: 0 auto;
}
#global-search-dialog .modal-header .btn-close {
    filter: none;
    margin: 1.2rem 0 0;
    font-size: 24px;
    opacity: 0.5;
}
#global-search-dialog .modal-header .btn-close:hover,
#global-search-dialog .modal-header .btn-close:focus {
    opacity: 1;
}
#global-search-dialog .modal-content {
    background-color: rgba(255,255,255,1);
    color: #000;
}
#global-search-dialog .modal-body,
#global-search-dialog .modal-footer {
    background: white;
}
#global-search-dialog .modal-body {
    color: #000;
}
#global-search-dialog .list-group-item {
    font-size: 1rem;
    cursor: pointer;
}
#global-search-dialog .list-group-item:not(.text-muted):hover {
    color: #238B59;
}
#global-search-dialog small {
    font-size: .7rem;
}

/**
 * contributions widget / topic filter
 * sub-nav
 **/
#contributions-widget ul.nav,
.subnav.nav {
    font-weight: 700;
}
#contributions-widget ul.nav .nav-item,
.subnav.nav .nav-item {
    margin-right: 1rem;
}
#contributions-widget ul.nav .nav-item:last-child,
.subnav.nav .nav-item:last-child {
    margin-right: 0;
}
#contributions-widget ul.nav .nav-link,
.subnav.nav .nav-link {
    color: #8e8e8e;
    border-bottom: solid 3px transparent;
    padding: .25rem 0.5rem;
}
#contributions-widget ul.nav .nav-link {
    line-height: 40px;
}
#contributions-widget ul.nav .nav-link:hover {
    color: #D0003A;
}
#contributions-widget ul.nav .nav-link.active,
.subnav.nav .nav-link.active {
    border-bottom-color: #D0003A;
    color: #D0003A;
}
#contributions-widget .card:hover img,
#contributions-widget .card:hover h3 {
    -webkit-transition-property: color, transform;
    -webkit-transition-duration: .3s;
    -webkit-timing-function: ease-in-out;
    -moz-transition: all ease-in-out .3s;
    -ms-transition: all ease-in-out .3s;
    -o-transition: all ease-in-out .3s;
    transition: all .3s ease-in-out;
}
#contributions-widget .card:hover img {
    transform: scale(1.1);
    -webkit-transform: scale(1.1);
}
#contributions-widget .card:hover h3 {
    color: #D0003A;
}

/**
 * contributions widget
 **/
#contributions-widget .btn-danger {
    margin: 0 auto;
}

/**
 * contributions detail
 **/
#contribution-detail h1 {
    color: #238B59;
    font-size: 2.5rem;
}
#contribution-detail h1 small {
    font-size: 1.25rem;
    font-family: "Sen", Arial, sans-serif;
    color: #000;
    margin-top: 0;
}
#contribution-detail h3 {
    margin-top: 1.5rem;
}
#contribution-detail img {
    border-top-right-radius: 50px;
    -webkit-border-top-right-radius: 50px;
    -moz-border-radius-topright: 50px;
}
#contribution-detail .img-wrapper span.position-absolute {
    left: 10px;
    bottom: 5px;
}
#contribution-detail .img-wrapper button.position-absolute {
    right: 2.5%;
    bottom: 2.5%;
}
#contribution-detail .img-wrapper button.position-absolute .fab {
    color: rgba(255,255,255,0.5);
}
#contribution-detail .img-wrapper button.position-absolute:hover .fab,
#contribution-detail .img-wrapper button.position-absolute:focus .fab {
    color: rgba(255,255,255,1);
}
#contribution-detail aside a {
    color: #000000;
}
#contribution-detail aside a:hover,
#contribution-detail aside a:focus {
    color: #D0003A;
}
#contribution-detail p {
    margin-bottom: 2rem;
}
#contribution-detail .overlay .overlay-content {
    border-top-right-radius: 50px;
    -moz-border-radius-topright: 50px;
    -webkit-border-top-right-radius: 50px;
}
#contribution-detail .overlay a {
    color: #fff;
}
#contribution-detail .overlay a .fa-inverse {
    color: #238B59;
    font-size: 1.8rem;
}

/**
 * contribution image gallery widget
 **/
.image-gallery-fullscreen-modal .btn-link {
    color: rgba(255,255,255,0.5);
}
.image-gallery-fullscreen-modal .btn-link:hover,
.image-gallery-fullscreen-modal .btn-link:focus {
    color: rgba(255,255,255,1);
}
.image-gallery-fullscreen-modal .px-md-5 * {
    font-size: small;
}
.image-gallery-fullscreen-modal .modal-content {
    max-height: 100vh;
}

.image-gallery-fullscreen-modal img {
    max-height: calc(100vh - 200px);
}

/**
 *  contribution / videos
 **/
.gs-video-wrapper .fa-play-circle.position-absolute {
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    color: #D0003A !important;
}
.gs-video-wrapper .confirm-hover {
    background-color: rgba(0,0,0,0.9);
    width: 100%;
    height: 100%;
    left: 0;
    top: 100%;
    font-size: 0.9rem;
    -webkit-transition: top ease-in-out 0.3s;
    -moz-transition: top ease-in-out 0.3s;
    -ms-transition: top ease-in-out 0.3s;
    -o-transition: top ease-in-out 0.3s;
    transition: top ease-in-out 0.3s;
}
.gs-video-wrapper .confirm-hover p {
    font-size: 0.8rem !important;
    margin-bottom: 0;
}
.gs-video-wrapper .confirm-hover a {
    color: #fff !important;
    text-decoration: underline;
}
.gs-video-wrapper .confirm-hover .btn-link {
    color: #fff;
    font-size: 1.375rem;
}
.gs-video-wrapper .confirm-hover a:hover,
.gs-video-wrapper .confirm-hover .btn-link:hover,
.gs-video-wrapper .confirm-hover .btn-link:focus {
    color: #16A085 !important;
}
.gs-video-wrapper:hover .confirm-hover {
    top:0;
}
.gs-video-wrapper span.font-weight-bold > span {
    color: #16A085;
}
.video-modal .modal-header {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-color: #16A085;
    background-color: #16A085;
}
.video-modal .modal-header .btn-close {
    background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23FFF'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
}
.video-modal .modal-title {
    color: #fff;
}
.video-modal .modal-body {
    padding: 0;
}

/**
 * short message
 **/
.gs-infinite-content {
    width: 100%;
    overflow-x: hidden;
}
.gs-infinite-wrapper .btn  {
    padding: 0 !important;
    width: 45px;
    height: 45px;
}
.gs-infinite-wrapper .btn i {
    font-size: 1.75rem;
}
.gs-infinite-prev {
    left: -5%;
}
.gs-infinite-next {
    right: -5%;
}
.gs-infinite-item {
    min-height: 240px;
}
.gs-infinite-item a:hover .h4 {
    text-shadow: 1px 1px 1px rgba(0,0,0,0.5);
}
.gs-infinite-item h4,
.gs-infinite-item .h4 {
    font-family: "Inria Serif", Arial, sans-serif;
    font-weight: 700;
    font-size: 1.375rem;
    text-align:justify;
    -moz-hyphens: auto;
    -o-hyphens: auto;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
}
.gs-infinite-item .rounded {
    border-radius: 10px !important;
    -moz-border-radius: 10px !important;
    -webkit-border-radius: 10px !important;
    overflow-x: hidden;
}

/**
 * donations banner
 **/
#donations-banner p {
    font-size: 2rem;
    line-height: initial;
    margin-bottom: 2rem;
}

/**
 * locations teaser
 **/
#locations-teaser {
    height: 580px;
    overflow: hidden;
}

/**
 * about / facts
 **/
#project_keyfact-list-page .icon-wrapper {
    height: 120px;
}
#project_keyfact-list-page .card-text {
    padding-right: 50px;
}

/**
 * newsletter / archive
 **/
#project_newsletter-list-page .list-group .list-group-item {
    border-bottom-width: 2px;
    border-bottom-color: #D3D3D3;
}
#project_newsletter-list-page .list-group .list-group-item:first-child {
    border-top: solid 2px #D3D3D3;
}
#project_newsletter-list-page .list-group .list-group-item:hover * {
    color: #238B59;
}

/**
 * press releases
 **/
#project_pressrelease-list-page .list-group h3 {
    font-family: "Sen", Arial, sans-serif;
    font-size: 1.25rem;
}
#project_pressrelease-list-page .list-group {
    margin-bottom: 2.5rem;
}
#project_pressrelease-list-page .list-group-item-action a {
    text-decoration: underline;
}

/**
 * press photo
 */
.pressphoto-fullscreen-modal .pressphoto-block,
.pressphoto-fullscreen-modal .pressphoto-block .text-center div {
    max-width: 80vw;
    max-height: 80vh;
    margin-top: -150px;
}

/**
 * events
 **/
.c-date-block {
    font-family: "Inria Serif", Arial, sans-serif;
    font-weight: 700;
    line-height: 1;
    color: #D0003A;
    text-align: center;
}
.c-date-block > div.m-auto span {
    font-size: 180px;
    opacity: 0.12;
}
.c-date-block > div.position-absolute {
    font-size: 40px;
    left: 0;
    width: 100%;
    top:41%;
}

.event-list-item .btn-link:hover,
.event-list-item .btn-link:focus {
    color: #238B59 !important;
}
.event-list-item .btn-default i {
    color: #238B59;
}
.event-list-item .btn-default:hover i,
.event-list-item .btn-default:focus i {
    color: #fff;
}
.event-list-item .break-lines {
    white-space: pre-wrap;
}
.event-extras {
    height: 0;
    overflow: hidden;
}

/**
 * associations
 **/
#project_association-list-page .card h4,
#associations-widget .card h4 {
    font-family: "Sen", Arial, sans-serif;
}
#project_association-list-page img,
#associations-widget img,
#project_association-list-page h4,
#associations-widget h4 {
    -webkit-transition-property: color, transform;
    -webkit-transition-duration: .3s;
    -webkit-timing-function: ease-in-out;
    -moz-transition: all ease-in-out .3s;
    -ms-transition: all ease-in-out .3s;
    -o-transition: all ease-in-out .3s;
    transition: all .3s ease-in-out;
}
#project_association-list-page .card:hover img,
#associations-widget .card:hover img {
    transform: scale(1.15);
    -webkit-transform: scale(1.15);
}
#project_association-list-page .card:hover h4,
#associations-widget .card:hover h4 {
    color: #D0003A;
}

/**
 * downloads
 **/
#project_pressdownload-list-page .accordion .card-header h4,
#project_pressdownload-list-page .accordion .card-header button i,
#project_pressdownload-list-page .accordion .card-header button:hover i,
#project_pressdownload-list-page .accordion .card-header button:focus i {
    color: #000;
}
#project_pressdownload-list-page .accordion .card-header:hover h4,
#project_pressdownload-list-page .accordion .card-header:hover button i,
#project_pressdownload-list-page .accordion .show .card-header h4,
#project_pressdownload-list-page .accordion .show .card-header button i,
#project_pressdownload-list-page .accordion .card-body a {
    color: #238B59;
}
#project_pressdownload-list-page .accordion .card-body a span:last-child {
    color: #000 !important;
    font-size: smaller;
}
#project_pressdownload-list-page .accordion .card-body a:hover,
#project_pressdownload-list-page .accordion .card-body a:focus {
    color: #D0003A;
}

/**
 * team
 **/
#teams_teammembership-list-page .card div.text-muted p {
    margin-bottom: 0;
    font-size: smaller;
}
.gs-team-detail h2,
.gs-team-detail .h2 {
   color: #D0003A;
    margin-bottom: 1.5rem !important;
}
.gs-team-list-item {
    padding-bottom: 50px;
    border-bottom: solid 1px #ccc;
}

/**
 * press photos
 **/
#project_pressphoto-list-page .card-body small {
    font-size: 1rem;
}
#project_pressphoto-list-page .card-body b small {
    font-weight: normal;
}
#project_pressphoto-list-page .overlay .overlay-content {
    border-top-right-radius: 30px;
    -moz-border-radius-topright: 30px;
    -webkit-border-top-right-radius: 30px;
}
#project_pressphoto-list-page .overlay a {
    color: #fff;
}
#project_pressphoto-list-page .overlay a .fa-inverse {
    color: #238B59;
    font-size: 1.8rem;
}

/**
 * google map
 **/
#associations-map-widget {
    overflow: hidden;
    height: 0;
}
#associations-map-widget.show {
    -webkit-box-shadow: 0px -3px 17px 1px rgba(0,0,0,0.5);
    -moz-box-shadow: 0px -3px 17px 1px rgba(0,0,0,0.5);
    box-shadow: 0px -3px 17px 1px rgba(0,0,0,0.5);
}
#associations-map-widget .map-overlay,
#associations-map-widget .google-map {
    width: 100%;
    height: 600px;
    top: 0;
}
#associations-map-widget .map-preview-img {
    left: 0;
    top:0;
    width:100%;
    height: 600px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover !important;
    -webkit-filter: blur(7px);
    -moz-filter: blur(7px);
    -o-filter: blur(7px);
    -ms-filter: blur(7px);
    filter: blur(7px);
}
#associations-map-widget .map-preview-img,
#associations-map-widget .google-map {
    #-webkit-box-shadow: inset 0px 0px 4px 8px rgba(0,0,0,0.45);
    #-moz-box-shadow: inset 0px 0px 4px 8px rgba(0,0,0,0.45);
    #box-shadow: inset 0px 0px 4px 8px rgba(0,0,0,0.45);
}
#associations-map-widget .map-preview-content {
    z-index: 10;
}
#associations-map-widget .btn-link.position-absolute {
    top: 2%;
    right: 0;
    z-index: 15;
    color: #000;
    opacity: 0.5;
}
#associations-map-widget .btn-link.position-absolute:hover {
    opacity: 1;
}

/**
 * joboffers
 **/
#project_joboffer-list-page h3 {
    font-family: "Sen", Arial, sans-serif;
    font-size: 1.5rem;
}
#project_joboffer-list-page .list-group {
    margin-bottom: 2.5rem;
}

/**
 * joboffers / filter
 **/
#joboffers-filter label.mb-3 {
    font-family: "Inria Serif", Arial, sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: #238B59;
}
#joboffers-filter input[type="text"],
#joboffers-filter select {
    background-color: transparent;
}
#joboffers-filter .form-check-input {
    border-color: #000;
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
}
#joboffers-filter .form-check-input:checked {
    background-color: #000;
    border-color: #000;
}
#joboffers-filter .btn-light {
    border-color: #ababab;
    color: #ababab;
    background-color: transparent;
}
#joboffers-filter .btn-light:hover,
#joboffers-filter .btn-light:focus {
    background-color: #fff;
    color: #238B59 !important;
    border-color: #238B59;
}

/**
 * newsletter subscription
 **/
#newsletter-subscription input.form-control {
    box-shadow: none;
    border-left: none;
    border-right: none;
    border-top: none;
    border-bottom: solid 2px #8e8e8e;
    font-size: 1.25rem;
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
}
#newsletter-subscription button span {
    color: #238B59;
}
#newsletter-subscription button:hover span,
#newsletter-subscription button:focus span {
    color: #fff;
}

/**
 * share buttons
 **/
.share-buttons a > i {
    color: #000;
}
.share-buttons .btn:hover,
.share-buttons .btn:focus,
.share-buttons .btn:hover i,
.share-buttons .btn:focus i{
    color: #238B59;
}

/**
 *  forms
 **/
.form-control {
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
}
input[type="text"],
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="phone"],
input[type="number"],
input[type="password"],
select.form-control,
select.custom-select,
select {
    padding: 0.75rem;
}
input[type="text"],
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="phone"],
input[type="number"],
input[type="password"],
select.form-control,
select.custom-select,
textarea.form-control,
select {
    width: 100%;
    border:solid 1px #000 !important;
    border-left-color: transparent !important;
    border-top-color: transparent !important;
    border-right-color: transparent !important;
    background-color: #fff;
    color: #000;
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    -o-box-shadow: none;
    -webkit-transition: all ease-in-out 0.5s;
    -moz-transition: all ease-in-out 0.5s;
    -ms-transition: all ease-in-out 0.5s;
    -o-transition: all ease-in-out 0.5s;
    transition: all ease-in-out 0.5s;
}
textarea.form-control {
    border: solid 1px #000 !important;
}
input[type="text"]:hover,
input[type="text"]:focus,
.form-calculator input[type="text"]:hover,
.form-calculator input[type="text"]:focus,
.form-inline input[type="text"]:hover,
.form-inline input[type="text"]:focus,
input[type="email"]:hover,
input[type="email"]:focus,
input[type="tel"]:hover,
input[type="tel"]:focus,
input[type="phone"]:hover,
input[type="phone"]:focus,
input[type="number"]:hover,
input[type="number"]:focus,
input[type="password"]:hover,
input[type="password"]:focus,
select:hover,
select:focus,
textarea:hover,
textarea:focus,
select.form-control:hover,
select.form-control:focus,
textarea.form-control:hover,
textarea.form-control:focus {
    background-color: #fff;
    border-bottom-color: #238B59 !important;
    color: #000;
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    -o-box-shadow: none;
}
textarea.form-control:hover,
textarea.form-control:focus {
    border-color: #238B59 !important;
}
.form-control.is-invalid {
    border-color: #f33 !important;
}
.invalid-feedback ul {
    color: #f33;
    padding: 0;
    margin: 0 0 0.2em 0;
    list-style-type: none;
    font-size: smaller;
}
label {
    font-weight: normal;
    font-size: 1.15rem;
    margin-bottom: 0.65rem;
}
label.required:after {
    content: ' *'
}

/**
 * forms / reset BS5 behaviour
 **/
textarea:focus,
textarea.form-control:focus,
input.form-control:focus,
input[type=text]:focus,
input[type=password]:focus,
input[type=email]:focus,
input[type=number]:focus,
input[type=checkbox]:focus,
input[type=text].form-control:focus,
input[type=password].form-control:focus,
input[type=email].form-control:focus,
input[type=tel].form-control:focus,
input[contenteditable].form-control:focus,
button:focus,
.btn:focus {
    box-shadow: inset 0 0 0 #fff !important;
}

/**
 *  content / contact / form
 **/
.contact-form form {
    margin: 50px 0 100px;
    display: flow-root;
}
.contact-form .mb-3 {
    margin-bottom: 2rem !important;
}
.contact-form form label {
    display: none;
}
.contact-form form div.mb-3:nth-child(6) label {
    display: inherit;
    padding-left: 0.75rem;
}
.contact-form .form-check label {
    display: inherit;
    color: #757575;
    font-size: 70%;
}
.contact-form .form-check-input:checked {
    background-color: #238B59;
    border-color: #238B59;
}

/**
 * site buttons
 **/
#aside-buttons {
    position: fixed;
    right: 25px;
    bottom: 150px;
    z-index: 1000;
}
#aside-buttons > div > div {
    background-color: #238B59;
    color: #238B59;
    height: 60px;
    border-radius: 30px;
    width: 60px;
    float: right;
    overflow: hidden;
}
#aside-buttons > div > div:hover {
    background-color: #D0003A;
    color: #D0003A;
    cursor: pointer;
}
#aside-buttons a,
#aside-buttons a > i {
    color: #fff;
}
#aside-buttons .fa-stack,
.scroll-top-btn .fa-stack {
    font-size: 1.875rem;
    width: 60px;
}

/**
 * customized responsive print style for www.volkssolidaritaet.de
 * last modified: 2021-07-20
 * based on bootstrap v5.0.2
 */
@media print {
    html, body {
        border: 1px solid white;
        height: 95%;
        page-break-after: avoid;
        page-break-before: avoid;
    }
    #site-footer *,
    aside *,
    ul.nav,
    h2.text-pink,
    #aside-buttons,
    .btn,
    #btn-back,
    .scroll-top-btn {
        display: none !important;
        height: 0 !important;
    }
    #site-wrapper {
        display: block;
        min-height: auto;
        margin: 0 auto;
        padding: 0;
    }
    #site-header.fixed-top {
        position: relative !important;
        border-bottom: solid 1px #000;
        box-shadow: none !important;
        -webkit-box-shadow: none !important;
        -moz-box-shadow: none !important;
    }
    #site-header .border-bottom {
        border-bottom: none !important;
    }
    #site-content > div {
        padding-top: 0;
    }
    .col-md-8 {
        width: 100% !important;
        font-size: smaller;
    }
    .col-md-8 .pe-md-5 {
        padding-right: 0 !important;
    }
    h2 {
        font-size: 24px !important;
    }
    img {
        border-radius: 0 !important;
        -webkit-border-radius: 0 !important;
        -moz-border-radius: 0 !important;
    }
}

/**
 * customized responsive stylesheet for www.volkssolidaritaet.de
 * last modified: 2021-07-20
 * based on bootstrap v5.0.2
 */
@media (min-width: 992px) {
    /* navigation */
    .c-only {
        display: none;
    }
}

@media (max-width: 1480px) {
    /* home slider */
    #homeslider.carousel .carousel-caption.caption-right,
    #homeslider.carousel .carousel-caption.caption-left {
        width: 33%;
    }
}

@media (max-width: 1380px) {
    /* jobs slider */
    #jobslider.carousel,
    #jobslider.carousel .carousel-inner .carousel-item,
    #jobslider.carousel .carousel-inner .carousel-item .bg-img {
        height: 600px;
    }

    /* search modal */
    #global-search-dialog .modal-header {
        width: 75%;
    }
}

@media (max-width: 1200px) {
    /* home slider */
    #homeslider.carousel .carousel-caption.caption-right,
    #homeslider.carousel .carousel-caption.caption-left {
        width: 40%;
    }

    /* jobs slider */
    #jobslider.carousel,
    #jobslider.carousel .carousel-inner .carousel-item,
    #jobslider.carousel .carousel-inner .carousel-item .bg-img {
        height: 550px;
    }

    /* footer / top */
    #footer-top .d-xl-flex .w-75 {
        width: 100% !important;
    }
    #footer-top .d-xl-flex div:last-child {
        margin: 2rem 0;
    }

    /* footer */
    #site-footer .container {
        max-width: 100% !important;
    }
    #site-footer,
    #footer-top,
    #footer-btm {
        height: auto;
    }
    #site-wrapper  {
        margin: 0 auto;
        padding: 0;
    }
}

@media (max-width: 1140px) {
    /* jobs slider */
    #jobslider.carousel,
    #jobslider.carousel .carousel-inner .carousel-item,
    #jobslider.carousel .carousel-inner .carousel-item .bg-img {
        height: 500px;
    }
}
@media (max-width: 991px) {
    /* home slider */
    #homeslider.carousel,
    #homeslider.carousel .carousel-inner .carousel-item,
    #homeslider.carousel .carousel-inner .carousel-item .bg-img {
        height: 700px;
        max-height: 100vh;
        min-height: auto;
    }
    #homeslider.carousel .carousel-caption.caption-right,
    #homeslider.carousel .carousel-caption.caption-left {
        width: 60%;
    }
    #homeslider.carousel .carousel-caption h2 {
        font-size: 1.65rem;
    }
    .carousel .carousel-control-next,
    .carousel .carousel-control-prev {
        width: 10%;
    }
    .carousel .carousel-control-next-icon,
    .carousel .carousel-control-prev-icon {
        width: 42px;
        height: 42px;
    }

    /* jobs slider */
    #jobslider.carousel,
    #jobslider.carousel .carousel-inner .carousel-item,
    #jobslider.carousel .carousel-inner .carousel-item .bg-img {
        height: 420px;
    }

    /* press photo */
    .pressphoto-fullscreen-modal .pressphoto-block,
    .pressphoto-fullscreen-modal .pressphoto-block .text-center div {
        margin-top: 0;
    }
    .pressphoto-block div:first-child {
        margin-top: 0 !important;
    }

    /* search modal */
    #global-search-dialog .modal-header {
        width: 100%;
        margin: inherit;
    }
    #global-search-dialog .modal-header .btn-close {
        margin: 0 1rem 0;
    }
}

@media (max-width: 820px) {
    /* typo */
    h2, .h2 {
        font-size: 1.5rem;
    }

    /* home slider */
    #homeslider.carousel,
    #homeslider.carousel .carousel-inner .carousel-item,
    #homeslider.carousel .carousel-inner .carousel-item .bg-img {
        height: 650px;
    }
    #homeslider.carousel .carousel-caption.caption-right,
    #homeslider.carousel .carousel-caption.caption-left {
        width: 66%;
    }
    #homeslider.carousel .carousel-caption h2 {
        font-size: 1.5rem;
    }

    /* jobs slider */
    #jobslider.carousel,
    #jobslider.carousel .carousel-inner .carousel-item,
    #jobslider.carousel .carousel-inner .carousel-item .bg-img {
        height: 360px;
    }
}

@media (max-width: 768px) {
    /* container */
    #site-content {
        #min-height: auto;
    }
    #site-content > div {
        padding-top: 73px;
    }
    .container .w-75.mx-auto {
        width: 100% !important;
    }
    aside {
        border-top: solid 1px #dee2e6;
        padding-top: 2rem;
    }
    aside .border-start {
        border-left: none !important;
    }

    /* image wrapper */
    .img-wrapper-rounded-top-left.img-wrapper-small,
    .img-wrapper-rounded-top-left.img-wrapper-small img {
        border-top-right-radius: 20px;
        -moz-border-radius-topright: 20px;
        -webkit-border-top-right-radius: 20px;
    }
    .img-wrapper-rounded-top-left,
    .img-wrapper-rounded-top-left img {
        border-top-right-radius: 40px;
        -moz-border-radius-topright: 40px;
        -webkit-border-top-right-radius: 40px;
    }
    .img-wrapper-rounded-bottom-left.img-wrapper-large,
    .img-wrapper-rounded-bottom-left.img-wrapper-large img {
        border-bottom-left-radius: 80px;
        -moz-border-radius-bottomleft: 80px;
        -webkit-border-bottom-left-radius: 80px;
    }

    /* site header */
    #site-header .container {
        max-width: 100%;
    }

    /* home slider */
    #homeslider {
        border-bottom: solid 1px #efefef;
    }
    #homeslider.carousel {
        margin-top: 0;
    }
    #homeslider.carousel,
    #homeslider.carousel .carousel-inner .carousel-item,
    #homeslider.carousel .carousel-inner .carousel-item .bg-img {
        max-height: initial;
    }
    #homeslider.carousel,
    #homeslider.carousel .carousel-inner .carousel-item {
        height: auto;
        min-height: 600px;
    }
    #homeslider.carousel .carousel-caption,
    #homeslider.carousel .carousel-caption.caption-center,
    #homeslider.carousel .carousel-caption.caption-left,
    #homeslider.carousel .carousel-caption.caption-right {
        position: relative;
        top: auto;
        right: auto;
        bottom: auto;
        left: auto;
        transform: none;
        width: 100%;
    }
    #homeslider.carousel .carousel-caption {
        padding: 1.5rem;
        text-align: center !important;
    }
    #homeslider.carousel,
    #homeslider.carousel .carousel-inner .carousel-item {
    }
     #homeslider .img-wrapper-rounded-bottom-left.img-wrapper-large,
     #homeslider .img-wrapper-rounded-bottom-left.img-wrapper-large img {
        border-bottom-left-radius: 0;
        -webkit-border-bottom-left-radius: 0;
        -moz-border-radius-bottomleft: 0;
     }
    #homeslider.carousel .carousel-inner .carousel-item .bg-img {
        height: 400px;
        background-position-y: 0;
    }
    #homeslider.carousel-control-next,
    #homeslider.carousel-control-prev {
        align-items: center;
        justify-content: center;
    }
    #homeslider.carousel .carousel-control-next-icon,
    #homeslider.carousel .carousel-control-prev-icon {
        margin: auto 0 1rem 0;
    }

    /* jobs slider */
    #jobslider.carousel,
    #jobslider.carousel .carousel-inner .carousel-item,
    #jobslider.carousel .carousel-inner .carousel-item .bg-img {
        height: 320px;
    }
    #jobslider.carousel .carousel-inner .carousel-item .img-wrapper-rounded-bottom-left.img-wrapper-large {
        border-bottom-left-radius: 0;
        -moz-border-radius-bottomleft: 0;
        -webkit-border-bottom-left-radius: 0;
    }

    /* filter nav */
    #contributions-widget ul.nav .nav-link,
    .subnav.nav .nav-link {
        margin-bottom: 1rem;
        background-color: #efefef;
        padding: .25rem 0.5rem !important;
    }
    .subnav.nav .nav-item {
        margin-right: 1rem !important;
    }

    /* contributions filter widget */
    #contributions-widget .card {
        margin-bottom: 2.5rem;
    }

    /* contributions detail */
    #contribution-detail h1 {
        font-size: 2rem;
    }
    #contribution-detail img {
        border-top-right-radius: 20px;
        -webkit-border-top-right-radius: 20px;
        -moz-border-radius-topright: 20px;
    }

    /* short messages widget */
    .gs-infinite-prev {
        left: -7%;
    }
    .gs-infinite-next {
        right: -7%;
    }

    /* team */
    #teams_teammembership-list-page .card div.text-muted p {
        font-size: inherit;
    }

    /* google map */
    #locations-teaser {
        height: auto;
        padding-bottom: 2rem;
    }
    #locations-teaser .d-xxl-flex .btn {
        display: block !important;
        margin: 1rem auto;
        width: 100%;
    }

    /* footer */
    #site-footer {
        font-size: 0.9rem;
    }
}

@media (max-width: 620px) {
    /* home slider */
    #homeslider.carousel .carousel-inner .carousel-item .bg-img {
         height: 360px;
    }
}

@media (max-width: 575px) {
    /* typo */
    body {
        font-size: 1rem;
    }
    h2, .h2 {
        font-size: 1.275rem;
    }
    h2.text-pink, .h2.text-pink {
        font-size: 1.5rem;
    }
    h3, .h3 {
        font-size: 1.2rem;
    }

     /* breadcrumbs */
    .breadcrumbs {
        font-size: 0.85rem;
    }
    .breadcrumb-item + .breadcrumb-item::before {
        float: none;
        margin: 0 0.75rem;
    }

    /* container */
    #site-content > div {
        padding-top: 68px;
    }

    /* modals */
    .modal > .modal-fullscreen .btn-close {
        margin-top: 0;
        margin-right: 0;
        font-size: 40px;
    }

    /* privacy widget */
    #privacy-settings-dialog .modal-title {
        font-size: 1.1rem;
    }
    #privacy-settings-dialog .modal-body > p {
        line-height: 1.375rem;
    }

    /* search */
    #global-search-dialog .input-group {
        margin-top: 0.5rem;
    }

    /* navigation */
    .offcanvas-header {
        padding-bottom: 1rem !important;
    }

    /* image wrapper */
    .img-wrapper-rounded-top-left.img-wrapper-small,
    .img-wrapper-rounded-top-left.img-wrapper-small img {
        border-top-right-radius: 15px;
        -moz-border-radius-topright: 15px;
        -webkit-border-top-right-radius: 15px;
    }
    .img-wrapper-rounded-top-left,
    .img-wrapper-rounded-top-left img {
        border-top-right-radius: 20px;
        -moz-border-radius-topright: 20px;
        -webkit-border-top-right-radius: 20px;
    }
    .img-wrapper-rounded-bottom-left.img-wrapper-large,
    .img-wrapper-rounded-bottom-left.img-wrapper-large img {
        border-bottom-left-radius: 36px;
        -moz-border-radius-bottomleft: 36px;
        -webkit-border-bottom-left-radius: 36px;
    }

    /* home slider */
    #homeslider.carousel .carousel-inner .carousel-item .bg-img {
        height: 320px;
        border-radius: 0 !important;
    }

    /* jobs slider */
    #jobslider.carousel {
        margin-top: 21px;
    }
    #jobslider.carousel,
    #jobslider.carousel .carousel-inner .carousel-item,
    #jobslider.carousel .carousel-inner .carousel-item .bg-img {
        height: 260px;
    }

    /* accordions */
    .accordion .card-header h4 {
        font-size: 1rem;
        text-align: left;
    }
    .accordion .card-header button .fa-2x {
        font-size: 1.25rem;
    }

    /* contribution detail */
    #contribution-detail h1 {
        font-size: 1.5rem;
    }

    /* contribution image gallery widget */
    .image-gallery-fullscreen-modal .col-lg-7 {
        padding-left: 0;
        padding-right: 0;
    }
    .image-gallery-fullscreen-modal .btn-link {
        padding-left: 0.25rem;
        padding-right: 0.25rem;
    }

    /* contributions filter widget */
    #contributions-widget ul.nav,
    .subnav.nav {
        margin-bottom: 1.5rem !important;
    }

    /* short messages widget */
    .gs-infinite-prev,
    .gs-infinite-next {
        z-index: 10;
    }
    .gs-infinite-prev {
        left: 0;
    }
    .gs-infinite-next {
        right: 0;
    }
    .gs-infinite-item h4,
    .gs-infinite-item .h4 {
        font-size: 1.2rem;
    }

    /* dontations banner */
    #donations-banner p {
        font-size: 1.375rem;
    }

    /* footer bottom links */
    #footer-btm a {
        display: block;
        font-size: 1.1rem;
        padding: 0.25rem 0;
    }
    #footer-btm span {
        display: none;
    }

    /* site buttons */
    #aside-buttons {
        bottom: 110px;
    }
    #aside-buttons > div > div {
        height: 40px;
        width: 40px;
        cursor: pointer;
    }
    #aside-buttons .fa-stack,
    .scroll-top-btn .fa-stack {
        font-size: 1.25rem;
        width: 40px;
    }
}

@media (max-width: 480px) {
    /* container */
    #site-content > div {
        padding-top: 54px;
    }

    /* site header */
    #site-header #logo {
        width: 200px;
    }
    #site-header .btn-link {
        padding: 0;
    }

    /* home slider */
    #homeslider.carousel .carousel-inner .carousel-item .bg-img {
        height: 260px;
    }

    /* jobs slider */
    #jobslider.carousel,
    #jobslider.carousel .carousel-inner .carousel-item,
    #jobslider.carousel .carousel-inner .carousel-item .bg-img {
        height: 220px;
    }

    /* contributions filter widget */
    #contributions-widget .card {
        margin-bottom: 2rem;
    }
}

@media (max-width: 420px) {
    /* home slider */
    #homeslider.carousel .carousel-inner .carousel-item .bg-img {
        height: 220px;
    }

    /* jobs slider */
    #jobslider.carousel,
    #jobslider.carousel .carousel-inner .carousel-item,
    #jobslider.carousel .carousel-inner .carousel-item .bg-img {
        height: 180px;
    }

    /* joboffers / list */
    #project_joboffer-list-page h3 {
        font-size: 1.2rem;
    }

    /* joboffers / filter */
    #select_foa label {
        font-size: 1rem;
    }

    /* article / share buttons */
    .share-buttons {
        font-size: 1rem;
    }
    .share-buttons i {
        display: block;
    }
}

@media (max-width: 400px) {
    /* offcanvas navigation */
    .offcanvas-body {
        padding-left: 2rem !important;
        padding-right: 2rem !important;
    }

    /* job offers / list */
    #project_joboffer-list-page .list-group-item-action p.justify-content-md-start > span {
        display: block;
        margin-left: 0 !important;
    }
}

@media (max-width: 380px) {
    /* typo */
    body {
        font-size: 0.9rem;
    }
    h2, .h2 {
        font-size: 1.15rem;
    }
    #contribution-detail h1,
    h1.h2,
    h2.text-pink, .h2.text-pink {
        font-size: 1.475rem;
    }
    h3, .h3 {
        font-size: 1.1rem;
    }

    /* image wrapper */
    .img-wrapper-rounded-top-left.img-wrapper-small,
    .img-wrapper-rounded-top-left.img-wrapper-small img {
        border-top-right-radius: 10px;
        -moz-border-radius-topright: 10px;
        -webkit-border-top-right-radius: 10px;
    }
    .img-wrapper-rounded-top-left,
    .img-wrapper-rounded-top-left img {
        border-top-right-radius: 15px;
        -moz-border-radius-topright: 15px;
        -webkit-border-top-right-radius: 15px;
    }
    .img-wrapper-rounded-bottom-left.img-wrapper-large,
    .img-wrapper-rounded-bottom-left.img-wrapper-large img {
        border-bottom-left-radius: 25px;
        -moz-border-radius-bottomleft: 25px;
        -webkit-border-bottom-left-radius: 25px;
    }

    /* site header */
    #site-header #logo {
        width: 180px;
        margin-left: 0;
    }

    /* breadcrumbs */
    .breadcrumbs {
        font-size: 0.75rem;
        display: block !important;
    }
    .breadcrumb-item + .breadcrumb-item::before {
        float: none;
        margin: 0 0.5rem;
    }

    /* home slider */
    #homeslider.carousel .carousel-inner .carousel-item .bg-img {
        height: 200px;
    }
    .carousel .carousel-control-next,
    .carousel .carousel-control-prev {
        width: 15%;
    }
    .carousel .carousel-control-next-icon,
    .carousel .carousel-control-prev-icon {
        width: 36px;
        height: 36px;
    }

    /* jobs slider */
    #jobslider.carousel,
    #jobslider.carousel .carousel-inner .carousel-item,
    #jobslider.carousel .carousel-inner .carousel-item .bg-img {
        height: 110px;
    }

    /* jobs / list */
    #joboffers-filter label.mb-3 {
        font-size: 1.25rem;
    }
    #project_joboffer-list-page h3 {
        font-size: 1.1rem;
        font-weight: 500;
    }
}
ul.subnav .nav-item:last-child { display: none; }