/*# Konfig */
:root {
--color-black: #323232; 
--bs-card-border-radius: 0.2rem !important;
--bs-border-radius: 0.2rem !important;
}
html {
hyphens: auto;
}

h2 {
font-size: 1.5rem !important;
}

a {
    text-decoration: none;
}

/*** navbar hight START ***/

.navbar-fixed-top {
    box-shadow: none;
}

.navbar-transition {
    --mainnavigation-nav-height: 85px;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.06) 0px 2px 4px -1px;
}

@media (max-width: 991px) {
    .navbar-mainnavigation {
        --mainnavigation-nav-height: 100px;
    }
}

@media (max-width: 991px) {
    .navbar-mainnavigation .navbar-transition {
        --mainnavigation-nav-height: 80px;
    }
}

.bg-white,.navbar-default,.navbar-default-transition,.navbar-default-transition.navbar-transition {
    --bs-bg-opacity: 0.00 !important;
    background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important;
}

.navbar-transition {
    --bs-bg-opacity: 0.85 !important;
    background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important;
}
  
/*** Breadcrumb Konfig ***/

.breadcrumb-section a {
    text-decoration: none !important;
}

.breadcrumb-section a:hover {
    color: #E4272A !important;
}

.breadcrumb-section {
    background-color: #e6e6e6 !important;
}

.breadcrumb-link {
    color: #333333 !important;
}

/*** Seitenmenü ***/

.subnav-link:hover,.subnav-link:focus {
    color: #E4272A !important;
}



/*** Slick Slider beginn mit Fensterrand oben ab breite 992px ***/
@media (min-width: 992px) {
.slick-container {
    margin-top: -110px;
} 
.navbar-default-transition:not(.navbar-transition), .navbar-inverse-transition:not(.navbar-transition) {
background: rgb(241,241,241) !important;
background: linear-gradient(0deg, rgba(241,241,241,1) 0%, rgba(0,0,0,0.01) 0%, rgba(0,0,0,3.85) 100%) !important;
background: linear-gradient(0deg, rgba(241,241,241,1) 0%, rgba(0,0,0,0) 0%, rgba(49,49,49,1) 100%) !important;
}  
}

/*** Slick Slider Texteinstellungen ***/
.slick-text { 
    top: 60% !important;
   .h1 {
    font-size: calc(1.325rem + .9vw) !important;
    }
   .h2 {
    font-size: calc(0.9rem + .9vw) !important;
    }
}


/*** IMG Berechnung ***/
.navbar-mainnavigation .navbar-brand-image img {
    position: relative;
    top: 50%;
    transform: translate(0, -50%);
    width: auto;
    max-height: calc(var(--mainnavigation-nav-height) - 20px)
}

@media (min-width: 992px) {
    .navbar-mainnavigation .navbar-brand-image img {
        max-height: calc(var(--mainnavigation-nav-height) * 1.55);
    }
}

/*** topbar Einstellungen ***/

.topbar-language, .topbar-social, .topbar-spacer {
   float: left;
    }
.topbar-spacer {
   padding-left: 3px;
    }

#topbar .ms-4 {
    margin-left: 1.1rem !important;
}

#topbar {
  padding: 0;
  font-size: 15px;
  height: 35px !important;
  transition: all 0.5s;
  z-index: 99996;
  color: rgba(255, 255, 255, 0.7);
  overflow: hidden;
  overflow: clip;
}

#topbar.topbar-bg {
  background-color: #1a1a1a;
  background-color: #313131;
}

#topbar.topbar-scrolled {
  top: -35px;
}

/***
#topbar i {
  line-height: 0;
}
***/



#topbar i span {
  color: #fff;
  font-style: normal;
  /* padding-left: 5px; */
  /* padding-right: 18px; */
}


#topbar a {
  color: #fff;
  text-decoration: none !important;
}


@media (min-width: 992px) {
.navbar-mainnavigation {
      height: 150px !important;
      overflow: clip;
}
}


/*** Konfig ***/

