@charset "UTF-8";
/**
* Check out variables.css for easy customization of colors, typography, and other repetitive properties
*/
:root {
  --bs-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='3' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
  --bs-navbar-toggler-border-color: #ffffff;
  --bs-accordion-inner-border-radius: 0;
  --bs-accordion-border-radius:0;
  --bs-accordion-btn-icon:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-plus-lg" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M8 2a.5.5 0 0 1 .5.5v5h5a.5.5 0 0 1 0 1h-5v5a.5.5 0 0 1-1 0v-5h-5a.5.5 0 0 1 0-1h5v-5A.5.5 0 0 1 8 2"/></svg>');
}

:root {
  --bs-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='3' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
  --bs-navbar-toggler-border-color: #ffffff;
  --bs-navbar-active-color: #2d2d2d;
  --bs-accordion-inner-border-radius: 0;
  --bs-accordion-border-radius:0;
}

:root {
  --bs-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='3' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
  --bs-navbar-toggler-border-color: #ffffff;
  --bs-accordion-inner-border-radius: 0;
  --bs-accordion-border-radius:0;
  --bs-accordion-btn-icon:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-plus-lg" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M8 2a.5.5 0 0 1 .5.5v5h5a.5.5 0 0 1 0 1h-5v5a.5.5 0 0 1-1 0v-5h-5a.5.5 0 0 1 0-1h5v-5A.5.5 0 0 1 8 2"/></svg>');
  --bs-accordion-border-color: transparent;
}

html {
	hyphens: auto !important;
}
p, li {
  font-size: 19.5px;
  line-height: 32px;
}

strong {
	font-weight: 600;
}
#heroOFF {
  min-height: 8em;
  margin-top: 127px;
}

@media (max-width: 800px) {
  #heroOFF {
    margin-top: 260px;
  }
}

@media (max-width: 800px) {
  #header {
    height: 260px;
  }
}

@media (max-width: 800px) {
  #header .container-fluid.px-0.d-flex.align-items-start.justify-content-between.contentMaxWidth{
    flex-wrap: wrap !important;
  }
}

.leftBox {
  padding-top: 2.1em;
  margin-left: 2vw;
   width: 33% !important;
}
@media (max-width: 800px) {
.leftBox {
 	width: calc(50% - 2vw) !important;
	order: 2 !important;
}
}

.logoBox {
  width: 33% !important;
}
@media (max-width: 800px) {
  .logoBox {
      width: 100% !important;
      order: 1 !important;
    }
}

.logoBox a {
  width: 100% !important;
  display: inline-block;
  text-align: center;
}

.rightBox {
  padding-top: 2.1em;
  width: 33% !important;
  min-width: 0 !important;
  margin-right: 2vw;
}

@media (min-width: 1920px) {
	margin-right: 2em;
}

@media (max-width: 1350px) {
  .rightBox {
    padding-top: 1.25em;
  }
}
@media (max-width: 800px) {
  .rightBox {
      width: calc(50% - 2vw) !important;
      order: 3 !important;
    }
}
@media (max-width: 1350px) {
  #notdienstBox {
    text-align: right;
  }
}

@media (max-width: 1350px) {
  #notdienstBox .phoneBox {
    display: inline-block;
    width: 100%;
  }
}
#notdienstBox .phoneBox a {
  color: #fff;
  display: inline-block;
}

@media (max-width: 1350px) {
  #notdienstBox .phoneBox .phoneIcon {
    margin: 0;
  }
}

.impressionen {
	width:1487px !important;
	margin: 0 0 0 auto;
}
#notdienstBox .content {
  padding: 2em;
  min-width: 10em;
  color: #2d2d2d;
  background-color: #fff;
  margin-top: 2.25em;
  border: 0px solid #555;
}
#notdienstBox .content h4 {
  color: #CB091E;
  font-size: 1.1em;
}

.dream .text-black {
	padding: 1.5em;
	display: flex;
	flex-direction: column;
  	justify-content: center;
}

@media (max-width: 1280px) {
	.dream .text-black {
        	padding: 1em !important;
	}
}

@media (max-width: 991px) {
        .dream .text-black {
                padding: 2em !important;
        }
}

.dream figure img  {
        width: 100%;
}

@media (max-width: 1280px) {
	.dream .text-black h3 {
		font-size: 1.5em !important;
		margin-bottom: 0.5em !important;
	}
}

@media (max-width: 1024px) {
        .dream .text-black h3 {
                font-size: 1.25em !important;
                imargin-bottom: 0.5em !important;
        }
}

.dream .text-black p .phoneIcon, .dream .text-black p .emailIcon {
	display: inline-block;
}
@media (max-width: 1280px) {
        .dream .text-black p .phoneIcon, .dream .text-black p .emailIcon {
                font-size: 1em !important;
        }
}

.kontaktbox {
	padding: 50px;
	margin-left: 24px;
}

@media (max-width: 991px) {
	.kontaktbox {
        	margin-top: 50px;
		margin-left: 0;
	}
}
.kontaktbox h4, .kontaktbox p, .kontaktbox a {
	color: #ffffff !important;
}
.kontaktbox .container p {
	font-size: 16px !important;
	line-height: 26px;
}
.kontaktbox .container a:hover {
	color: #CB091E !important;
}

.kontaktbox.defaultBg .container strong {
        font-weight: 600 !important;
	font-size: 16px;
}

form#kontakt-111 div.form-group:nth-child(9) {
	width: 30px !important;
	padding-right: 0 !important;
	

}
form#kontakt-111 div.form-group:nth-child(9) label span{
        display: none;

}

.clearfix {
	width: 275px;
	float: left;
}

.clearfix .container {
        width: 260px !important;
        margin-left: 0 !important;
        padding: 1em 0 0 0 !important;
}

.clearfix .container p {
      	font-size: 16px !important;
	line-height:26px !important;
        margin: 6px  0 0 !important;
       
}

.clearfix .container p a { 
	color: #CB091E !important;
}

.clearfix .container p a:hover {
        color: #000 !important;
}


.frame-type-form_formframework select {
  appearance: auto;
}

.leftSideBar {
  top: 30em;
  width: 2em;
}
.leftSideBar .icon {
	background-color: #fff;
  width: 40px;
  height: 40px;
  margin-bottom: 0.5em;
 border: 1px solid #fff;
}

@media (max-width: 800px) {
  #desktopNav {
    top: 260px;
  }
}

.leftSideBar .icon.facebook {
  background-image: url(/fileadmin/bilder/Home/Social_Media_Icons/icon-facebook.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}


.leftSideBar .icon.facebook:hover {
  background-image: url(/fileadmin/bilder/Home/Social_Media_Icons/icon-facebook-hover.svg);
}

.leftSideBar .icon.instagram {
  background-image: url(/fileadmin/bilder/Home/Social_Media_Icons/icon-instagram.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}


.leftSideBar .icon.instagram:hover {
  background-image: url(/fileadmin/bilder/Home/Social_Media_Icons/icon-instagram-hover.svg);
}
.leftSideBar .icon.youtube {
  background-image: url(/fileadmin/bilder/Home/Social_Media_Icons/icon-youtube.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}


.leftSideBar .icon.youtube:hover {
  background-image: url(/fileadmin/bilder/Home/Social_Media_Icons/icon-youtube-hover.svg);
}

#c5 .owl-item {
	min-height: 0 !important;
}

/* Hintergrundbox (Hero-Bereich) */
#c5 .heroBackBox,
#c351 .heroBackBox  {
  padding-bottom: 2.5em;
  padding-left: 2.3em;
  position: relative; /* Ermöglicht Platzierung des Inhalts darüber */
  width: 100% !important;
  aspect-ratio: 2/1;
  background-size: 100% !important; /* Bild füllt den Bereich aus */
  background-position:center !important; /* Bild bleibt zentriert */
  background-repeat: no-repeat; /* Kein Wiederholen des Bildes */
  display: flex; /* Für zentrierten Inhalt */
  align-items: end; /* Vertikale Zentrierung des Inhalts */
  justify-content: left; /* Horizontale Zentrierung des Inhalts */
}

@media (max-width: 488px) {
	#c5 .heroBackBox {
		padding-bottom: 0.5em !important;
	}
}

