@font-face {
	font-family: 'Source Sans Pro';
	font-weight: 400;
	font-style: normal;
	font-display: swap;
	src: local(''),
			url('../fonts/source-sans-pro/source-sans-pro-v21-latin-regular.woff2') format('woff2'),
			url('../fonts/source-sans-pro/source-sans-pro-v21-latin-regular.woff') format('woff');
	}

@font-face {
	font-family: 'Source Sans Pro Italic';
	font-weight: 400;
	font-style: italic;
	font-display: swap;
	src: local(''),
			url('../fonts/source-sans-pro/source-sans-pro-v21-latin-italic.woff2') format('woff2'),
			url('../fonts/source-sans-pro/source-sans-pro-v21-latin-italic.woff') format('woff');
	}

@font-face {
	font-family: 'Source Sans Pro Bold';
	font-weight: 600;
	font-style: normal;
	font-display: swap;
	src: local(''),
			url('../fonts/source-sans-pro/source-sans-pro-v21-latin-600.woff2') format('woff2'),
			url('../fonts/source-sans-pro/source-sans-pro-v21-latin-600.woff') format('woff');
	}

@font-face {
	font-family: 'Source Sans Pro Bold Italic';
	font-weight: 600;
	font-style: italic;
	font-display: swap;
	src: local(''),
			url('../fonts/source-sans-pro/source-sans-pro-v21-latin-600italic.woff2') format('woff2'),
			url('../fonts/source-sans-pro/source-sans-pro-v21-latin-600italic.woff') format('woff');
	}

@font-face {
	font-family: 'Source Sans Pro Bolder';
	font-weight: 700;
	font-style: normal;
	font-display: swap;
	src: local(''),
			url('../fonts/source-sans-pro/source-sans-pro-v21-latin-700.woff2') format('woff2'),
			url('../fonts/source-sans-pro/source-sans-pro-v21-latin-700.woff') format('woff');
	}

@font-face {
	font-family: 'Source Sans Pro Bolder Italic';
	font-weight: 700;
	font-style: normal;
	font-display: swap;
	src: local(''),
		url('../fonts/source-sans-pro/source-sans-pro-v21-latin-700italic.woff2') format('woff2'),
		url('../fonts/source-sans-pro/source-sans-pro-v21-latin-700italic.woff') format('woff');
}

.custom-file-input::file-selector-button,
.custom-file-input::-webkit-file-upload-button {
	font-size: 0.75rem;
	font-weight: bold;
	color: #fff;
	background-color: #024992;
	border: none;
	outline: none;
	padding: 0.25rem 0.5rem;
	border-radius: 1.5rem;
}
.custom-file-input {
	margin: 0.3rem 0;
	background-color: transparent;
}

#bewerbungsformular-2717-bewerbung-als {
	margin-bottom: 0.2rem;
}
html .registration-date-field {
	margin-top:8px;
	margin-bottom: 10px;
}
.registration-form-checkbox {
	float: left;
	width: 100%;
	margin-bottom: 10px;
}
.checkbox-label,
.form__element--required.RadioButton::before,
#bewerbungsformular-2717-fieldset-4 .form__element--required::before {
	display: none;
}
html .registration-radio {
	margin-left: 10px;
}
#kontaktformular-2414-fieldset-2 .form__group .form__element {
	width: calc(50% - 3.125%);
}
html span.error {
	color: #ff0000;
}
#kontaktformular-2414-fieldset-2 > .form__group:first-child {
	background: red !important;
}

#kontaktformular-2414-fieldset-1 .form__element,
#kontaktformular-2414-fieldset-2 .form__group:first-child .form__element {
	width: calc(100% - 3.125%);
}

.error.help-block {
	color: #d00;
}

.form__element--long {
	width: calc(100% - 2.5%);
}


div.uniform--select, div.uniform--select span, div.uniform--checkbox span, div.uniform--radio span, div.uploader, div.uploader span.action, div.button, div.search__button, div.alertbar__button, div.button span, div.search__button span, div.alertbar__button span {
	background: #fff;
}

div.uniform--radio {
	margin-right: 4em;
}