.btn-default {
    color: #ffffff;
    background-color: #E4272A;
    border-color: #E4272A;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}
.btn-default:hover {
    color: #ffffff !important;
    background-color: #c22124 !important;
    border-color: #b61f22 !important;
}

/*** Wir Über uns Card Group ***/



#c402, #c417, #c381, #c393 {
.card {
 --bs-card-border-color: var(--color-black);
   }
.card-body {
  h2  {
        font-size: 1.7rem !important;
        text-align: center !important;
}
  h3  {
        text-align: center !important;
}

.card-body a {
    text-decoration: none !important;
    color: #E4272A !important;
}

.card-body .lead {
  font-size: calc(1.1rem) !important;  
}

.card-body {
    text-align: center !important;
}

.card-footer {
    text-align: center !important;
}
.lead a {
    text-decoration: none;
}  
}
}


/*# powermail config */

.powermail_fieldwrap .col-sm-2 {
    width: auto !important;
}

.tx-powermail, .container-fluid {
    padding-right: 0px !important;
    padding-left: 0px !important;
}

@media (min-width: 576px) {
.tx-powermail .col-sm-10 {
    width: auto !important;
}
}

.tx-powermail .btn-primary {
    width: 100%;
}

.tx-powermail .btn-primary {
    box-shadow: inset 0 2px 0 rgb(255 255 255 / 100%), 0 2px 2px rgb(255 255 255 / 85%);
}

/*# Bootstrap Frabe Wilofa rot #E4272A 288/39/42 config */

/*# Footer config */
.footer-section-content {
    background-color: #313131 !important;
    --frame-color: #ffffff;
    --frame-background: #313131 !important;
    --frame-link-color: #FFF !important;
    --frame-link-hover-color: #FFF !important;
}

/*# Downloads Konfig */
.filelink-item {
    --bs-card-spacer-y: 1.5rem;
    --bs-card-spacer-x: 1.5rem;
    --bs-card-title-spacer-y: 0.5rem;
    --bs-card-title-color: ;
    --bs-card-subtitle-color: ;
    --bs-card-border-width: var(--bs-border-width);
    --bs-card-border-color: var(--color-black);
    --bs-card-border-radius: var(--bs-border-radius);
    --bs-card-box-shadow: ;
    --bs-card-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));
    --bs-card-cap-padding-y: 0.75rem;
    --bs-card-cap-padding-x: 1.5rem;
    --bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);
    --bs-card-cap-color: ;
    --bs-card-height: ;
    --bs-card-color: ;
    --bs-card-bg: var(--bs-body-bg);
    --bs-card-img-overlay-padding: 1rem;
    --bs-card-group-margin: 20px;
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    height: var(--bs-card-height);
    color: var(--bs-body-color);
    word-wrap: break-word;
    background-color: var(--bs-card-bg);
    background-clip: border-box;
    border: var(--bs-card-border-width) solid var(--bs-card-border-color);
    border-radius: var(--bs-card-border-radius);
    box-shadow: var(--bs-card-box-shadow);
    padding: 8px;
}

.filelink-filename a {
    text-decoration: none !important;
}

.textpic {
 /* box-shadow: -4px 0px 18px -8px rgba(0,0,0,0.1); */
  height: 100%;
}

.button-bottom {
    text-align: end;
}
/*# Button Konfig */
.btn, .frame-type-felogin_login input[type="submit"], .cc-btn {
  width: 100%;
}

/*# language-menu topbar Konfig */
.topbar-language .language-menu {
    margin: 0;
    list-style: none;
    padding-left: 0
}

@media (min-width: 200px) {
    .topbar-language .language-menu {
        margin-left:-0.5em;
        margin-right: -0.5em
    }

    .topbar-language .language-menu>li {
        display: inline-block;
        padding-left: 0.5em;
        padding-right: 0.5em
    }
}

.topbar-language .language-menu .active a {
    font-weight: bold
}

.topbar-language .language-menu .inactive {
    opacity: 0.5
}

/*# Seiteninhalt Konfig */
#c243 {
.frame-inner {
  background-color: #ffffff;
  padding: 45px;
  margin-top: 30px;
    margin-bottom: 30px;
    border-color: #E4272A;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: rgba(60, 64, 67, 0.3) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 1px 3px 1px;
}
  ul.list-inline>li {
    width: 48%;
}
  
  @media (max-width: 450px) {
    ul.list-inline>li {
    margin-bottom: 5px;
    width: 100%;
  }
 } 
}
  