#c351 .heroBackBox  {
	aspect-ratio: 2.325/1;
}
.heroFrontBox {
    position: static; /* Positionierung aufheben */
    margin-top: 0 !important;
  }

@media (max-width: 488px) {
	.heroFrontBox {
    		padding: 0!important
  	}	
}

#c132 {
	padding: 24px;
}
#c349 #portfolio.row > *  {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

#c349 #portfolio img {
	padding: 6px;
}
#tx_indexedsearch-searchbox {
  display: inline-block !important;
  }

#tx_indexedsearch {
  display: inline-block;
  float: left;
  width: 100%;
  border: none;
  color: #fff;
}

@media screen and (max-width: 640px) {
  #tx_indexedsearch {
    width: 100%;
  }
}

#tx_indexedsearch .input-group {
  width: 100%;
}

#tx_indexedsearch #tx-indexedsearch-searchbox-sword {
  background-color: #fff;
  border: 1px solid #CB091E;
  color: #2d2d2d;
  font-family: "Ubuntu", sans-serif;
  padding: 0.5rem;
  margin-right: 12px;
  width: calc(100% - 160px);
  float: left;
}

#tx_indexedsearch #tx-indexedsearch-searchbox-button-submit {
  font-family: "Ubuntu", sans-serif;
  padding: 8px 32px;
  border: 1px solid #CB091E;
  background: #CB091E;
  color: #fff;
  font-weight: 500;
  float: right;
  transition: background-color 1s, color 1s, transform 1s;
}

#tx_indexedsearch #tx-indexedsearch-searchbox-button-submit:hover {
  color: #CB091E;
  background: #fff;
  transition: background-color 1s, color 1s, transform 1s;
}

.tx-indexedsearch-res {
	margin-bottom: 32px;
}

.tx-indexedsearch-res h3 {
	font-size: 1.5em !important;
	font-weight: 600;
	margin-bottom: 0.25em !important;
}

.tx-indexedsearch-res h3 .tx-indexedsearch-icon {
	display: none;
}

.tx-indexedsearch-res h3 a {
	color: #CB091E;
}

.tx-indexedsearch-res h3 a:hover {
        color: #2d2d2d;
}

#tx_indexedsearch legend,
#tx_indexedsearch p,
#tx_indexedsearch label,
#tx_indexedsearch .btn-light {
  display: none;
}

.tx-indexedsearch-rules,
.tx-indexedsearch-info,
.tx-indexedsearch-info-sword {
	display:none;
}

.homeleistung {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.homeleistung .frame-layout-50 {
  width: 33.33333333%;
}


@media (max-width: 1400px) {
  .homeleistung .frame-layout-50 {
    width: 50%;
  }
}

@media (max-width: 925px) {
  .homeleistung .frame-layout-50 {
    width: 100%;
  }
}
.numbers .numberfield {
	margin-bottom: 24px;
}
.numbers .databox {
	border: 1px solid #fff;
	border-bottom: 0px solid #fff;
}

#searchLayer {
  padding: 2em 0em;
  background-color: #2D2D2D !important;
}
#searchLayer form {
  width: 100%;
}
#searchLayer .tx-indexedsearch-rules, #searchLayer .tx-indexedsearch-info-noresult {
  display: none;
}
#searchLayer .searchWrapper {
  padding: 1em;
}
#searchLayer .inputText {
  width: 42%;
  min-width: 30em;
  border: 1px solid #ddd;
  background-color: transparent;
  margin-right: 1.7em;
  color: #fff;
  padding-left: 0.8em;
}
#searchLayer .btn {
  background-color: #CB091E;
  border: 1px solid transparent;
  color: #fff;
  text-transform: uppercase;
  font-weight: 600;
  padding: 1em 2.2em;
}
#searchLayer .btn:hover {
  border: 1px solid #ddd;
  background-color: #2d2d2d;
}

.formDisclaimerText {
  font-size: 0.7em;
}
@media screen and (max-width: 991px) {
	form#karriere-139  {
		margin-bottom: 50px;
	}
}
form#karriere-139 #karriere-139-checkbox-1 {
  position: relative;
  top: 3px;
  margin-right: 1em;
}
form#karriere-139 input[type=checkbox] {
  width: 1.3em;
  height: 1.3em;
  border: 1px solid #000;
}
form#karriere-139 .btn-toolbar {
  justify-content: flex-end;
}
form#karriere-139 div.form-group:nth-child(9) {
  margin-bottom: 2em;
}

form#karriere-139 div.form-group:nth-child(10) {
        width: 30px !important;
        padding-right: 0 !important;
        float: left;
}

span.required {
	display: none;
}
form#karriere-139 div.form-group:nth-child(8) div.input,
form#karriere-139 div.form-group:nth-child(10) div.input {
  border-bottom: none !important;
}

form#karriere-139 div.form-group:nth-child(8) {
	margin: 50px 0 !important;
}

.frame-type-form_formframework label.form-label[for=karriere-139-fileupload-1] {
	display: block;
	width: 210px;
	padding: 52px 0 24px;
	float: left;
	font-family: "Ubuntu", sans-serif;
	font-size: 18px;
	font-weight: 600;
}

#karriere-139-fileupload-1::file-selector-button {
	background-color: #CB091E;
	color: #fff;
	border: none;
	padding: 24px 32px !important;
	margin-right: 12px;
	width: calc(100% - 225px);
	font-family: "Ubuntu", sans-serif;
	text-transform: uppercase;
	font-weight: 600;
}

#karriere-139-fileupload-1::file-selector-button:hover {
	background-color: #2d2d2d;
}

#karriere-139-fileupload-1 {
	font-family: "Ubuntu", sans-serif;
        font-size: 18px;
        font-weight: 400;
}

/*contact form
div.form-group:nth-child(9)
div.form-group:nth-child(8)

.greyBg .frame-type-form_formframework div.input {
  border-bottom: 1px solid #CB091E;
}
*/
form#kontakt-111 #kontakt-111-checkbox-1 {
  position: relative;
  top: 3px;
  margin-right: 1em;
}
form#kontakt-111 input[type=checkbox] {
  width: 1.3em;
  height: 1.3em;
  border: 1px solid #000;
}
form#kontakt-111 .btn-toolbar {
  justify-content: flex-end;
}
form#kontakt-111 div.form-group:nth-child(8) {
  margin-bottom: 2em;
}
form#kontakt-111 div.form-group:nth-child(9) div.input,
form#kontakt-111 div.form-group:nth-child(10000) div.input {
  border-bottom: 0px;
}
form#kontakt-111 div.form-group:nth-child(9) {
  width: 70%;
  float: left;
  padding-right: 2em;
}

.accordion h2 {
  margin-bottom: 0em !important;
}

h4 {
  margin-bottom: 1.5rem;
  font-weight: 300;
  line-height: 1.5;
}