div.uniform--radio span {
	border: 2px solid #004992;
	border-radius: 50%;
	background: #fff;
}

div.inputs-list div.form-group {
	margin-bottom: 1em;
}

div.inputs-list div.form-group > div.radio {
	float: left;
	width: 50%;
	padding-right: 1em;
	padding-bottom: 0.5em;
}
.event-registration-row hr {
	float: left;
	width: 100%;
}
.registration-radio .radio,
#kontaktformular-2414-radiobutton-2 div.form-group > div.radio {
	width: auto !important;
}
.form__element--double .form__checkboxes>li, .form__element--double .form__radios>li {
	position: relative;
 }
.clearer {
	clear: both;
	height: 0;
	font-size: 0;
	overflow: hidden;
}

section.form.form--application a {
	text-decoration: underline;
	color: #024992;
}
section.form.form--application a:hover {
	text-decoration: none;
}

#kontaktformular-2414-fieldset-3 > legend {
	display: none;
}

#kontaktformular-2414-fieldset-3 > .form__group > .form__element {
	/*width: calc(100% - 3.125%);*/
}

#kontaktformular-2414-fieldset-4 {
	display: none;
}
#kontaktformular-2414-fieldset-4 .form__element {
	width: calc(100% - 3.125%);
}

.form fieldset {
	min-width: 0;
}

@media (max-width: 768px) {
	input[type="date"]:invalid:before {
		content: attr(placeholder);
	}
}

.pageteaser {
	display: flex;
	flex-direction: column;
}

.pageteaser__image {
	margin-top:auto;
}

.pageteaser__image--left img,.pageteaser__image img {
	width:100%;
}

.pressteaser__list,
.pressteaser__list:before {
	background-color: #e83f96;
}
.pressteaser__list .pressteaser__list--mail:before,
.pressteaser__list .pressteaser__list--mail a {
	color: #ffffff;
}

.news__list-item {
	display: flex;
	border-bottom: 1px solid #ccc;
	padding-bottom: 1rem;
	margin-bottom: 1rem;
}
.news__list-item .col-3 {
	flex: 0 0 25%;
	max-width: 25%;
}
.news__list-item .col-9 {
	flex: 0 0 75%;
	max-width: 75%;
}

.news__list-item .news__content .inner {
	padding: 0 1rem;
}
.news__list-item .news__content .inner .news__date,
.news__list-item .news__content .inner .news__title,
.news__list-item .news__content .inner .news__body {
	margin-bottom: 1rem;
}

.news__show-more {
	text-align: center;
	margin-top: 1rem;
}

.news__detail {
	display: flex;
	margin: 2rem auto;
}
.news__detail .col-3 {
	flex: 0 0 25%;
	max-width: 25%;
}
.news__detail .col-9 {
	flex: 0 0 75%;
	max-width: 75%;
}
.news__detail .col-12 {
	flex: 0 0 100%;
	max-width: 100%;
}
.news__detail .news__detail-headlines .inner {
	padding: 0 1rem;
}
.news__detail .news__detail-headlines .inner .news__detail-title .pageheader__title {
	text-align: left;
	margin-top: 1rem;
	font-size: 48px;
}
.news__detail .news__detail-headlines .inner .back__link {
	margin-top: 1rem;
}

.sitefooter__wrapper {
	display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
}
.sitefooter__wrapper .sitefooter__section {
	display: flex !important;
    flex-flow: column nowrap;
}
.sitefooter__wrapper .sitefooter__section .sitefooter__footer {
	margin-top: auto;
}
.news__detail-content p{
	margin: 1em 0;
}

.audio-player {
	width: auto;
    max-width: 100%;
    min-width: 320px;
    margin: 0 16px;
}

.audio-embed-item {
	display: none;
	width: 0;
	height: 0;
	opacity: 0;
}

.controls {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 8px;
}