/*# Icongroup Konfig */

@media (min-width: 991px) {
  .icongroup-columns-auto .icongroup-item {
    width: 90%;
    }
}

/*** infobar Einstellungen ***/

#infobar {
  padding: 0;
  height: 250px !important;
  transition: all 0.5s;
  z-index: 999999;
  color: rgba(255, 255, 255, 0.7);
  overflow: hidden;
  overflow: clip;
  margin-top: 450px;
}

#infobar.infobar-bg {
  background-color: #ff0000;
}

#infobar.infobar-scrolled {
  top: -35px;
}

#topbar a {
  color: #fff;
  text-decoration: none !important;
}
/*** carousel Einstellungen ***/



#c430 {
    ul.list-inline>li {
        width: 100%;
    }
}
/*** footer Einstellungen ***/
.footer-section-meta {
    background: #ffffff;
    --frame-color: #212121;
    --frame-background: #ffffff;
    --frame-link-color: #212121;
    --frame-link-hover-color: #E4272A !important;
}

.frame-space-after-small, .frame-space-after-medium {
    --frame-outer-spacing-variant-small: 0rem !important;
  --frame-outer-spacing-variant-medium: 0rem !important;
}

.card-title {
    text-align: center !important;
}

.carousel .carousel-backgroundimage-fade {
    opacity: .35 !important;
}
#page-footer .frame-header, #page-footer h4 { 
  margin-bottom: 0.1rem !important;
}

#language_menu li {
  margin: 0;
  padding: 0;
}
#language_menu i {
  margin: 0;
  padding: 0;
}

.card {background: transparent !important;
      }
.card-body {
   color: white;
   text-align: center;
}
.card {
border: 0px;
}

/*** carousel ***/
.carousel {
        margin-top: 30px;
        margin-bottom: 0px;
        z-index: -5;
}
.carousel-indicators, .carousel-control {
    visibility: hidden;
  }


/*** butons ***/

.btn-primary, .btn-secondary, .btn-tertiary, .btn-quaternary {
    --bs-btn-color: #ffffff;
    --bs-btn-border-color: #ffffff;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-hover-border-color: #ffffff;
    --bs-btn-active-color: #ffffff;
    --bs-btn-disabled-color: #ffffff;
    --bs-border-radius: 3px;
}
/*** texticon box ***/
.texticon {
    display: flex;
    align-items: flex-start; /* Oben ausrichten */
    justify-content: flex-start; /* Links ausrichten */
    gap: 15px; /* Abstand zwischen Icon und Text */
}

.texticon-icon {
    flex-shrink: 0; /* Verhindert, dass das Icon verkleinert wird */
    display: flex;
    align-items: center; /* Falls das Icon unterschiedlich groß ist */
}

.texticon-content {
    flex-grow: 1; /* Lässt den Text den restlichen Platz einnehmen */
    text-align: left; /* Sicherstellen, dass der Text links bleibt */
}

/*** swiper bullet ***/
.swiper-pagination-bullet-active {
    background: #fff !important;
}
.swiper-pagination-bullet {
 border-radius: 0px !important;
}

/*** text icon color ***/
.frame-background-primary, .frame-background-secondary, .frame-background-tertiary, .frame-background-quaternary {
    --frame-color: #ffffff;
    --frame-link-hover-color: #000000;
}


@media (min-width: 380px) {
    .section-column {
        padding-bottom: var(--frame-spacing-xs);
    }
}

@media (min-width: 576px) {
    .section-column {
        padding-bottom: var(--frame-spacing-sm);
    }
}

@media (min-width: 768px) {
    .section-column {
        padding-bottom: var(--frame-spacing-md);
    }
}

@media (min-width: 992px) {
    .section-column {
        padding-bottom: var(--frame-spacing-lg);
    }
}

@media (min-width: 1200px) {
    .section-column {
        padding-bottom: var(--frame-spacing-xl);
    }
}