.owl-dots {
  margin-top: -83px;
  z-index: 1200;
  position: absolute;
  left: 0.5em;
}
.owl-dots .owl-dot span {
  border-radius: 0 !important;
  background: #2d2d2d !important;
  width: 3em !important;
  height: 0.3em !important;
}
.owl-dots .owl-dot.active span {
  background: #CB091E !important;
}

.defaultBg .owl-dots {
  margin-left: 3em;
  position: relative;
}
.defaultBg .owl-dots .owl-dot span {
  border-radius: 0.5em !important;
  background: #fff !important;
  width: 0.4em !important;
  height: 0.4em !important;
}
.defaultBg .owl-dots .owl-dot.active span {
  width: 1.2em !important;
  background: #CB091E !important;
}

#c123 .owl-carousel .owl-item img {
  width: auto !important;
}
#c123 .ce-gallery {
  position: absolute;
  left: 0em;
  top: 0em;
}
#c123 .ce-bodytext {
  background-color: #fff;
  margin-top: 3.5em;
  margin-left: 3.5em;
  padding: 5em 3em 3em 3em;
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="66.441" height="55" viewBox="0 0 66.441 55"><path id="Pfad_785" data-name="Pfad 785" d="M67.179-6.5V8.718q0,11.966-2.834,19.628a28.84,28.84,0,0,1-9.814,13.015,37.981,37.981,0,0,1-15.8,7.137V36.323q6.193-3.569,7.032-9.552H38.734V-6.5Zm-38,0V8.718q0,11.966-2.834,19.628a28.84,28.84,0,0,1-9.814,13.015A37.981,37.981,0,0,1,.738,48.5V36.323q6.3-3.569,7.137-9.552H.738V-6.5Z" transform="translate(-0.738 6.501)" fill="%23cb091e"></path></svg>');
  background-position: right 2em bottom 2em;
  background-repeat: no-repeat;
  background-size: 4em; /* Anpassung der SVG-Größe (optional) */
}
#c123 .ce-bodytext p {
  font-size: 1.4em;
  color: #2d2d2d !important;
}
/
.portfolio-item {
  padding: 1em;
}

.container-fluid,
.container-fluid.fullWidth {
  padding: 0 !important;
  max-width: 1920px !important;
}

.contentSwitcher .switchBtn {
  cursor: pointer;
  border: 1px solid #CB091E;
  background-color: #CB091E;
  color: #fff;
  font-weight: 600;
  padding: 1em 0.45em;
  text-align: center;
  width: 100%;
  font-size: 1em;
}
.contentSwitcher .switchBtn:hover {
  background-color: #2d2d2d;
  color: #fff;
}
.contentSwitcher .switchBtn:not(.active) {
  background-color: #fff !important;
  color: #CB091E !important;
}
.contentSwitcher .item {
  padding-top: 3em;
}
.contentSwitcher .item:not(.firstItem) {
  display: none;
}

.arrowIconRight {
  margin: 0;
}
.arrowIconRight:before {
  position: relative;
  top: 10px;
  left: 0px;
  content: " ";
  display: inline-block;
  width: 2em;
  height: 1.5em;
  color: #fff;
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="%23FFFFFF" class="bi bi-arrow-right-circle" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M1 8a7 7 0 1 0 14 0A7 7 0 0 0 1 8m15 0A8 8 0 1 1 0 8a8 8 0 0 1 16 0M4.5 7.5a.5.5 0 0 0 0 1h5.793l-2.147 2.146a.5.5 0 0 0 .708.708l3-3a.5.5 0 0 0 0-.708l-3-3a.5.5 0 1 0-.708.708L10.293 7.5z"/></svg>');
  background-size: 1.4rem 1.4rem;
  background-repeat: no-repeat;
}

.noListSymbole {
  list-style: none;
  padding-left: 0;
}

.redBorder {
  padding-left: 1em;
  border-left: 1px solid #CB091E;
  font-weight: bold;
}

.frame-type-provider_image figure {
  margin-bottom: 0;
}

.accordion-item:first-of-type > .accordion-header .accordion-button,
.accordion-item:last-of-type > .accordion-header .accordion-button.collapsed {
  border-radius: 0;
}

.breadcrumbWrapper {
  padding: 1.7em 0;
  background-color: #2d2d2d;
  color: #CB091E;
}
.breadcrumbWrapper .segment {
  font-size: 1.2em;
  padding: 0 1em;
}
.breadcrumbWrapper .segment.first {
  padding-left: 0 !important;
}
.breadcrumbWrapper a, .breadcrumbWrapper span {
  color: #fff;
  font-weight: lighter !important;
}

.accordion-item {
  margin-bottom: 0.7em;
  border: 0;
}
.accordion-item .accordion-button.collapsed:after {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="%23CB091E" class="bi bi-plus-lg" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M8 2a.5.5 0 0 1 .5.5v5h5a.5.5 0 0 1 0 1h-5v5a.5.5 0 0 1-1 0v-5h-5a.5.5 0 0 1 0-1h5v-5A.5.5 0 0 1 8 2"/></svg>');
}
.accordion-item .accordion-button:not(.collapsed) {
  box-shadow: none;
}
.accordion-item .accordion-button {
  background-color: #2d2d2d !important;
  color: #fff;
  font-size: 0.4em;
  padding: 1.2em;
  border-bottom: 0px solid #f0f !important;
}
.accordion-item .accordion-button:after {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="%23CB091E" class="bi bi-dash" viewBox="0 0 16 16"><path d="M4 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 4 8"/></svg>');
}
.accordion-item .accordion-button:before {
  border-left: 1px solid #CB091E;
  content: " ";
  display: inline-block;
  width: 2px;
  height: 1em;
  padding-right: 0.8em;
}

.defaultBg .accordion-item {
  background-color: transparent;
  border-bottom: 1px solid #fff;
  margin-bottom: 0em;
}
.defaultBg .accordion-item:last-of-type {
  border-bottom: 1px solid #fff;
  border-radius: 0;
}
.defaultBg .accordion-item .accordion-button.collapsed:after {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="%23FFFFFF" class="bi bi-plus-lg" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M8 2a.5.5 0 0 1 .5.5v5h5a.5.5 0 0 1 0 1h-5v5a.5.5 0 0 1-1 0v-5h-5a.5.5 0 0 1 0-1h5v-5A.5.5 0 0 1 8 2"/></svg>');
}
.defaultBg .accordion-item .accordion-button {
  border: 0px solid #f0f;
  background-color: #2d2d2d !important;
  color: #fff;
  font-size: 0.4em;
  padding: 1.2em;
}
.defaultBg .accordion-item .accordion-button:after {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="%23FFFFFF" class="bi bi-dash" viewBox="0 0 16 16"><path d="M4 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 4 8"/></svg>');
}
.defaultBg .accordion-item .accordion-button:before {
  border-left: 0px solid #CB091E;
  content: "";
  display: inline-block;
  width: 0px;
  height: 0em;
  padding-right: 0;
}

#desktopNav {
  max-height: calc(100vh - 127px)
}

@media (max-width: 800px) {
  #desktopNav {
    top: 260px !important;
    max-height: calc(100vh - 260px)
  }
}