.play-pause-button {
    width: 40px;
    height: 40px;
    background-color: #fabd3d; /* Green background */
    border: none; /* Remove borders */
    color: white; /* White text */
    text-align: center; /* Center the text (if any) */
    text-decoration: none; /* Remove underline */
    display: inline-block; /* Get it to display inline */
    font-size: 12px; /* Increase font size */
    margin: 0; /* Some margin */
    cursor: pointer; /* Pointer/hand icon */
    border-radius: 50%; /* Rounded corners */
    position: relative; /* Position relative for the triangle */
	font-size: 0;
	line-height: 0;
}

.play-pause-button::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 0;
    height: 0;
    border-left: 15px solid white;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
	margin-left: 2px;
}

.play-pause-button.pause::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 5px;
    height: 20px;
    background-color: white;
	border: none;
	margin-left: -5px;
}
.play-pause-button.pause::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 5px;
    height: 20px;
    background-color: white;
	border: none;
	margin-left: 5px;
}

.progress {
    height: 5px;
    background-color: #ccc;
    margin-top: 10px;
}

.progress-bar {
    width: 0;
    height: 100%;
    background-color: #fabd3d;
}

.timing-block {
	display: flex;
	justify-content: space-between;
	margin-top: 0;
}

.current-time, .total-time {
    margin-top: 10px;
}

.frame-indent {
	margin-top: 32px;
	margin-bottom: 32px;
}

.frame-indent .ce-textpic.ce-left.ce-intext.ce-nowrap {
	background-color: #f5f5f5;
	padding: 16px 0 8px 0;
	border-radius: 8px;
}

.modal {
	display: none;
	position: fixed;
	z-index: 1000;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: auto;
	background-color: rgba(0, 0, 0, 0.5);
}

.modal-content {
	background-color: #fff;
	margin: 15% auto;
	padding: 20px;
	border: 1px solid #888;
	width: 80%;
	max-width: 750px;
	border-radius: 16px;
}

.close-button {
	color: #aaa;
	float: right;
	font-size: 28px;
	font-weight: bold;
	cursor: pointer;
}

.close-button:hover,
.close-button:focus {
	color: black;
	text-decoration: none;
	cursor: pointer;
}

.popup-logo{
	max-width: 12rem;
	padding-bottom: 2rem;
}

.popup-banner-content{
	padding-bottom: 1.25rem;
	h2{
		font-size: 1.5rem;
		margin-bottom: 0.75rem;
		font-weight: 700;
	}
}

@media screen and (min-width: 1200px) {
	.news__detail{
		margin-left: 5px;
	}
}

@media screen and (max-width: 768px) {
	.frame-indent {
		margin-left: 0%;
		margin-right: 0%;
	}
	.frame-indent .ce-textpic.ce-left.ce-intext.ce-nowrap {
		background-color: transparent;
		padding: 0;
		border-radius: 0;
	}
}

@media screen and (max-width: 576px) {
	.ce-left .ce-gallery figure {
		width: 100%;
	}
	.ce-left .ce-gallery,
	.ce-column {
        float: none;
        margin: 0;
        width: 100%;
	}
	.ce-left .ce-bodytext {
		margin: 0 16px;
	}
}
@media (min--moz-device-pixel-ratio: 1.3), (-o-min-device-pixel-ratio: 2.6 / 2), (-webkit-min-device-pixel-ratio: 1.3), (min-device-pixel-ratio: 1.3), (min-resolution: 1.3dppx) {
	.socialnetworks__item--linkedin:before {
		background-image: url('../images/retinaicons-sb31f7222d4.png');
		background-position: 0 -273px;
		-moz-background-size: 58px auto;
		-o-background-size: 58px auto;
		-webkit-background-size: 58px auto;
		background-size: 58px auto;
		height: 58px;
		width: 58px;
	}
}
.socialnetworks__item--linkedin:before {
	background-image: url('../images/retinaicons-sb31f7222d4.png');
	background-position: 0 -273px;
	-moz-background-size: 58px auto;
	-o-background-size: 58px auto;
	-webkit-background-size: 58px auto;
	background-size: 58px auto;
	height: 58px;
	width: 58px;
}
.uc-embedding-wrapper {
	z-index: 10;
}

