/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Jan 30 2026 | 13:58:05 */
/** Fact Counter **/

.elementor-counter-title {
    margin-top: 10px;
}

/** Fact Counter Ende **/



.menu-icon {
	width:20px;
	height:20px;
	display:inline;
	margin-right:0.5em;
}


/* Default (white background) */
.logo {
  transition: color 0.3s ease, fill 0.3s ease;
}

/* On alt sections (lightblue, header image, etc.) */
.logo.alt .elementor-icon svg{
  color: #fff;
  fill: #fff!important;
}

.overlay { pointer-events:none; opacity:0; transition: opacity 0.5s ease-out;}
.overlay.is-open { pointer-events:auto; opacity:1; }
.arrow-btn {
  transition: transform 0.5s ease-out;
  cursor:pointer;
}

.arrow-btn.is-rotated {
  transform: rotate(180deg); /* von rechts auf links */
}

.portrait img{
	aspect-ratio:4/5;
	min-height:100%
}
.narrow img{
	aspect-ratio:3/5;
	min-height:100%
}
.square img{
	aspect-ratio:1/1;
	
}
main {
	overflow-x:hidden;
}

::selection {
	background-color:#217BA0;
	color:#fff;
}
.e-con.e-con>.e-con-inner>.elementor-widget::selection {
	width:auto;
	background:transparent;
}

.elementor-select-wrapper select {
    border-width: 2px 2px 2px 2px !important;
    border-radius: 50px 50px 50px 50px !important;
} 

/* --- Checkbox Styling für Elementor Formular mit Klasse .b-frm --- */

/* Label-Wrapper vorbereiten */
.b-frm .elementor-field-subgroup .elementor-field-option,
.b-frm .elementor-field-subgroup .elementor-acceptance-field {
  position: relative;
  padding-left: 32px; /* Platz für Kästchen */
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  user-select: none;
}

/* Native Checkbox unsichtbar, aber bedienbar (barrierefrei) */
.b-frm .elementor-field-subgroup .elementor-field-option input[type="checkbox"], .b-frm .elementor-field-subgroup .elementor-acceptance-field input[type="checkbox"] {
position: absolute;
width: 25px;
height: 25px;
margin: 0px;
padding: 20px;
border: 0;
white-space: nowrap;
left: 0;
opacity: 0;
z-index: 2
}

/* Sichtbares Kästchen (ungecheckt) */
.b-frm .elementor-field-subgroup .elementor-field-option::before,
.b-frm .elementor-field-subgroup .elementor-acceptance-field::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 25px;
  height: 25px;
  border: 2px solid #217BA0; 
  border-radius: 50px;
  background: transparent;     /* kein Hintergrund */
  box-sizing: border-box;
}

/* Weißes Häkchen (Pseudo auf Label) – standard unsichtbar */
.b-frm .elementor-field-subgroup .elementor-field-option::after,
.b-frm .elementor-field-subgroup .elementor-acceptance-field::after {
  content: "";
  position: absolute;
  left: 7px;
  top: 50%;
  transform: translateY(-50%) rotate(45deg) scale(0);
  width: 10px;
  height: 14px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  opacity: 0;
  transition: transform .12s ease, opacity .12s ease;
  box-sizing: border-box;
}

/* Checked Zustand mit :has() (für moderne Browser inkl. Safari 16+) */
.b-frm .elementor-field-subgroup .elementor-field-option:has(input[type="checkbox"]:checked)::before,
.b-frm .elementor-field-subgroup .elementor-acceptance-field:has(input[type="checkbox"]:checked)::before {
  background: #217BA0;
  border-color: #217BA0;
}
.b-frm .elementor-field-subgroup .elementor-field-option:has(input[type="checkbox"]:checked)::after,
.b-frm .elementor-field-subgroup .elementor-acceptance-field:has(input[type="checkbox"]:checked)::after {
  transform: translateY(-50%) rotate(45deg) scale(1);
  opacity: 1;
}

/* Fallback-Klasse (.is-checked), falls JS-Hilfe nötig ist */
.b-frm .elementor-field-subgroup .elementor-field-option.is-checked::before,
.b-frm .elementor-field-subgroup .elementor-acceptance-field.is-checked::before {
  background: #217BA0;
  border-color: #217BA0;
}
.b-frm .elementor-field-subgroup .elementor-field-option.is-checked::after,
.b-frm .elementor-field-subgroup .elementor-acceptance-field.is-checked::after {
  transform: translateY(-50%) rotate(45deg) scale(1);
  opacity: 1;
}

/* Fokus-Outline für Tastatur-Nutzer */
.b-frm .elementor-field-subgroup .elementor-field-option:focus-within::before,
.b-frm .elementor-field-subgroup .elementor-acceptance-field:focus-within::before {
  box-shadow: 0 0 0 3px rgba(33,123,160,0.12);
}

ol.number {
  list-style: none;
  counter-reset: list;
  padding-left:0;
  margin: 0;
}

ol.number li {
    counter-increment: list;
    position: relative;
    margin: 0;
}


ol.number li::before {
  content: counter(list, decimal-leading-zero) " ";
	margin-right: 0.5em;
}

.marquee li {
    margin-bottom: .35em;
    list-style: none;
	list-style-image: url("/wp-content/uploads/2025/09/biofidus-list.svg")
}

@media screen and (min-width:1024px){
	.m-sldr .elementor-swiper-button {
		display:none!important;
	}
	.m-sldr .e-widget-swiper{
		max-width:1024px!important;
	}
}

@media screen and (min-width:1440px){
	.m-sldr .elementor-swiper-button {
		display:none!important;
	}
	.m-sldr .e-widget-swiper{
		max-width:1024px!important;
	}
}

@media screen and (min-width:2400px){

	.m-sldr .e-widget-swiper{
		max-width:1250px!important;
	}
}



.elementor-author-box__avatar img {
border-radius: 6px;
height: 30px!important;
width: 30px!important;
}

.elementor-widget-author-box .elementor-author-box__name {
	color:#217BA0
}

.news-head .elementor-widget-author-box .elementor-author-box__name {
	color:#fff;
}

.txt_wrp{
    text-wrap: balance;
    text-wrap:pretty
}