@charset "UTF-8";
/***********************
Farben
***********************/
/*$schwarz: #2E2E33;*/
/***********************
Allgemein
***********************/
* {
  margin: 0px;
  padding: 0px;
  box-sizing: border-box;
}
body, html {
  margin: 0px;
  padding: 0px;
  overflow-x: hidden;
  font-family: 'Montserrat_Light';
  scroll-behavior: smooth;
}
.row {
  margin-right: 0px;
  margin-left: 0px;
}
div {
  width: 100%;
}
.width {
  max-width: 1670px;
  margin: 0 auto;
  position: relative;
}
img {
  max-width: 100%;
  height: auto;
}
p, ul, ol, table {
  font-family: 'Montserrat_Light';
  color: #798594;
  font-size: 20px;
  line-height: 35px;
  margin-bottom: 35px;
}
p.highlight, p .highlight, ul.highlight, ul .highlight, ol.highlight, ol .highlight, table.highlight, table .highlight {
  font-size: 24px;
  color: #112238;
}
p strong, ul strong, ol strong, table strong {
  font-family: 'Montserrat_Bold';
}
.datenschutz-ol p {
  margin: 0px;
}
a, a:link, a:visited {
  color: #DB0032;
  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: #A31536;
  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;
  text-decoration: none;
}
a.button, a.button:link, a.button:visited, a.button:not([href]):not([tabindex]), a.button:not([href]):not([tabindex]):link, a.button:not([href]):not([tabindex]):visited, input[type="submit"].button, span.button, button.button {
  display: inline-block;
  vertical-align: middle;
  font-family: 'Montserrat_Bold';
  font-size: 15px;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #ffffff;
  height: 80px;
  line-height: 80px;
  padding: 0px 55px 0px 45px;
  background-color: #DB0032;
  background-image: url(/basics/images/allgemein_icon_button.svg);
  background-repeat: no-repeat;
  background-position: right 14px center;
  margin-bottom: 25px;
  -webkit-box-shadow: 0px 15px 20px 0px rgba(219, 0, 50, 0.25);
  -moz-box-shadow: 0px 15px 20px 0px rgba(219, 0, 50, 0.25);
  box-shadow: 0px 15px 20px 0px rgba(219, 0, 50, 0.25);
  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;
  border: none;
}
a.button.angebot, a.button:link.angebot, a.button:visited.angebot, a.button:not([href]):not([tabindex]).angebot, a.button:not([href]):not([tabindex]):link.angebot, a.button:not([href]):not([tabindex]):visited.angebot, input[type="submit"].button.angebot, span.button.angebot, button.button.angebot {
  background-image: url(/basics/images/button_icon_angebot.svg);
  padding: 0px 90px 0px 60px;
  background-position: right 26px center;
}
a.button:hover, a.button:focus, a.button:active, a.button:not([href]):not([tabindex]):hover, a.button:not([href]):not([tabindex]):focus, a.button:not([href]):not([tabindex]):active, input[type="submit"].button:hover, input[type="submit"].button:focus, input[type="submit"].button:active, button.button:hover, button.button:focus, button.button:active, span.button:hover, span.button:focus, span.button:active {
  background-color: #A31536;
  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_sekundaer, a.button_sekundaer:link, a.button_sekundaer:visited, input[type="submit"].button_sekundaer, span.button_sekundaer, button.button_sekundaer {
  display: inline-block;
  vertical-align: middle;
  font-family: 'Montserrat_Bold';
  font-size: 15px;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #112238;
  height: 80px;
  line-height: 80px;
  background: none;
  border-bottom: 3px solid #DB0032;
  margin-bottom: 25px;
  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_sekundaer:hover, a.button_sekundaer:focus, a.button_sekundaer:active, input[type="submit"].button_sekundaer:hover, input[type="submit"].button_sekundaer:focus, input[type="submit"].button_sekundaer:active, button.button_sekundaer:hover, button.button_sekundaer:focus, button.button_sekundaer:active, span.button_sekundaer:hover, span.button_sekundaer:focus, span.button_sekundaer:active {
  color: #A31536;
  border-bottom: 3px solid #A31536;
  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;
}
h1, h2, h3, h4, h5, h6 {
  margin-top: 0px;
}
h1 {
  font-family: 'Montserrat_Light';
  font-size: 50px;
  line-height: 60px;
  letter-spacing: -0.3px;
  color: #42546B;
  margin-bottom: 40px;
}
h2 {
  font-family: 'Montserrat_Light';
  font-size: 45px;
  line-height: 60px;
  letter-spacing: -0.3px;
  color: #42546B;
  margin-bottom: 80px;
  position: relative;
}
h2:before {
  content: url(/basics/images/allgemein_icon_ueberschrift.svg);
  display: block;
  position: absolute;
  left: -140px;
  bottom: -3px;
}
h3 {
  font-family: 'Montserrat_Light';
  font-size: 30px;
  line-height: 40px;
  letter-spacing: -0.3px;
  color: #42546B;
  margin-bottom: 25px;
}
h4 {
  font-family: 'Montserrat_Medium';
  font-size: 24px;
  line-height: 34px;
  letter-spacing: -0.3px;
  color: #112238;
  margin-bottom: 15px;
}
h5 {
  font-family: 'Montserrat_Bold';
  color: #112238;
  font-size: 20px;
  line-height: 35px;
  margin-bottom: 0px;
}
.clear {
  clear: both;
  float: none;
  width: 100%;
}
.responsive_video, .responsive-video {
  position: relative;
  padding-bottom: 56%;
  height: 0;
  overflow: hidden;
  width: 100%;
  margin-bottom: 40px;
}
.responsive_video.hochformat, .responsive-video.hochformat {
  padding-bottom: 180%;
}
.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: #F4F4F4;
  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;
}
.responsive_video .noYT .noYT_box .noYT_center p a, .responsive_video .noYT .noYT_box .noYT_center p a:link, .responsive_video .noYT .noYT_box .noYT_center p a:visited, .responsive-video .noYT .noYT_box .noYT_center p a, .responsive-video .noYT .noYT_box .noYT_center p a:link, .responsive-video .noYT .noYT_box .noYT_center p a:visited {
  color: #DB0032;
}
.responsive_video .noYT .noYT_box .noYT_center p a:hover, .responsive_video .noYT .noYT_box .noYT_center p a:focus, .responsive_video .noYT .noYT_box .noYT_center p a:active, .responsive-video .noYT .noYT_box .noYT_center p a:hover, .responsive-video .noYT .noYT_box .noYT_center p a:focus, .responsive-video .noYT .noYT_box .noYT_center p a:active {
  color: #A31536;
}
#phone {
  display: none;
}
.bild_links {
  float: left;
  margin: 0px 30px 15px 0px;
}
.bild_rechts {
  float: right;
  margin: 0px 0px 15px 30px;
}
.hinweis {
  display: inline-block;
  font-family: 'Montserrat_Bold';
  color: #DB0032;
  background: transparent;
  border: 2px solid #DB0032;
  padding: 10px 15px;
}
#karte div {
  width: inherit;
}
/*  ------------------------------------------------------
AKKORDEON
--------------------------------------------------------*/
a.akk_anzeigen, a.akk_anzeigen:link, a.akk_anzeigen:visited {
  display: block;
  padding: 3px 7px;
  background-color: #eee;
  color: #aaa;
  margin-bottom: 15px;
}
a.akk_anzeigen:hover, a.akk_anzeigen:focus, a.akk_anzeigen:active {
  color: #000000;
  text-decoration: none;
}
.linie {
  border-bottom: 1px solid #eee;
  margin: 0px 0px 15px 0px;
}
h2.akkordeon {
  font-size: 16px;
  margin: 0px 0px 5px 0px;
  font-weight: bold;
  color: #000000;
}
p.akkordeonteaser {
  color: #aaa;
}
.akkordeontext3 img, .akkordeontext3 video {
  margin-bottom: 20px;
}
/***********************
Header
***********************/
.header {
  padding: 70px 0px 60px 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;
}
.header .logo {
  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 .logo.weiss {
  opacity: 0;
  height: 0px;
  width: 0px;
}
.header.fixed {
  position: fixed;
  width: 100%;
  z-index: 1000;
  padding: 50px 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;
}
.header.fixed .logo.normal {
  opacity: 0;
  height: 0px;
  width: 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;
}
.header.fixed .logo.weiss {
  opacity: 1;
  height: auto;
  width: auto;
  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.fixed.scroll {
  padding: 20px 0px;
}
.header.fixed.scroll .logo.normal {
  opacity: 1;
  height: auto;
  width: auto;
  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.fixed.scroll .logo.weiss {
  opacity: 0;
  height: 0px;
  width: 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;
}
.header.scroll {
  position: fixed;
  width: 100%;
  z-index: 1000;
  padding: 20px 0px;
  background: rgba(255, 255, 255, 0.5);
  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 ul.mainmenu {
  display: block;
  width: 100%;
  text-align: right;
  margin: 0px;
  padding: 0px;
  list-style-type: none;
}
.header ul.mainmenu li {
  display: inline-block;
  vertical-align: top;
  margin-left: 25px;
  position: relative;
}
.header ul.mainmenu li:first-child {
  margin-left: 0px;
}
.header ul.mainmenu li a, .header ul.mainmenu li a:link, .header ul.mainmenu li a:visited {
  font-family: 'Montserrat_Bold';
  display: block;
  color: #798594;
  text-transform: uppercase;
  font-size: 14px;
  line-height: normal;
  padding: 0px 5px 20px 5px;
  border-bottom: 3px solid #ffffff;
  letter-spacing: 0.75px;
}
.header ul.mainmenu li a:hover, .header ul.mainmenu li a:focus, .header ul.mainmenu li a:active {
  color: #112238;
}
.header ul.mainmenu li.active > a, .header ul.mainmenu li.active > a:link, .header ul.mainmenu li.active > a:visited {
  color: #112238;
  border-bottom: 3px solid #DB0032;
}
.header ul.mainmenu li:hover ul, .header ul.mainmenu li:focus ul, .header ul.mainmenu li:active ul {
  display: block;
}
.header ul.mainmenu li ul {
  display: none;
  position: absolute;
  top: 38px;
  right: 0px;
  z-index: 2500;
}
.header ul.mainmenu li ul:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 8px 8px 8px;
  border-color: transparent transparent #DB0032 transparent;
  position: absolute;
  top: -8px;
  right: 15px;
}
.header ul.mainmenu li ul li {
  display: block;
  margin: 0px;
}
.header ul.mainmenu li ul li a, .header ul.mainmenu li ul li a:link, .header ul.mainmenu li ul li a:visited {
  display: block;
  width: 320px;
  padding: 15px 10px;
  background: #A31536;
  color: #ffffff;
  text-align: center;
  border-bottom: 1px solid #910929;
  font-family: 'Montserrat_Light';
  text-transform: none;
  font-size: 17px;
  letter-spacing: 0px;
}
.header ul.mainmenu li ul li a:hover, .header ul.mainmenu li ul li a:focus, .header ul.mainmenu li ul li a:active {
  background: #DB0032;
}
.header ul.mainmenu li ul li.active > a, .header ul.mainmenu li ul li.active > a:link, .header ul.mainmenu li ul li.active > a:visited, .header ul.mainmenu li ul li.active > a:hover, .header ul.mainmenu li ul li.active > a:focus, .header ul.mainmenu li ul li.active > a:active {
  color: #ffffff;
  font-family: 'Montserrat_Bold';
  background: #DB0032;
}
.header button.mobilebutton {
  /*
		font-family: 'Montserrat_Bold';
		border: none;
		background: $schwarz;
		color: $weiss;
		padding: 0px 35px;
		height: 50px;
		line-height: 50px;
		font-size: 14px;
		text-transform: uppercase;
		letter-spacing: 0.75px;*/
  font-family: 'Montserrat_Light';
  background: none;
  border: none;
  color: #42546B;
  padding: 10px 20px;
  font-size: 40px;
  line-height: 30px;
  cursor: pointer;
  display: 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;
  outline: none;
}
.header button.mobilebutton:before {
  content: '☰';
}
.header button.mobilebutton:hover, .header button.mobilebutton:focus, .header button.mobilebutton:active {
  /*background: $rot;*/
  color: #DB0032;
  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 #mobilemenu {
  width: 100%;
  margin-top: 25px;
}
.header #mobilemenu ul {
  margin: 0px;
  padding: 0px;
  list-style-type: none;
  position: relative;
}
.header #mobilemenu ul:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 8px 8px 8px;
  border-color: transparent transparent #DB0032 transparent;
  position: absolute;
  top: -8px;
  /*right: 50px;*/
  right: 32px;
}
.header #mobilemenu ul li {
  display: block;
  margin: 0px;
}
.header #mobilemenu ul li a, .header #mobilemenu ul li a:link, .header #mobilemenu ul li a:visited {
  display: block;
  width: 100%;
  padding: 15px 10px;
  background: #A31536;
  color: #ffffff;
  text-align: center;
  border-bottom: 1px solid #910929;
  font-family: 'Montserrat_Light';
  text-transform: none;
  font-size: 17px;
}
.header #mobilemenu ul li a:hover, .header #mobilemenu ul li a:focus, .header #mobilemenu ul li a:active {
  background: #DB0032;
}
.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: #ffffff;
  font-family: 'Montserrat_Bold';
  background: #DB0032;
}
.header #mobilemenu ul li ul:before {
  display: none;
}
.header #mobilemenu ul li ul li a, .header #mobilemenu ul li ul li a:link, .header #mobilemenu ul li ul li a:visited {
  padding: 5px 10px;
  font-size: 14px;
}
.header#scrollnavi {
  background: #ffffff;
  position: fixed;
  left: 0px;
  top: 0px;
  z-index: 2500;
  width: 100%;
  padding: 10px 0px;
  border-bottom: 1px solid #F4F4F4;
}
#menubox {
  background: #DB0032;
  position: fixed;
  top: 0px;
  right: 0px;
  bottom: 0px;
  height: 100%;
  width: 0px;
  z-index: 2500;
  padding: 23px 0px;
  overflow: hidden;
  opacity: 0;
  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;
}
#menubox.active {
  width: 530px;
  max-width: 100%;
  opacity: 1;
  padding: 23px 3.1%;
}
#menubox a#schliessen, #menubox a#schliessen:link, #menubox a#schliessen:visited {
  display: block;
  width: 195px;
  margin: 0px 0px 50px auto;
  margin-bottom: clamp(95px, 3vw, 40px);
  padding: 10px 85px 10px 10px;
  background-image: url(/dateien/bilder/icons/menu_icon.svg);
  background-position: right center;
  background-repeat: no-repeat;
  color: #ffffff;
  font-size: 15px;
  font-family: 'Montserrat_Bold';
  text-transform: uppercase;
}
#menubox a#schliessen:hover, #menubox a#schliessen:focus, #menubox a#schliessen:active {
  cursor: pointer;
  opacity: 0.7;
}
#menubox ul {
  width: 248px;
  max-width: 100%;
  padding: 0px;
  margin: 0px auto;
  margin-bottom: clamp(95px, 3vw, 40px);
  list-style-type: none;
}
#menubox ul li a, #menubox ul li a:link, #menubox ul li a:visited {
  display: block;
  font-size: 30px;
  font-family: 'Montserrat_Light';
  color: #ffffff;
  padding: 7px 0px;
  cursor: pointer;
}
#menubox ul li a:before, #menubox ul li a:link:before, #menubox ul li a:visited:before {
  content: "•";
  display: inline-block;
  font-family: 'Montserrat_Bold';
  margin-right: 15px;
  opacity: 0;
}
#menubox ul li a:hover, #menubox ul li a:focus, #menubox ul li a:active {
  font-family: 'Montserrat_Bold';
  color: #ffffff;
}
#menubox ul li.active a, #menubox ul li.active a:link, #menubox ul li.active a:visited {
  font-family: 'Montserrat_Bold';
}
#menubox ul li.active a:before, #menubox ul li.active a:link:before, #menubox ul li.active a:visited:before {
  opacity: 1;
}
#menubox .social {
  width: 195px;
  max-width: 100%;
  margin: 0px auto;
}
#menubox .social img {
  display: inline-block;
  vertical-align: middle;
  margin-right: 35px;
}
/***********************
Headerbild
***********************/
.headerbild.abstand {
  margin-bottom: 70px;
}
.headerbild .headerslider {
  margin-bottom: 0px;
  -webkit-box-shadow: 0px 50px 50px 0px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0px 50px 50px 0px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 50px 50px 0px rgba(0, 0, 0, 0.1);
}
.headerbild .headerslider .bildbox {
  position: relative;
  height: 1000px;
  object-fit: cover;
}
.headerbild .headerslider .bildbox img {
  width: 100%;
  height: 100%;
  max-width: inherit;
  object-fit: cover;
}
.headerbild .headerslider .bildbox .textbox {
  position: absolute;
  left: 0px;
  right: 0px;
  top: 0px;
  bottom: 0px;
  width: 100%;
  height: 100%;
}
.headerbild .headerslider .bildbox .textbox .textbox_table {
  display: table;
  width: 100%;
  height: 100%;
}
.headerbild .headerslider .bildbox .textbox .textbox_table .textbox_tablecell {
  display: table-cell;
  vertical-align: middle;
}
.headerbild .headerslider .bildbox .textbox .textbox_table .textbox_tablecell span {
  display: block;
  font-family: 'Montserrat_Light';
  font-size: 70px;
  line-height: normal;
  color: #ffffff;
  text-align: center;
}
.headerbild .headerslider .bildbox .textbox .textbox_table .textbox_tablecell p {
  display: block;
  font-family: 'Montserrat_Light';
  font-size: 70px;
  line-height: 75px;
  color: #ffffff;
  text-align: center;
}
.headerbild .headerslider .bildbox .textbox .textbox_table .textbox_tablecell p strong {
  font-weight: bold;
  display: block;
}
.headerbild .headerslider .slick-dots {
  width: 8.333333%;
  width: calc(8.333333% + 15px);
  margin: 0px;
  position: absolute;
  bottom: 125px;
  right: -8.333333%;
  right: calc(-8.333333% - 15px);
  z-index: 100;
}
.headerbild .headerslider .slick-dots li {
  display: block;
  text-align: center;
  margin: 10px;
  width: auto;
  height: auto;
  line-height: 10px;
}
.headerbild .headerslider .slick-dots li button {
  display: inline-block;
  width: 17px;
  height: 17px;
  border: none;
  background: #798594;
  border: 5px solid #ffffff;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  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;
}
.headerbild .headerslider .slick-dots li button:hover, .headerbild .headerslider .slick-dots li button:focus, .headerbild .headerslider .slick-dots li button:active {
  border: 5px solid #F4F4F4;
  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;
}
.headerbild .headerslider .slick-dots li button:before {
  display: none;
}
.headerbild .headerslider .slick-dots li.slick-active button {
  background: #DB0032;
  border: 5px solid #F4F4F4;
  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;
}
/***********************
Textheader
***********************/
.textheader {
  position: relative;
}
.textheader .bg {
  background: #F4F4F4;
  padding: 110px 0px 70px 0px;
}
.textheader .button {
  margin: 0px 60px 25px 0px;
}
.textheader .button_sekundaer {
  margin: 0px 0px 25px 0px;
}
.textheader .bild {
  position: relative;
}
.textheader .bild img {
  position: absolute;
  left: -16.6666%;
  top: 0px;
  z-index: 200;
}
.textheader #nlForm {
  width: 100%;
  margin-bottom: 25px;
  position: relative;
}
.textheader #nlForm input[type="text"] {
  height: 80px;
  line-height: 80px;
  border: none;
  background: #ffffff;
  padding: 0px 220px 0px 35px;
  color: #798595;
  font-size: 15px;
  letter-spacing: 1px;
  text-transform: uppercase;
  font-family: 'Montserrat_Medium';
  width: 100%;
}
.textheader #nlForm .button {
  border: none;
  position: absolute;
  right: 0px;
  top: 0px;
  z-index: 200;
  margin: 0px;
}
/***********************
Sticky Kontaktbox
***********************/
.sticky_kontaktbox {
  position: fixed;
  right: 0px;
  top: 0px;
  z-index: 2000;
  width: 8.333333%;
}
.sticky_kontaktbox .boxen {
  width: 100%;
}
.sticky_kontaktbox .boxen .box {
  position: relative;
  height: 90px;
  width: 100%;
  background-color: #DB0032;
  background-repeat: no-repeat;
  background-position: center center;
  cursor: pointer;
  z-index: 2050;
  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;
}
.sticky_kontaktbox .boxen .box:hover, .sticky_kontaktbox .boxen .box:focus, .sticky_kontaktbox .boxen .box:active {
  background-color: #A31536;
  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;
}
.sticky_kontaktbox .boxen .box:hover span, .sticky_kontaktbox .boxen .box:focus span, .sticky_kontaktbox .boxen .box:active span {
  opacity: 1;
  width: auto;
  padding-left: 60px;
  background: #A31536;
  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;
}
.sticky_kontaktbox .boxen .box .leer {
  position: absolute;
  left: 0px;
  right: 0px;
  top: 0px;
  bottom: 0px;
  width: 100%;
  height: 100%;
}
.sticky_kontaktbox .boxen .box span {
  font-family: 'Montserrat_Medium';
  height: 90px;
  line-height: 90px;
  width: 0px;
  opacity: 0;
  display: block;
  position: absolute;
  top: 0px;
  right: 100%;
  color: #ffffff;
  font-size: 15px;
  white-space: nowrap;
  text-transform: uppercase;
  background: #DB0032;
  overflow: hidden;
  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;
}
/***********************
Headline & Text
***********************/
.headline_text {
  padding-bottom: 100px;
}
.headline_text ul, .headline_text ol {
  padding-left: 17px;
}
/***********************
Einstiegsbox
***********************/
.einstiegsbox {
  margin-top: -120px;
  margin-bottom: 100px;
  position: relative;
}
.einstiegsbox.update_2023 {
  margin-top: 0px;
}
.einstiegsbox.update_2023.uberlappung_oben:before {
  height: 200%;
  z-index: -1;
}
.einstiegsbox.update_2023:before {
  background: #F4F4F4;
  right: inherit;
  left: 0px;
  top: inherit;
  bottom: 0px;
}
.einstiegsbox.update_2023 .bg {
  background: #F4F4F4;
  padding: 120px 0px;
}
.einstiegsbox.uberlappung_leistungen {
  margin-top: -330px;
}
.einstiegsbox.keine_uberlappung {
  margin-top: 0px;
}
.einstiegsbox:before {
  content: "";
  display: block;
  background: #ffffff;
  position: absolute;
  right: 0px;
  top: 0px;
  bottom: 0px;
  height: 100%;
  width: 50%;
}
.einstiegsbox.flaeche_nein:before {
  display: none;
}
.einstiegsbox .bg {
  padding-top: 120px;
  background: #ffffff;
}
.einstiegsbox h1 {
  /*width: 475px;*/
  max-width: 100%;
}
.einstiegsbox .buttonbox {
  padding-top: 30px;
}
.einstiegsbox .buttonbox a.button, .einstiegsbox .buttonbox a.button:link, .einstiegsbox .buttonbox a.button:visited {
  padding: 0px 60px;
  margin-right: 80px;
}
.einstiegsbox .buttonbox a.button.angebot, .einstiegsbox .buttonbox a.button:link.angebot, .einstiegsbox .buttonbox a.button:visited.angebot {
  padding: 0px 90px 0px 60px;
}
.einstiegsbox .bewertungen {
  margin-bottom: 25px;
  padding-top: 55px;
}
.einstiegsbox .bewertungen span {
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
}
.einstiegsbox .bewertungen span.zahl {
  font-family: 'Montserrat_Medium';
  color: #42546B;
  font-size: 36px;
  line-height: normal;
}
.einstiegsbox .bewertungen span.rezensionen {
  color: #798594;
  font-size: 20px;
  line-height: normal;
  margin-top: 3px;
}
.einstiegsbox .bewertungen img {
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
  width: 135px;
  height: auto;
}
/***********************
Dreierbox dunkel
***********************/
.dreierbox_dunkel {
  position: relative;
}
.dreierbox_dunkel.abstand {
  margin-bottom: 100px;
}
.dreierbox_dunkel.ueberlappung_oben {
  margin-top: -120px;
}
.dreierbox_dunkel .box {
  background: #112238;
  padding: 75px 15px 90px 15px;
  position: relative;
  cursor: pointer;
  height: 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;
}
.dreierbox_dunkel .box:hover, .dreierbox_dunkel .box:focus, .dreierbox_dunkel .box:active {
  transform: scale(1.2);
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -ms-transform: scale(1.2);
  -o-transform: scale(1.2);
  background: #A31536;
  z-index: 200;
}
.dreierbox_dunkel .box:hover p, .dreierbox_dunkel .box:focus p, .dreierbox_dunkel .box:active p {
  color: #D395A3;
  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;
}
.dreierbox_dunkel .box:hover span.button, .dreierbox_dunkel .box:focus span.button, .dreierbox_dunkel .box:active span.button {
  opacity: 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;
  margin-top: 40px;
}
.dreierbox_dunkel .box h3, .dreierbox_dunkel .box p {
  display: block;
  width: 340px;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.dreierbox_dunkel .box h3 {
  color: #ffffff;
}
.dreierbox_dunkel .box p {
  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;
}
.dreierbox_dunkel .box span.button {
  display: block;
  text-align: center;
  position: absolute;
  left: 0px;
  right: 0px;
  bottom: 0px;
  margin: 0px;
  opacity: 0;
  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;
}
/***********************
Teaserboxen
***********************/
.teaserboxen {
  padding: 100px 0px 70px 0px;
  margin-bottom: 100px;
  background: #F4F4F4;
  position: relative;
}
.teaserboxen.ueberlappung:before {
  content: "";
  display: block;
  background: #F4F4F4;
  position: absolute;
  left: 0px;
  right: 0px;
  top: -200px;
  width: 100%;
  height: 200px;
  z-index: -1;
}
.teaserboxen.keine_abstand_unten {
  margin-bottom: 0px;
}
.teaserboxen h3 {
  padding: 5px 0px 5px 65px;
  background-position: left center;
  background-repeat: no-repeat;
}
.teaserboxen p {
  padding-left: 65px;
  margin-bottom: 80px;
}
.teaserboxen .buttonbox {
  text-align: center;
  padding-bottom: 80px;
}
.teaserboxen .buttonbox a.button, .teaserboxen .buttonbox a.button:link, .teaserboxen .buttonbox a.button:visited {
  margin-bottom: 0px;
}
/***********************
News

***********************/
.newsvorschau {
  margin-bottom: 100px;
}
.newsvorschau .box img {
  width: 100%;
  height: auto;
  margin-bottom: 30px;
}
.newsvorschau .box span {
  display: inline-block;
  vertical-align: top;
  margin-right: 10px;
  font-family: 'Montserrat_Regular';
  font-size: 15px;
  line-height: normal;
  text-transform: uppercase;
  color: #DB0032;
  margin-bottom: 20px;
}
.newsvorschau .box h3 {
  font-family: 'Montserrat_Medium';
  font-size: 24px;
  line-height: 34px;
  margin-bottom: 20px;
}
.newsvorschau .box p {
  margin-bottom: 60px;
}
.newsvorschau .buttonbox {
  text-align: center;
}
.newsvorschau .buttonbox img {
  display: inline-block;
  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;
}
.newsvorschau .buttonbox img:hover, .newsvorschau .buttonbox img:focus, .newsvorschau .buttonbox img:active {
  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;
  transform: scale(1.2);
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -ms-transform: scale(1.2);
  -o-transform: scale(1.2);
}
/***********************
Bildergalerie
***********************/
.bildergalerie {
  background: #112238;
  position: relative;
  padding: 120px 0px;
  margin-bottom: 80px;
}
.bildergalerie.abstand_nein {
  margin-bottom: 0px;
  padding-bottom: 190px;
}
.bildergalerie.symbol:before {
  content: url(/basics/images/allgemein_icon_kreise_rand.svg);
  position: absolute;
  top: -277px;
  right: -265px;
  z-index: 1;
}
.bildergalerie h2 {
  position: relative;
  z-index: 100;
  color: #ffffff;
  margin-bottom: 20px;
}
.bildergalerie h2:before {
  content: url(/basics/images/allgemein_icon_ueberschrift_dunkler.svg);
}
.bildergalerie .filter {
  position: relative;
  z-index: 1000;
  display: flex;
}
.bildergalerie .filter ul {
  display: block;
  padding: 0px;
  margin: 0px 0px 60px 0px;
  list-style-type: none;
  border-bottom: 1px solid #42546B;
  text-align: right;
}
.bildergalerie .filter ul.reiterfilter {
  width: 100%;
}
.bildergalerie .filter ul.reiterfilter li:first-child {
  margin-left: 0px;
}
.bildergalerie .filter ul.aufklappfilter li:last-child > a, .bildergalerie .filter ul.aufklappfilter li:last-child > a:link, .bildergalerie .filter ul.aufklappfilter li:last-child > a:visited {
  background-image: url(/basics/images/allgemein_icon_filter_rot.svg);
  background-repeat: no-repeat;
  background-position: left top 9px;
  padding-left: 28px;
  color: #ffffff;
  font-family: 'Montserrat_Bold';
}
.bildergalerie .filter ul.aufklappfilter li ul li:last-child a, .bildergalerie .filter ul.aufklappfilter li ul li:last-child a:link, .bildergalerie .filter ul.aufklappfilter li ul li:last-child a:visited {
  font-family: 'Montserrat_Light';
  background-image: none;
  padding: 15px 20px;
  color: #ffffff;
}
.bildergalerie .filter ul.aufklappfilter li ul li.active a, .bildergalerie .filter ul.aufklappfilter li ul li.active a:link, .bildergalerie .filter ul.aufklappfilter li ul li.active a:visited, .bildergalerie .filter ul.aufklappfilter li ul li.checked a, .bildergalerie .filter ul.aufklappfilter li ul li.checked a:link, .bildergalerie .filter ul.aufklappfilter li ul li.checked a:visited {
  color: #ffffff;
  font-family: 'Montserrat_Bold' !important;
  background: #DB0032;
}
.bildergalerie .filter ul li {
  display: inline-block;
  vertical-align: top;
  position: relative;
  margin-left: 50px;
}
.bildergalerie .filter ul li a, .bildergalerie .filter ul li a:link, .bildergalerie .filter ul li a:visited {
  font-family: 'Montserrat_Medium';
  color: #798595;
  letter-spacing: 1px;
  text-transform: uppercase;
  display: block;
  padding: 0px 5px 30px 5px;
  border-bottom: 3px solid transparent;
  margin-bottom: -1px;
  font-size: 15px;
}
.bildergalerie .filter ul li a:hover, .bildergalerie .filter ul li a:focus, .bildergalerie .filter ul li a:active {
  color: #ffffff;
}
.bildergalerie .filter ul li.active a, .bildergalerie .filter ul li.active a:link, .bildergalerie .filter ul li.active a:visited {
  color: #ffffff;
  border-bottom: 3px solid #DB0032;
}
.bildergalerie .filter ul li:hover ul, .bildergalerie .filter ul li:focus ul, .bildergalerie .filter ul li:active ul {
  display: block;
}
.bildergalerie .filter ul li ul {
  display: none;
  position: absolute;
  top: 67px;
  right: 0px;
  z-index: 500;
  width: auto;
  border: none;
}
.bildergalerie .filter ul li ul:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 8px 8px 8px;
  border-color: transparent transparent #DB0032 transparent;
  position: absolute;
  top: -8px;
  right: 15px;
}
.bildergalerie .filter ul li ul li {
  display: block;
  margin: 0px;
}
.bildergalerie .filter ul li ul li a, .bildergalerie .filter ul li ul li a:link, .bildergalerie .filter ul li ul li a:visited {
  display: block;
  width: 320px;
  padding: 15px 20px;
  background: #A31536;
  color: #ffffff;
  text-align: left;
  border-bottom: 1px solid #910929;
  font-family: 'Montserrat_Light';
  text-transform: none;
  font-size: 17px;
  letter-spacing: 0px;
  margin-bottom: 0px;
}
.bildergalerie .filter ul li ul li a span, .bildergalerie .filter ul li ul li a:link span, .bildergalerie .filter ul li ul li a:visited span {
  display: inline-block;
  vertical-align: middle;
  width: 19px;
  height: 19px;
  background-color: #ffffff;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  margin-right: 20px;
}
.bildergalerie .filter ul li ul li a:hover, .bildergalerie .filter ul li ul li a:focus, .bildergalerie .filter ul li ul li a:active {
  background: #DB0032;
}
.bildergalerie .filter ul li ul li.active > a, .bildergalerie .filter ul li ul li.active > a:link, .bildergalerie .filter ul li ul li.active > a:visited, .bildergalerie .filter ul li ul li.active > a:hover, .bildergalerie .filter ul li ul li.active > a:focus, .bildergalerie .filter ul li ul li.active > a:active {
  color: #ffffff;
  font-family: 'Montserrat_Bold';
  background: #DB0032;
}
.bildergalerie .filter ul li ul li.checked a, .bildergalerie .filter ul li ul li.checked a:link, .bildergalerie .filter ul li ul li.checked a:visited {
  background: #DB0032;
  color: #ffffff;
  font-family: 'Montserrat_Bold';
}
.bildergalerie .filter ul li ul li.checked a span, .bildergalerie .filter ul li ul li.checked a:link span, .bildergalerie .filter ul li ul li.checked a:visited span {
  background-image: url(/basics/images/allgemein_icon_haken_rot.svg);
  background-repeat: no-repeat;
  background-position: center center;
}
.bildergalerie .filter ul li ul li:last-child > a, .bildergalerie .filter ul li ul li:last-child > a:link, .bildergalerie .filter ul li ul li:last-child > a:visited {
  background-image: none;
  padding-left: 20px;
}
.bildergalerie .grid {
  position: relative;
  z-index: 100;
}
.bildergalerie .grid .grid-item {
  position: relative;
  float: left;
  /*padding: 8px;*/
  z-index: 1500;
  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;
  position: relative;
}
.bildergalerie .grid .grid-item:hover, .bildergalerie .grid .grid-item:focus, .bildergalerie .grid .grid-item:active {
  transform: scale(1.2);
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -ms-transform: scale(1.2);
  -o-transform: scale(1.2);
  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;
  z-index: 2000;
}
.bildergalerie .grid .grid-item .rahmen {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0px;
  right: 0px;
  top: 0px;
  bottom: 0px;
  z-index: 200;
  border: 8px solid #112238;
}
.bildergalerie .grid .grid-item.Grid_2x2 {
  width: 40%;
}
.bildergalerie .grid .grid-item.Grid_1x2 {
  width: 20%;
}
.bildergalerie .grid .grid-item.Grid_2x1 {
  width: 40%;
}
.bildergalerie .grid .grid-item.Grid_1x1 {
  width: 20%;
}
.mfp-figure:after {
  background: none;
  box-shadow: none;
}
.mfp-bg, .mfp-wrap {
  z-index: 5000;
}
.mfp-container {
  padding: 30px;
}
/***********************
Bildergalerie manuell
***********************/
.bildergalerie_amanuell {
  margin-bottom: 100px;
}
.bildergalerie_amanuell.mehr_abstand {
  margin-bottom: 300px;
}
.bildergalerie_amanuell .grid {
  position: relative;
}
.bildergalerie_amanuell .grid .item {
  display: block;
  position: absolute;
  z-index: 1;
}
.bildergalerie_amanuell .grid .item.width_25 {
  width: 25%;
}
.bildergalerie_amanuell .grid .item.width_50 {
  width: 50%;
}
.bildergalerie_amanuell .grid .item.width_75 {
  width: 75%;
}
.bildergalerie_amanuell .grid .item.width_100 {
  width: 100%;
}
.bildergalerie_amanuell .grid .item .item-content {
  position: relative;
  width: 100%;
  height: 100%;
}
.bildergalerie_amanuell .grid .item img {
  width: 100%;
  height: auto;
  border: 8px solid #ffffff;
}
/***********************
Faktenblock
***********************/
.faktenblock {
  text-align: center;
  margin-bottom: 110px;
}
.faktenblock.ueberlappung {
  margin-top: -70px;
}
.faktenblock.abstand_nein {
  margin-bottom: 0px;
}
.faktenblock .row.no-gutters {
  background: #112238;
  -webkit-box-shadow: 0px 50px 50px 0px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 0px 50px 50px 0px rgba(0, 0, 0, 0.3);
  box-shadow: 0px 50px 50px 0px rgba(0, 0, 0, 0.3);
  padding: 100px 0px 100px 0px;
}
.faktenblock .row.no-gutters h2 {
  color: #ffffff;
  font-size: 105px;
  line-height: 90px;
  letter-spacing: -0.3px;
  font-family: 'Montserrat_Light';
  margin-bottom: 30px;
}
.faktenblock .row.no-gutters h3 {
  color: #B1B7BE;
  margin-bottom: 0px;
}
/***********************
Logos
***********************/
.logos {
  margin-bottom: 65px;
  text-align: center;
}
.logos h2 {
  text-align: left;
}
.logos .logobox {
  display: flex;
  flex-flow: wrap;
}
.logos .logobox a {
  display: inline-block;
  width: 20%;
  margin-bottom: 20px;
}
.logos .logobox.logoslider {
  display: block;
  margin-bottom: 0px;
}
.logos .logobox.logoslider a, .logos .logobox.logoslider img {
  width: auto;
  margin-bottom: 0px;
}
.logos .logobox.logoslider .slick-dots {
  display: block;
  width: 100%;
  margin: 0px;
  position: relative;
  left: 0px;
  bottom: 0px;
  text-align: center;
}
.logos .logobox.logoslider .slick-dots li {
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  margin: 10px;
  width: auto;
  height: auto;
  line-height: 10px;
}
.logos .logobox.logoslider .slick-dots li button {
  display: inline-block;
  width: 17px;
  height: 17px;
  border: none;
  background: #798594;
  border: 5px solid #ffffff;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  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;
}
.logos .logobox.logoslider .slick-dots li button:hover, .logos .logobox.logoslider .slick-dots li button:focus, .logos .logobox.logoslider .slick-dots li button:active {
  border: 5px solid #F4F4F4;
  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;
}
.logos .logobox.logoslider .slick-dots li button:before {
  display: none;
}
.logos .logobox.logoslider .slick-dots li.slick-active button {
  background: #DB0032;
  border: 5px solid #F4F4F4;
  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;
}
/***********************
Leistungsübersicht
***********************/
.leistungsubersicht {
  background: #112238;
  padding: 120px 0px 10px 0px;
  margin-bottom: 85px;
  -webkit-box-shadow: 0px 50px 50px 0px rgba(0, 0, 0, 0.16);
  -moz-box-shadow: 0px 50px 50px 0px rgba(0, 0, 0, 0.16);
  box-shadow: 0px 50px 50px 0px rgba(0, 0, 0, 0.16);
  position: relative;
}
.leistungsubersicht:before {
  content: url(/basics/images/allgemein_icon_kreise_rand.svg);
  position: absolute;
  top: inherit;
  bottom: 60px;
  right: -265px;
  z-index: 0;
}
.leistungsubersicht.padding_oben {
  padding-top: 330px;
}
.leistungsubersicht.ueberlappung {
  margin-bottom: 0px;
  padding-bottom: 330px;
}
.leistungsubersicht.ueberlappung:before {
  bottom: 330px;
}
.leistungsubersicht .box {
  margin-bottom: 120px;
  background: #42546B;
  position: relative;
  z-index: 1500;
}
.leistungsubersicht .box img {
  width: 100%;
  height: auto;
}
.leistungsubersicht .box .text {
  padding: 90px 55px 65px 45px;
  position: relative;
}
.leistungsubersicht .box .text h3 {
  color: #ffffff;
  font-family: 'Montserrat_Medium';
  padding: 7px 0px 7px 85px;
  background-position: left center;
  background-repeat: no-repeat;
}
.leistungsubersicht .box .text p {
  padding-left: 85px;
  margin: 0px;
  color: #A1AAB4;
  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;
}
.leistungsubersicht .box .text span.button {
  width: 100%;
  text-align: center;
  position: absolute;
  left: 0px;
  bottom: 0px;
  margin: 0px;
  height: 0px;
  overflow: hidden;
  opacity: 0;
  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;
}
.leistungsubersicht .box.mit_link {
  cursor: pointer;
  z-index: 2000;
  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;
}
.leistungsubersicht .box.mit_link:hover, .leistungsubersicht .box.mit_link:focus, .leistungsubersicht .box.mit_link:active {
  background: #A31536;
  transform: scale(1.2);
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -ms-transform: scale(1.2);
  -o-transform: scale(1.2);
  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;
}
.leistungsubersicht .box.mit_link:hover .text, .leistungsubersicht .box.mit_link:focus .text, .leistungsubersicht .box.mit_link:active .text {
  padding-bottom: 125px;
}
.leistungsubersicht .box.mit_link:hover .text p, .leistungsubersicht .box.mit_link:focus .text p, .leistungsubersicht .box.mit_link:active .text p {
  color: #ffffff;
  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;
}
.leistungsubersicht .box.mit_link:hover .text span.button, .leistungsubersicht .box.mit_link:focus .text span.button, .leistungsubersicht .box.mit_link:active .text span.button {
  opacity: 1;
  height: auto;
  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;
}
/***********************
Teamübersicht
***********************/
.teamuebersicht {
  margin-top: -120px;
  margin-bottom: 120px;
  position: relative;
}
.teamuebersicht:before {
  content: "";
  display: block;
  background: #ffffff;
  position: absolute;
  right: 0px;
  top: 0px;
  bottom: 0px;
  height: 100%;
  width: 50%;
}
.teamuebersicht.abstand_unten_weniger {
  margin-bottom: 20px;
}
.teamuebersicht .bg {
  padding-top: 120px;
  background: #ffffff;
}
.teamuebersicht h2:before {
  display: none;
}
.teamuebersicht .box {
  margin-bottom: 100px;
}
.teamuebersicht .box img {
  width: 80%;
  height: auto;
}
.teamuebersicht .box .text {
  position: relative;
  z-index: 200;
  background: #ffffff;
  width: 90%;
  display: block;
  margin: 0px 0px 0px auto;
  padding: 30px 0px 0px 25px;
  margin-top: -35px;
}
.teamuebersicht .box .text p {
  font-size: 18px;
  line-height: 25px;
  margin-bottom: 5px;
}
.teamuebersicht .box .text p .highlight {
  font-size: 22px;
  line-height: 30px;
  color: #DB0032;
}
.teamuebersicht .box .linkbox {
  width: 80%;
  background: #DB0032;
  text-align: center;
  height: 0px;
  padding-bottom: 87%;
  position: relative;
}
.teamuebersicht .box .linkbox .linkbox_table {
  display: block;
  position: absolute;
  left: 0px;
  right: 0px;
  top: 0px;
  bottom: 0px;
  z-index: 200;
  width: 100%;
  height: 100%;
  background-image: url(/basics/images/allgemein_icon_mehr_laden_weiss.svg);
  background-repeat: no-repeat;
  background-position: center center;
  opacity: 0.2;
  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;
  transform: scale(0.8);
  -webkit-transform: scale(0.8);
  -moz-transform: scale(0.8);
  -ms-transform: scale(0.8);
  -o-transform: scale(0.8);
}
.teamuebersicht .box .linkbox:hover .linkbox_table, .teamuebersicht .box .linkbox:focus .linkbox_table, .teamuebersicht .box .linkbox:active .linkbox_table {
  opacity: 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;
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
}
/***********************
Zeitleiste
***********************/
.zeitleiste {
  background: #112238;
  padding: 185px 0px;
  position: relative;
}
.zeitleiste:before {
  content: url(/basics/images/allgemein_icon_kreise_rand.svg);
  position: absolute;
  top: -277px;
  right: -265px;
  z-index: 1;
}
.zeitleiste.ueberlappung_unten {
  padding-bottom: 380px;
}
.zeitleiste h2 {
  color: #ffffff;
}
.zeitleiste h2:before {
  content: url(/basics/images/allgemein_icon_ueberschrift_dunkler.svg);
}
.zeitleiste img {
  display: inline-block;
  margin-bottom: 20px;
}
.zeitleiste h3 {
  width: 400px;
  max-width: 100%;
  color: #DB0032;
}
.zeitleiste p {
  width: 400px;
  max-width: 100%;
}
.zeitleiste .linke_box {
  text-align: right;
}
.zeitleiste .linke_box h3, .zeitleiste .linke_box p {
  margin-left: auto;
}
.zeitleiste .mittlere_box {
  position: relative;
  text-align: center;
}
.zeitleiste .mittlere_box.last:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 18px 8px 0 8px;
  border-color: #b1b7be transparent transparent transparent;
  position: absolute;
  left: 49%;
  left: calc(50% - 8px);
  bottom: 0px;
}
.zeitleiste .mittlere_box:before {
  content: "";
  display: inline-block;
  width: 2px;
  background: #3A4B61;
  height: 100%;
  position: absolute;
  left: 50%;
  left: calc(50% - 1px);
  top: 0px;
}
.zeitleiste .mittlere_box .kreis {
  display: inline-block;
  width: 47px;
  height: 47px;
  background-image: url(/basics/images/zeitleiste_punkt.svg);
  background-repeat: no-repeat;
  background-position: center center;
  position: relative;
  z-index: 200;
}
/***********************
Jobs & Fragen
***********************/
.jobs_fragen {
  background: #F4F4F4;
  padding: 185px 0px 100px 0px;
  margin-bottom: 150px;
}
.jobs_fragen.weiss {
  background: none;
  padding-bottom: 50px;
}
.jobs_fragen.ueberlappung {
  position: relative;
}
.jobs_fragen.ueberlappung:before {
  content: "";
  display: block;
  background: #F4F4F4;
  width: 100%;
  height: 290px;
  position: absolute;
  left: 0px;
  top: -290px;
  z-index: -1;
}
.jobs_fragen .box {
  background: #ffffff;
  padding: 70px 70px 45px 70px;
  margin-bottom: 30px;
}
.jobs_fragen .box span {
  display: block;
  color: #DB0032;
  font-size: 15px;
  line-height: normal;
  text-transform: uppercase;
  font-family: 'Montserrat_Regular';
  margin-bottom: 10px;
}
.jobs_fragen .box .button {
  margin-right: 40px;
}
.jobs_fragen .akkordeonblock {
  margin-bottom: 55px;
}
.jobs_fragen .akkordeonblock .akkordeonbox h4 {
  background-image: url(/basics/images/allgemein_icon_plus_rot.svg);
  background-repeat: no-repeat;
  background-position: left center;
  padding-left: 40px;
  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;
}
.jobs_fragen .akkordeonblock .akkordeonbox h4.akkordeon_offen {
  background-image: url(/basics/images/allgemein_icon_minus_rot.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;
}
.jobs_fragen .akkordeonblock .akkordeonbox .akkordeontext {
  padding-left: 40px;
}
/***********************
Newsliste
***********************/
.newsliste {
  background: #112238;
  padding: 140px 0px;
  margin-bottom: 80px;
}
.newsliste .filter {
  position: relative;
  z-index: 2000;
}
.newsliste .filter ul {
  display: block;
  width: 100%;
  padding: 0px;
  margin: 0px 0px 60px 0px;
  list-style-type: none;
  border-bottom: 1px solid #42546B;
  text-align: right;
}
.newsliste .filter ul.mobile {
  display: none;
}
.newsliste .filter ul.mobile .filterlink > a, .newsliste .filter ul.mobile .filterlink > a:link, .newsliste .filter ul.mobile .filterlink > a:visited {
  background-image: url(/basics/images/allgemein_icon_filter_rot.svg);
  background-repeat: no-repeat;
  background-position: left top 4px;
  padding-left: 28px;
  color: #ffffff;
  font-family: 'Montserrat_Bold';
}
.newsliste .filter ul li {
  display: inline-block;
  vertical-align: top;
  position: relative;
  margin-left: 50px;
}
.newsliste .filter ul li a, .newsliste .filter ul li a:link, .newsliste .filter ul li a:visited {
  font-family: 'Montserrat_Medium';
  color: #798595;
  letter-spacing: 1px;
  text-transform: uppercase;
  display: block;
  padding: 0px 5px 30px 5px;
  border-bottom: 3px solid transparent;
  margin-bottom: -1px;
  font-size: 15px;
}
.newsliste .filter ul li.active a, .newsliste .filter ul li.active a:link, .newsliste .filter ul li.active a:visited {
  color: #ffffff;
  border-bottom: 3px solid #DB0032;
}
.newsliste .filter ul li:hover, .newsliste .filter ul li:focus, .newsliste .filter ul li:active {
  color: #ffffff;
}
.newsliste .filter ul li:hover ul, .newsliste .filter ul li:focus ul, .newsliste .filter ul li:active ul {
  display: block;
}
.newsliste .filter ul li ul {
  display: none;
  position: absolute;
  top: 57px;
  right: 0px;
  z-index: 2000;
  width: auto;
  border: none;
}
.newsliste .filter ul li ul:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 8px 8px 8px;
  border-color: transparent transparent #DB0032 transparent;
  position: absolute;
  top: -8px;
  right: 15px;
}
.newsliste .filter ul li ul li {
  display: block;
  margin: 0px;
}
.newsliste .filter ul li ul li a, .newsliste .filter ul li ul li a:link, .newsliste .filter ul li ul li a:visited {
  display: block;
  width: 320px;
  padding: 15px 20px;
  background: #A31536;
  color: #ffffff;
  text-align: left;
  border-bottom: 1px solid #910929;
  font-family: 'Montserrat_Light';
  text-transform: none;
  font-size: 17px;
  letter-spacing: 0px;
  margin-bottom: 0px;
}
.newsliste .filter ul li ul li a span, .newsliste .filter ul li ul li a:link span, .newsliste .filter ul li ul li a:visited span {
  display: inline-block;
  vertical-align: middle;
  width: 19px;
  height: 19px;
  background-color: #ffffff;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  margin-right: 20px;
}
.newsliste .filter ul li ul li a:hover, .newsliste .filter ul li ul li a:focus, .newsliste .filter ul li ul li a:active {
  background: #DB0032;
}
.newsliste .filter ul li ul li.active > a, .newsliste .filter ul li ul li.active > a:link, .newsliste .filter ul li ul li.active > a:visited, .newsliste .filter ul li ul li.active > a:hover, .newsliste .filter ul li ul li.active > a:focus, .newsliste .filter ul li ul li.active > a:active {
  color: #ffffff;
  font-family: 'Montserrat_Bold';
  background: #DB0032;
}
.newsliste .filter ul li ul li.checked a, .newsliste .filter ul li ul li.checked a:link, .newsliste .filter ul li ul li.checked a:visited {
  background: #DB0032;
  color: #ffffff;
  font-family: 'Montserrat_Bold';
}
.newsliste .filter ul li ul li.checked a span, .newsliste .filter ul li ul li.checked a:link span, .newsliste .filter ul li ul li.checked a:visited span {
  background-image: url(/basics/images/allgemein_icon_haken_rot.svg);
  background-repeat: no-repeat;
  background-position: center center;
}
.newsliste .filter ul li ul li:last-child > a, .newsliste .filter ul li ul li:last-child > a:link, .newsliste .filter ul li ul li:last-child > a:visited {
  background-image: none;
  padding-left: 20px;
}
.newsliste .box {
  background: #ffffff;
  margin-bottom: 25px;
  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;
  position: relative;
  z-index: 1500;
}
.newsliste .box img {
  width: 100%;
  height: auto;
}
.newsliste .box .textbox {
  padding: 55px 60px 35px 60px;
  position: relative;
}
.newsliste .box .textbox h4, .newsliste .box .textbox p {
  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;
}
.newsliste .box .textbox span.kategorie {
  display: inline-block;
  vertical-align: top;
  margin-right: 20px;
  color: #DB0032;
  font-size: 15px;
  line-height: normal;
  text-transform: uppercase;
  font-family: 'Montserrat_Regular';
  margin-bottom: 10px;
  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;
}
.newsliste .box .textbox .button {
  position: absolute;
  bottom: 0px;
  left: 0px;
  width: 100%;
  text-align: center;
  margin: 0px;
  opacity: 0;
  height: 0px;
}
.newsliste .box:hover, .newsliste .box:focus, .newsliste .box:active {
  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;
  transform: scale(1.2);
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -ms-transform: scale(1.2);
  -o-transform: scale(1.2);
  background: #A31536;
  z-index: 2000;
}
.newsliste .box:hover .textbox, .newsliste .box:focus .textbox, .newsliste .box:active .textbox {
  padding-bottom: 90px;
}
.newsliste .box:hover .textbox span.kategorie, .newsliste .box:hover .textbox h4, .newsliste .box:hover .textbox p, .newsliste .box:focus .textbox span.kategorie, .newsliste .box:focus .textbox h4, .newsliste .box:focus .textbox p, .newsliste .box:active .textbox span.kategorie, .newsliste .box:active .textbox h4, .newsliste .box:active .textbox p {
  color: #ffffff;
  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;
}
.newsliste .box:hover .textbox .button, .newsliste .box:focus .textbox .button, .newsliste .box:active .textbox .button {
  opacity: 1;
  height: 80px;
}
.newsliste .buttonbox {
  text-align: center;
  padding-top: 60px;
  padding-bottom: 40px;
}
.newsliste .buttonbox img {
  display: inline-block;
  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;
}
.newsliste .buttonbox img:hover, .newsliste .buttonbox img:focus, .newsliste .buttonbox img:active {
  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;
  transform: scale(1.2);
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -ms-transform: scale(1.2);
  -o-transform: scale(1.2);
}
/***********************
Newsbeitrag
***********************/
.newsbeitrag {
  margin-bottom: 80px;
}
.newsbeitrag.marken .bild .logo {
  background: #ffffff;
  position: absolute;
  right: 0px;
  bottom: 0px;
  z-index: 200;
  height: 110px;
  width: 500px;
  max-width: 60%;
  padding: 15px 15px 0px 15px;
}
.newsbeitrag.marken .bild .logo img {
  width: 100%;
  height: 100%;
  object-fit: scale-down;
  object-position: center bottom;
}
.newsbeitrag .bild {
  position: relative;
}
.newsbeitrag .bild a.button, .newsbeitrag .bild a.button:link, .newsbeitrag .bild a.button:visited {
  position: absolute;
  left: 0px;
  top: 0px;
  z-index: 200;
  background-color: #112238;
  background-image: url(/basics/images/allgemein_icon_button_blau.svg);
  background-position: left 20px center;
  width: 275px;
  text-align: center;
  box-shadow: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -ms-box-shadow: none;
  -o-box-shadow: none;
}
.newsbeitrag .bild a.button:hover, .newsbeitrag .bild a.button:focus, .newsbeitrag .bild a.button:active {
  background-color: #42546B;
}
.newsbeitrag .bild img {
  width: 100%;
  height: auto;
  position: relative;
  z-index: -2;
}
.newsbeitrag span.kategorie {
  display: inline-block;
  color: #db0032;
  font-size: 15px;
  line-height: normal;
  text-transform: uppercase;
  font-family: 'Montserrat_Regular';
  margin-bottom: 43px;
  top: -17px;
  position: relative;
}
.newsbeitrag span.kategorie:before {
  content: "";
  height: 85px;
  width: 1000px;
  background: #ffffff;
  position: absolute;
  left: -600px;
  top: -55px;
  z-index: -1;
}
.newsbeitrag .text h4 {
  margin-bottom: 30px;
}
.newsbeitrag .text ul, .newsbeitrag .text ol {
  padding-left: 22px;
}
.newsbeitrag .text .zitatbox {
  float: left;
  width: 50%;
  padding: 45px 15px 80px 0px;
}
.newsbeitrag .text .zitatbox .zitat_text {
  background: #F4F4F4;
  padding: 30px 35px;
  width: 400px;
  max-width: 85%;
  position: relative;
  -webkit-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.16);
  -moz-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.16);
  box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.16);
  margin-bottom: 30px;
}
.newsbeitrag .text .zitatbox .zitat_text p {
  font-size: 18px;
  line-height: 30px;
  color: #42546B;
  margin: 0px;
}
.newsbeitrag .text .zitatbox .zitat_person {
  padding-left: 30px;
}
.newsbeitrag .text .zitatbox .zitat_person img {
  display: inline-block;
  vertical-align: middle;
  margin: 5px 20px 5px 0px;
}
.newsbeitrag .text .zitatbox .zitat_person p {
  display: inline-block;
  vertical-align: middle;
  max-width: 50%;
  margin: 0px;
  font-size: 16px;
  line-height: 23px;
  color: #112238;
}
.newsbeitrag .bild_inhalt {
  width: 100%;
  height: auto;
  margin-bottom: 25px;
}
.newsbeitrag .linke_spalte a.button {
  width: 100%;
  text-align: center;
}
.newsbeitrag .shariff {
  width: 100%;
}
.newsbeitrag .shariff ul {
  display: block;
  width: 100%;
  max-width: 100%;
}
.newsbeitrag .shariff ul li {
  height: auto;
  margin-right: 15px;
}
.newsbeitrag .shariff ul li a, .newsbeitrag .shariff ul li a:link, .newsbeitrag .shariff ul li a:visited {
  height: 36px;
  line-height: 36px;
}
.newsbeitrag .shariff ul li a .fa, .newsbeitrag .shariff ul li a:link .fa, .newsbeitrag .shariff ul li a:visited .fa {
  height: 36px;
  line-height: 36px;
  vertical-align: inherit;
  width: 40px;
}
.newsbeitrag .shariff ul li a .share_text, .newsbeitrag .shariff ul li a:link .share_text, .newsbeitrag .shariff ul li a:visited .share_text {
  height: 36px;
  line-height: 36px;
  vertical-align: inherit;
}
/***********************
Zweispalter dunkel
***********************/
.zweispalter_dunkel.zweispalter_schmal {
  margin-bottom: 80px;
}
.zweispalter_dunkel.zweispalter_schmal .bg {
  background: #112238;
  padding: 60px 0px 25px 0px;
}
.zweispalter_dunkel.zweispalter_breit {
  background: #112238;
  padding: 130px 0px 100px 0px;
  margin-bottom: 80px;
}
.zweispalter_dunkel.zweispalter_breit.ueberlappung_unten {
  padding-bottom: 300px;
  margin-bottom: 0px;
}
.zweispalter_dunkel.ueberlappung_oben {
  margin-top: -185px;
  position: relative;
  z-index: 200;
}
.zweispalter_dunkel h2:before {
  content: url(/basics/images/allgemein_icon_ueberschrift_dunkler.svg);
}
.zweispalter_dunkel h2, .zweispalter_dunkel h3, .zweispalter_dunkel h4, .zweispalter_dunkel p, .zweispalter_dunkel ul, .zweispalter_dunkel ol, .zweispalter_dunkel table {
  color: #ffffff;
}
.zweispalter_dunkel h2 a, .zweispalter_dunkel h2 a:link, .zweispalter_dunkel h2 a:visited, .zweispalter_dunkel h3 a, .zweispalter_dunkel h3 a:link, .zweispalter_dunkel h3 a:visited, .zweispalter_dunkel h4 a, .zweispalter_dunkel h4 a:link, .zweispalter_dunkel h4 a:visited, .zweispalter_dunkel p a, .zweispalter_dunkel p a:link, .zweispalter_dunkel p a:visited, .zweispalter_dunkel ul a, .zweispalter_dunkel ul a:link, .zweispalter_dunkel ul a:visited, .zweispalter_dunkel ol a, .zweispalter_dunkel ol a:link, .zweispalter_dunkel ol a:visited, .zweispalter_dunkel table a, .zweispalter_dunkel table a:link, .zweispalter_dunkel table a:visited {
  color: #ffffff;
  font-size: 15px;
  letter-spacing: 1px;
  text-transform: uppercase;
  font-family: 'Montserrat_Bold';
}
.zweispalter_dunkel h2 a:hover, .zweispalter_dunkel h2 a:focus, .zweispalter_dunkel h2 a:active, .zweispalter_dunkel h3 a:hover, .zweispalter_dunkel h3 a:focus, .zweispalter_dunkel h3 a:active, .zweispalter_dunkel h4 a:hover, .zweispalter_dunkel h4 a:focus, .zweispalter_dunkel h4 a:active, .zweispalter_dunkel p a:hover, .zweispalter_dunkel p a:focus, .zweispalter_dunkel p a:active, .zweispalter_dunkel ul a:hover, .zweispalter_dunkel ul a:focus, .zweispalter_dunkel ul a:active, .zweispalter_dunkel ol a:hover, .zweispalter_dunkel ol a:focus, .zweispalter_dunkel ol a:active, .zweispalter_dunkel table a:hover, .zweispalter_dunkel table a:focus, .zweispalter_dunkel table a:active {
  color: #DB0032;
}
.zweispalter_dunkel ul, .zweispalter_dunkel ol {
  padding-left: 23px;
}
.zweispalter_dunkel table {
  width: 100%;
}
.zweispalter_dunkel table td {
  width: 60%;
  padding-right: 15px;
  vertical-align: top;
}
.zweispalter_dunkel table td:first-child {
  width: 40%;
}
/***********************
Google-Maps
***********************/
.google_maps {
  position: relative;
  z-index: 200;
}
.google_maps.ueberlappung_oben {
  margin-top: -175px;
}
.google_maps.abstand_unten {
  margin-bottom: 80px;
}
.google_maps #karte {
  -webkit-box-shadow: 0px 50px 50px 0px rgba(0, 0, 0, 0.16);
  -moz-box-shadow: 0px 50px 50px 0px rgba(0, 0, 0, 0.16);
  box-shadow: 0px 50px 50px 0px rgba(0, 0, 0, 0.16);
}
.google_maps .ankerbox {
  position: relative;
}
.google_maps .ankerbox a {
  position: absolute;
  top: -400px;
}
/***********************
Kontaktformular
***********************/
.kontaktformular {
  background: #F4F4F4;
  padding: 160px 0px 115px 0px;
  margin-bottom: 80px;
  position: relative;
}
.kontaktformular.uberlappung_oben {
  padding-top: 180px;
}
.kontaktformular.uberlappung_oben:before {
  content: "";
  display: block;
  background: #F4F4F4;
  width: 100%;
  height: 200px;
  position: absolute;
  left: 0px;
  top: -200px;
  z-index: -1;
}
.kontaktformular.uberlappung_unten {
  margin-bottom: 0px;
  padding-bottom: 300px;
}
.formular {
  width: 100%;
}
.formular .box {
  background: #ffffff;
  margin-bottom: 8px;
  padding: 55px 0px 30px 0px;
}
.formular .box h4 {
  margin-bottom: 40px;
}
.formular .box p {
  font-size: 17px;
  line-height: 30px;
}
.formular .box p span {
  display: inline-block;
  vertical-align: top;
  width: 80%;
  padding-left: 20px;
}
.formular .box p input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -o-appearance: none;
  width: 18px;
  height: 18px;
  background: #ffffff;
  border: 2px solid #B1B7BE;
  display: inline-block;
  vertical-align: top;
  margin: 5px 0px 0px 0px;
}
.formular .box p input[type="checkbox"]:checked {
  border-color: #DB0032;
  background: #DB0032;
}
.formular .box label {
  display: block;
  margin-bottom: 15px;
  font-size: 17px;
  line-height: 20px;
  color: #595D7E;
}
.formular .box input[type="text"], .formular .box input[type="email"] {
  height: 50px;
  line-height: 50px;
  padding: 0px 10px;
  width: 100%;
  font-size: 17px;
  color: #112238;
  background: #F4F4F4;
  border: none;
  margin-bottom: 25px;
}
.formular .box textarea {
  height: 160px;
  line-height: 20px;
  padding: 5px 10px;
  width: 100%;
  font-size: 17px;
  color: #112238;
  background: #F4F4F4;
  border: none;
  margin-bottom: 50px;
}
.formular .box select {
  background-color: #ffffff;
  background-image: url(/basics/images/allgemein_icon_select.svg);
  background-repeat: no-repeat;
  background-position: right 25px center;
  border: 2px solid #B1B7BE;
  color: #798595;
  font-size: 17px;
  line-height: 20px;
  padding: 0px 45px 0px 35px;
  height: 46px;
  border-radius: 50px;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  -ms-border-radius: 50px;
  -o-border-radius: 50px;
  margin-bottom: 25px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -o-appearance: none;
  max-width: 100%;
}
.formular .box input[type="date"], .formular .box input[type="text"].flatpickr-input {
  width: auto;
  background: #ffffff;
  border: 2px solid #B1B7BE;
  color: #798595;
  font-size: 17px;
  line-height: 20px;
  padding: 0px 35px;
  height: 46px;
  border-radius: 50px;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  -ms-border-radius: 50px;
  -o-border-radius: 50px;
  margin-bottom: 25px;
  max-width: 100%;
}
.formular .box input[type="text"].flatpickr-input {
  background-image: url(/basics/images/allgemein_icon_datum.svg);
  background-repeat: no-repeat;
  background-position: right 15px center;
  padding-right: 50px;
  max-width: 100%;
}
.formular .box span.auswahl {
  display: inline-block;
  vertical-align: top;
  background: #ffffff;
  border: 2px solid #B1B7BE;
  color: #798595;
  font-size: 17px;
  line-height: 20px;
  padding: 0px 35px;
  height: 46px;
  line-height: 44px;
  border-radius: 50px;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  -ms-border-radius: 50px;
  -o-border-radius: 50px;
  margin: 0px 25px 25px 0px;
  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;
}
.formular .box span.auswahl.active {
  color: #DB0032;
  border-color: #DB0032;
  background: #FFF2F5;
  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;
}
.formular .box .button {
  width: 100%;
  text-align: center;
}
.flatpickr-calendar .flatpickr-day.today {
  border-color: #A31536;
}
.flatpickr-calendar .flatpickr-day.selected {
  background: #DB0032;
  border-color: #DB0032;
}
.flatpickr-calendar .flatpickr-clear .flatpickr-clear-button {
  background: #DB0032;
  color: #ffffff;
  padding: 5px 10px;
  width: 100%;
  display: block;
}
.flatpickr-calendar .flatpickr-clear .flatpickr-clear-button:hover, .flatpickr-calendar .flatpickr-clear .flatpickr-clear-button:focus, .flatpickr-calendar .flatpickr-clear .flatpickr-clear-button:active {
  background: #A31536;
  color: #ffffff;
}
/***********************
Downloads
***********************/
.downloads {
  background: #112238;
  padding: 140px 0px 100px 0px;
  margin-bottom: 80px;
}
.downloads.kein_abstand {
  margin-bottom: 0px;
}
.downloads h2 {
  color: #ffffff;
}
.downloads h2:before {
  content: url(/basics/images/allgemein_icon_ueberschrift_dunkler.svg);
}
.downloads .filter {
  position: relative;
  z-index: 1000;
}
.downloads .filter ul {
  display: block;
  width: 100%;
  padding: 0px;
  margin: 0px 0px 60px 0px;
  list-style-type: none;
  border-bottom: 1px solid #42546B;
  text-align: right;
}
.downloads .filter ul.mobile {
  display: none;
}
.downloads .filter ul.mobile .filterlink > a, .downloads .filter ul.mobile .filterlink > a:link, .downloads .filter ul.mobile .filterlink > a:visited {
  background-image: url(/basics/images/allgemein_icon_filter_rot.svg);
  background-repeat: no-repeat;
  background-position: left top 4px;
  padding-left: 28px;
  color: #ffffff;
  font-family: 'Montserrat_Bold';
}
.downloads .filter ul li {
  display: inline-block;
  vertical-align: top;
  position: relative;
  margin-left: 50px;
}
.downloads .filter ul li a, .downloads .filter ul li a:link, .downloads .filter ul li a:visited {
  font-family: 'Montserrat_Medium';
  color: #798595;
  letter-spacing: 1px;
  text-transform: uppercase;
  display: block;
  padding: 0px 5px 30px 5px;
  border-bottom: 3px solid transparent;
  margin-bottom: -1px;
  font-size: 15px;
}
.downloads .filter ul li a:hover, .downloads .filter ul li a:focus, .downloads .filter ul li a:active {
  color: #ffffff;
}
.downloads .filter ul li.active a, .downloads .filter ul li.active a:link, .downloads .filter ul li.active a:visited {
  color: #ffffff;
  border-bottom: 3px solid #DB0032;
}
.downloads .filter ul li:hover ul, .downloads .filter ul li:focus ul, .downloads .filter ul li:active ul {
  display: block;
}
.downloads .filter ul li ul {
  display: none;
  position: absolute;
  top: 57px;
  right: 0px;
  z-index: 500;
  width: auto;
  border: none;
}
.downloads .filter ul li ul:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 8px 8px 8px;
  border-color: transparent transparent #DB0032 transparent;
  position: absolute;
  top: -8px;
  right: 15px;
}
.downloads .filter ul li ul li {
  display: block;
  margin: 0px;
}
.downloads .filter ul li ul li a, .downloads .filter ul li ul li a:link, .downloads .filter ul li ul li a:visited {
  display: block;
  width: 320px;
  padding: 15px 20px;
  background: #A31536;
  color: #ffffff;
  text-align: left;
  border-bottom: 1px solid #910929;
  font-family: 'Montserrat_Light';
  text-transform: none;
  font-size: 17px;
  letter-spacing: 0px;
  margin-bottom: 0px;
}
.downloads .filter ul li ul li a span, .downloads .filter ul li ul li a:link span, .downloads .filter ul li ul li a:visited span {
  display: inline-block;
  vertical-align: middle;
  width: 19px;
  height: 19px;
  background-color: #ffffff;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  margin-right: 20px;
}
.downloads .filter ul li ul li a:hover, .downloads .filter ul li ul li a:focus, .downloads .filter ul li ul li a:active {
  background: #DB0032;
}
.downloads .filter ul li ul li.active > a, .downloads .filter ul li ul li.active > a:link, .downloads .filter ul li ul li.active > a:visited, .downloads .filter ul li ul li.active > a:hover, .downloads .filter ul li ul li.active > a:focus, .downloads .filter ul li ul li.active > a:active {
  color: #ffffff;
  font-family: 'Montserrat_Bold';
  background: #DB0032;
}
.downloads .filter ul li ul li.checked a, .downloads .filter ul li ul li.checked a:link, .downloads .filter ul li ul li.checked a:visited {
  background: #DB0032;
  color: #ffffff;
  font-family: 'Montserrat_Bold';
}
.downloads .filter ul li ul li.checked a span, .downloads .filter ul li ul li.checked a:link span, .downloads .filter ul li ul li.checked a:visited span {
  background-image: url(/basics/images/allgemein_icon_haken_rot.svg);
  background-repeat: no-repeat;
  background-position: center center;
}
.downloads .filter ul li ul li:last-child > a, .downloads .filter ul li ul li:last-child > a:link, .downloads .filter ul li ul li:last-child > a:visited {
  background-image: none;
  padding-left: 20px;
}
.downloads #liste .box {
  background: #ffffff;
  padding: 25px;
  margin-bottom: 20px;
}
.downloads #liste .box p {
  margin: 0px;
}
.downloads #liste .box p strong {
  color: #112238;
  font-size: 24px;
  font-family: 'Montserrat_Medium';
}
.downloads .buttonbox {
  text-align: center;
  padding-top: 120px;
}
.downloads .buttonbox img {
  display: inline-block;
  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;
}
.downloads .buttonbox img:hover, .downloads .buttonbox img:focus, .downloads .buttonbox img:active {
  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;
  transform: scale(1.2);
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -ms-transform: scale(1.2);
  -o-transform: scale(1.2);
}
/***********************
Banner Angebote
***********************/
.banner_angebote {
  margin-bottom: 120px;
  padding: 90px 0px;
}
.banner_angebote .text {
  width: 100%;
  max-width: 600px;
  padding-left: 120px;
  margin: 0px 0px 25px auto;
  text-align: center;
  position: relative;
}
.banner_angebote .text .bild_klein {
  position: absolute;
  left: 0px;
  top: -20px;
  max-width: 110px;
}
.banner_angebote .text h3 {
  font-size: 50px;
  line-height: 60px;
  letter-spacing: -0.3px;
  font-family: 'Montserrat_Light';
  margin-bottom: 50px;
}
.banner_angebote .text h3 strong {
  font-family: 'Montserrat_Bold';
  display: inline-block;
  width: 100%;
}
.banner_angebote .bild_gross {
  display: block;
  margin: 0 auto;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}