#desktopNav .nav-item .nav-link {
  padding: 0rem var(--bs-nav-link-padding-x) 0.3rem var(--bs-nav-link-padding-x) !important;
}
#desktopNav .navbar-nav > .nav-item > a {
  position: relative;
  text-decoration: none;
  color: black; /* Die Farbe des Links */
  display: inline-block; /* Damit das Pseudo-Element sich am Inhalt orientiert */
  padding: 0 0 3px 0; /* Optional: Platz um den Text vergrößern */
}
#desktopNav .navbar-nav > .nav-item > a::before {
  content: "";
  position: absolute;
  left: 0;
  /* top: 0; Der Balken erscheint über dem Text */
  bottom: 0;
  width: 0;
  height: 2px; /* Höhe des roten Balkens */
  background-color: #CB091E; /* Farbe des Balkens */
  transition: width 0.5s ease; /* Animationsdauer und -verhalten */
}
#desktopNav .navbar-nav > .nav-item > a:hover::before {
  width: 3em; /* Breite des Balkens bei Hover */
}
#desktopNav .withSubNav ul {
  margin-left: -30px;
}
#desktopNav .withSubNav ul a {
  display: inline-block;
  position: relative;
  overflow: hidden;
}
#desktopNav .withSubNav ul span {
  display: inline-block;
  transition: transform 0.3s;
  padding-left: 30px;
  padding-right: 30px;
  margin-right: 1em;
}
#desktopNav .withSubNav ul a:hover span {
  transform: translateX(30px);
}
#desktopNav .withSubNav ul a::before {
  padding-left: 10px;
  font-family: bootstrap-icons !important;
  font-size: 1.8em;
  content: "\f135";
  font-weight: bold;
  color: #CB091E;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
  transition: opacity 0.3s, transform 0.3s;
}
#desktopNav .withSubNav ul a:hover::before {
  opacity: 1;
  transform: translateY(-50%) translateX(10px);
}

#c3 a {
  display: inline-block;
  position: relative;
  overflow: hidden;
  color: #fff;
}
#c3 strong {
  display: inline-block;
  transition: transform 0.3s;
  padding-left: 20px;
  margin-right: 1em;
}
#c3 a:hover strong {
  transform: translateX(10px);
}
#c3 a::before {
  font-family: bootstrap-icons !important;
  font-size: 0.8em;
  content: "\f285";
  font-weight: bold;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
  transition: opacity 0.3s, transform 0.3s;
}
#c3 a:hover::before {
  opacity: 1;
  transform: translateY(-50%) translateX(10px);
}

.phoneIcon {
  font-size: 1.2em;
}
.phoneIcon:before {
  /*
  font-family: bootstrap-icons !important;
  font-size: 0.8em;
  content: "\F5B4";

   */
  content: " ";
  display: inline-block;
  height: 1em;
  width: 1.2em;
  margin-right: 0.3em;
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="25" height="25" viewBox="0 0 25 25"><path id="Icon_awesome-phone" data-name="Icon awesome-phone" d="M.907,1.2,5.985.029A1.179,1.179,0,0,1,7.328.708L9.672,6.176a1.169,1.169,0,0,1-.337,1.367L6.376,9.965a18.1,18.1,0,0,0,8.652,8.652l2.422-2.959a1.171,1.171,0,0,1,1.367-.337l5.469,2.344a1.186,1.186,0,0,1,.684,1.348L23.8,24.091A1.171,1.171,0,0,1,22.655,25,22.653,22.653,0,0,1,0,2.343,1.17,1.17,0,0,1,.907,1.2Z" transform="translate(0.001 0.001)" fill="%23fff"/></svg>');
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
  top: 0.25em;
  padding-right: 0.3em;
  color: #CB091E;
  font-size: 1.6em;
}

.phoneIconred:before {
  /*dd
  font-family: bootstrap-icons !important;
  font-size: 0.8em;
  content: "\F5B4";

   */
  content: " ";
  display: inline-block;
  height: 1em;
  width: 1.2em;
  margin-right: 0.3em;
  background-image: url(../img/icons/icon-fon-rot.svg);
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
  top: 0.25em;
  padding-right: 0.3em;
  color: #CB091E;
  font-size: 1.6em;
}

.emailIcon {
  font-size: 1.2em;
}
.emailIcon:before {
  /*
  font-family: bootstrap-icons !important;
  font-size: 0.8em;
  content: "\F5B4";

   */
  content: " ";
  display: inline-block;
  height: 1em;
  width: 1.2em;
  margin-right: 0.3em;
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="25.455" height="20" viewBox="0 0 25.455 20"><path id="Icon_ionic-md-mail" data-name="Icon ionic-md-mail" d="M25.28,5.625H4.674A2.431,2.431,0,0,0,2.25,8.049V23.2a2.431,2.431,0,0,0,2.424,2.424H25.28A2.431,2.431,0,0,0,27.7,23.2V8.049A2.431,2.431,0,0,0,25.28,5.625Zm-.3,5.152-10,6.667-10-6.667V8.352l10,6.667,10-6.667Z" transform="translate(-2.25 -5.625)" fill="%23fff"/></svg>');
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
  top: 0.25em;
  padding-right: 0.3em;
  color: #CB091E;
  font-size: 1.6em;
}

.emailIconred:before {
  /*dd
  font-family: bootstrap-icons !important;
  font-size: 0.8em;
  content: "\F5B4";

   */
  content: " ";
  display: inline-block;
  height: 1em;
  width: 1.2em;
  margin-right: 0.3em;
  background-image: url(../img/icons/icon-mail-rot.svg);
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
  top: 0.25em;
  padding-right: 0.3em;
  color: #CB091E;
  font-size: 1.6em;
}

.greyBg .primaryBg {
  /*white icons*/
}
.greyBg .primaryBg .emailIcon:before {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="25.455" height="20" viewBox="0 0 25.455 20"><path id="Icon_ionic-md-mail" data-name="Icon ionic-md-mail" d="M25.28,5.625H4.674A2.431,2.431,0,0,0,2.25,8.049V23.2a2.431,2.431,0,0,0,2.424,2.424H25.28A2.431,2.431,0,0,0,27.7,23.2V8.049A2.431,2.431,0,0,0,25.28,5.625Zm-.3,5.152-10,6.667-10-6.667V8.352l10,6.667,10-6.667Z" transform="translate(-2.25 -5.625)" fill="%23fff"/></svg>');
}
.greyBg .primaryBg .phoneIcon:before {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="25" height="25" viewBox="0 0 25 25"><path id="Icon_awesome-phone" data-name="Icon awesome-phone" d="M.907,1.2,5.985.029A1.179,1.179,0,0,1,7.328.708L9.672,6.176a1.169,1.169,0,0,1-.337,1.367L6.376,9.965a18.1,18.1,0,0,0,8.652,8.652l2.422-2.959a1.171,1.171,0,0,1,1.367-.337l5.469,2.344a1.186,1.186,0,0,1,.684,1.348L23.8,24.091A1.171,1.171,0,0,1,22.655,25,22.653,22.653,0,0,1,0,2.343,1.17,1.17,0,0,1,.907,1.2Z" transform="translate(0.001 0.001)" fill="%23fff"/></svg>');
}

.greyBg {
  /*red icons*/
}
.greyBg .phoneIcon:before {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="25" height="25" viewBox="0 0 25 25"><path id="Icon_awesome-phone" data-name="Icon awesome-phone" d="M.907,1.2,5.985.029A1.179,1.179,0,0,1,7.328.708L9.672,6.176a1.169,1.169,0,0,1-.337,1.367L6.376,9.965a18.1,18.1,0,0,0,8.652,8.652l2.422-2.959a1.171,1.171,0,0,1,1.367-.337l5.469,2.344a1.186,1.186,0,0,1,.684,1.348L23.8,24.091A1.171,1.171,0,0,1,22.655,25,22.653,22.653,0,0,1,0,2.343,1.17,1.17,0,0,1,.907,1.2Z" transform="translate(0.001 0.001)" fill="%23cb091e"/></svg>');
}
.greyBg .emailIcon:before {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="25.455" height="20" viewBox="0 0 25.455 20"><path id="Icon_ionic-md-mail" data-name="Icon ionic-md-mail" d="M25.28,5.625H4.674A2.431,2.431,0,0,0,2.25,8.049V23.2a2.431,2.431,0,0,0,2.424,2.424H25.28A2.431,2.431,0,0,0,27.7,23.2V8.049A2.431,2.431,0,0,0,25.28,5.625Zm-.3,5.152-10,6.667-10-6.667V8.352l10,6.667,10-6.667Z" transform="translate(-2.25 -5.625)" fill="%23cb091e"/></svg>');
}

