/***********************
 Farben
 ***********************/
/***********************
 Allgemein
 ***********************/
* {
  margin: 0px;
  padding: 0px;
  box-sizing: border-box; }

body, html {
  font-family: 'Open Sans';
  margin: 0px;
  padding: 0px;
  overflow-x: hidden;
  scroll-behavior: smooth;
  color: #404040; }

.row {
  margin-right: 0px;
  margin-left: 0px; }

div {
  width: 100%; }

.width {
  max-width: 1200px;
  margin: 0 auto;
  position: relative; }

img, picture, video {
  max-width: 100%;
  height: auto; }

b, strong {
  font-weight: bold; }

p, ul, ol, table {
  font-size: clamp(16px, 1vw, 18px);
  line-height: 140%;
  font-weight: 300;
  color: #404040;
  margin: 0px;
  margin-bottom: clamp(20px, 2vw, 30px); }
  p small, ul small, ol small, table small {
    display: inline-block;
    line-height: normal; }

a, a:link, a:visited {
  color: #e74e11;
  font-weight: bold;
  text-decoration: none;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  cursor: pointer; }

a:hover, a:focus, a:active {
  color: #c73900;
  font-weight: bold;
  text-decoration: none;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease; }

a.button, a.button:link, a.button:visited, input.button, span.button, button.button {
  display: inline-block;
  font-weight: bold;
  font-size: 15px;
  padding: 9px 15px; }
  a.button.klein, a.button:link.klein, a.button:visited.klein, input.button.klein, span.button.klein, button.button.klein {
    font-size: 13px;
    padding: 5px 10px; }
  a.button.primaer, a.button:link.primaer, a.button:visited.primaer, input.button.primaer, span.button.primaer, button.button.primaer {
    color: #fff;
    background: #c73900;
    border: 1px solid #c73900; }
    a.button.primaer.standort, a.button:link.primaer.standort, a.button:visited.primaer.standort, input.button.primaer.standort, span.button.primaer.standort, button.button.primaer.standort {
      background-image: url(/basics/images/button_icon_ort_weiss.svg);
      background-repeat: no-repeat;
      background-position: right 10px center;
      padding-right: 30px; }
    a.button.primaer.weiter, a.button:link.primaer.weiter, a.button:visited.primaer.weiter, input.button.primaer.weiter, span.button.primaer.weiter, button.button.primaer.weiter {
      background-image: url(/basics/images/button_icon_weiter_weiss.svg);
      background-repeat: no-repeat;
      background-position: right 10px center;
      padding-right: 35px; }
  a.button.sekundaer, a.button:link.sekundaer, a.button:visited.sekundaer, input.button.sekundaer, span.button.sekundaer, button.button.sekundaer {
    color: #e74e11;
    background: none;
    border: 1px solid #e74e11; }

a.button:hover.primaer, a.button:focus.primaer, a.button:active.primaer, input.button:hover.primaer, input.button:focus.primaer, input.button:active.primaer, span.button:hover.primaer, span.button:focus.primaer, span.button:active.primaer, button.button:hover.primaer, button.button:focus.primaer, button.button:active.primaer {
  color: #fff;
  background: #e74e11;
  border: 1px solid #e74e11; }
  a.button:hover.sekundaer, a.button:focus.sekundaer, a.button:active.sekundaer, input.button:hover.sekundaer, input.button:focus.sekundaer, input.button:active.sekundaer, span.button:hover.sekundaer, span.button:focus.sekundaer, span.button:active.sekundaer, button.button:hover.sekundaer, button.button:focus.sekundaer, button.button:active.sekundaer {
    color: #fff;
    background: #e74e11;
    border: 1px solid #e74e11; }

h1, h2, h3, h4, h5, h6 {
  margin-top: 0px;
  font-family: 'Oswald'; }

h1 {
  font-size: clamp(40px, 3vw, 65px);
  line-height: clamp(40px, 3vw, 65px);
  font-weight: 500;
  color: #e74e11;
  margin-bottom: clamp(35px, 2vw, 45px); }

h2 {
  font-size: clamp(25px, 2vw, 35px);
  line-height: clamp(25px, 2vw, 35px);
  font-weight: 500;
  color: #e74e11;
  margin-bottom: clamp(20px, 2vw, 30px); }

h3 {
  font-size: clamp(20px, 2vw, 25px);
  line-height: clamp(20px, 2vw, 25px);
  font-weight: normal;
  color: #000;
  margin-bottom: clamp(15px, 2vw, 25px); }

h4 {
  font-family: 'Open Sans';
  font-size: clamp(16px, 1vw, 18px);
  line-height: 140%;
  font-weight: bold;
  color: #5d5d5d;
  margin: 0px; }

.clear {
  clear: both;
  float: none;
  width: 100%; }

.googlemaps_hinweis {
  background: #e0e0e0;
  padding: 100px 30px;
  text-align: center; }

.responsive_video, .responsive-video {
  position: relative;
  padding-bottom: 56%;
  height: 0;
  overflow: hidden;
  width: 100%; }
  .responsive_video iframe, .responsive-video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .responsive_video .noYT, .responsive-video .noYT {
    position: absolute;
    left: 0px;
    right: 0px;
    top: 0px;
    bottom: 0px;
    height: 100%;
    width: 100%;
    background: #e0e0e0;
    text-align: center;
    padding: 15px; }
    .responsive_video .noYT .noYT_box, .responsive-video .noYT .noYT_box {
      display: table;
      width: 100%;
      height: 100%; }
      .responsive_video .noYT .noYT_box .noYT_center, .responsive-video .noYT .noYT_box .noYT_center {
        display: table-cell;
        vertical-align: middle; }

#phone {
  display: none; }

.bild_links {
  float: left;
  margin: 0px 15px 5px 0px; }

.bild_rechts {
  float: right;
  margin: 0px 0px 5px 15px; }

#karte div {
  width: inherit; }

.selector-for-some-widget {
  box-sizing: content-box; }

.mfp-figure:after {
  display: none; }

a.nach_oben, a.nach_oben:link, a.nach_oben:visited {
  display: inline-block;
  width: 50px;
  height: 50px;
  background: #e74e11;
  background-image: url(/basics/images/nach_oben_pfeil.svg);
  background-repeat: no-repeat;
  background-position: center center;
  position: fixed;
  right: 15px;
  bottom: 15px;
  z-index: 100; }

a.nach_oben:hover, a.nach_oben:focus, a.nach_oben:active {
  background-color: #c73900; }

.content {
  margin-bottom: 100px; }
  .content.kein_abstand_unten {
    margin-bottom: 0px; }
  .content.hellgrau {
    background: #e0e0e0;
    padding: 100px 0px; }
  .content .subnavi {
    font-family: 'Oswald';
    padding: 0px;
    margin: 0px 0px 20px 0px;
    list-style-type: none;
    line-height: normal; }
    .content .subnavi li a, .content .subnavi li a:link, .content .subnavi li a:visited {
      display: block;
      font-size: clamp(20px, 2vw, 25px);
      line-height: clamp(20px, 2vw, 25px);
      font-weight: normal;
      color: #e74e11;
      margin-bottom: 20px; }
      .content .subnavi li a:hover, .content .subnavi li a:focus, .content .subnavi li a:active {
        color: #e74e11; }
      .content .subnavi li ul {
        list-style-type: none;
        padding-left: 10px; }
        .content .subnavi li ul li a, .content .subnavi li ul li a:link, .content .subnavi li ul li a:visited {
          color: #000;
          margin-bottom: 5px; }
          .content .subnavi li ul li a:hover, .content .subnavi li ul li a:focus, .content .subnavi li ul li a:active {
            color: #e74e11; }
          .content .subnavi li ul li.active > a, .content .subnavi li ul li.active > a:link, .content .subnavi li ul li.active > a:visited, .content .subnavi li ul li.active > a:hover, .content .subnavi li ul li.active > a:focus, .content .subnavi li ul li.active > a:active {
            color: #e74e11; }
          .content .subnavi li ul li ul {
            list-style-type: none;
            padding: 15px 0px 10px 10px; }
            .content .subnavi li ul li ul li a, .content .subnavi li ul li ul li a:link, .content .subnavi li ul li ul li a:visited {
              font-size: clamp(15px, 1vw, 16px);
              line-height: clamp(15px, 1vw, 16px);
              color: #000;
              margin-bottom: 7px; }
              .content .subnavi li ul li ul li a:hover, .content .subnavi li ul li ul li a:focus, .content .subnavi li ul li ul li a:active {
                color: #e74e11; }
              .content .subnavi li ul li ul li.active > a, .content .subnavi li ul li ul li.active > a:link, .content .subnavi li ul li ul li.active > a:visited, .content .subnavi li ul li ul li.active > a:hover, .content .subnavi li ul li ul li.active > a:focus, .content .subnavi li ul li ul li.active > a:active {
                color: #e74e11; }
/***********************
 Swiper allgemein
 ***********************/
.swiper-horizontal {
  position: relative;
  overflow: hidden; }
  .swiper-horizontal .swiper-button-prev, .swiper-horizontal .swiper-button-next {
    background-repeat: no-repeat;
    background-position: center center;
    margin: 0px;
    z-index: 50;
    color: #fff;
    top: calc(50% - 27px);
    width: 60px;
    height: 60px;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    background: rgba(239, 128, 38, 0.5);
    /*&:after {
     display: none;
     }*/ }
    .swiper-horizontal .swiper-button-prev.swiper-button-disabled, .swiper-horizontal .swiper-button-next.swiper-button-disabled {
      opacity: 0; }
  .swiper-horizontal .swiper-button-prev {
    left: -30px;
    transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease; }
  .swiper-horizontal .swiper-button-next {
    right: -60px;
    transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease; }
  .swiper-horizontal:hover .swiper-button-prev, .swiper-horizontal:focus .swiper-button-prev, .swiper-horizontal:active .swiper-button-prev {
    left: 6px;
    transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease; }
    .swiper-horizontal:hover .swiper-button-next, .swiper-horizontal:focus .swiper-button-next, .swiper-horizontal:active .swiper-button-next {
      right: 0px;
      transition: all 0.5s ease;
      -webkit-transition: all 0.5s ease;
      -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
      -o-transition: all 0.5s ease; }
  .swiper-horizontal .swiper-pagination {
    position: relative;
    top: inherit;
    padding-top: 10px; }
    .swiper-horizontal .swiper-pagination .swiper-pagination-bullet {
      width: 10px;
      height: 10px;
      background: #fff;
      margin: 0px 8px;
      opacity: 0.5;
      cursor: pointer;
      border-radius: 5px;
      -webkit-border-radius: 5px;
      -moz-border-radius: 5px;
      -ms-border-radius: 5px;
      -o-border-radius: 5px; }
      .swiper-horizontal .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
        opacity: 1;
        background: #fff; }
/***********************
 Header
 ***********************/
.header {
  background: #fff;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease; }
  .header .align_right {
    text-align: right; }
  .header .suche {
    display: inline-block;
    vertical-align: middle;
    position: relative;
    width: auto;
    margin-right: 15px; }
    .header .suche input#suche_text {
      width: 255px;
      height: 38px;
      line-height: 38px;
      font-size: 15px;
      background: #e0e0e0;
      border: none;
      border-radius: 20px;
      -webkit-border-radius: 20px;
      -moz-border-radius: 20px;
      -ms-border-radius: 20px;
      -o-border-radius: 20px;
      padding: 0px 55px 0px 15px; }
    .header .suche input#suche_button {
      width: 47px;
      height: 38px;
      background-color: #e74e11;
      background-image: url(/basics/images/header_suche_lupe_weiss.svg);
      background-position: center center;
      background-repeat: no-repeat;
      border: none;
      border-radius: 0px 20px 20px 0px;
      -webkit-border-radius: 0px 20px 20px 0px;
      -moz-border-radius: 0px 20px 20px 0px;
      -ms-border-radius: 0px 20px 20px 0px;
      -o-border-radius: 0px 20px 20px 0px;
      text-indent: -99999px;
      position: absolute;
      right: 0px;
      top: 0px;
      z-index: 10;
      cursor: pointer;
      transition: all 0.5s ease;
      -webkit-transition: all 0.5s ease;
      -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
      -o-transition: all 0.5s ease; }
      .header .suche input#suche_button:hover, .header .suche input#suche_button:focus, .header .suche input#suche_button:active {
        background-color: #c73900;
        transition: all 0.5s ease;
        -webkit-transition: all 0.5s ease;
        -moz-transition: all 0.5s ease;
        -ms-transition: all 0.5s ease;
        -o-transition: all 0.5s ease; }
  .header .social {
    display: inline-block;
    vertical-align: middle;
    width: auto; }
    .header .social .account {
      display: inline-block;
      vertical-align: middle;
      width: auto;
      margin: 2px 3px;
      cursor: pointer;
      transition: all 0.5s ease;
      -webkit-transition: all 0.5s ease;
      -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
      -o-transition: all 0.5s ease; }
      .header .social .account:hover, .header .social .account:focus, .header .social .account:active {
        opacity: 0.7;
        transition: all 0.5s ease;
        -webkit-transition: all 0.5s ease;
        -moz-transition: all 0.5s ease;
        -ms-transition: all 0.5s ease;
        -o-transition: all 0.5s ease; }
  .header button.mobilebutton {
    background: #e74e11;
    border: none;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -ms-border-radius: 20px;
    -o-border-radius: 20px;
    display: block;
    padding: 5px 15px;
    text-align: right;
    cursor: pointer; }
    .header button.mobilebutton p {
      font-weight: 500;
      color: #fff;
      display: inline-block;
      vertical-align: middle;
      margin: 0px 10px 0px 0px;
      cursor: pointer; }
    .header button.mobilebutton .icon {
      display: inline-block;
      vertical-align: middle;
      width: 20px;
      height: 14px;
      position: relative;
      -webkit-transform: rotate(0deg);
      -moz-transform: rotate(0deg);
      -o-transform: rotate(0deg);
      transform: rotate(0deg);
      -webkit-transition: 0.5s ease-in-out;
      -moz-transition: 0.5s ease-in-out;
      -o-transition: 0.5s ease-in-out;
      transition: 0.5s ease-in-out;
      cursor: pointer; }
      .header button.mobilebutton .icon span {
        display: block;
        position: absolute;
        height: 2px;
        width: 100%;
        background: #fff;
        opacity: 1;
        left: 0;
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
        -webkit-transition: 0.25s ease-in-out;
        -moz-transition: 0.25s ease-in-out;
        -o-transition: 0.25s ease-in-out;
        transition: 0.25s ease-in-out; }
        .header button.mobilebutton .icon span:nth-child(1) {
          top: 0px; }
        .header button.mobilebutton .icon span:nth-child(2) {
          top: 6px; }
        .header button.mobilebutton .icon span:nth-child(3) {
          top: 12px; }
    .header button.mobilebutton.open .icon span:nth-child(1) {
      top: 6px;
      width: 100%;
      -webkit-transform: rotate(135deg);
      -moz-transform: rotate(135deg);
      -o-transform: rotate(135deg);
      transform: rotate(135deg); }
      .header button.mobilebutton.open .icon span:nth-child(2) {
        opacity: 0; }
      .header button.mobilebutton.open .icon span:nth-child(3) {
        top: 6px;
        width: 100%;
        -webkit-transform: rotate(-135deg);
        -moz-transform: rotate(-135deg);
        -o-transform: rotate(-135deg);
        transform: rotate(-135deg); }
  .header .mobilemenu {
    position: fixed;
    left: 0px;
    top: 70px;
    z-index: 2000;
    width: 100%;
    background: #e0e0e0;
    padding: 10px 0px 25px 0px;
    text-align: center;
    height: calc(100% - 70px);
    overflow: auto; }
    .header .mobilemenu ul {
      font-family: 'Oswald';
      text-align: left;
      list-style-type: none;
      margin: 0px 0px 30px 0px;
      padding: 0px; }
      .header .mobilemenu ul li {
        display: block;
        vertical-align: top;
        position: relative; }
      .header .mobilemenu ul li a, .header .mobilemenu ul li a:link, .header .mobilemenu ul li a:visited {
        display: block;
        font-size: 22px;
        font-weight: 500;
        color: #e74e11;
        padding: 10px 80px 10px 20px; }
      .header .mobilemenu ul li a:hover, .header .mobilemenu ul li a:focus, .header .mobilemenu ul li a:active {
        color: #c73900; }
      .header .mobilemenu ul li a.mobnavpfeil, .header .mobilemenu ul li a.mobnavpfeil:link, .header .mobilemenu ul li a.mobnavpfeil:visited, .header .mobilemenu ul li a.mobnavpfeilfix, .header .mobilemenu ul li a.mobnavpfeilfix:link, .header .mobilemenu ul li a.mobnavpfeilfix:visited {
        text-indent: -9999px;
        position: absolute;
        right: 0px;
        top: 0px;
        z-index: 2100;
        display: block;
        height: 42px;
        width: 70px;
        background-image: url(/basics/images/akkordeon_zu.svg);
        background-repeat: no-repeat;
        background-position: center center;
        border: none !important;
        padding: 0px; }
      .header .mobilemenu ul li a.mobnavpfeil.pfeil-offen, .header .mobilemenu ul li a.mobnavpfeil:link.pfeil-offen, .header .mobilemenu ul li a.mobnavpfeil:visited.pfeil-offen, .header .mobilemenu ul li a.mobnavpfeilfix.pfeil-offen, .header .mobilemenu ul li a.mobnavpfeilfix:link.pfeil-offen, .header .mobilemenu ul li a.mobnavpfeilfix:visited.pfeil-offen {
        background-image: url(/basics/images/akkordeon_offen.svg); }
      .header .mobilemenu ul li.active > a, .header .mobilemenu ul li.active > a:link, .header .mobilemenu ul li.active > a:visited, .header .mobilemenu ul li.active > a:hover, .header .mobilemenu ul li.active > a:focus, .header .mobilemenu ul li.active > a:active {
        color: #c73900; }
      .header .mobilemenu ul li ul {
        margin: 0px;
        padding: 0px 0px 0px 20px; }
      .header .mobilemenu ul li ul.nav {
        display: block; }
      .header .mobilemenu ul li ul li {
        display: block; }
        .header .mobilemenu ul li ul li a, .header .mobilemenu ul li ul li a:link, .header .mobilemenu ul li ul li a:visited {
          color: #000; }
        .header .mobilemenu ul li ul li ul li a, .header .mobilemenu ul li ul li ul li a:link, .header .mobilemenu ul li ul li ul li a:visited {
          font-size: 16px;
          color: #000;
          padding: 5px 80px 5px 20px; }
    .header .mobilemenu .suche input#suche_text {
      background: #fff; }
  .header.sticky {
    position: fixed;
    left: 0px;
    top: 0px;
    z-index: 200;
    width: 100%;
    background: #fff;
    transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease; }
    .header.sticky img.logo {
      height: 70px;
      width: auto; }
/***********************
 Navi
 ***********************/
.navi {
  background: #e74e11;
  transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease; }
  .navi ul {
    font-family: 'Oswald';
    text-align: center;
    list-style-type: none;
    margin: 0px;
    padding: 0px;
    display: flex;
    justify-content: center;
    transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease; }
    .navi ul li {
      display: block;
      vertical-align: top;
      transition: all 0.5s ease;
      -webkit-transition: all 0.5s ease;
      -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
      -o-transition: all 0.5s ease; }
      .navi ul li a, .navi ul li a:link, .navi ul li a:visited {
        display: block;
        font-size: clamp(20px, 2vw, 24px);
        font-weight: 500;
        color: #fff;
        background: #e74e11;
        padding: 25px 10px; }
      .navi ul li a:hover, .navi ul li a:focus, .navi ul li a:active {
        color: #fff;
        background: #c73900; }
      .navi ul li.active a, .navi ul li.active a:link, .navi ul li.active a:visited, .navi ul li.active a:hover, .navi ul li.active a:focus, .navi ul li.active a:active {
        color: #fff;
        background: #c73900; }
  .navi.sticky {
    position: fixed;
    left: 0px;
    top: 70px;
    z-index: 200;
    width: 100%;
    transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease; }
    .navi.sticky ul {
      transition: all 0.5s ease;
      -webkit-transition: all 0.5s ease;
      -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
      -o-transition: all 0.5s ease; }
      .navi.sticky ul li {
        transition: all 0.5s ease;
        -webkit-transition: all 0.5s ease;
        -moz-transition: all 0.5s ease;
        -ms-transition: all 0.5s ease;
        -o-transition: all 0.5s ease; }
      .navi.sticky ul li a, .navi.sticky ul li a:link, .navi.sticky ul li a:visited {
        padding: 10px 15px;
        font-size: clamp(18px, 2vw, 20px); }
/***********************
 Headerbild
 ***********************/
.headerbild_leer {
  height: clamp(50px, 5vw, 85px); }

.headerbild {
  position: relative;
  margin-bottom: clamp(50px, 5vw, 80px); }
  .headerbild:after {
    content: "";
    display: block;
    width: 100%;
    height: clamp(40px, 4vw, 60px);
    clip-path: polygon(0% 100%, 100% 100%, 100% 0%, 0% 100%);
    background: #fff;
    position: absolute;
    right: 0px;
    left: 0px;
    bottom: -1px;
    z-index: 20; }
  .headerbild .box {
    width: 100%;
    height: 360px;
    position: relative;
    z-index: 10; }
    .headerbild .box img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: left center; }
    .headerbild .box .text {
      position: absolute;
      right: 0px;
      left: 50%;
      top: 0px;
      bottom: 30px;
      height: calc(100% - 30px);
      z-index: 30;
      padding: calc(var(--bs-gutter-x)* .5); }
      .headerbild .box .text .text_table {
        display: table;
        width: 100%;
        height: 100%; }
      .headerbild .box .text .text_table .text_tablecell {
        display: table-cell;
        vertical-align: middle; }
      .headerbild .box .text h1 {
        color: #fff;
        margin: 0px; }
      .headerbild .box .text h1 span {
        display: block;
        padding-left: 30px;
        font-size: smaller; }
  .headerbild.slickslider {
    margin-bottom: inherit;
    overflow: hidden; }
    .headerbild.slickslider .slick-prev, .headerbild.slickslider .slick-next {
      -webkit-transition: 0.25s ease-in-out;
      -moz-transition: 0.25s ease-in-out;
      -o-transition: 0.25s ease-in-out;
      transition: 0.25s ease-in-out; }
    .headerbild.slickslider:hover .slick-prev, .headerbild.slickslider:focus .slick-prev, .headerbild.slickslider:active .slick-prev {
      left: 15px;
      -webkit-transition: 0.25s ease-in-out;
      -moz-transition: 0.25s ease-in-out;
      -o-transition: 0.25s ease-in-out;
      transition: 0.25s ease-in-out; }
      .headerbild.slickslider:hover .slick-next, .headerbild.slickslider:focus .slick-next, .headerbild.slickslider:active .slick-next {
        right: 15px;
        -webkit-transition: 0.25s ease-in-out;
        -moz-transition: 0.25s ease-in-out;
        -o-transition: 0.25s ease-in-out;
        transition: 0.25s ease-in-out; }
  .headerbild img, .headerbild picture {
    width: 100%;
    height: auto; }
/***********************
 Headline & text
 ***********************/
.headline_text {
  padding-bottom: clamp(50px, 5vw, 80px); }
  .headline_text ul, .headline_text ol {
    padding-left: 17px; }
  .headline_text .spoc-orga {
    padding: 0px; }
  .headline_text.bildergalerie img {
    padding-bottom: calc(var(--bs-gutter-x)* 1); }
  .headline_text.suchergebnis {
    padding-bottom: 0px; }
    .headline_text.suchergebnis ul li {
      padding-bottom: 10px; }
/***********************
 Newsliste
 ***********************/
.newsliste {
  padding-bottom: clamp(50px, 5vw, 80px); }
  .newsliste h1, .newsliste h2 {
    text-align: center; }
  .newsliste ul, .newsliste ol {
    padding-left: 17px; }
  .newsliste .box {
    padding-bottom: 20px; }
    .newsliste .box img {
      width: 100%;
      height: auto;
      margin-bottom: clamp(15px, 2vw, 30px); }
    .newsliste .box h3 {
      color: #e74e11; }
    .newsliste .box p {
      font-size: 14px;
      line-height: 19px;
      margin-bottom: 15px; }
    .newsliste .box span.mehr {
      display: block;
      font-size: 14px;
      line-height: 19px;
      color: #e74e11;
      font-weight: 600; }
  .newsliste .kontaktbox {
    background: #e74e11;
    padding: calc(var(--bs-gutter-x)* 1);
    margin-bottom: 5px; }
    .newsliste .kontaktbox p {
      font-size: 15px;
      line-height: 20px;
      font-weight: normal;
      color: #fff;
      margin-bottom: 15px; }
      .newsliste .kontaktbox p a, .newsliste .kontaktbox p a:link, .newsliste .kontaktbox p a:visited {
        color: #fff;
        font-weight: normal; }
    .newsliste .kontaktbox a.button {
      display: block;
      width: 100%; }
    .newsliste .kontaktbox a.button.primaer:hover, .newsliste .kontaktbox a.button.primaer:focus, .newsliste .kontaktbox a.button.primaer:active {
      border-color: #fff; }
    .newsliste .kontaktbox.schraege {
      position: relative;
      margin-bottom: 50px; }
      .newsliste .kontaktbox.schraege:after {
        content: "";
        display: block;
        width: 100%;
        height: 30px;
        clip-path: polygon(0% 100%, 100% 2%, 100% 0%, 0% 0%);
        background: #e74e11;
        position: absolute;
        right: 0px;
        left: 0px;
        bottom: -29px; }
/***********************
 Kacheln
 ***********************/
.kacheln {
  padding-bottom: clamp(50px, 5vw, 80px); }
  .kacheln h1, .kacheln h2 {
    text-align: center; }
  .kacheln ul, .kacheln ol {
    padding-left: 17px; }
  .kacheln .box {
    padding: calc(var(--bs-gutter-x)* 1);
    margin-bottom: calc(var(--bs-gutter-x)* 1); }
    .kacheln .box.mit_link {
      position: relative;
      cursor: pointer;
      transition: all 0.5s ease;
      -webkit-transition: all 0.5s ease;
      -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
      -o-transition: all 0.5s ease; }
      .kacheln .box.mit_link:hover, .kacheln .box.mit_link:focus, .kacheln .box.mit_link:active {
        z-index: 100;
        transform: scale(1.1);
        -webkit-transform: scale(1.1);
        -moz-transform: scale(1.1);
        -ms-transform: scale(1.1);
        -o-transform: scale(1.1);
        transition: all 0.5s ease;
        -webkit-transition: all 0.5s ease;
        -moz-transition: all 0.5s ease;
        -ms-transition: all 0.5s ease;
        -o-transition: all 0.5s ease; }
    .kacheln .box .logo {
      width: 100%;
      height: 100px;
      margin-bottom: 15px; }
      .kacheln .box .logo img {
        object-fit: scale-down;
        object-position: center center;
        width: 100%;
        height: 100%; }
    .kacheln .box h3 {
      color: #fff;
      text-align: center;
      margin: 0px; }
/***********************
 Logoslider
 ***********************/
.logoslider {
  background: #ef8026;
  padding-top: clamp(50px, 4vw, 70px);
  padding-bottom: clamp(40px, 4vw, 60px);
  margin-bottom: clamp(90px, 8vw, 140px);
  position: relative; }
  .logoslider:after {
    content: "";
    display: block;
    width: 100%;
    height: clamp(40px, 4vw, 60px);
    clip-path: polygon(0% 100%, 100% 2%, 100% 0%, 0% 0%);
    background: #ef8026;
    position: absolute;
    right: 0px;
    left: 0px;
    bottom: clamp(-59px, -4vw, -39px); }
  .logoslider h1, .logoslider h2 {
    text-align: center; }
  .logoslider h1, .logoslider h2, .logoslider h3, .logoslider h4, .logoslider p, .logoslider ul, .logoslider ol {
    color: #fff; }
  .logoslider ul, .logoslider ol {
    padding-left: 17px; }
  .logoslider .logoslider_slider {
    padding-top: 20px; }
  .logoslider .box {
    text-align: center;
    height: 105px;
    width: 100%; }
    .logoslider .box img {
      width: 100%;
      height: 100%;
      object-fit: scale-down;
      object-position: center; }
    .logoslider .box.mit_link {
      cursor: pointer; }
      .logoslider .box.mit_link img {
        transition: all 0.5s ease;
        -webkit-transition: all 0.5s ease;
        -moz-transition: all 0.5s ease;
        -ms-transition: all 0.5s ease;
        -o-transition: all 0.5s ease; }
      .logoslider .box.mit_link:hover img, .logoslider .box.mit_link:focus img, .logoslider .box.mit_link:active img {
        transform: scale(1.1);
        -webkit-transform: scale(1.1);
        -moz-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transition: all 0.5s ease;
        -webkit-transition: all 0.5s ease;
        -moz-transition: all 0.5s ease;
        -ms-transition: all 0.5s ease;
        -o-transition: all 0.5s ease; }
/***********************
 Newsletteranmeldung
 ***********************/
.newsletteranmeldung {
  padding-bottom: clamp(50px, 5vw, 80px);
  text-align: center; }
  .newsletteranmeldung .box {
    margin: 0px auto;
    width: 100%;
    max-width: 575px; }
    .newsletteranmeldung .box .newsletterbox {
      position: relative; }
    .newsletteranmeldung .box input[type="text"] {
      display: block;
      width: 100%;
      background: #e0e0e0;
      color: #000;
      border: none;
      padding: 0px 115px 0px 15px;
      height: 38px;
      line-height: 38px;
      font-size: 14px;
      font-weight: normal;
      border-radius: 30px;
      -webkit-border-radius: 30px;
      -moz-border-radius: 30px;
      -ms-border-radius: 30px;
      -o-border-radius: 30px; }
    .newsletteranmeldung .box a.submit, .newsletteranmeldung .box a.submit:link, .newsletteranmeldung .box a.submit:visited {
      display: inline-block;
      width: 110px;
      height: 38px;
      line-height: 38px;
      background: #e74e11;
      color: #fff;
      font-size: 14px;
      font-weight: 600;
      text-align: center;
      border: none;
      cursor: pointer;
      border-radius: 0px 30px 30px 0px;
      -webkit-border-radius: 0px 30px 30px 0px;
      -moz-border-radius: 0px 30px 30px 0px;
      -ms-border-radius: 0px 30px 30px 0px;
      -o-border-radius: 0px 30px 30px 0px;
      position: absolute;
      right: 0px;
      top: 0px;
      z-index: 20;
      transition: all 0.5s ease;
      -webkit-transition: all 0.5s ease;
      -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
      -o-transition: all 0.5s ease; }
      .newsletteranmeldung .box a.submit:hover, .newsletteranmeldung .box a.submit:link:hover, .newsletteranmeldung .box a.submit:visited:hover, .newsletteranmeldung .box a.submit:focus, .newsletteranmeldung .box a.submit:link:focus, .newsletteranmeldung .box a.submit:visited:focus, .newsletteranmeldung .box a.submit:active, .newsletteranmeldung .box a.submit:link:active, .newsletteranmeldung .box a.submit:visited:active {
        background: #c73900;
        transition: all 0.5s ease;
        -webkit-transition: all 0.5s ease;
        -moz-transition: all 0.5s ease;
        -ms-transition: all 0.5s ease;
        -o-transition: all 0.5s ease; }
  .newsletteranmeldung form {
    display: block;
    width: 100%; }
/***********************
 Veranstaltungsliste
 ***********************/
.veranstaltungsliste {
  background: #fff4e8;
  padding-top: clamp(50px, 4vw, 70px);
  padding-bottom: clamp(20px, 3vw, 40px);
  margin-bottom: clamp(90px, 8vw, 140px);
  position: relative; }
  .veranstaltungsliste:after {
    content: "";
    display: block;
    width: 100%;
    height: clamp(40px, 4vw, 60px);
    clip-path: polygon(0% 100%, 100% 2%, 100% 0%, 0% 0%);
    background: #fff4e8;
    position: absolute;
    right: 0px;
    left: 0px;
    bottom: clamp(-59px, -4vw, -39px); }
  .veranstaltungsliste h1, .veranstaltungsliste h2 {
    text-align: center; }
  .veranstaltungsliste ul, .veranstaltungsliste ol {
    padding-left: 17px; }
  .veranstaltungsliste .box {
    padding-bottom: 20px; }
    .veranstaltungsliste .box h3 {
      color: #e74e11; }
    .veranstaltungsliste .box p {
      margin-bottom: 15px;
      font-size: 14px;
      line-height: 19px; }
      .veranstaltungsliste .box p.name {
        font-size: clamp(16px, 1vw, 18px);
        line-height: 140%;
        font-weight: bold; }
      /***********************
       Teamliste
       ***********************/

.teamliste {
  padding-bottom: clamp(50px, 5vw, 80px); }
  .teamliste .box {
    padding-bottom: 30px; }
    .teamliste .box img {
      width: 100%;
      height: auto;
      margin-bottom: 15px; }
    .teamliste .box h3 span {
      display: block;
      font-family: 'Open Sans';
      font-size: 14px;
      line-height: 17px;
      padding-top: 5px;
      font-weight: normal; }
/***********************
 Akkordeon
 ***********************/
.akkordeonblock {
  padding-bottom: clamp(50px, 5vw, 80px); }
  .akkordeonblock .box {
    padding-bottom: 10px; }
    .akkordeonblock .box h3.akkordeon {
      cursor: pointer;
      color: #000;
      background-image: url(/basics/images/akkordeon_zu.svg);
      background-repeat: no-repeat;
      background-position: left center;
      padding-left: 30px;
      transition: all 0.5s ease;
      -webkit-transition: all 0.5s ease;
      -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
      -o-transition: all 0.5s ease; }
      .akkordeonblock .box h3.akkordeon.akkordeon_offen {
        background-image: url(/basics/images/akkordeon_offen.svg);
        transition: all 0.5s ease;
        -webkit-transition: all 0.5s ease;
        -moz-transition: all 0.5s ease;
        -ms-transition: all 0.5s ease;
        -o-transition: all 0.5s ease; }
    .akkordeonblock .box .akkordeontext {
      padding-left: 30px; }
/***********************
 Footer
 ***********************/
.footer {
  margin-top: clamp(80px, 6vw, 100px);
  background: #404040;
  padding: 60px 0px 10px 0px;
  position: relative; }
  .footer:before {
    content: "";
    display: block;
    width: 100%;
    height: clamp(40px, 4vw, 60px);
    clip-path: polygon(0% 100%, 100% 100%, 100% 0%, 0% 100%);
    background: #404040;
    position: absolute;
    right: 0px;
    left: 0px;
    top: clamp(-59px, -4vw, -39px);
    z-index: 20; }
  .footer h3 {
    color: #fff;
    font-size: clamp(16px, 2vw, 20px); }
  .footer p, .footer ul {
    font-weight: normal;
    color: #fff;
    font-size: clamp(14px, 2vw, 16px); }
    .footer p.unterstuetzen br:first-child, .footer ul.unterstuetzen br:first-child {
      display: none; }
    .footer p a, .footer ul a, .footer p a:link, .footer ul a:link, .footer p a:visited, .footer ul a:visited {
      color: #fff;
      font-weight: normal; }
    .footer p a:hover, .footer ul a:hover, .footer p a:focus, .footer ul a:focus, .footer p a:active, .footer ul a:active {
      opacity: 0.7;
      color: #fff; }

.copyright {
  background: #404040;
  padding: 20px 0px 50px 0px;
  text-align: right; }
  .copyright p, .copyright ul {
    font-weight: normal;
    color: #fff;
    font-size: clamp(14px, 2vw, 16px); }
  .copyright ul {
    margin: 0px;
    padding: 0px;
    list-style-type: none;
    display: inline-block;
    vertical-align: middle; }
    .copyright ul li {
      display: inline-block;
      vertical-align: top;
      margin-left: 20px; }
      .copyright ul li:first-child {
        margin-left: 0px; }
      .copyright ul li a, .copyright ul li a:link, .copyright ul li a:visited {
        display: block;
        color: #fff;
        font-weight: normal; }
      .copyright ul li a:hover, .copyright ul li a:focus, .copyright ul li a:active {
        opacity: 0.7;
        color: #fff; }
  .copyright .social {
    display: inline-block;
    vertical-align: middle;
    width: auto;
    margin-left: 40px; }
    .copyright .social .account {
      display: inline-block;
      vertical-align: middle;
      width: auto;
      margin: 2px 3px;
      cursor: pointer;
      transition: all 0.5s ease;
      -webkit-transition: all 0.5s ease;
      -moz-transition: all 0.5s ease;
      -ms-transition: all 0.5s ease;
      -o-transition: all 0.5s ease; }
      .copyright .social .account:hover, .copyright .social .account:focus, .copyright .social .account:active {
        opacity: 0.7;
        transition: all 0.5s ease;
        -webkit-transition: all 0.5s ease;
        -moz-transition: all 0.5s ease;
        -ms-transition: all 0.5s ease;
        -o-transition: all 0.5s ease; }
/***********************
 Media Query
 ***********************/
@media (prefers-reduced-motion: reduce) {
  body, html {
    scroll-behavior: auto; } }

@media (max-width: 991.98px) {
  .navi ul li a, .navi ul li a:link, .navi ul li a:visited {
    padding: 25px 9px; }

  .headerbild .box {
    height: 250px; } }

@media (max-width: 767.98px) {
  .header .logo {
    height: 70px;
    width: auto; }

  .headerbild .box {
    height: 160px; } }

@media (max-width: 575.98px) {
  .header .logo {
    height: auto;
    width: auto;
    max-width: 100%; }

  .headerbild .box {
    height: 200px; }
    .headerbild .box .text {
      display: none; } }