#c227.frame {
    padding-top: 0 !important;
}

/*** Accordion IMG
.gallery-item img {
    max-width: 100px;
      display: inline;
} ***/

@media (min-width: 768px) {
    .accordion-content-right .accordion-content-item,.accordion-content-left .accordion-content-item {
        width:calc(10% - (1rem / 2))
    }
}

.accordion-button {
    font-size: 1.5rem !important;
  }

.accordion {
    --bs-accordion-active-bg: var(--bs-primary);
    --bs-accordion-btn-focus-box-shadow: none;
}


#c220, #c221, #c222 {
    padding-left: 0.5rem !important;
    padding-right: 0.5rem !important;
}

/***  .bp-page-content {  ***/

.body-bg::before {
  content: "";
  position: fixed;
  top: 0;
  left: 50%;
  width: 1000px;
  height: 100vh;
  transform: translateX(-50%);
  background-image: url("/fileadmin/MEDIA/SYSTEM/bg.jpg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  z-index: -1000;
  pointer-events: none;
}
.container-mainnavigation {
    gap: 0 0rem !important;
}

.carousel-content-inner {
visibility: hidden;
  }

.carousel {
    overflow: visible !important;
  }

.carousel::before {
  content: "";
  position: absolute;
  top: -50px; /* gleiche Höhe wie unten, nur oben */
  left: 0;
  width: 100%;
  height: 150px;
  background-image: url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 150' preserveAspectRatio='none'>\
<defs>\
  <linearGradient id='waveGradTop1' x1='0' y1='0' x2='0' y2='1'>\
    <stop offset='0%' stop-color='white' stop-opacity='0.5'/>\
    <stop offset='100%' stop-color='white' stop-opacity='0'/>\
  </linearGradient>\
  <linearGradient id='waveGradTop2' x1='0' y1='0' x2='0' y2='1'>\
    <stop offset='0%' stop-color='white' stop-opacity='0.6'/>\
    <stop offset='100%' stop-color='white' stop-opacity='0'/>\
  </linearGradient>\
  <linearGradient id='waveGradTop3' x1='0' y1='0' x2='0' y2='1'>\
    <stop offset='0%' stop-color='white' stop-opacity='1'/>\
    <stop offset='60%' stop-color='white' stop-opacity='1'/>\
    <stop offset='100%' stop-color='white' stop-opacity='0'/>\
  </linearGradient>\
</defs>\
<path fill='url(%23waveGradTop1)' d='M0,50 C200,140 350,0 500,60 C650,120 850,10 1000,50 L1000,150 L0,150 Z'/>\
<path fill='url(%23waveGradTop2)' d='M0,60 C200,150 300,10 500,40 C700,80 800,20 1000,40 L1000,150 L0,150 Z'/>\
<path fill='url(%23waveGradTop3)' d='M0,70 C250,150 400,30 500,60 C600,90 750,10 1000,50 L1000,150 L0,150 Z'/>\
</svg>");
  background-repeat: no-repeat;
  background-size: cover;
  transform: rotate(180deg); /* ⬅ Spiegelung */
  z-index: 900000;
  pointer-events: none;
}

.carousel::after {
    content: "";
    position: absolute;
    bottom: -50px;
    left: 0;
    width: 100%;
    height: 150px;
    background-image: url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 150' preserveAspectRatio='none'>\
<defs>\
  <linearGradient id='waveGrad1' x1='0' y1='0' x2='0' y2='1'>\
    <stop offset='0%' stop-color='white' stop-opacity='0.5'/>\
    <stop offset='100%' stop-color='white' stop-opacity='0'/>\
  </linearGradient>\
  <linearGradient id='waveGrad2' x1='0' y1='0' x2='0' y2='1'>\
    <stop offset='0%' stop-color='white' stop-opacity='0.6'/>\
    <stop offset='100%' stop-color='white' stop-opacity='0'/>\
  </linearGradient>\
  <linearGradient id='waveGrad3' x1='0' y1='0' x2='0' y2='1'>\
    <stop offset='0%' stop-color='white' stop-opacity='1'/>\
    <stop offset='60%' stop-color='white' stop-opacity='1'/>\
    <stop offset='100%' stop-color='white' stop-opacity='0'/>\
  </linearGradient>\
</defs>\
<path fill='url(%23waveGrad1)' d='M0,50 C200,140 350,0 500,60 C650,120 850,10 1000,50 L1000,150 L0,150 Z'/>\
<path fill='url(%23waveGrad2)' d='M0,60 C200,150 300,10 500,40 C700,80 800,20 1000,40 L1000,150 L0,150 Z'/>\
<path fill='url(%23waveGrad3)' d='M0,70 C250,150 400,30 500,60 C600,90 750,10 1000,50 L1000,150 L0,150 Z'/>\
</svg>");
    background-repeat: no-repeat;
    background-size: cover;
    z-index: 900000;
    pointer-events: none;
}


@media (max-width: 991px) {
  .carousel::before {
    background-image: url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 333 150' preserveAspectRatio='none'>\
<defs>\
  <linearGradient id='waveGradTop1' x1='0' y1='0' x2='0' y2='1'>\
    <stop offset='0%' stop-color='white' stop-opacity='0.5'/>\
    <stop offset='100%' stop-color='white' stop-opacity='0'/>\
  </linearGradient>\
  <linearGradient id='waveGradTop2' x1='0' y1='0' x2='0' y2='1'>\
    <stop offset='0%' stop-color='white' stop-opacity='0.6'/>\
    <stop offset='100%' stop-color='white' stop-opacity='0'/>\
  </linearGradient>\
  <linearGradient id='waveGradTop3' x1='0' y1='0' x2='0' y2='1'>\
    <stop offset='0%' stop-color='white' stop-opacity='1'/>\
    <stop offset='60%' stop-color='white' stop-opacity='1'/>\
    <stop offset='100%' stop-color='white' stop-opacity='0'/>\
  </linearGradient>\
</defs>\
<path fill='url(%23waveGradTop1)' d='M0,50 C70,100 110,20 167,60 C220,90 300,30 333,50 L333,150 L0,150 Z'/>\
<path fill='url(%23waveGradTop2)' d='M0,60 C80,110 120,30 160,50 C210,70 280,40 333,45 L333,150 L0,150 Z'/>\
<path fill='url(%23waveGradTop3)' d='M0,70 C85,120 140,40 167,60 C190,75 260,45 333,50 L333,150 L0,150 Z'/>\
</svg>");
    background-size: 100% 100%;
    height: 70px;
    top: -20px;
  }
}

@media (max-width: 991px) {
  .carousel::after {
    background-image: url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 333 150' preserveAspectRatio='none'>\
<defs>\
  <linearGradient id='waveGrad1' x1='0' y1='0' x2='0' y2='1'>\
    <stop offset='0%' stop-color='white' stop-opacity='0.5'/>\
    <stop offset='100%' stop-color='white' stop-opacity='0'/>\
  </linearGradient>\
  <linearGradient id='waveGrad2' x1='0' y1='0' x2='0' y2='1'>\
    <stop offset='0%' stop-color='white' stop-opacity='0.6'/>\
    <stop offset='100%' stop-color='white' stop-opacity='0'/>\
  </linearGradient>\
  <linearGradient id='waveGrad3' x1='0' y1='0' x2='0' y2='1'>\
    <stop offset='0%' stop-color='white' stop-opacity='1'/>\
    <stop offset='60%' stop-color='white' stop-opacity='1'/>\
    <stop offset='100%' stop-color='white' stop-opacity='0'/>\
  </linearGradient>\
</defs>\
<path fill='url(%23waveGrad1)' d='M0,50 C70,100 110,20 167,60 C220,90 300,30 333,50 L333,150 L0,150 Z'/>\
<path fill='url(%23waveGrad2)' d='M0,60 C80,110 120,30 160,50 C210,70 280,40 333,45 L333,150 L0,150 Z'/>\
<path fill='url(%23waveGrad3)' d='M0,70 C85,120 140,40 167,60 C190,75 260,45 333,50 L333,150 L0,150 Z'/>\
</svg>");
    background-size: 100% 100%;
    height: 70px;
    bottom: -20px;
  }
}