.text-black * {
  color: #000 !important;
}

.primaryBg strong {
  font-weight: bold;
}
.primaryBg .emailIcon:before, .primaryBg .phoneIcon:before {
  color: #fff;
}

.emailIconOld:before {
  font-family: bootstrap-icons !important;
  font-size: 0.8em;
  content: "\f32c";
  font-weight: bold;
  position: relative;
  top: 0.25em;
  padding-right: 0.3em;
  color: #CB091E;
  font-size: 1.6em;
}

.checkIcon {
  margin-left: 0.75em;
  padding-left: 0.6em;
  margin-bottom: 1.5em;
  padding-right: 1.5em;
}
.checkIcon:before {
  position: relative;
  top: 0.15em;
  padding-right: 0.3em;
  margin-left: -1.35em;
  color: #CB091E;
  font-size: 1.6em;
}

@media (min-width: 5px) {
  .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    max-width:  calc(100% - 80px) !important;
  }
}
@media (min-width: 1400px) {
  .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    max-width: 1200px !important;
  }
}

.databox {
  background-color: #2d2d2d;
  color: #fff;
  text-align: center;
  padding: 1.5em;
}
.databox .dataText {
  font-size: 3em;
  color: #CB091E;
}

.intentLeft {
  padding-left: 1.1em;
}

.primaryBg {
  background-color: #CB091E;
}
.primaryBg p, .primaryBg span, .primaryBg h2, .primaryBg h3, .primaryBg h4 {
  color: #fff !important;
}
.primaryBg p, .primaryBg span, .primaryBg strong {
  font-size: 0.9em;
}

.defaultBg {
  background-color: #2d2d2d;
}
.defaultBg p, .defaultBg span:not(:has(.text-red)), .defaultBg h2, .defaultBg h3, .defaultBg h4 {
  color: #fff;
}
.defaultBg p, .defaultBg span, .defaultBg strong {
  font-size: 0.9em;
}

.frame-type-form_formframework #karriere-139-fileupload-1 {
  border: 0;
}
.frame-type-form_formframework label.form-label {
  display: none;
}
.frame-type-form_formframework input, .frame-type-form_formframework textarea {
  background-color: transparent;
  border: 0;
}
.frame-type-form_formframework textarea {
  height: 200px;
}
.frame-type-form_formframework select {
  background: transparent;
  border: 0;
}
.frame-type-form_formframework div.input {
  padding-top: 1.3em;
  border-bottom: 1px solid #000;
}
.frame-type-form_formframework .form-check {
  padding-left: 0;
}
.frame-type-form_formframework #c110 {
  padding-top: 1em;
}
.frame-type-form_formframework .form-check {
  font-size: 1rem;
}
.frame-type-form_formframework p {
  font-size: 0.9rem;
}

.greyBg .frame-type-form_formframework div.input {
  border-bottom: 1px solid #CB091E;
}
.benefits {
	display:inline-block;
	width:100%;
	padding-bottom: 100px;
}
.frame-type-provider_portfolio {
  width: 33.333333%;
  float: left;
  text-align: center;
  margin-bottom: 24px;
}

@media (max-width: 991px) {
	.frame-type-provider_portfolio {
		width:50%;
  		float: left;
  		text-align: center;
	}
}

@media (max-width: 767px) {
        .frame-type-provider_portfolio {
                width:100%;
                float: left;
                text-align: center;
        }
}

.portfolioCard {
  margin: 0 6px !important;
}
.portfolioBody {
	background-color: #CB091E;
}
.text-red {
  color: #CB091E !important;
}

.contentBox {
	background-color: #CB091E;
  color: #fff;
  position: relative;
  padding: 1em;
  height: 275px;
}

@media (max-width: 767px) {
	.contentBox {
  		height: auto;
	}
}

.iconBox {
  z-index: 20;
  background-color: transparent;
  width: 100%;
  height: 120px;
position:relative;
background-image: url(../img/reddot.png);
  background-position: center bottom;
  background-size: 100% 50%;
  background-repeat: no-repeat;
}

.iconBox img {
	box-shadow: 0px 0px 12px #777;
	width: 120px;
	height: auto;
	border-radius: 50%;
}


#c123 .ce-bodytext p {
	font-size: 25px !important;
	line-height: 36px !important;
}

@media (max-width: 767px) {
	#c123 .ce-bodytext p {
        	font-size: 21px !important;
        	line-height: 30px !important;
	}	
}

#c124 p {
	color: #fff;
}

.navcat {
}
.navcat .wrapper {
  position: relative;
  /*
  overflow: hidden;
  */
}
.navcat .image {
  display: block;
  width: 100%;
  height: auto;
}
.navcat h4 {
  font-size: 1.6rem;
  padding: 1em 0;
}
.navcat .overlay {
  padding: 0 1.5em;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: #CB091E;
  opacity: 0.8;
  color: white;
  box-sizing: border-box;
  transition: transform 0.5s ease; /* Animationseffekt für das Gleiten */
}
.navcat .overlay-text {
  margin: 0;
}
.navcat .foldout {
  color: #fff;
  position: relative; /* Position relativ zum Overlay */
  padding: 0em;
  box-sizing: border-box;
  overflow: hidden;
  height: 0; /* Anfangs unsichtbar durch Begrenzung der Höhe */
  transition: height 0.5s ease; /* Animationseffekt für die Höhe */
}
.navcat .wrapper:hover .foldout {
  padding-bottom: 1.5em;
  height: auto; /* Anfangs unsichtbar durch Begrenzung der Höhe */
  max-height: 100%; /* Anfangs unsichtbar durch Begrenzung der Höhe */
}

#footer {
  font-size: 1.3em;
  font-weight: 300;
}
#footer a {
  color: #fff;
  font-weight: normal;
}

@media (max-width: 991px) {
	#footer .footerstructure figure {
		text-align: center;
		margin-bottom: 24px;
	}		
}
@media (max-width: 767px) {
	#footer .footerstructure .col-12:last-child {
		padding:32px 0 0  32px;
	}
}

#footer .secondFooter {
  padding: 1.5em 0 0.8em 0;
  font-size: 0.7em;
}
#footer .secondFooter .metaMenuCopyright {
  padding-left: 2.5em;
}

#main {
  color: #2d2d2d;
  font-size: 1.3em;
  font-weight: 300;
  margin: 150px 0  0 !important;
}


#main h2 {
  font-size: 2.2em;
  font-weight: 600;
  margin-bottom: 0.5em;
}
#main h3 {
  color: #CB091E;
  font-size: 1.7em;
  font-weight: 600;
  margin-bottom: 1em;
}
#main .defaultBg h3 {
  color: #fff;
}
#main .small-text {
  font-size: 0.8em;
}
#main h5 {
  font-size: 1.5em;
  font-weight: 300;
  line-height: 1.4em;
  margin-bottom: 1em;
}
#main .btn {
  background-color: #CB091E;
  border: 0;
  color: #fff;
  text-transform: uppercase;
  font-weight: 600;
  padding: 1em 2.2em;
  margin-top: 0.1em;
  font-size: 1.3rem;
}
#main .btn:hover {
  background-color: #2d2d2d;
}
#main .btn.redBg {
  background-color: transparent;
  color: #fff;
  border: 1px solid #fff;
}
#main .btn.redBg:hover {
  color: #CB091E;
  background-color: #fff;
}