/***********************
Vorschauboxen Angebote
***********************/
.vorschauboxen_angebote {
  padding-bottom: 90px;
}
.vorschauboxen_angebote .col {
  height: 635px;
}
.vorschauboxen_angebote .boxen .box_box {
  height: 634px;
  float: left;
  margin: 0px 15px 30px 15px;
}
.vorschauboxen_angebote .boxen:after {
  content: "";
  display: block;
  clear: both;
  width: 100%;
  height: 0px;
}
.vorschauboxen_angebote .boxen_1 .box_box {
  max-width: 100%;
  max-width: calc(100% - 30px);
}
.vorschauboxen_angebote .boxen_2 .box_box:nth-child(1) {
  max-width: 66.666667%;
  max-width: calc(66.666667% - 30px);
}
.vorschauboxen_angebote .boxen_2 .box_box:nth-child(2) {
  max-width: 33.333333%;
  max-width: calc(33.333333% - 30px);
}
.vorschauboxen_angebote .boxen_3 .box_box:nth-child(1) {
  max-width: 66.666667%;
  max-width: calc(66.666667% - 30px);
}
.vorschauboxen_angebote .boxen_3 .box_box:nth-child(2), .vorschauboxen_angebote .boxen_3 .box_box:nth-child(3) {
  height: 302px;
  max-width: 33.333333%;
  max-width: calc(33.333333% - 30px);
}
.vorschauboxen_angebote .boxen_4 .box_box:nth-child(1), .vorschauboxen_angebote .boxen_4 .box_box:nth-child(2) {
  max-width: 33.333333%;
  max-width: calc(33.333333% - 30px);
}
.vorschauboxen_angebote .boxen_4 .box_box:nth-child(3), .vorschauboxen_angebote .boxen_4 .box_box:nth-child(4) {
  height: 302px;
  max-width: 33.333333%;
  max-width: calc(33.333333% - 30px);
}
.vorschauboxen_angebote .boxen_video .box_box:nth-child(1), .vorschauboxen_angebote .boxen_video .box_box:nth-child(2), .vorschauboxen_angebote .boxen_video .box_box:nth-child(3), .vorschauboxen_angebote .boxen_video .box_box:nth-child(4) {
  max-width: 33.333333%;
  max-width: calc(33.333333% - 30px);
}
.vorschauboxen_angebote .boxen_video .box_box .responsive_video, .vorschauboxen_angebote .boxen_video .box_box .responsive-video {
  margin: 0px;
  padding-bottom: 0px;
  height: 100%;
  background: #112238;
}
.vorschauboxen_angebote .box {
  height: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  position: relative;
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(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;
  cursor: pointer;
}
.vorschauboxen_angebote .box.kein_link {
  cursor: inherit;
}
.vorschauboxen_angebote .box.kein_link:hover, .vorschauboxen_angebote .box.kein_link:focus, .vorschauboxen_angebote .box.kein_link:active {
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
}
.vorschauboxen_angebote .box.kein_link:hover p, .vorschauboxen_angebote .box.kein_link:focus p, .vorschauboxen_angebote .box.kein_link:active p {
  background: rgba(20, 33, 49, 0.42);
}
.vorschauboxen_angebote .box p {
  position: absolute;
  left: 0px;
  right: 0px;
  bottom: 0px;
  width: 100%;
  z-index: 50px;
  background: rgba(20, 33, 49, 0.42);
  padding: 30px 35px;
  color: #ffffff;
  font-size: 24px;
  line-height: auto;
  font-family: 'Montserrat_Medium';
  letter-spacing: -0.3px;
  margin: 0px;
  border-left: 15px solid #DB0032;
  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;
}
.vorschauboxen_angebote .box:hover, .vorschauboxen_angebote .box:focus, .vorschauboxen_angebote .box:active {
  transform: scale(1.05);
  -webkit-transform: scale(1.05);
  -moz-transform: scale(1.05);
  -ms-transform: scale(1.05);
  -o-transform: scale(1.05);
  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;
}
.vorschauboxen_angebote .box:hover p, .vorschauboxen_angebote .box:focus p, .vorschauboxen_angebote .box:active p {
  background: #DB0032;
  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;
}
.vorschauboxen_angebote .newsbox {
  background: #112238;
  padding: 30px;
  width: 100%;
  height: 302px;
  margin-bottom: 30px;
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(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;
}
.vorschauboxen_angebote .newsbox:hover, .vorschauboxen_angebote .newsbox:focus, .vorschauboxen_angebote .newsbox:active {
  cursor: pointer;
  transform: scale(1.05);
  -webkit-transform: scale(1.05);
  -moz-transform: scale(1.05);
  -ms-transform: scale(1.05);
  -o-transform: scale(1.05);
  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;
}
.vorschauboxen_angebote .newsbox .newsbox_table {
  display: table;
  width: 100%;
  height: 100%;
}
.vorschauboxen_angebote .newsbox .newsbox_table .newsbox_tablecell {
  display: table-cell;
  vertical-align: bottom;
}
.vorschauboxen_angebote .newsbox span {
  display: block;
  color: #DB0032;
  font-size: 15px;
  font-family: 'Montserrat_Medium';
  text-transform: uppercase;
  margin-bottom: 10px;
}
.vorschauboxen_angebote .newsbox h3 {
  color: #ffffff;
  font-family: 'Montserrat_Medium';
  font-size: 24px;
  line-height: 30px;
  margin: 0px;
}
.vorschauboxen_angebote a.button_sekundaer {
  position: relative;
  margin-top: -20px;
  margin-bottom: 30px;
}
/***********************
Zweispalter mit Bild & Text
***********************/
.zweispalter_bild_text .box {
  padding-bottom: 100px;
}
.zweispalter_bild_text .box img {
  margin-bottom: 20px;
}
.zweispalter_bild_text .box h3 {
  font-size: 40px;
  font-weight: 300;
  color: #DB0032;
  margin-bottom: 5px;
}
/***********************
Bild volle Breite
***********************/
.bild_volle_breite {
  margin-bottom: 120px;
}
.bild_volle_breite img {
  width: 100%;
  height: auto;
}
/***********************
Videoliste
***********************/
.videoliste {
  margin-bottom: 90px;
}
.videoliste .responsive_video {
  margin-bottom: 30px;
}
/***********************
Inhalte mit Bild & Text
***********************/
.inhalte_bild_text {
  padding-bottom: 100px;
}
.inhalte_bild_text.kein_abstand_unten {
  padding-bottom: 0px;
}
.inhalte_bild_text.kein_abstand_unten .box {
  padding-bottom: 0px;
}
.inhalte_bild_text.kein_abstand_unten .box img {
  margin-bottom: 0px;
}
.inhalte_bild_text .box {
  padding-bottom: 20px;
}
.inhalte_bild_text .box img {
  width: 100%;
  height: auto;
  margin-bottom: 35px;
}
/***********************
Markenliste
***********************/
.markenliste .box {
  height: 100%;
  background: #42546B;
  cursor: pointer;
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(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;
}
.markenliste .box:hover, .markenliste .box:focus, .markenliste .box:active {
  background: #A31536;
  transform: scale(1.05);
  -webkit-transform: scale(1.05);
  -moz-transform: scale(1.05);
  -ms-transform: scale(1.05);
  -o-transform: scale(1.05);
  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;
}
.markenliste .box:hover .bild:before, .markenliste .box:focus .bild:before, .markenliste .box:active .bild:before {
  background: #A31536;
  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;
}
.markenliste .box:hover .text, .markenliste .box:focus .text, .markenliste .box:active .text {
  padding-bottom: 105px;
  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;
}
.markenliste .box:hover .text p, .markenliste .box:focus .text p, .markenliste .box:active .text p {
  color: #ffffff;
  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;
}
.markenliste .box:hover .text .button, .markenliste .box:focus .text .button, .markenliste .box:active .text .button {
  opacity: 1;
  height: auto;
  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;
}
.markenliste .box .bild {
  position: relative;
  height: 300px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  text-align: center;
}
.markenliste .box .bild img {
  max-width: 70%;
  display: inline-block;
}
.markenliste .box .bild:before {
  content: "";
  display: block;
  background: #112238;
  opacity: 0.4;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  z-index: 10;
  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;
}
.markenliste .box .bild .bild_table {
  display: table;
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 20;
}
.markenliste .box .bild .bild_table .bild_tablecell {
  display: table-cell;
  vertical-align: middle;
}
.markenliste .box .text {
  position: relative;
  padding: 40px 50px;
  height: calc(100% - 300px);
  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;
}
.markenliste .box .text h3 {
  color: #ffffff;
  font-family: 'Montserrat_Medium';
}
.markenliste .box .text p {
  color: #A1AAB4;
  margin: 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;
}
.markenliste .box .text .button {
  opacity: 0;
  width: 100%;
  text-align: center;
  position: absolute;
  left: 0px;
  right: 0px;
  bottom: 0px;
  margin: 0px;
  height: 0px;
  overflow: hidden;
  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;
}
.markenliste.liste .liste_bg {
  background: #112238;
  padding: 120px 0px 10px 0px;
  margin-bottom: 85px;
  -webkit-box-shadow: 0px 50px 50px 0px rgba(0, 0, 0, 0.16);
  -moz-box-shadow: 0px 50px 50px 0px rgba(0, 0, 0, 0.16);
  box-shadow: 0px 50px 50px 0px rgba(0, 0, 0, 0.16);
  position: relative;
}
.markenliste.liste .liste_bg:before {
  content: url(/basics/images/allgemein_icon_kreise_rand.svg);
  position: absolute;
  top: inherit;
  bottom: 60px;
  right: -265px;
  z-index: 0;
}
.markenliste.liste .liste_bg .box {
  margin-bottom: 120px;
  height: calc(100% - 120px);
}
.markenliste.slider {
  padding-bottom: 100px;
}
.markenliste.slider .slider_marken {
  margin: 0px;
}
.markenliste.slider .slider_marken .slick-list {
  overflow: visible;
}
.markenliste.slider .slider_marken .slick-dots {
  display: block;
  width: 100%;
  margin: 0px;
  position: relative;
  left: inherit;
  bottom: inherit;
  text-align: center;
  padding-top: 20px;
}
.markenliste.slider .slider_marken .slick-dots li {
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  margin: 10px;
  width: auto;
  height: auto;
  line-height: 10px;
}
.markenliste.slider .slider_marken .slick-dots li button {
  display: inline-block;
  width: 17px;
  height: 17px;
  border: none;
  background: #798594;
  border: 5px solid #ffffff;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  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;
}
.markenliste.slider .slider_marken .slick-dots li button:hover, .markenliste.slider .slider_marken .slick-dots li button:focus, .markenliste.slider .slider_marken .slick-dots li button:active {
  border: 5px solid #F4F4F4;
  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;
}
.markenliste.slider .slider_marken .slick-dots li button:before {
  display: none;
}
.markenliste.slider .slider_marken .slick-dots li.slick-active button {
  background: #DB0032;
  border: 5px solid #F4F4F4;
  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;
}
.markenliste.slider .slider_marken .slick-prev, .markenliste.slider .slider_marken .slick-next {
  top: 45%;
  top: calc(50% - 16px);
  height: 33px;
  width: 20px;
  padding: 0px;
  background-repeat: no-repeat;
  background-position: center center;
}
.markenliste.slider .slider_marken .slick-prev:before, .markenliste.slider .slider_marken .slick-next:before {
  display: none;
}
.markenliste.slider .slider_marken .slick-prev {
  left: 30px;
  background-image: url(/basics/images/markenslider_pfeil_links.svg);
}
.markenliste.slider .slider_marken .slick-next {
  right: 30px;
  background-image: url(/basics/images/markenslider_pfeil_rechts.svg);
}
.markenliste.slider .buttonbox {
  padding-top: 15px;
  text-align: center;
}
/***********************
Kundenstimmen
***********************/
.kundenstimmen {
  background: #F4F4F4;
  padding: 100px 0px;
}
.kundenstimmen.ueberlappung_unten {
  padding-bottom: 170px;
}
.kundenstimmen .kunden_slider {
  margin: 0px;
}
.kundenstimmen .kunden_slider .box {
  text-align: center;
}
.kundenstimmen .kunden_slider .box .foto {
  display: inline-block;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  width: 112px;
  height: auto;
  margin-bottom: 25px;
}
.kundenstimmen .kunden_slider .box h4 {
  color: #112238;
}
.kundenstimmen .kunden_slider .box .sterne {
  margin-bottom: 25px;
}
.kundenstimmen .kunden_slider .box .sterne span {
  display: inline-block;
  vertical-align: middle;
  margin: 0px 1px;
  color: #DB0032;
}
.kundenstimmen .kunden_slider .box .sterne span.disabled {
  color: #798594;
}
.kundenstimmen .kunden_slider .box p {
  display: inline-block;
  width: 440px;
  max-width: 100%;
  margin: 0px;
}
.kundenstimmen .kunden_slider .slick-list {
  overflow: visible;
}
.kundenstimmen .kunden_slider .slick-dots {
  display: block;
  width: 100%;
  margin: 0px;
  position: relative;
  left: inherit;
  bottom: inherit;
  text-align: center;
  padding-top: 20px;
}
.kundenstimmen .kunden_slider .slick-dots li {
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  margin: 10px;
  width: auto;
  height: auto;
  line-height: 10px;
}
.kundenstimmen .kunden_slider .slick-dots li button {
  display: inline-block;
  width: 17px;
  height: 17px;
  border: none;
  background: #798594;
  border: 5px solid #F4F4F4;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  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;
}
.kundenstimmen .kunden_slider .slick-dots li button:hover, .kundenstimmen .kunden_slider .slick-dots li button:focus, .kundenstimmen .kunden_slider .slick-dots li button:active {
  border: 5px solid #F4F4F4;
  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;
}
.kundenstimmen .kunden_slider .slick-dots li button:before {
  display: none;
}
.kundenstimmen .kunden_slider .slick-dots li.slick-active button {
  background: #DB0032;
  border: 5px solid #F4F4F4;
  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;
}
.kundenstimmen .kunden_slider .slick-prev, .kundenstimmen .kunden_slider .slick-next {
  top: 45%;
  top: calc(50% - 16px);
  height: 33px;
  width: 20px;
  padding: 0px;
  background-repeat: no-repeat;
  background-position: center center;
}
.kundenstimmen .kunden_slider .slick-prev:before, .kundenstimmen .kunden_slider .slick-next:before {
  display: none;
}
.kundenstimmen .kunden_slider .slick-prev {
  left: 30px;
  background-image: url(/basics/images/markenslider_pfeil_links.svg);
}
.kundenstimmen .kunden_slider .slick-next {
  right: 30px;
  background-image: url(/basics/images/markenslider_pfeil_rechts.svg);
}
/***********************
Galerieübersicht
***********************/
.galerieuebersicht {
  background: #112238;
  padding: 120px 0px 50px 0px;
  margin-bottom: 100px;
}
.galerieuebersicht h1, .galerieuebersicht h2, .galerieuebersicht h3, .galerieuebersicht h4 {
  color: #ffffff;
}
.galerieuebersicht .box {
  padding-bottom: 60px;
}
.galerieuebersicht .box .bild {
  height: 400px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  text-align: center;
  margin-bottom: 25px;
  position: relative;
  cursor: pointer;
}
.galerieuebersicht .box .bild:hover:before, .galerieuebersicht .box .bild:focus:before, .galerieuebersicht .box .bild:active:before {
  opacity: 0;
  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;
}
.galerieuebersicht .box .bild:hover span, .galerieuebersicht .box .bild:focus span, .galerieuebersicht .box .bild:active span {
  background-color: #DB0032;
  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;
}
.galerieuebersicht .box .bild:before {
  content: "";
  display: block;
  background: #112238;
  opacity: 0.4;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  z-index: 10;
  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;
}
.galerieuebersicht .box .bild span {
  position: relative;
  z-index: 20;
  display: inline-block;
  width: 130px;
  height: 130px;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  background-color: #42546B;
  background-repeat: no-repeat;
  background-position: center 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;
}
.galerieuebersicht .box .bild .bild_table {
  display: table;
  width: 100%;
  height: 100%;
}
.galerieuebersicht .box .bild .bild_table .bild_tablecell {
  display: table-cell;
  vertical-align: middle;
}
/***********************
Küchen-Atals
***********************/
.kuechen_atlas#w3fa28de {
  max-width: 100%;
}
.kuechen_atlas#w3fa28de .CssLayoutInnerBox h2 {
  font-family: inherit;
  font-weight: bold;
  margin: 0px;
  line-height: normal;
  letter-spacing: 0px;
  padding-top: 5px !important;
  padding-bottom: 0px !important;
  font-size: 15px !important;
  color: #DB0032;
}
.kuechen_atlas#w3fa28de .CssLayoutInnerBox h2 a, .kuechen_atlas#w3fa28de .CssLayoutInnerBox h2 a:link, .kuechen_atlas#w3fa28de .CssLayoutInnerBox h2 a:visited {
  color: #DB0032;
  font-weight: bold;
  font-size: 15px !important;
}
.kuechen_atlas#w3fa28de .CssLayoutInnerBox h2:before {
  display: none;
}
.kuechen_atlas#w3fa28de .CssLayoutInnerBox .price {
  font-size: 13px !important;
  font-weight: 300;
}
.kuechen_atlas#w3fa28de .CssLayoutInnerBox .price span {
  font-size: 15px;
  font-weight: bold;
}
.kuechen_atlas#w3fa28de .CssLayoutInnerBox .price span.removed, .kuechen_atlas#w3fa28de .CssLayoutInnerBox .price span.vat-info {
  font-size: 13px;
  font-weight: 300;
}
.kuechen_atlas#w3fa28de .CssLayoutInnerBox .status-label {
  width: auto;
}
.kuechen_atlas#w3fa28de .ka-privacy-terms {
  display: none;
}
/***********************
Modal
***********************/
.modal {
  z-index: 2500;
}
.modal .modal-dialog .modal-content .modal-body {
  padding: 25px 25px 1px 25px;
}
.modal .modal-dialog .modal-content .modal-body img {
  width: 100%;
  height: auto;
  margin-bottom: 25px;
}
/***********************
Footer
***********************/
.footer .width {
  position: relative;
  padding: 50px 0px 30px 0px;
}
.footer .width:before {
  content: "";
  display: block;
  width: 98%;
  width: calc(100% - 30px);
  height: 1px;
  background: #B1B7BE;
  position: absolute;
  left: 15px;
  right: 15px;
  top: 0px;
}
.footer .width img {
  display: inline-block;
  vertical-align: middle;
}
.footer .width img.first {
  margin-right: 50px;
}
.footer .width ul.menu {
  padding: 0px;
  margin: 0px 0px 20px 0px;
  list-style-type: none;
}
.footer .width ul.menu li {
  display: block;
}
.footer .width ul.menu li:first-child {
  display: none;
}
.footer .width ul.menu li a, .footer .width ul.menu li a:link, .footer .width ul.menu li a:visited {
  font-family: 'Montserrat_Bold';
  font-size: 14px;
  line-height: 25px;
  letter-spacing: 0.75px;
  text-transform: uppercase;
  display: block;
  color: #798594;
  margin-bottom: 15px;
}
.footer .width ul.menu li a:hover, .footer .width ul.menu li a:focus, .footer .width ul.menu li a:active {
  color: #DB0032;
}
.footer .width ul.menu li.active > a, .footer .width ul.menu li.active > a:link, .footer .width ul.menu li.active > a:visited, .footer .width ul.menu li.active > a:hover, .footer .width ul.menu li.active > a:focus, .footer .width ul.menu li.active > a:active {
  color: #DB0032;
}
.footer .width ul.menu li ul {
  margin-bottom: 0px;
}
.footer .width ul.menu li ul li:first-child {
  display: block;
}
.footer .width ul.menu li ul li a, .footer .width ul.menu li ul li a:link, .footer .width ul.menu li ul li a:visited {
  font-family: 'Montserrat_Light';
  letter-spacing: 0.1px;
  margin-bottom: 0px;
  text-transform: none;
}
.footer .width .footer_logos .logos_box {
  display: inline-block;
  vertical-align: middle;
  width: auto;
}
.footer .width .footer_logos .logos_box img {
  display: inline-block;
  vertical-align: middle;
  margin: 5px 20px 5px 0px;
}
.footer .width .footer_logos .logo_rechts {
  float: right;
  margin: 5px 0px 5px auto;
}
.footer .width .footer_logos .logo_rechts:after {
  content: "";
  display: block;
  float: none;
  clear: both;
}
.footer .copyright {
  position: relative;
  padding-top: 25px;
  margin-top: 20px;
}
.footer .copyright:before {
  content: "";
  display: block;
  width: 98%;
  width: calc(100% - 30px);
  height: 1px;
  background: #B1B7BE;
  position: absolute;
  left: 15px;
  right: 15px;
  top: 0px;
}
.footer .copyright p {
  font-size: 14px;
  line-height: 25px;
  margin-bottom: 20px;
}
.footer .copyright p strong span {
  color: #DB0032;
}
.footer .copyright .align-right {
  text-align: right;
}
.footer .copyright .socialbox {
  width: auto;
  display: inline-block;
  vertical-align: top;
}
.footer .copyright .socialbox img {
  display: inline-block;
  vertical-align: middle;
  margin-right: 25px;
}
.footer .copyright ul {
  display: inline-block;
  vertical-align: top;
  font-size: 14px;
  line-height: 25px;
  margin: 0px 0px 20px 0px;
  padding: 0px;
  list-style-type: none;
  text-align: right;
}
.footer .copyright ul li {
  display: inline-block;
  vertical-align: top;
  margin-left: 25px;
}
.footer .copyright ul li:first-child {
  margin-left: 0px;
}
.footer .copyright ul li a, .footer .copyright ul li a:link, .footer .copyright ul li a:visited {
  font-family: 'Montserrat_Regular';
  font-size: 14px;
  line-height: 25px;
  display: block;
  color: #798594;
}
.footer .copyright ul li a:hover, .footer .copyright ul li a:focus, .footer .copyright ul li a:active {
  color: #DB0032;
}
.footer .copyright ul li.active a, .footer .copyright ul li.active a:link, .footer .copyright ul li.active a:visited, .footer .copyright ul li.active a:hover, .footer .copyright ul li.active a:focus, .footer .copyright ul li.active a:active {
  color: #DB0032;
}
/***********************
404-Fehlerseite
***********************/
.fehlerseite {
  height: 100%;
  width: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  padding: 30px;
  position: absolute;
  left: 0px;
  right: 0px;
  top: 0px;
  bottom: 0px;
}
.fehlerseite .fehlerseite_table {
  display: table;
  width: 100%;
  height: 100%;
  text-align: center;
}
.fehlerseite .fehlerseite_table .fehlerseite_tablecell {
  display: table-cell;
  vertical-align: middle;
}
.fehlerseite .fehlerseite_table .fehlerseite_tablecell h1 {
  color: #ffffff;
  font-size: 250px;
  font-size: 14.5vw;
  line-height: normal;
  letter-spacing: -0.7px;
}
.fehlerseite .fehlerseite_table .fehlerseite_tablecell p {
  color: #ffffff;
  font-size: 50px;
  font-size: 3vw;
  line-height: normal;
  letter-spacing: -0.3px;
}
.fehlerseite .fehlerseite_table .fehlerseite_tablecell .button {
  width: 345px;
  text-align: center;
}
/***********************
Media Query
***********************/
@media (max-width: 1199.98px) {
  .headerbild .headerslider .bildbox {
    height: 800px;
  }
  .downloads .filter ul li, .newsliste .filter ul li {
    margin-left: 20px;
  }
  .downloads .filter ul li a, .downloads .filter ul li a:link, .downloads .filter ul li a:visited, .newsliste .filter ul li a, .newsliste .filter ul li a:link, .newsliste .filter ul li a:visited {
    font-size: 13px;
    padding-bottom: 15px;
  }
  .vorschauboxen_angebote .boxen_2 .box_box:nth-child(1) {
    max-width: 58.333333%;
    max-width: calc(58.333333% - 30px);
  }
  .vorschauboxen_angebote .boxen_2 .box_box:nth-child(2) {
    max-width: 41.666667%;
    max-width: calc(41.666667% - 30px);
  }
  .vorschauboxen_angebote .boxen_3 .box_box:nth-child(1) {
    max-width: 58.333333%;
    max-width: calc(58.333333% - 30px);
  }
  .vorschauboxen_angebote .boxen_3 .box_box:nth-child(2), .vorschauboxen_angebote .boxen_3 .box_box:nth-child(3) {
    max-width: 41.666667%;
    max-width: calc(41.666667% - 30px);
  }
  .vorschauboxen_angebote .boxen_4 .box_box:nth-child(1), .vorschauboxen_angebote .boxen_4 .box_box:nth-child(2), .vorschauboxen_angebote .boxen_4 .box_box:nth-child(3), .vorschauboxen_angebote .boxen_4 .box_box:nth-child(4) {
    max-width: 50%;
    max-width: calc(50% - 30px);
    height: 302px;
    margin-bottom: 30px;
  }
  .vorschauboxen_angebote .boxen_video .box_box:nth-child(1), .vorschauboxen_angebote .boxen_video .box_box:nth-child(2), .vorschauboxen_angebote .boxen_video .box_box:nth-child(3), .vorschauboxen_angebote .boxen_video .box_box:nth-child(4) {
    height: 302px;
    margin-bottom: 30px;
  }
}
@media (max-width: 991.98px) {
  .header {
    padding: 70px 0px 60px 0px;
  }
  .header ul.mainmenu li {
    margin-left: 5px;
  }
  .headerbild .headerslider .bildbox .textbox .textbox_table .textbox_tablecell span {
    font-size: 50px;
  }
  .headerbild .headerslider .slick-dots {
    width: 16.666667%;
    right: -16.666667%;
  }
  .einstiegsbox .bewertungen {
    padding-top: 0px;
  }
  .einstiegsbox .buttonbox a.button, .einstiegsbox .buttonbox a.button:link, .einstiegsbox .buttonbox a.button:visited {
    margin-right: 40px;
  }
  #menubox.active {
    padding-right: 5.8%;
  }
  .sticky_kontaktbox {
    width: 16.666667%;
  }
  .vorschauboxen_angebote .boxen .box_box {
    height: 450px;
  }
  .vorschauboxen_angebote .boxen_3 .box_box:nth-child(2), .vorschauboxen_angebote .boxen_3 .box_box:nth-child(3) {
    height: 210px;
  }
  .vorschauboxen_angebote .newsbox {
    height: 100%;
    height: calc(100% - 30px);
    padding-top: 50px;
  }
  .bildergalerie .filter ul li {
    margin-left: 20px;
  }
  .bildergalerie .grid .grid-item.Grid_2x2, .bildergalerie .grid .grid-item.Grid_2x1 {
    width: 50%;
  }
  .bildergalerie .grid .grid-item.Grid_1x1, .bildergalerie .grid .grid-item.Grid_1x2 {
    width: 25%;
  }
  .logos .logobox a {
    width: 25%;
  }
  .downloads .filter ul.desktop, .newsliste .filter ul.desktop {
    display: none;
  }
  .downloads .filter ul.mobile, .newsliste .filter ul.mobile {
    display: block;
  }
  .downloads .filter ul li a, .downloads .filter ul li a:link, .downloads .filter ul li a:visited, .newsliste .filter ul li a, .newsliste .filter ul li a:link, .newsliste .filter ul li a:visited {
    font-size: 15px;
    padding-bottom: 30px;
  }
}
@media (max-width: 767.98px) {
  h1 {
    font-size: 37px;
    line-height: 47px;
    margin-bottom: 30px;
  }
  h2 {
    font-size: 33px;
    line-height: 43px;
    margin-bottom: 50px;
  }
  h2:before {
    content: url(/basics/images/allgemein_icon_ueberschrift.svg);
    display: block;
    position: absolute;
    left: -140px;
    bottom: -3px;
  }
  h1, h2 {
    -ms-word-break: break-all;
    word-break: break-all;
    /* Non standard for WebKit */
    word-break: break-word;
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    hyphens: auto;
  }
  h3 {
    font-size: 28px;
    line-height: 35px;
    margin-bottom: 15px;
  }
  h4 {
    font-size: 20px;
    line-height: 30px;
    margin-bottom: 10px;
  }
  p, ul, ol, table {
    font-size: 18px;
    line-height: 25px;
  }
  a.button, a.button:link, a.button:visited, a.button:not([href]):not([tabindex]), a.button:not([href]):not([tabindex]):link, a.button:not([href]):not([tabindex]):visited, input[type="submit"].button, span.button, button.button {
    font-size: 13px;
    height: 60px;
    line-height: 60px;
    padding: 0px 35px;
    background-color: #DB0032;
    margin-bottom: 20px;
  }
  a.button_sekundaer, a.button_sekundaer:link, a.button_sekundaer:visited, input[type="submit"].button_sekundaer, span.button_sekundaer, button.button_sekundaer {
    font-size: 13px;
    height: 60px;
    line-height: 60px;
    margin-bottom: 20px;
  }
  .header {
    padding: 25px 0px;
  }
  .header.fixed {
    padding: 25px 0px;
  }
  .header.fixed.scroll {
    padding: 10px 0px;
  }
  .header.scroll {
    padding: 10px 0px;
  }
  .header ul.mainmenu {
    display: none;
  }
  .header button.mobilebutton {
    display: block;
    width: auto;
    margin: 0px 0px 0px auto;
  }
  #menubox {
    padding-top: 8px;
  }
  #menubox.active {
    padding-top: 8px;
    padding-right: 5.8%;
  }
  .sticky_kontaktbox .boxen .box {
    height: 60px;
  }
  .sticky_kontaktbox .boxen .box span {
    height: 60px;
    line-height: 60px;
    font-size: 20px;
  }
  .headerbild .headerslider .bildbox {
    height: 600px;
  }
  .headerbild .headerslider .bildbox .textbox .textbox_table .textbox_tablecell span {
    font-size: 30px;
  }
  .textheader .bg {
    padding: 70px 0px 50px 0px;
  }
  .textheader .bg .bild {
    display: none;
  }
  .textheader .bg .button, .textheader .bg .button_sekundaer {
    margin-right: 0px;
    width: 100%;
    text-align: center;
  }
  .einstiegsbox {
    margin-top: 0px;
    margin-bottom: 80px;
  }
  .einstiegsbox .bewertungen {
    padding-top: 0px;
  }
  .einstiegsbox .bg {
    padding-top: 50px;
  }
  .einstiegsbox .buttonbox a.button, .einstiegsbox .buttonbox a.button:link, .einstiegsbox .buttonbox a.button:visited, .einstiegsbox .buttonbox a.button_sekundaer, .einstiegsbox .buttonbox a.button_sekundaer:link, .einstiegsbox .buttonbox a.button_sekundaer:visited {
    margin-right: 0px;
    width: 100%;
    text-align: center;
  }
  .dreierbox_dunkel .box {
    padding: 45px 20px 60px 20px;
  }
  .dreierbox_dunkel .box:hover, .dreierbox_dunkel .box:focus, .dreierbox_dunkel .box:active {
    transform: scale(1.05);
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -ms-transform: scale(1.05);
    -o-transform: scale(1.05);
  }
  .vorschauboxen_angebote .boxen .box_box {
    height: 200px;
  }
  .vorschauboxen_angebote .boxen_2 .box_box:nth-child(1), .vorschauboxen_angebote .boxen_2 .box_box:nth-child(2) {
    max-width: calc(100% - 30px);
  }
  .vorschauboxen_angebote .boxen_3 .box_box:nth-child(1), .vorschauboxen_angebote .boxen_3 .box_box:nth-child(2), .vorschauboxen_angebote .boxen_3 .box_box:nth-child(3) {
    height: 200px;
    max-width: calc(100% - 30px);
  }
  .vorschauboxen_angebote .boxen_4 .box_box:nth-child(1), .vorschauboxen_angebote .boxen_4 .box_box:nth-child(2), .vorschauboxen_angebote .boxen_4 .box_box:nth-child(3), .vorschauboxen_angebote .boxen_4 .box_box:nth-child(4) {
    height: 200px;
    max-width: calc(100% - 30px);
  }
  .vorschauboxen_angebote .boxen_video .box_box:nth-child(1), .vorschauboxen_angebote .boxen_video .box_box:nth-child(2), .vorschauboxen_angebote .boxen_video .box_box:nth-child(3) {
    height: 200px;
    max-width: calc(100% - 30px);
  }
  .vorschauboxen_angebote .boxen_video .box_box:nth-child(2), .vorschauboxen_angebote .boxen_video .box_box:nth-child(3) {
    max-width: calc(50% - 30px);
    height: 450px;
  }
  .teaserboxen {
    padding-bottom: 50px;
    margin-bottom: 80px;
  }
  .teaserboxen .buttonbox {
    padding-bottom: 0px;
  }
  .teaserboxen h3 {
    padding-top: 7px;
    padding-bottom: 7px;
  }
  .teaserboxen p {
    padding-left: 0px;
  }
  .logos .logobox a {
    width: 33.333%;
  }
  .bildergalerie {
    padding: 80px 0px;
  }
  .bildergalerie.abstand_nein {
    margin-bottom: 0px;
    padding-bottom: 150px;
  }
  .bildergalerie.symbol:before {
    display: none;
  }
  .bildergalerie .filter {
    display: block;
  }
  .bildergalerie .filter ul {
    width: 100%;
  }
  .bildergalerie .filter ul.reiterfilter li {
    display: block;
    width: 100%;
    margin: 0px 0px 10px 0px;
    text-align: center;
  }
  .bildergalerie .filter ul.reiterfilter li a, .bildergalerie .filter ul.reiterfilter li a:link, .bildergalerie .filter ul.reiterfilter li a:visited {
    padding-bottom: 5px;
  }
  .bildergalerie .filter ul.aufklappfilter li a, .bildergalerie .filter ul.aufklappfilter li a:link, .bildergalerie .filter ul.aufklappfilter li a:visited {
    padding-bottom: 5px;
    background-position: left top 4px !important;
  }
  .bildergalerie .filter ul.aufklappfilter li ul {
    top: 32px;
  }
  .bildergalerie .filter ul.aufklappfilter li ul li a, .bildergalerie .filter ul.aufklappfilter li ul li a:link, .bildergalerie .filter ul.aufklappfilter li ul li a:visited {
    padding-bottom: 15px;
  }
  .faktenblock .row.no-gutters {
    padding: 70px 0px 30px 0px;
  }
  .faktenblock .row.no-gutters h2 {
    font-size: 60px;
    line-height: 50px;
    margin-bottom: 10px;
  }
  .faktenblock .row.no-gutters h3 {
    font-size: 24px;
    line-height: 34px;
    margin-bottom: 40px;
  }
  .leistungsubersicht:before {
    display: none;
  }
  .leistungsubersicht.padding_oben {
    padding-top: 100px;
  }
  .leistungsubersicht .box {
    margin-bottom: 80px;
  }
  .leistungsubersicht .box .text {
    padding: 40px 20px 40px 15px;
  }
  .markenliste.liste .liste_bg:before {
    display: none;
  }
  .markenliste.liste .liste_bg .box {
    margin-bottom: 80px;
    height: calc(100% - 80px);
  }
  .teamuebersicht {
    margin-top: 0px;
    margin-bottom: 80px;
  }
  .teamuebersicht .bg {
    padding-top: 80px;
  }
  .teamuebersicht .box {
    margin-bottom: 50px;
  }
  .teamuebersicht .box img {
    width: 100%;
  }
  .zeitleiste {
    padding: 80px 0px 100px 0px;
  }
  .zeitleiste:before {
    display: none;
  }
  .jobs_fragen {
    padding: 80px 0px 50px 0px;
    margin-bottom: 80px;
  }
  .jobs_fragen .box {
    padding: 30px 30px 15px 30px;
  }
  .newsliste {
    padding: 80px 0px 40px 0px;
  }
  .newsliste .box .textbox {
    padding: 25px 30px 5px 30px;
  }
  .newsliste .box:hover, .newsliste .box:focus, .newsliste .box:active {
    transform: scale(1.05);
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -ms-transform: scale(1.05);
    -o-transform: scale(1.05);
  }
  .zweispalter_dunkel.zweispalter_breit {
    padding: 80px 0px 60px 0px;
  }
  .zweispalter_dunkel.zweispalter_breit.ueberlappung_unten {
    padding-bottom: 200px;
  }
  .kontaktformular {
    padding-top: 80px;
  }
  .kontaktformular.uberlappung_oben {
    padding-top: 60px;
  }
  .kontaktformular.ueberlappung_unten {
    padding-bottom: 250px;
  }
  .formular .box span.auswahl {
    width: 100%;
    text-align: center;
    margin-right: 0px;
  }
  .formular .box input[type="text"].flatpickr-input {
    display: block;
    width: 100%;
  }
  .formular .box select {
    width: 100%;
  }
  .downloads {
    padding: 80px 0px 60px;
  }
  .downloads .buttonbox {
    padding-top: 60px;
  }
  .newsbeitrag .bild a.button, .newsbeitrag .bild a.button:link, .newsbeitrag .bild a.button:visited {
    position: relative;
    left: inherit;
    top: inherit;
    margin-bottom: 20px;
    width: 100%;
    text-align: center;
  }
  .newsbeitrag span.kategorie {
    margin-top: 35px;
    margin-bottom: 15px;
  }
  .newsbeitrag span.kategorie:before {
    display: none;
  }
  .newsbeitrag .text .zitatbox {
    float: none;
    clear: both;
    width: 100%;
    padding: 0px;
    margin-bottom: 40px;
  }
  .newsbeitrag .text .zitatbox .zitat_text {
    width: 100%;
    max-width: 100%;
  }
  .newsbeitrag .text .zitatbox .zitat_person {
    padding-left: 0px;
  }
  .newsbeitrag .text .zitatbox .zitat_person p {
    max-width: 75%;
  }
  .banner_angebote {
    margin-bottom: 100px;
    padding: 60px 0px;
  }
  .banner_angebote .text {
    max-width: 100%;
    padding-left: 0px;
    margin: 0px 0px 25px 0px;
  }
  .banner_angebote .text .bild_klein {
    position: relative;
    left: inherit;
    top: inherit;
    margin-bottom: 15px;
  }
  .banner_angebote .text h3 {
    font-size: 35px;
    line-height: 45px;
    letter-spacing: -0.3px;
    margin-bottom: 30px;
  }
  .footer {
    text-align: center;
  }
  .footer .width ul.menu {
    display: block !important;
    text-align: center;
  }
  .footer .width .footer_logos .logos_box img {
    margin: 5px 15px;
  }
  .footer .width .footer_logos .logo_rechts {
    float: none;
    clear: both;
    display: inline-block;
    vertical-align: middle;
    margin: 5px 15px;
  }
  .footer .copyright .align-right {
    text-align: center;
  }
  .footer .copyright p {
    text-align: center;
  }
  .footer .copyright ul {
    text-align: center;
  }
}
@media (max-width: 575.98px) {
  h1, h2, h3, h4, p, ul, ol {
    -ms-word-break: break-all;
    word-break: break-all;
    /* Non standard for WebKit */
    word-break: break-word;
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    hyphens: auto;
  }
  a.button, a.button:link, a.button:visited, a.button:not([href]):not([tabindex]), a.button:not([href]):not([tabindex]):link, a.button:not([href]):not([tabindex]):visited, input[type="submit"].button, span.button, button.button, a.button_sekundaer, a.button_sekundaer:link, a.button_sekundaer:visited, input[type="submit"].button_sekundaer, span.button_sekundaer, button.button_sekundaer {
    height: auto;
    line-height: normal;
    padding: 25px 40px 25px 20px;
  }
  a.button.angebot, a.button:link.angebot, a.button:visited.angebot, a.button:not([href]):not([tabindex]).angebot, a.button:not([href]):not([tabindex]):link.angebot, a.button:not([href]):not([tabindex]):visited.angebot, input[type="submit"].button.angebot, span.button.angebot, button.button.angebot, a.button_sekundaer.angebot, a.button_sekundaer:link.angebot, a.button_sekundaer:visited.angebot, input[type="submit"].button_sekundaer.angebot, span.button_sekundaer.angebot, button.button_sekundaer.angebot {
    padding-top: 25px !important;
    padding-bottom: 25px !important;
  }
  .header.fixed {
    padding: 25px 0px;
    position: relative;
  }
  .header.fixed.scroll {
    position: fixed;
  }
  .header.fixed .logo.normal {
    opacity: 1;
    height: auto;
    width: auto;
  }
  .header.fixed .logo.weiss {
    opacity: 0;
    height: 0px;
    width: 0px;
  }
  #menubox.active {
    padding-right: 4.5%;
  }
  .einstiegsbox .buttonbox a.button, .einstiegsbox .buttonbox a.button:link, .einstiegsbox .buttonbox a.button:visited {
    padding: 25px 40px 25px 20px;
  }
  .headerbild .headerslider .bildbox {
    height: 500px;
  }
  .vorschauboxen_angebote .boxen .box_box {
    height: 250px;
  }
  .vorschauboxen_angebote .boxen_3 .box_box:nth-child(1), .vorschauboxen_angebote .boxen_3 .box_box:nth-child(2), .vorschauboxen_angebote .boxen_3 .box_box:nth-child(3) {
    height: 250px;
  }
  .vorschauboxen_angebote .boxen_4 .box_box:nth-child(1), .vorschauboxen_angebote .boxen_4 .box_box:nth-child(2), .vorschauboxen_angebote .boxen_4 .box_box:nth-child(3), .vorschauboxen_angebote .boxen_4 .box_box:nth-child(4), .vorschauboxen_angebote .boxen_video .box_box:nth-child(1), .vorschauboxen_angebote .boxen_video .box_box:nth-child(2), .vorschauboxen_angebote .boxen_video .box_box:nth-child(3), .vorschauboxen_angebote .boxen_video .box_box:nth-child(4) {
    height: 250px;
  }
  .bildergalerie .grid .grid-item.Grid_2x2, .bildergalerie .grid .grid-item.Grid_2x1 {
    width: 100%;
  }
  .bildergalerie .grid .grid-item.Grid_1x1, .bildergalerie .grid .grid-item.Grid_1x2 {
    width: 50%;
  }
  .zeitleiste h3, .zeitleiste p {
    width: 100%;
  }
  .zeitleiste .linke_box {
    text-align: left;
  }
  .zeitleiste .mittlere_box {
    display: none;
  }
  .logos .logobox a {
    width: 50%;
  }
  .bildergalerie_amanuell .grid .item.width_25 {
    width: 50%;
  }
  .bildergalerie_amanuell .grid .item.width_50 {
    width: 100%;
  }
  .bildergalerie_amanuell .grid .item.width_75 {
    width: 100%;
  }
  .bildergalerie_amanuell .grid .item.width_100 {
    width: 100%;
  }
}