.mainnav__item--donation .subnav__title {
	border-color: #eb5a3e;
}
.mainnav__item--donation>a:before{
	content: "";
	background-image: url(../images/herz_weiß-correct.svg);
	background-size: 60%;
	background-position: center 60%;
	background-repeat: no-repeat;
	opacity: 1;
	background-color:#eb5a3e;
}
.siteheader--active .mainnav__item--donation>a:before{
	background-color: #cdcdcd;
}
.metanav__item--spende:before{
	content: " ";
	background-image: url(../images/herz_rot-correct.svg);
	background-size: 80%;
	background-position: center 65%;
	background-repeat: no-repeat;
	opacity: 1;
}
@media (max-width: 1023px){
	.metanav__item--spende:before{
		width: 30px;
		height: 30px;
	}
}
@media (min-width: 1024px){
	.no-touch .metanav__item.metanav__item--spende:hover:before {
		background-image: url(../images/herz_weiß-correct.svg);
		opacity: 1;
		transition: all 0.2s ease-in-out;
	}
}
.termin-buchen{
	position: fixed;
	bottom: 24px;
	right: 24px;
	color: white;
	background-color: #004992;
	z-index: 9999;
	border-radius: 13px 0 13px 0;
	width: auto;
}
.termin-buchen a{
	font-size: 1rem;
	text-transform: uppercase;
	padding: 10px;
	border:0;
	border-radius: 13px 0 13px 0;
	transition:padding ease-in-out 0.3s;
}
@media(min-width: 700px){
	.termin-buchen{
	right: 10%;}
}
@media(min-width: 1024px){
.termin-buchen{
	bottom: 50%;
	right: 0;
	border-radius: 13px 0 0 0 ;
	transition: ease-in-out 0.3s;
	overflow: hidden;
	width: auto;
	}
	.termin-buchen a:hover{
		padding: 10px 20px 10px 10px;
	}
}

.uc-embedding-container{
	height: 100% !important;
	width: 100% !important;
	min-height:100% !important;
	max-width: 100% !important;
}
.w-10  { width: 10% !important;  height: auto; }
.w-20  { width: 20% !important;  height: auto; }
.w-30  { width: 30% !important;  height: auto; }
.w-40  { width: 40% !important;  height: auto; }
.w-50  { width: 50% !important;  height: auto; }
.w-60  { width: 60% !important;  height: auto; }
.w-70  { width: 70% !important;  height: auto; }
.w-80  { width: 80% !important;  height: auto; }
.w-90  { width: 90% !important;  height: auto; }
.w-100 { width: 100% !important; height: auto; }
@media screen and (max-width: 768px) {
	.w-10,.w-20, .w-30, .w-40, .w-50, .w-60, .w-70, .w-80, .w-90, .w-100 {
		width: 100% !important;
		height: auto;
	}
}

.mainnav__item--home_ronald > a::before {
	background-color: #fabd3d;
	content: url(../images/icons/home.svg);
	font-size: 22px;
	object-fit: contain;
}

.mainnav__item--home_ronald.mainnav__item--home_ronald:not(:hover) span {
	color: rgb(87, 87, 87);
}

.siteheader--active .mainnav__item--home_ronald > a::before {
	background-color: #cdcdcd;
}

.sitefooter__title--donation::before {
	content: url(../images/herz_weiß-correct.svg) !important;
	filter: invert(1);
}

p a {
	color: #004992;
	text-decoration: underline;
}

.news__detail {
	margin-inline: 12rem;

	@media screen and (max-width: 1400px) {
		margin-inline: unset;
		margin-right: 12rem;
	}

	@media screen and (max-width: 1023px) {
		margin-right: unset;
		margin-inline: 3rem;

		&:has(.news__detail-image) {
			flex-direction: column;
			justify-content: stretch;
			.news__detail-image {
				max-width: 100%;
				max-height: 500px;
			}

			.news__detail-headlines {
				max-width: 100%;
			}
		}
	}
}

.col-3 .news__detail-image {
	min-width: 300px;
}

@media screen and (max-height: 849px) {
	.mainnav__item::before {
		height: 2vh !important;
	}
}

.pressteaser__list::before {
	background-color: #e73f96 !important;
}

.pressteaser__list {
	background-color: #e73f96 !important;
}