.isALink {
  cursor: pointer;
}

.carouselNavButtons {
  text-align: center;
}
.carouselNavButtons i {
  color: #CB091E;
  font-weight: bold;
}

.testimonials {
  padding: 0 0 2em 0;
}

.greyBg {
  background-color: #F2F6FA;
}

.darkBg {
  background-color: #2d2d2d;
  color: #fff;
}
.darkBg h2, .darkBg h3, .darkBg h4 {
  color: #fff;
}

.firstFooter {
  background-color: #CB091E;
  color: #fff;
}

.secondFooter {
  background-color: #2d2d2d;
  color: #fff;
}

.showBoxes {
  border: 1px solid #4b49aa;
}
.showBoxes > div {
  border: 1px solid #4b8817;
}
.showBoxes > div > div {
  border: 1px solid #d31a6e;
}

.show {
  display: block !important;
}

#header i {
  color: #fff;
}

.phoneBox i {
  font-size: 1.4em;
}

.btn {
  padding: 1em 1em;
  border-radius: 0;
}
.btn.btnWhite {
  border: 1px solid #fff;
  color: #fff;
  padding: 0.9em 2em;
  text-transform: uppercase;
  font-weight: bold;
}


#notdienstBox {
  color: #fff;
  top: 2em;
  border: 0px solid #555;
  z-index: 1120;
}
#notdienstBox .phoneBox a {
  color: #fff;
}
#notdienstBox .phoneBox .phoneIcon {
  color: #fff;
  margin: 0;
}
#notdienstBox .content {
  padding: 2em;
  min-width: 10em;
  color: #2d2d2d;
  background-color: #fff;
  margin-top: 2.75em;
  border: 0px solid #555;
}
#notdienstBox .content h4 {
  color: #CB091E;
  font-size: 1.1em;
}

.navbar-toggler {
  display: inline-block !important;
}

.navbar-toggler-icon {
  color: #fff;
}

.mobile-nav-toggle {
  font-size: 4em !important;
  color: #fff !important;
  top: 31px !important;
}

.bgFill {
  background-color: #fff;
}

.withBgLineLeft {
  border: 1px dashed #0a53be;
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 666 666"><rect x="17.596" y="12.519" fill="#E30613" width="149.039" height="3.366"/></svg>');
  background-image: url("data:image/svg+xml,%3Csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='100%25' height='100%25' fill='none'/%3E%3Cline x1='0' y1='20' x2='50%25' y2='20' stroke='%23A4ABB3' stroke-width='2'/%3E%3C/svg%3E");
  background-repeat: repeat-y;
  background-position: center;
}

.withBgLineRight {
  background-image: url("data:image/svg+xml,%3Csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='100%25' height='100%25' fill='none'/%3E%3Cline x1='50%25' y1='20' x2='100%25' y2='20' stroke='%23A4ABB3' stroke-width='2'/%3E%3C/svg%3E");
  background-repeat: repeat-y;
  background-position: center;
}

.contentMaxWidth {
  /*
  max-width: 1780px;
  margin: auto 0 auto 4em;
   */
}

.greyBg {
  background-color: #F2F6FA;
}

.backgroundImg {
  min-height: 51em;
  background-size: cover;
}

.textBox {
  min-width: 28em;
  padding-left: 2em !important;
  margin-left: -2em;
  /*
  max-width: 10em;

   */
}
.textBox h3 {
  color: #2d2d2d;
  font-size: 3em;
  font-weight: bold;
}
.textBox p {
  color: #fff;
}
.textBox .buttonWrapper {
  text-align: end;
  margin-bottom: -3em;
}
.textBox .btn {
  padding: 1em 1.4em;
  border-radius: 0;
  color: #fff;
  background-color: #2d2d2d;
}
.textBox .btn:hover {
  color: #2d2d2d;
  background-color: #fff;
}

.maxWidth {
  max-width: 1920px;
}

.textGrey {
  color: #F2F6FA;
}

.logo {
  color: #fff;
}
.logo a:hover {
  color: #F2F6FA;
}
.logo .textGrey {
  color: #F2F6FA;
  font-size: 1.8em;
  font-weight: bold;
}
.logo .subText {
  font-size: 0.9em;
}

.frame-space-after-extra-small {
  padding-bottom: 0.5em;
}

.frame-space-after-small {
  padding-bottom: 1.5em;
}

.frame-space-after-medium {
  padding-bottom: 3em;
}

.frame-space-after-large {
  padding-bottom: 4.5em;
}

.frame-space-after-extra-large {
  padding-bottom: 6em;
}

.frame-space-before-extra-small {
  padding-top: 0.5em;
}

.frame-space-before-small {
  padding-top: 1.5em;
}

.frame-space-before-medium {
  padding-top: 3em;
}

.frame-space-before-large {
  padding-top: 4.5em;
}

.frame-space-before-extra-large {
  padding-top: 6em;
}

/*--------------------------------------------------------------
# General
--------------------------------------------------------------*/
:root {
  scroll-behavior: smooth;
  --color-links-hover: #A4ABB3;
}

a {
  color: var(--color-links);
  text-decoration: none;
}

a:hover {
  color: var(--color-links-hover);
  text-decoration: none;
}

* {
  font-family: "Ubuntu", sans-serif;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-primary);
}

/*--------------------------------------------------------------
# Preloader
--------------------------------------------------------------*/
#preloader {
  position: fixed;
  inset: 0;
  z-index: 9999;
  overflow: hidden;
  background: var(--color-white);
  transition: all 0.6s ease-out;
  width: 100%;
  height: 100vh;
}
#preloader:before, #preloader:after {
  content: "";
  position: absolute;
  border: 4px solid var(--color-primary);
  border-radius: 50%;
  animation: animate-preloader 2s cubic-bezier(0, 0.2, 0.8, 1) infinite;
}
#preloader:after {
  animation-delay: -0.5s;
}

@keyframes animate-preloader {
  0% {
    width: 10px;
    height: 10px;
    top: calc(50% - 5px);
    left: calc(50% - 5px);
    opacity: 1;
  }
  100% {
    width: 72px;
    height: 72px;
    top: calc(50% - 36px);
    left: calc(50% - 36px);
    opacity: 0;
  }
}
/*--------------------------------------------------------------
# Sections & Section Header
--------------------------------------------------------------*/
section {
  padding: 60px 0;
  overflow: hidden;
}

.section-header {
  text-align: center;
  padding-bottom: 40px;
}
.section-header h2 {
  font-size: 48px;
  font-weight: 300;
  margin-bottom: 20px;
  color: var(--color-secondary);
}
.section-header p {
  margin: 0 auto;
  color: var(--color-secondary-light);
}
@media (min-width: 1280px) {
  .section-header p {
    max-width: 80%;
  }
}

/*--------------------------------------------------------------
# Breadcrumbs
--------------------------------------------------------------*/
.breadcrumbs {
  padding: 15px 0;
  background: rgba(var(--color-secondary-rgb), 0.05);
  min-height: 40px;
  margin-top: 76px;
}
.breadcrumbs h2 {
  font-size: 30px;
  font-weight: 300;
  margin: 0;
}
.breadcrumbs ol {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 14px;
}
.breadcrumbs ol li + li {
  padding-left: 10px;
}
.breadcrumbs ol li + li::before {
  display: inline-block;
  padding-right: 10px;
  color: var(--color-secondary-light);
  content: "/";
}
@media (max-width: 992px) {
  .breadcrumbs .d-flex {
    display: block !important;
  }
  .breadcrumbs h2 {
    margin-bottom: 10px;
    font-size: 24px;
  }
  .breadcrumbs ol {
    display: block;
  }
  .breadcrumbs ol li {
    display: inline-block;
  }
}

/*--------------------------------------------------------------
# Scroll top button
--------------------------------------------------------------*/
.scroll-top {
  position: fixed;
  visibility: hidden;
  opacity: 0;
  right: 15px;
  bottom: 15px;
  z-index: 995;
  background: #F2F6FA;
  width: 40px;
  height: 40px;
  border-radius: 4px;
  transition: all 0.4s;
}
.scroll-top i {
  font-size: 24px;
  color: var(--color-white);
  line-height: 0;
}
.scroll-top:hover {
  background: rgba(var(--color-primary-rgb), 0.85);
  color: var(--color-white);
}
.scroll-top.active {
  visibility: visible;
  opacity: 1;
}

/*--------------------------------------------------------------
# Disable aos animation delay on mobile devices
--------------------------------------------------------------*/
@media screen and (max-width: 768px) {
  [data-aos-delay] {
    transition-delay: 0 !important;
  }
}
/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
.header {
  padding: 4px 0;
  transition: all 0.5s;
  z-index: 997;
  background: #CB091E;
  height: 127px;
}
.header.sticked {
  box-shadow: 0px 2px 20px rgba(var(--color-secondary-rgb), 0.1);
}
.header .logo img {
  max-height: 40px;
  margin-right: 6px;
}
.header .logo h1 {
  font-size: 32px;
  font-weight: 300;
  color: var(--color-secondary);
  font-family: var(--font-secondary);
}
.header .logo h1 span {
  color: var(--color-primary);
  font-weight: 500;
}
.header .btn-getstarted, .header .btn-getstarted:focus {
  font-size: 16px;
  color: var(--color-white);
  background: var(--color-primary);
  padding: 8px 23px;
  border-radius: 4px;
  transition: 0.3s;
  font-family: var(--font-secondary);
}
.header .btn-getstarted:hover, .header .btn-getstarted:focus:hover {
  color: var(--color-white);
  background: rgba(var(--color-primary-rgb), 0.85);
}
@media (max-width: 1279px) {
  .header .btn-getstarted, .header .btn-getstarted:focus {
    margin-right: 50px;
  }
}

.debug .maxWidth, .debug .contentMaxWidth {
  border: 1px solid #aa3333;
}
.debug .container {
  border: 1px solid #227022;
}
.debug .container .row {
  border: 1px solid #0a53be;
}
.debug #outputDebugPanel {
  border: 1px #999 solid;
  position: fixed;
  bottom: 1em;
  margin: 2em;
  padding: 1em;
  min-height: 2em;
  background-color: #dddddd;
  opacity: 0.8;
}

/*
@import 'nav';

 */
#desktopNav, #searchLayer {
  position: absolute;
  top: 127px;
}

#navbarSupportedContent {
  min-height: 80vh;
  padding-left: 3em;
  padding-top: 2.2em;
}

#searchLayer {
  background-color: #444444;
  width: 100%;
}

.debugBorder {
  border: 1px solid #333;
}

.navbar-toggler {
  border: 0;
  font-size: 2em;
}

.mlvl {
  overflow: auto;
}

.mlvl__level {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  background: #444444;
  -webkit-transition: -webkit-transform 150ms ease-out;
  transition: -webkit-transform 150ms ease-out;
  -o-transition: transform 150ms ease-out;
  transition: transform 150ms ease-out;
  transition: transform 150ms ease-out, -webkit-transform 150ms ease-out;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  z-index: 2;
  width: 100%;
}

.mlvl__level--top {
  position: static;
  background: none;
  overflow: hidden;
}

.mlvl__level--is-hidden {
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
}

.no-csstransitions .mlvl__level--is-hidden {
  display: none;
}

.mlvl__back {
  display: block;
  width: 100%;
  padding: 20px;
}

.mlvl__back:hover, .mlvl__back:active, .mlvl__back:focus {
  background: #f60;
}

#desktopNav.nav {
  background: #F2F6FA;
  width: 420px;
  font-size: 1.2rem;
  height: auto;
  overflow: auto;
}
#desktopNav.nav .nav-item {
  font-size: 2rem;
  font-weight: bold;
  padding: 1rem 0rem 0.5rem 0rem;
}
#desktopNav.nav .nav-item ul {
  padding-left: 0;
}
#desktopNav.nav .nav-item .nav-item {
  list-style: none;
  padding: 0rem;
  font-size: 1.2rem;
}

#mobileNav.nav {
  background: #CB091E;
  width: 400px;
  font-size: 1.2rem;
  height: auto;
  overflow: auto;
}
#mobileNav.nav a {
  color: #fff;
}
#mobileNav.nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
#mobileNav.nav ul li {
  border-bottom: 1px solid #666;
}
#mobileNav.nav ul a {
  display: block;
  padding: 10px 20px;
  text-decoration: none;
}
#mobileNav.nav ul a.mlvl__parent:not(.mlvl__parent-clone):after {
  content: " >";
}
#mobileNav.nav ul a:hover {
  background: #555;
}
#mobileNav.nav .mlvl__back-icon:before {
  content: "<";
}

#sideBarWrapper {
  border: 1px solid #333;
  transition: all 2s linear !important;
  z-index: 1200;
  position: fixed;
  right: 0px;
  top: 81px;
  width: 300px;
}

@media (max-width: 1199.98px) {
  #sideBarWrapper {
    display: none;
  }
}
.fade {
  transition: opacity 0.5s ease-in-out;
}

.collapsing {
  opacity: 0;
}

.collapse.show {
  opacity: 1;
}

#sideBarWrapperFoldout {
  padding: 2em;
  opacity: 0;
  display: none;
  color: #fff;
  background-color: #2d2d2d; /* Black*/
  overflow-x: hidden; /* Disable horizontal scroll */
  transition: all 2s linear !important;
  /*transition: opacity 0.5s ease-in-out;*/
  overflow: hidden;
  margin-top: -3em;
}

#sideBarWrapperFoldout.foldout {
  display: block;
  opacity: 100%;
}

.timelineItem {
  display: flex;
  min-height: 200px;
}
.timelineItem h3, .timelineItem h4 {
  color: #000 !important;
}
.timelineItem .leftCol, .timelineItem .rightCol, .timelineItem .middleCol {
  display: flex;
}
.timelineItem .leftCol div, .timelineItem .rightCol div {
  display: block;
}
.timelineItem .leftCol, .timelineItem .rightCol {
  border: 0px solid #234;
  border: 0px solid #234;
  width: 43%;
}
@media (max-width: 767.98px) {
  .timelineItem .leftCol, .timelineItem .rightCol {
    width: 100%;
  }
}
.timelineItem .middleCol {
  background-image: url('data:image/svg+xml,<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:a="http://ns.adobe.com/AdobeSVGViewerExtensions/3.0/" x="0px" y="0px" width="12px" height="10px" viewBox="-5 0 12 10" enable-background="new -5 0 12 10" xml:space="preserve"><defs></defs><line fill="none" stroke="%23007F85" stroke-width="2" stroke-miterlimit="10" x1="1" y1="0" x2="1" y2="10"/></svg>');
  background-size: contain;
  background-repeat: repeat-y;
  background-position: center;
  background-size: 12px 10px;
  width: 10%;
  min-width: 150px;
  text-align: center;
  align-content: center;
}
.timelineItem .middleCol .date {
  padding: 1em 0;
  background-color: #CB091E;
  height: 130px;
  width: 130px;
  color: white;
  font-size: 1.2em;
}
@media (max-width: 767.98px) {
  .timelineItem .middleCol {
    width: 6%;
    min-width: 100px;
  }
  .timelineItem .middleCol .date {
    padding: 1em 0;
    height: 80px;
    width: 80px;
    font-size: 1.5em;
  }
}

/*@import 'hero';*/

#hero {
  margin-top: 125px;
}

@media (max-width: 800px) {
  #hero {
    margin-top: 260px;
  }
}

#hero figure {
  margin: 0 ;
  
}
#hero figure img {
	width: 100%;
	height: auto;
}

#hero .btn {
  padding: 1em 2em;
  font-weight: bold;
  background-color: #CB091E !important;
  color: #fff !important;
}
#hero .btn:hover {
  background-color: #2d2d2d !important;
}

#hero .owl-dots {
  margin-top: -83px;
  z-index: 1200;
  position: absolute;
  right: 5em !important;
  left: inherit !important;
}

@media (max-width: 767px) {
#hero .owl-dots {
  margin-top: -83px;
}

#hero .owl-dots .owl-dot span {
  border-radius: 0;
  background: #fff !important;
  width: 3em !important;
  height: 0.3em !important;
}
#hero .owl-dots .owl-dot.active span {
  background: #CB091E !important;
}
#hero .owl-carousel .owl-item {
  min-height: 566px;
}

/* Hintergrundbox (Hero-Bereich) */
#c5 .heroBackBox {
  padding-bottom: 2.5em;
  padding-left: 2.3em;
  position: relative; /* Ermöglicht Platzierung des Inhalts darüber */
  width: 100% !important;
  height: auto;
  background-size: 100% !important; /* Bild füllt den Bereich aus */
  background-position:center !important; /* Bild bleibt zentriert */
  background-repeat: no-repeat; /* Kein Wiederholen des Bildes */
}

/* Vordergrundbox */
.heroFrontBox {
  position: relative; /* Inhalt bleibt über dem Hintergrund */
  z-index: 2; /* Sicherstellen, dass der Inhalt über dem Bild ist */
  text-align: right; /* Text zentriert */
  padding: 1rem; /* Optionaler Abstand innerhalb der Box */
}

/* Text im Hero-Bereich */
.heroText h2 {
  font-size: 3rem;
  margin-bottom: 1rem;
  font-weight: 600;
}

@media (max-width: 1920px) {
	.heroText h2 {
  		font-size: 3vw;
	}
}

.heroText p {
  font-size: 2rem;
  margin-bottom: 1rem;
  font-weight: 500;
line-height: var(--bs-body-line-height) !important;
}

@media (max-width: 1920px) {
        .heroText p {
                font-size: 1.75vw;
		font-weight: 500;
		line-height: var(--bs-body-line-height) !important;
        }
}
#pageId-15 .heroBackBox {
	align-items: center;
}

#pageId-15 .heroBackBox .heroText h2 {
  font-size: 3rem;
  font-weight: 400;
}

#pageId-15 .heroBackBox .heroText p {
  font-size: 2rem;
  font-weight: 400;
  line-height: var(--bs-body-line-height) !important;
}

@media (max-width: 1920px) {
  #pageId-15 .heroBackBox .heroText h2 {
    font-size: 3vw;
  }
}

@media (max-width: 1920px) {
#pageId-15 .heroBackBox .heroText p {
  font-size: 2vw;
  line-height: var(--bs-body-line-height) !important;
}
}

  .heroFrontBox {
    position: static; /* Positionierung aufheben */
    margin-top: 1rem; /* Abstand oberhalb der Box */
  }
  .heroText h2 {
    font-size: 1.5rem;
  }
  .heroText p {
    font-size: 1rem;
  }

/* SM-Breakpoint (unter 768px) */
@media (max-width: 768px) {
  owl .heroFrontBox {
    margin-top: 50vh;
    background-color: #ddd;
  }
  /* Kleinere Schriftgröße für kleine Bildschirme */
  .heroText h2 {
    font-size: 1.5rem;
  }
  .heroText p {
    font-size: 1rem;
  }
}
/*
@import 'index';
@import 'portfolio-details';
@import 'blog';

 */
/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
.footer {
  color: var(--color-white);
  font-size: 14px;
}
.footer .footer-content {
  background: var(--color-secondary);
  padding: 60px 0 30px 0;
}
.footer .footer-content .footer-info {
  margin-bottom: 30px;
}
.footer .footer-content .footer-info h3 {
  font-size: 28px;
  margin: 0 0 20px 0;
  padding: 2px 0 2px 0;
  line-height: 1;
  font-weight: 700;
  text-transform: uppercase;
}
.footer .footer-content .footer-info h3 span {
  color: var(--color-primary);
}
.footer .footer-content .footer-info p {
  font-size: 14px;
  line-height: 24px;
  margin-bottom: 0;
  font-family: var(--font-primary);
  color: var(--color-white);
}
.footer .footer-content h4 {
  font-size: 16px;
  font-weight: 600;
  color: var(--color-white);
  position: relative;
  padding-bottom: 12px;
  margin-bottom: 15px;
}
.footer .footer-content h4::after {
  content: "";
  position: absolute;
  display: block;
  width: 20px;
  height: 2px;
  background: var(--color-primary);
  bottom: 0;
  left: 0;
}
.footer .footer-content .footer-links {
  margin-bottom: 30px;
}
.footer .footer-content .footer-links ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.footer .footer-content .footer-links ul i {
  padding-right: 2px;
  color: var(--color-white);
  font-size: 12px;
  line-height: 1;
}
.footer .footer-content .footer-links ul li {
  padding: 10px 0;
  display: flex;
  align-items: center;
}
.footer .footer-content .footer-links ul li:first-child {
  padding-top: 0;
}
.footer .footer-content .footer-links ul a {
  color: rgba(var(--color-white-rgb), 0.7);
  transition: 0.3s;
  display: inline-block;
  line-height: 1;
}
.footer .footer-content .footer-links ul a:hover {
  color: var(--color-white);
}
.footer .footer-content .footer-newsletter form {
  margin-top: 30px;
  background: var(--color-white);
  padding: 6px 10px;
  position: relative;
  border-radius: 4px;
}
.footer .footer-content .footer-newsletter form input[type=email] {
  border: 0;
  padding: 4px;
  width: calc(100% - 110px);
}
.footer .footer-content .footer-newsletter form input[type=email]:focus-visible {
  outline: none;
}
.footer .footer-content .footer-newsletter form input[type=submit] {
  position: absolute;
  top: 0;
  right: -2px;
  bottom: 0;
  border: 0;
  background: none;
  font-size: 16px;
  padding: 0 20px;
  background: var(--color-primary);
  color: var(--color-white);
  transition: 0.3s;
  border-radius: 0 4px 4px 0;
}
.footer .footer-content .footer-newsletter form input[type=submit]:hover {
  background: rgba(var(--color-primary-rgb), 0.85);
}
.footer .footer-legal {
  padding: 30px 0;
  background: #CB091E;
}
.footer .footer-legal a {
  display: inline-block;
  color: #F2F6FA;
  padding: 8px 0;
  font-weight: bold;
  text-align: center;
  transition: 0.3s;
}
.footer .footer-legal a:hover {
  color: #fff;
  text-decoration: none;
}

/*# sourceMappingURL=main.css.map */
