/**
 * Contao Open Source CMS
 *
 * Copyright (c) 2005-2013 Leo Feyer
 *
 * @package Core
 * @link    https://contao.org
 * @license http://www.gnu.org/licenses/lgpl-3.0.html LGPL
 */
/**
 * Reset the margin and padding of the block elements
 */
body, div, h1, h2, h3, h4, h5, h6, p, blockquote, pre, code, ol, ul, li, dl, dt, dd, figure, table, th, td, form, fieldset, legend, input, textarea {
  margin: 0;
  padding: 0; }

/**
 * Basic element formatting
 */
table {
  border-spacing: 0;
  border-collapse: collapse; }

caption, th, td {
  text-align: left;
  text-align: start;
  /* see #4596 */
  vertical-align: top; }

abbr, acronym {
  font-variant: normal;
  border-bottom: 1px dotted #666;
  cursor: help; }

blockquote, q {
  quotes: none; }

fieldset, img {
  border: 0; }

ul {
  list-style-type: none; }

sup {
  vertical-align: text-top; }

sub {
  vertical-align: text-bottom; }

del {
  text-decoration: line-through; }

ins {
  text-decoration: none; }

/**
 * Default font settings
 */
input, button, textarea, select {
  font-family: inherit;
  font-size: 99%;
  font-weight: inherit; }

pre, code {
  font-family: Monaco, monospace; }

table {
  font-size: inherit; }

caption, th {
  font-weight: bold; }

body, form {
  margin: 0;
  padding: 0; }

img {
  border: 0;
  margin: 0;
  padding: 0; }

header, footer, nav, section, aside, article, figure, figcaption {
  display: block; }

#main {
  width: 100%; }

#main .inside {
  min-height: 1px;
  /* see #4893 */ }

/**
 * Flexible images (videos see #4896)
 *
 * @see http://webdesignerwall.com/tutorials/responsive-design-with-css3-media-queries
 */
img {
  border: 0;
  padding: 0;
  margin: 0; }

.ie7 img {
  -ms-interpolation-mode: bicubic; }

.ie8 img {
  width: auto;
  /* see #5789 */ }

/**
 * Format the Contao image galleries (now rendered as unordered lists)
 */
.ce_gallery ul {
  margin: 0;
  padding: 0;
  overflow: hidden;
  list-style: none; }

.ce_gallery li {
  float: left; }

.ce_gallery li.col_first {
  clear: left; }

/**
 * Clear floats
 */
.block {
  overflow: hidden; }

.clear, #clear {
  height: 1px;
  clear: both;
  margin-top: -1px; }

/**
 * Hide invisible elements
 */
/**
 * Custom layout sections
 */
.custom {
  display: block; }

#container:after, .custom:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }

@font-face {
  font-family: "NeueHaasGroteskText55Roman";
  src: url("../../files/daten/webFonts/NeueHaasGroteskText55Roman/font.woff2") format("woff2"), url("../../files/daten/webFonts/NeueHaasGroteskText55Roman/font.woff") format("woff"); }

@font-face {
  font-family: "NeueHaasGroteskText56Italic";
  src: url("../../files/daten/webFonts/NeueHaasGroteskText56Italic/font.woff2") format("woff2"), url("../../files/daten/webFonts/NeueHaasGroteskText56Italic/font.woff") format("woff"); }

@font-face {
  font-family: "NeueHaasGroteskText65Medium";
  src: url("../../files/daten/webFonts/NeueHaasGroteskText65Medium/font.woff2") format("woff2"), url("../../files/daten/webFonts/NeueHaasGroteskText65Medium/font.woff") format("woff"); }

@font-face {
  font-family: "NeueHaasGroteskText66MediumItalic";
  src: url("../../files/daten/webFonts/NeueHaasGroteskText66MediumItalic/font.woff2") format("woff2"), url("../../files/daten/webFonts/NeueHaasGroteskText66MediumItalic/font.woff") format("woff"); }

@font-face {
  font-family: "NeueHaasGroteskText76BoldItalic";
  src: url("../../files/daten/webFonts/NeueHaasGroteskText76BoldItalic/font.woff2") format("woff2"), url("../../files/daten/webFonts/NeueHaasGroteskText76BoldItalic/font.woff") format("woff"); }

@font-face {
  font-family: "NeueHaasGroteskText75Bold";
  src: url("../../files/daten/webFonts/NeueHaasGroteskText75Bold/font.woff2") format("woff2"), url("../../files/daten/webFonts/NeueHaasGroteskText75Bold/font.woff") format("woff"); }

body {
  font-size: 100%;
  font-family: "NeueHaasGroteskText55Roman", Arial, sans-serif;
  font-weight: normal; }

.schatten-1 {
  -webkit-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2); }

.schatten-2 {
  box-shadow: 10px 0px 5px 0px rgba(0, 0, 0, 0.5);
  margin-bottom: 5px; }

.verlauf-1 {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#8bd800+34,c0e975+100 */
  background: #8bd800;
  /* Old browsers */
  background: -moz-linear-gradient(left, #8bd800 34%, #c0e975 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(left, #8bd800 34%, #c0e975 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, #8bd800 34%, #c0e975 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#8bd800', endColorstr='#c0e975',GradientType=1 );
  /* IE6-9 */ }

.padding-article-1 {
  padding-top: 1rem;
  padding-bottom: 1rem; }
  @media (min-width: 1020px) {
    .padding-article-1 {
      padding-top: 3rem;
      padding-bottom: 3rem; } }
  @media (min-width: 1280px) {
    .padding-article-1 {
      padding-top: 4rem;
      padding-bottom: 4rem; } }

.padd-1 {
  padding: 0.75rem 1rem;
  padding-bottom: 0.75rem; }
  @media (min-width: 1020px) {
    .padd-1 {
      padding: 1.25rem 1.5rem;
      padding-bottom: 0.75rem; } }

.padd-2 {
  padding: 2rem;
  padding-bottom: 1rem; }

.padd-3 {
  padding: 1rem; }

@media (min-width: 990px) {
  .flex {
    display: flex; } }

.flex-center {
  justify-content: center;
  align-items: center; }

.flex-wrap {
  flex-wrap: wrap; }

.grid {
  display: grid; }

.grid-gap {
  column-gap: 2.5%; }

.grid-container {
  display: grid;
  column-gap: 2.5%;
  grid-template-columns: repeat(12, 1fr); }

.grid-center {
  align-items: center; }

.grid-bottom {
  align-items: end; }

@media (min-width: 0) and (max-width: 767px) {
  .order-1 {
    order: 1; } }

@media (min-width: 0) and (max-width: 767px) {
  .order-2 {
    order: 2; } }

.col-1 {
  grid-column: auto/span 6; }

.col-2 {
  grid-column: auto/span 6; }

.col-3 {
  grid-column: auto/span 12; }

.col-3-2 {
  grid-column: auto/span 12; }

.col-3-3 {
  grid-column: auto/span 12; }

.col-4 {
  grid-column: auto/span 12; }

.col-4-2 {
  grid-column: auto/span 12; }

.col-5 {
  grid-column: auto/span 12; }

.col-5-2 {
  grid-column: auto/span 12; }

.col-6 {
  grid-column: auto/span 12; }

.col-6-2 {
  grid-column: auto/span 12; }

.col-7 {
  grid-column: auto/span 12; }

.col-8 {
  grid-column: auto/span 12; }

.col-8-2 {
  grid-column: auto/span 12; }

.col-8-3 {
  grid-column: auto/span 12; }

.col-9 {
  grid-column: auto/span 12; }

.col-10 {
  grid-column: auto/span 12; }

.col-11 {
  grid-column: auto/span 12; }

.col-12 {
  grid-column: auto/span 12; }

.col-center {
  grid-column: auto/span 12; }

.col-50 {
  grid-column: auto/span 12; }

@media (min-width: 500px) {
  .col-50 {
    grid-column: auto/span 6; } }

@media (min-width: 1280px) {
  .col-1 {
    grid-column: auto/span 6; }
  .col-2 {
    grid-column: auto/span 6; }
  .col-3 {
    grid-column: auto/span 6; }
  .col-4 {
    grid-column: auto/span 6; }
  .col-5 {
    grid-column: auto/span 6; }
  .col-6 {
    grid-column: auto/span 6; }
  .col-7 {
    grid-column: auto/span 6; }
  .col-8 {
    grid-column: auto/span 6; }
  .col-9 {
    grid-column: auto/span 12; }
  .col-10 {
    grid-column: auto/span 12; }
  .col-11 {
    grid-column: auto/span 12; }
  .col-12 {
    grid-column: auto/span 12; }
  .col-center {
    grid-column: auto/span 12; } }

@media (min-width: 1640px) {
  .col-1 {
    grid-column: auto/span 1; }
  .col-2 {
    grid-column: auto/span 2; }
  .col-3 {
    grid-column: auto/span 3; }
  .col-4 {
    grid-column: auto/span 4; }
  .col-5 {
    grid-column: auto/span 5; }
  .col-6 {
    grid-column: auto/span 6; }
  .col-7 {
    grid-column: auto/span 7; }
  .col-8 {
    grid-column: auto/span 8; }
  .col-9 {
    grid-column: auto/span 9; }
  .col-10 {
    grid-column: auto/span 10; }
  .col-11 {
    grid-column: auto/span 11; }
  .col-12 {
    grid-column: auto/span 12; }
  .col-center {
    grid-column: auto/span 8; } }

@media (min-width: 1640px) {
  .offset-1 {
    grid-column-start: 2; }
  .offset-2 {
    grid-column-start: 3; }
  .offset-3 {
    grid-column-start: 4; }
  .offset-4 {
    grid-column-start: 5; }
  .offset-5 {
    grid-column-start: 6; }
  .offset-6 {
    grid-column-start: 7; }
  .offset-7 {
    grid-column-start: 8; }
  .offset-right-1 {
    grid-column-end: span 1; }
  .offset-right-2 {
    grid-column-end: span 2; }
  .offset-right-3 {
    grid-column-end: span 3; }
  .offset-right-4 {
    grid-column-end: span 4; }
  .col-center {
    grid-column-start: 3; } }

@media (min-width: 768px) {
  .grid-50-cta {
    grid-template-columns: 1fr  1fr;
    column-gap: 2.5%; } }

.grid-40 {
  grid-template-columns: 40px  1fr;
  column-gap: 10px; }
  .grid-40 img {
    margin-bottom: 0; }

.grid-60 {
  grid-template-columns: 60px 1fr;
  column-gap: 12px; }
  .grid-60 img {
    margin-bottom: 0; }

.grid-80 {
  grid-template-columns: 80px 1fr;
  column-gap: 1.25% img;
    column-gap-margin-bottom: 0; }

.grid-100 {
  grid-template-columns: 80px 1fr;
  column-gap: 1.25%; }
  .grid-100 img {
    margin-bottom: 0; }

@media (min-width: 768px) {
  .grid-150 {
    grid-template-columns: 150px 1fr;
    column-gap: 2.5%; } }

@media (min-width: 990px) {
  .grid-cta-produkte {
    grid-template-columns: 50% 50%; } }

@media (min-width: 1640px) {
  .grid-cta-produkte {
    grid-template-columns: 40% 60%; } }

.grid-toggler {
  grid-template-columns: 1fr 48px;
  column-gap: 1.25%; }

@media (min-width: 500px) {
  .grid_produkt_teaser {
    grid-template-columns: 1fr 1fr;
    column-gap: 2.5%; } }

@media (min-width: 990px) {
  .grid_produkt_teaser {
    grid-template-columns: 1fr 1fr 1fr 1fr; } }

@media (min-width: 500px) {
  .grid_benefits {
    grid-template-columns: 1fr 1fr;
    column-gap: 2.5%; } }

@media (min-width: 990px) {
  .grid_benefits {
    grid-template-columns: 1fr 1fr 1fr; } }

.grid_benefits .content-text {
  margin-top: 1rem;
  margin-bottom: 1rem;
  text-align: center;
  background-color: #f9fafb;
  border-radius: 0.5rem;
  -moz-border-radius: 0.5rem;
  -webkit-border-radius: 0.5rem;
  -webkit-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
  overflow: hidden;
  padding: 1rem; }
  .grid_benefits .content-text img {
    width: 200px;
    height: auto;
    margin-bottom: 0rem; }

@media (min-width: 500px) {
  .grid-4 {
    grid-template-columns: 1fr 1fr;
    column-gap: 2.5%; } }

@media (min-width: 990px) {
  .grid-4 {
    grid-template-columns: 1fr 1fr 1fr 1fr; } }

.grid-num {
  display: grid;
  grid-template-columns: 4rem 1fr;
  align-items: center; }

.nav-05 > ul {
  display: grid;
  column-gap: 2.5%; }
  @media (min-width: 768px) {
    .nav-05 > ul {
      grid-template-columns: 1fr 1fr; } }
  @media (min-width: 990px) {
    .nav-05 > ul {
      grid-template-columns: 1fr 1fr 1fr; } }
  @media (min-width: 1280px) {
    .nav-05 > ul {
      grid-template-columns: 1fr 1fr 1fr 1fr 1fr; } }

.nav-05 ul li {
  font-weight: 600; }

.nav-05 ul .image img {
  width: 60px;
  height: 60px; }

.nav-05 ul a {
  color: #000;
  text-decoration: underline; }

.nav-05 ul li.li-alle {
  display: none; }

.nav-05 ul ul.level_2 {
  margin-top: 0.5rem;
  margin-bottom: 4rem; }
  .nav-05 ul ul.level_2 li {
    margin-top: 0.65rem;
    margin-bottom: 0.65rem;
    font-weight: 300; }
    .nav-05 ul ul.level_2 li a {
      color: #000; }

.mod_breadcrumb {
  padding-top: 1rem;
  padding-bottom: 1rem; }
  .mod_breadcrumb ul {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 0; }
    .mod_breadcrumb ul li {
      color: #000;
      display: flex;
      align-items: center;
      font-size: 16px;
      font-size: 1rem; }
      .mod_breadcrumb ul li a {
        color: #000;
        text-decoration: underline;
        font-weight: 300;
        font-size: 14px;
        font-size: 0.875rem; }
    .mod_breadcrumb ul li:after {
      background: url('data:image/svg+xml,%3Csvg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 24 24" height="24" width="24" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath fill="none" d="M0 0h24v24H0z"%3E%3C/path%3E%3Cpath d="M10 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"%3E%3C/path%3E%3C/svg%3E');
      width: 24px;
      height: 24px;
      background-size: 24px;
      height: 24px;
      content: "";
      display: block; }
    .mod_breadcrumb ul li.active:after {
      display: none; }

.nav-11 ul {
  margin-bottom: 0; }

.nav-11 li {
  display: inline-block;
  margin-left: 0.5rem;
  margin-right: 0.5rem;
  font-size: 14px;
  font-size: 0.875rem; }

#header {
  background-color: #ebe9dc;
  padding-top: 0.65rem;
  padding-bottom: 0.65rem;
  height: 78px;
  position: relative; }
  @media (min-width: 1280px) {
    #header {
      padding-top: 1rem;
      padding-bottom: 1rem;
      height: 114px; } }
  #header .inside > .active {
    display: block; }
  #header .inside > .no-active {
    display: none; }
  @media (max-width: 1279px) {
    #header .logo {
      order: 1; } }
  #header .logo a {
    display: block;
    width: 140px;
    height: 57px; }
    @media (min-width: 1280px) {
      #header .logo a {
        width: 200px;
        height: 82px; } }
  @media (max-width: 1279px) {
    #header .nav-suche {
      order: 2;
      display: flex;
      justify-content: flex-end;
      margin-right: 0.25rem; } }
  @media (max-width: 1279px) {
    #header .nav-01 {
      order: 3; } }
  #header .grid-header {
    grid-template-columns: 140px 1fr 50px; }
    @media (min-width: 1280px) {
      #header .grid-header {
        grid-template-columns: 200px 1fr 36px; } }
  #header .grid-header-suche {
    grid-template-columns: 1fr 36px;
    height: 57px; }
    @media (min-width: 1280px) {
      #header .grid-header-suche {
        height: 82px; } }

.header-box .claim,
.header-box {
  height: 350px; }
  @media (min-width: 1020px) {
    .header-box .claim,
    .header-box {
      height: 450px; } }
  @media (min-width: 1640px) {
    .header-box .claim,
    .header-box {
      height: 640px; } }

.header-box {
  overflow: hidden;
  position: relative; }
  .header-box .claim {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center; }
    .header-box .claim .image_container {
      position: absolute;
      z-index: 99; }
      .header-box .claim .image_container img {
        width: 100%;
        height: auto; }
  .header-box .header-img-2 img {
    margin-bottom: 0;
    position: absolute;
    object-fit: cover;
    width: auto;
    height: auto;
    top: 0;
    filter: blur(2px);
    opacity: 0.5; }

.span-30 {
  width: 100%; }
  @media (min-width: 500px) {
    .span-30 {
      width: 32%; } }

.span-100 {
  width: 100%; }

.span-50 {
  width: 100%; }
  @media (min-width: 500px) {
    .span-50 {
      width: 48.5%; } }

.span-60 {
  width: 100%; }
  @media (min-width: 500px) {
    .span-60 {
      width: 64%; } }

button {
  cursor: pointer; }

p.confirm {
  background-color: green;
  border-radius: 0.5rem;
  -moz-border-radius: 0.5rem;
  -webkit-border-radius: 0.5rem;
  color: #fff;
  text-align: center;
  padding: 0.35rem; }

p.error {
  background-color: red;
  border-radius: 0.5rem;
  -moz-border-radius: 0.5rem;
  -webkit-border-radius: 0.5rem;
  color: #fff;
  text-align: center;
  padding: 0.35rem; }

.flex-form {
  display: grid;
  align-items: center;
  margin-bottom: 1rem;
  width: 100%; }
  @media (min-width: 500px) {
    .flex-form {
      grid-template-columns: 120px 1fr 120px; } }

.btn-preis {
  background-color: #d5d3c8;
  padding: 1rem;
  border-radius: 0.5rem;
  -moz-border-radius: 0.5rem;
  -webkit-border-radius: 0.5rem; }
  @media (min-width: 500px) {
    .btn-preis {
      text-align: right; } }

.flex-form-2 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 1rem; }

.form-headline {
  font-weight: 700;
  width: 100%;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #171717;
  margin-bottom: 1rem; }

.form-1.wartung .widget-text.label-off label,
.form-1.wartung .checkbox_container.label-off legend,
.form-1.wartung .radio_container.label-off legend {
  display: none; }

.form-1.wartung h3 {
  background-color: #ebe9dc;
  padding: 0.35rem 0.5rem;
  display: block;
  margin-bottom: 0;
  margin-top: 1.5rem;
  font-size: 17px;
  font-size: 1.0625rem; }
  @media (min-width: 520px) {
    .form-1.wartung h3 {
      margin-top: 3rem; } }

.form-1.wartung h3.first {
  margin-top: 0; }

.form-1 .flex-center {
  justify-content: space-between; }

.form-1 .formbody {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 1rem; }

.form-1 .widget {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem; }

.form-1 .widget-checkbox .checkbox_container > span,
.form-1 .widget-radio .radio_container > span {
  grid-template-columns: 2.5rem 1fr;
  display: grid;
  align-items: center;
  margin-top: 0.25rem;
  margin-bottom: 0.25rem; }
  .form-1 .widget-checkbox .checkbox_container > span input,
  .form-1 .widget-radio .radio_container > span input {
    width: 1.5rem;
    height: 1.5rem; }
  .form-1 .widget-checkbox .checkbox_container > span label,
  .form-1 .widget-radio .radio_container > span label {
    margin-top: 1px; }

.form-1 .widget-radio > span {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem; }

.form-1 .widget-radio legend {
  font-weight: 700;
  margin-bottom: 0.5rem; }

.form-1 .widget-extended-checkbox a,
.form-1 .widget-explanation a {
  color: #000;
  text-decoration: underline; }

.form-1 .widget-textarea label {
  font-weight: 700;
  display: block;
  margin-bottom: 0.5rem; }

.form-1 .widget-textarea textarea:focus {
  border: 2px solid #712433;
  outline: none; }

.form-1 .widget-textarea textarea {
  display: block;
  padding: 0.5rem; }

.form-1 select,
.form-1 input,
.form-1 textarea {
  border: 2px solid #d5d3c8;
  border-radius: 6px;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px; }

.form-1 .widget-captcha,
.form-1 .widget-select,
.form-1 .widget-password,
.form-1 .widget-text {
  position: relative; }
  .form-1 .widget-captcha input,
  .form-1 .widget-captcha label,
  .form-1 .widget-select input,
  .form-1 .widget-select label,
  .form-1 .widget-password input,
  .form-1 .widget-password label,
  .form-1 .widget-text input,
  .form-1 .widget-text label {
    transition: all 0.2s ease; }
  .form-1 .widget-captcha label,
  .form-1 .widget-select label,
  .form-1 .widget-password label,
  .form-1 .widget-text label {
    margin-bottom: 6px;
    display: block; }
  .form-1 .widget-captcha select,
  .form-1 .widget-captcha input,
  .form-1 .widget-select select,
  .form-1 .widget-select input,
  .form-1 .widget-password select,
  .form-1 .widget-password input,
  .form-1 .widget-text select,
  .form-1 .widget-text input {
    height: 56px;
    padding-left: 9px;
    padding-right: 0.5rem;
    width: 100%; }
  .form-1 .widget-captcha input:focus,
  .form-1 .widget-select input:focus,
  .form-1 .widget-password input:focus,
  .form-1 .widget-text input:focus {
    border: 2px solid #712433;
    outline: none;
    transition: all 0.2s ease; }

.form-1 fieldset.checkbox-fach {
  display: grid;
  border-bottom: 1px solid #000;
  border-top: 1px solid #000;
  padding: 1rem 0; }
  @media (min-width: 768px) {
    .form-1 fieldset.checkbox-fach {
      grid-template-columns: 1fr 1fr;
      column-gap: 0.5rem; } }

.widget-select select {
  background-color: #fff; }

.widget-submit button {
  background-color: #de012c;
  border: 2px solid #de012c;
  border-radius: 100px;
  -moz-border-radius: 100px;
  -webkit-border-radius: 100px;
  color: #fff;
  padding: 0.85rem 1.5rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.2rem;
  height: 52px; }

.widget-submit button:hover {
  background-color: #fe1442;
  border: 2px solid #fe1442;
  transition: all ease 0.6s;
  color: #fff; }

.mod_search .formbody,
.grid-header-suche .ce_form .formbody {
  display: grid;
  grid-template-columns: 1fr 50px;
  column-gap: 0.45rem; }

.mod_search label,
.grid-header-suche .ce_form label {
  border: 0 !important;
  clip: rect(0, 0, 0, 0) !important;
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important; }

.mod_search input.text,
.grid-header-suche .ce_form input.text {
  height: 56px;
  padding-left: 9px;
  padding-right: 0.5rem;
  width: 100%;
  border-radius: 0.5rem;
  -moz-border-radius: 0.5rem;
  -webkit-border-radius: 0.5rem;
  border: 2px solid #d5d3c8; }

.mod_search input:focus,
.grid-header-suche .ce_form input:focus {
  border: 2px solid #712433;
  outline: none;
  transition: all 0.2s ease; }

.mod_search button,
.grid-header-suche .ce_form button {
  width: 100%;
  padding: 0;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center; }

.grid-header-suche .ce_form .formbody {
  margin-right: 1rem; }

.mod_search {
  margin-bottom: 1rem; }
  .mod_search .formbody {
    grid-template-columns: 1fr; }
    @media (min-width: 768px) {
      .mod_search .formbody {
        grid-template-columns: 1fr 160px; } }
    .mod_search .formbody .widget-text {
      margin-bottom: 1rem; }
  .mod_search .search_default {
    margin-top: 1rem;
    margin-bottom: 2rem;
    border-top: 1px #000 dashed;
    padding-top: 1.5rem; }
  .mod_search h3 {
    text-decoration: underline;
    margin-bottom: 0.45rem; }
  .mod_search p.url {
    color: #4a4a4a; }

@media (min-width: 768px) {
  .text-interview h3 {
    font-size: 20px;
    font-size: 1.25rem; } }

.font-weight-300 {
  font-family: "NeueHaasGroteskText55Roman", Arial, sans-serif;
  font-weight: normal; }

.font-weight-400 {
  font-family: "NeueHaasGroteskText55Roman", Arial, sans-serif;
  font-weight: normal; }

.font-weight-600 {
  font-family: "NeueHaasGroteskText75Bold", Arial, sans-serif;
  font-weight: bold; }

.font-weight-700 {
  font-family: "NeueHaasGroteskText75Bold", Arial, sans-serif;
  font-weight: bold; }

.font-weight-900 {
  font-family: "NeueHaasGroteskText75Bold", Arial, sans-serif;
  font-weight: bold; }

h1, h2, h3, h4, .headline-1, .headline-2 {
  font-family: "NeueHaasGroteskText75Bold", Arial, sans-serif;
  font-weight: bold; }

.headline-1,
h1 {
  color: #de012c;
  line-height: 1.8rem;
  font-size: 24px;
  font-size: 1.5rem; }
  @media (min-width: 768px) {
    .headline-1,
    h1 {
      font-size: 36px;
      font-size: 2.25rem;
      line-height: 2.5rem; } }

.headline-2,
h2 {
  color: #de012c;
  line-height: 1.8rem;
  font-size: 24px;
  font-size: 1.5rem; }
  @media (min-width: 768px) {
    .headline-2,
    h2 {
      font-size: 36px;
      font-size: 2.25rem;
      line-height: 2.5rem; } }

ul + h3,
p + h3 {
  margin-top: 1.5rem; }

ul + h4,
p + h4 {
  margin-top: 1.25rem; }

h4 + p.text-info,
h4 + p,
h3 + p,
h3 + p.text-info,
h1 + h2,
h3 + ul,
h3 + .rte ul,
h2 + h3 {
  margin-top: -0.65rem; }

.headline-3,
h3 {
  color: #000;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.5rem; }
  @media (min-width: 768px) {
    .headline-3,
    h3 {
      font-size: 24px;
      font-size: 1.5rem;
      line-height: 2rem; } }

.headline-4,
h4 {
  font-size: 18px;
  font-size: 1.125rem;
  font-family: "NeueHaasGroteskText55Roman", Arial, sans-serif;
  font-weight: normal; }

h5 {
  font-size: 18px;
  font-size: 1.125rem;
  font-family: "NeueHaasGroteskText55Roman", Arial, sans-serif;
  font-weight: normal; }

h6 {
  font-size: 18px;
  font-size: 1.125rem;
  font-family: "NeueHaasGroteskText55Roman", Arial, sans-serif;
  font-weight: normal; }

.text-1 {
  font-size: 17px;
  font-size: 1.0625rem;
  letter-spacing: 1px; }

.text-2 {
  font-size: 18px;
  font-size: 1.125rem;
  text-transform: uppercase;
  font-style: italic;
  font-weight: 900;
  color: #171717; }

.text-s {
  font-size: 14px;
  font-size: 0.875rem; }

.text-m {
  font-size: 17px;
  font-size: 1.0625rem; }
  @media (min-width: 1280px) {
    .text-m {
      font-size: 20px;
      font-size: 1.25rem;
      line-height: 1.7rem; } }

.text-l {
  font-size: 26px;
  font-size: 1.625rem; }
  @media (min-width: 1280px) {
    .text-l {
      font-size: 32px;
      font-size: 2rem; } }

.text-xl {
  font-size: 26px;
  font-size: 1.625rem; }
  @media (min-width: 1280px) {
    .text-xl {
      font-size: 44px;
      font-size: 2.75rem; } }

.text-xxl {
  font-size: 30px;
  font-size: 1.875rem; }
  @media (min-width: 1280px) {
    .text-xxl {
      font-size: 52px;
      font-size: 3.25rem;
      line-height: 4rem; } }

.text-info {
  text-transform: uppercase;
  letter-spacing: 0.2rem; }

b,
strong {
  font-weight: 700; }

a {
  color: #de012c;
  text-decoration: none; }

a:hover {
  color: #de012c; }

.underline a,
a.underline {
  text-decoration: underline; }

a.link-modal {
  text-decoration: dotted;
  border-bottom: 1px dotted #171717; }

li,
p {
  font-family: "NeueHaasGroteskText55Roman", Arial, sans-serif;
  font-weight: normal;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5rem; }

.uppercase {
  text-transform: uppercase; }

.italic {
  font-style: italic; }

.light {
  font-weight: 300; }

.center {
  text-align: center; }

.right-s {
  text-align: left; }
  @media (min-width: 500px) {
    .right-s {
      text-align: right; } }

.right {
  text-align: right; }

button.button-1 {
  background-color: transparent;
  width: 50px;
  height: 50px;
  border-radius: 25px;
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border: transparent;
  cursor: pointer; }

button.button-1:hover {
  background-color: #d5d3c8; }

.btn button,
.btn a {
  cursor: pointer;
  padding: 0.85rem 1.5rem;
  display: block;
  width: 100%;
  font-family: "NeueHaasGroteskText75Bold", Arial, sans-serif;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  min-height: 52px;
  border-radius: 100px;
  -moz-border-radius: 100px;
  -webkit-border-radius: 100px;
  letter-spacing: 0.05rem; }
  @media (min-width: 500px) {
    .btn button,
    .btn a {
      display: inline-block;
      width: auto; } }
  @media (min-width: 500px) {
    .btn button,
    .btn a {
      letter-spacing: 0.2rem;
      text-transform: uppercase; } }

.btn button:hover,
.btn a:hover {
  transition: border ease 0.6s;
  transition: background-color ease 0.6s; }

.btn-s button,
.btn-s a {
  cursor: pointer;
  padding: 0.35rem 1rem;
  border-radius: 100px;
  -moz-border-radius: 100px;
  -webkit-border-radius: 100px;
  font-weight: 400;
  min-height: 15px; }

.btn-1 button,
.btn-1 a {
  color: #de012c;
  background-color: #f6f3ea;
  border: 2px solid #de012c; }

.btn-1 button:hover,
.btn-1 a:hover {
  color: #fff;
  background-color: #de012c;
  border: 2px solid #de012c; }

.btn-2 button,
.btn-2 a {
  color: #fff;
  background-color: #de012c;
  border: 2px solid #de012c; }

.btn-2 button:hover,
.btn-2 a:hover {
  background-color: #fe1442;
  border: 2px solid #fe1442;
  color: #fff; }

.btn-3 button,
.btn-3 a {
  color: #de012c;
  background-color: #fff;
  opacity: 0.9;
  border: 2px solid #fff;
  font-family: "NeueHaasGroteskText55Roman", Arial, sans-serif;
  font-weight: normal; }

.btn-3 button:hover,
.btn-3 a:hover {
  opacity: 1; }

.btn-full a,
.btn-full button {
  display: block;
  width: 100%; }

.btn-200 a,
.btn-200 button {
  min-width: 200px; }

.btn-250 a,
.btn-250 button {
  min-width: 250px; }

.btn-300 a,
.btn-300 button {
  min-width: 300px; }

#main .swiper-center .controls {
  justify-content: center !important; }

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
  display: block; }

@media (min-width: 990px) {
  #main .swiper-key .swiper-wrapper {
    display: grid;
    grid-template-columns: repeat(12, 1fr); } }

@media (min-width: 990px) {
  #main .swiper-key .swiper-wrapper .swiper-slide {
    grid-column: auto/span 8;
    grid-column-start: 3; } }

#main .swiper--3.content-swiper {
  padding-bottom: 0;
  margin-bottom: 0; }
  #main .swiper--3.content-swiper .content-teaser-2:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #1d1d1b;
    background: linear-gradient(0deg, rgba(29, 29, 27, 0.6) 30%, rgba(0, 0, 0, 0.1) 100%);
    content: '';
    z-index: 1;
    transition: all 0.4s ease; }
  @media (min-width: 0) and (max-width: 989px) {
    #main .swiper--3.content-swiper .cont {
      height: 5px;
      margin-top: 20px;
      position: relative; } }

@media (min-width: 0) and (max-width: 989px) {
  #main .swiper--2 {
    padding-left: 5%;
    padding-right: 5%; } }

#main .content-swiper .swiper-pagination {
  margin-left: 10px;
  margin-right: 10px;
  margin-top: -5px;
  width: unset;
  position: relative; }
  #main .content-swiper .swiper-pagination .swiper-pagination-bullet {
    color: #fff;
    position: relative;
    background: #fff;
    transition: all 0.5s ease; }
  #main .content-swiper .swiper-pagination .swiper-pagination-bullet-active {
    width: 30px;
    border-radius: 6px;
    transition: all 0.5s ease; }

#main .swiper-mitarbeiter .swiper-slide .content-text {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: 2.5%; }
  #main .swiper-mitarbeiter .swiper-slide .content-text figure {
    grid-column: auto/span 12;
    order: 2; }
    @media (min-width: 990px) {
      #main .swiper-mitarbeiter .swiper-slide .content-text figure {
        grid-column: auto/span 6; } }
    #main .swiper-mitarbeiter .swiper-slide .content-text figure video,
    #main .swiper-mitarbeiter .swiper-slide .content-text figure img {
      height: auto;
      width: 100%;
      margin-bottom: 0;
      border-radius: 0.5rem;
      -moz-border-radius: 0.5rem;
      -webkit-border-radius: 0.5rem;
      overflow: hidden; }
  #main .swiper-mitarbeiter .swiper-slide .content-text .rte {
    grid-column: auto/span 12;
    order: 1; }
    @media (min-width: 990px) {
      #main .swiper-mitarbeiter .swiper-slide .content-text .rte {
        grid-column: auto/span 6; } }

#main .swiper-mitarbeiter button,
#main .swiper-mitarbeiter .swiper-button-prev,
#main .swiper-mitarbeiter .swiper-button-next {
  border: 2px solid #de012c;
  width: 40px;
  height: 40px;
  border-radius: 20px;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  color: #de012c;
  opacity: 1;
  background: transparent; }

#main .swiper-mitarbeiter button:after,
#main .swiper-mitarbeiter .swiper-button-next:after,
#main .swiper-mitarbeiter .swiper-button-prev:after {
  font-size: 16px;
  font-weight: 900; }

#main .swiper-mitarbeiter button:hover,
#main .swiper-mitarbeiter .swiper-button-next:hover,
#main .swiper-mitarbeiter .swiper-button-prev:hover {
  background-color: #fff;
  background: white;
  background: rgba(255, 255, 255, 0.2); }

#main .swiper-mitarbeiter .swiper-button-disabled {
  opacity: 0.5; }

#main .swiper-mitarbeiter .swiper-button-prev,
#main .swiper-mitarbeiter .swiper-button-next {
  position: relative;
  left: 0; }

#main .swiper-mitarbeiter .swiper-button-next {
  order: 3; }

#main .swiper-mitarbeiter .controls {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: 2.5%;
  padding-top: 1rem;
  margin-bottom: 1rem; }
  #main .swiper-mitarbeiter .controls .col-6 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
  #main .swiper-mitarbeiter .controls .number {
    width: 80px;
    text-align: right; }
  #main .swiper-mitarbeiter .controls .pag {
    width: calc(100% - 80px);
    display: flex;
    align-items: center; }

#main .swiper-mitarbeiter .swiper-pagination {
  margin-left: 10px;
  margin-right: 10px;
  top: -2px;
  width: unset;
  position: relative; }
  #main .swiper-mitarbeiter .swiper-pagination .swiper-pagination-bullet {
    color: #de012c;
    position: relative;
    background: #de012c;
    transition: all 0.5s ease; }
  #main .swiper-mitarbeiter .swiper-pagination .swiper-pagination-bullet-active {
    width: 30px;
    border-radius: 6px;
    transition: all 0.5s ease; }

@media (min-width: 990px) {
  #main .swiper-vier .swiper-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    column-gap: 2.5%; } }

#main .swiper-vier .cont {
  margin-top: 2rem; }

#main .swiper-vier .swiper-slide {
  background-color: #ebe9dc;
  border-radius: 0.5rem;
  -moz-border-radius: 0.5rem;
  -webkit-border-radius: 0.5rem;
  padding: 1rem;
  padding-bottom: 0; }

@media (min-width: 990px) {
  #main .swiper-vier-2 .swiper-wrapper {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    column-gap: 2.5%;
    padding-top: 1rem;
    margin-bottom: 1rem; } }

#main .swiper-vier-2 .cont {
  margin-top: 2rem; }

#main .swiper-vier-2 .swiper-slide {
  background-color: #ebe9dc;
  border-radius: 0.5rem;
  -moz-border-radius: 0.5rem;
  -webkit-border-radius: 0.5rem;
  padding: 1rem; }
  @media (min-width: 990px) {
    #main .swiper-vier-2 .swiper-slide {
      grid-column: auto/span 8;
      grid-column-start: 4;
      margin-bottom: 1rem; } }

.list-1 ul li {
  list-style: disc;
  list-style-position: outside;
  padding-left: 0rem;
  margin-left: 1rem;
  margin-top: 0.3rem;
  margin-bottom: 0.3rem; }

.list-1 ul li:first-child {
  margin-top: 0; }

ul.list-3 {
  margin-bottom: 0em;
  list-style: none;
  list-style-type: none;
  counter-reset: my-counter;
  padding: 0; }
  ul.list-3 li {
    counter-increment: my-counter;
    padding-left: 42px;
    position: relative;
    margin-top: 0.35rem;
    min-height: 20px;
    font-weight: 300;
    line-height: 130%;
    margin-bottom: 1rem; }
  ul.list-3 li::before {
    content: counter(my-counter);
    display: block;
    position: absolute;
    left: 0;
    top: -1px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background-color: #d2d0b6;
    color: #fff;
    text-align: center;
    line-height: 30px;
    font-weight: 700; }

#main ul.list-4 {
  margin-bottom: 0em;
  list-style: none;
  list-style-type: none;
  counter-reset: my-counter;
  padding: 0; }
  #main ul.list-4 li {
    counter-increment: my-counter;
    padding-left: 42px;
    position: relative;
    margin-top: 0.35rem;
    min-height: 20px;
    font-weight: 300;
    line-height: 130%;
    margin-bottom: 1rem; }
  #main ul.list-4 li::before {
    content: counter(my-counter);
    display: block;
    position: absolute;
    left: 0;
    top: -1px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background-color: #de012c;
    color: #fff;
    text-align: center;
    line-height: 30px;
    font-weight: 700; }

.color-1 {
  color: #de012c; }

.color-2 {
  color: #d2d0b6; }

.color-red {
  color: red; }

.grau-1 {
  color: #f2f2f2; }

.grau-2 {
  color: #d5d3c8; }

.grau-3 {
  color: #171717; }

.bg-color-1 {
  background-color: #de012c; }
  .bg-color-1 h1, .bg-color-1 h2, .bg-color-1 h3, .bg-color-1 h4, .bg-color-1 h5, .bg-color-1 h6, .bg-color-1 li, .bg-color-1 a, .bg-color-1 p {
    color: #fff; }

.bg-color-2 {
  background-color: #d2d0b6; }
  .bg-color-2 a {
    color: #000; }
  .bg-color-2 .btn-2 a {
    color: #fff; }

.bg-color-2-3 {
  background-color: #ebe9dc; }
  .bg-color-2-3 a {
    color: #000; }
  .bg-color-2-3 .btn-2 a {
    color: #fff; }

.bg-color-3 {
  background-color: #0d8e53; }

.bg-grau-1 {
  background-color: #f2f2f2; }

.bg-grau-2 {
  background-color: #d5d3c8; }

.bg-grau-3 {
  background-color: #171717;
  color: #fff; }

.bg-grau-5 {
  background-color: #f9fafb; }

.bg-color-7 {
  background-color: #f6f3ea; }

.color-black {
  color: #000; }

.bg-white {
  background-color: #fff; }

.white {
  color: #fff; }

.border-grau-1 {
  border: 1px solid #f2f2f2; }

.border-grau-2 {
  border: 1px solid #d5d3c8; }

.border-grau-3 {
  border: 1px solid #d5d3c8; }

.border-color-1 {
  border: 1px solid #de012c; }

.border-color-2 {
  border: 1px solid #d2d0b6; }

.slider-leistungen .icon-feuerloescher {
  background-image: url("../../files/daten/icon/icon-feuerloescher.svg");
  background-repeat: no-repeat;
  background-position: top left;
  background-size: 48px 48px; }

.slider-leistungen .icon-rauchwarnmelder {
  background-image: url("../../files/daten/icon/icon-rauchwarnmelder.svg");
  background-repeat: no-repeat;
  background-position: top left;
  background-size: 48px 48px; }

.slider-leistungen .icon-trinkwasserhygiene {
  background-image: url("../../files/daten/icon/icon-trinkwasserhygiene.svg");
  background-repeat: no-repeat;
  background-position: top left;
  background-size: 48px 48px; }

.slider-leistungen .icon-Feuerschutzabschluesse {
  background-image: url("../../files/daten/icon/icon-Feuerschutzabschluesse.svg");
  background-repeat: no-repeat;
  background-position: top left;
  background-size: 48px 48px; }

.slider-leistungen .icon-sicherheitstechnik {
  background-image: url("../../files/daten/icon/icon-sicherheitstechnik.svg");
  background-repeat: no-repeat;
  background-position: top left;
  background-size: 48px 48px; }

.slider-leistungen .icon-org-brandschutz {
  background-image: url("../../files/daten/icon/icon-org-brandschutz.svg");
  background-repeat: no-repeat;
  background-position: top left;
  background-size: 48px 48px;
  background-size: 80px 48px; }

.slider-leistungen .icon-loeschwassertechnik {
  background-image: url("../../files/daten/icon/icon-loeschwassertechnik.svg");
  background-repeat: no-repeat;
  background-position: top left;
  background-size: 48px 48px; }

.slider-leistungen .icon-baulicher-Brandschutz {
  background-image: url("../../files/daten/icon/icon-baulicher-Brandschutz.svg");
  background-repeat: no-repeat;
  background-position: top left;
  background-size: 48px 48px; }

.slider-leistungen .icon-entrauchung {
  background-image: url("../../files/daten/icon/icon-entrauchung.svg");
  background-repeat: no-repeat;
  background-position: top left;
  background-size: 48px 48px; }

.slider-leistungen .icon-loeschanlagen {
  background-image: url("../../files/daten/icon/icon-loeschanlagen.svg");
  background-repeat: no-repeat;
  background-position: top left;
  background-size: 48px 48px; }

.slider-leistungen .icon-feuerloescher,
.slider-leistungen .icon-rauchwarnmelder,
.slider-leistungen .icon-trinkwasserhygiene,
.slider-leistungen .icon-Feuerschutzabschluesse,
.slider-leistungen .icon-sicherheitstechnik,
.slider-leistungen .icon-org-brandschutz,
.slider-leistungen .icon-loeschwassertechnik,
.slider-leistungen .icon-baulicher-Brandschutz,
.slider-leistungen .icon-entrauchung,
.slider-leistungen .icon-loeschanlagen {
  background-size: 60px 60px;
  background-position: center top; }
  @media (min-width: 1020px) {
    .slider-leistungen .icon-feuerloescher,
    .slider-leistungen .icon-rauchwarnmelder,
    .slider-leistungen .icon-trinkwasserhygiene,
    .slider-leistungen .icon-Feuerschutzabschluesse,
    .slider-leistungen .icon-sicherheitstechnik,
    .slider-leistungen .icon-org-brandschutz,
    .slider-leistungen .icon-loeschwassertechnik,
    .slider-leistungen .icon-baulicher-Brandschutz,
    .slider-leistungen .icon-entrauchung,
    .slider-leistungen .icon-loeschanlagen {
      background-position: top left;
      background-size: 120px 120px; } }

.icon-download {
  background-image: url("../../files/daten/icon/icon-download.svg");
  background-repeat: no-repeat;
  background-position: top left;
  background-size: 48px 48px;
  background-size: 50px 50px; }
  .icon-download a {
    display: block;
    padding: 25px;
    margin-bottom: 0.75em; }

.icon-download-2 {
  background-image: url("../../files/daten/icon/icon-download-2.svg");
  background-repeat: no-repeat;
  background-position: top left;
  background-size: 48px 48px;
  background-size: 50px 50px; }
  .icon-download-2 a {
    display: block;
    padding: 25px;
    margin-bottom: 0.75em; }

@media (min-width: 1020px) {
  .icon-m-t a {
    background-image: url("../../files/daten/icon/icon-m-t.svg");
    background-repeat: no-repeat;
    background-position: top left;
    background-size: 48px 48px;
    background-size: 53px 33px;
    background-position: 16px center;
    padding: 0.8rem 1.5rem 0.8rem 80px !important;
    font-size: 18px;
    font-size: 1.125rem; } }

.icon-j-1 {
  background-image: url("../../files/daten/icon/icon-j-1.svg");
  background-repeat: no-repeat;
  background-position: top left;
  background-size: 48px 48px;
  background-size: 100% 100%;
  background-position: center center; }

.icon-j-3 .page {
  background-image: url("../../files/daten/icon/icon-j-3.svg");
  background-repeat: no-repeat;
  background-position: top left;
  background-size: 48px 48px;
  background-size: auto 100%;
  background-position: top right; }

.icon-j-2 {
  background-image: url("../../files/daten/icon/icon-j-2.svg");
  background-repeat: no-repeat;
  background-position: top left;
  background-size: 48px 48px;
  background-size: 98% auto;
  background-position: top right; }
  @media (min-width: 768px) {
    .icon-j-2 {
      background-size: auto 600px; } }
  @media (min-width: 1020px) {
    .icon-j-2 {
      background-size: auto 98%; } }

.icon-mail a {
  background-image: url("../../files/daten/icon/icon-mail.svg");
  background-repeat: no-repeat;
  background-position: top left;
  background-size: 48px 48px;
  background-size: 41px 28px;
  background-position: 8px center;
  padding-left: 56px; }

.icon-fon a {
  background-image: url("../../files/daten/icon/icon-fon.svg");
  background-repeat: no-repeat;
  background-position: top left;
  background-size: 48px 48px;
  background-size: 28px 28px;
  background-position: 8px center;
  padding-left: 38px; }

.content-player video {
  width: 100%;
  height: auto; }

.ce_youtube {
  position: relative;
  padding-bottom: 56.25%;
  width: 100%;
  height: auto; }
  .ce_youtube iframe {
    border: 0;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100% !important;
    height: 100% !important; }

.col-1 {
  margin-top: 1rem; }

.col-2 {
  margin-top: 1rem; }

.col-3 {
  margin-top: 1rem; }

.col-4 {
  margin-top: 1rem; }

.col-5 {
  margin-top: 1rem; }

.col-6 {
  margin-top: 1rem; }

.col-7 {
  margin-top: 1rem; }

.col-8 {
  margin-top: 1rem; }

.col-9 {
  margin-top: 1rem; }

.col-10 {
  margin-top: 1rem; }

.col-11 {
  margin-top: 1rem; }

.col-12 {
  margin-top: 1rem; }

.margin-1 img {
  margin-bottom: -0.35rem; }

.col-center,
.col-3-2,
.col-5-2,
.col-4-2,
.col-6-2,
.col-8-2 {
  margin-top: 1rem; }

h1, h2, h3, h4, h5, h6, p, ul, img, table {
  margin-bottom: 1rem; }

p.m-s {
  margin-bottom: 0.25rem; }

.no-margin img {
  margin-bottom: -6px; }

img.no-margin {
  margin-bottom: -6px; }

p.no-margin {
  margin-bottom: 0; }

.mt--1 {
  margin-top: -0.65rem; }

.mt-1-2 {
  margin-top: 2rem; }
  @media (min-width: 990px) {
    .mt-1-2 {
      margin-top: 2rem; } }

.mt-1,
.mt-2,
.mt-3,
.mt-4 {
  margin-top: 1rem; }

.mt-1-s {
  margin-top: 0.5rem; }

@media (min-width: 990px) {
  .mt-2 {
    margin-top: 2rem; } }

@media (min-width: 990px) {
  .mt-3 {
    margin-top: 3rem; } }

@media (min-width: 990px) {
  .mt-4 {
    margin-top: 4rem; } }

.mb-1,
.mb-2,
.mb-3,
.mb-4 {
  margin-bottom: 1rem; }

.mb-s {
  margin-bottom: 0.5rem; }

@media (min-width: 990px) {
  .mb-2 {
    margin-bottom: 2rem; } }

@media (min-width: 990px) {
  .mb-3 {
    margin-bottom: 3rem; } }

@media (min-width: 990px) {
  .mb-4 {
    margin-bottom: 4rem; } }

.spacer-1 {
  height: 1rem;
  clear: both;
  width: 100%; }

.spacer-2 {
  height: 1rem;
  clear: both;
  width: 100%; }

.spacer-3 {
  height: 1rem;
  clear: both;
  width: 100%; }

.spacer-4 {
  height: 1rem;
  clear: both;
  width: 100%; }

.spacer-5 {
  height: 1rem;
  clear: both;
  width: 100%; }

.spacer-6 {
  height: 1rem;
  clear: both;
  width: 100%; }

@media (min-width: 990px) {
  .spacer-1 {
    height: 1rem; }
  .spacer-2 {
    height: 2rem; }
  .spacer-3 {
    height: 3rem; }
  .spacer-4 {
    height: 4rem; }
  .spacer-5 {
    height: 5rem; }
  .spacer-6 {
    height: 6rem; } }

@media (min-width: 0) and (max-width: 499px) {
  .spacer-mobile-1 {
    height: 0.65rem;
    display: block;
    width: 100%; } }

@media (min-width: 500px) {
  .spacer-mobile-1 {
    display: none; } }

.ml-1 {
  margin-left: 0.5rem; }

.mr-1 {
  margin-right: 0.5rem; }

.padd-1 {
  padding: 1rem;
  padding-bottom: 0.001rem; }

.padd-2 {
  padding: 2rem;
  padding-bottom: 1rem; }

.padd-3 {
  padding: 1rem; }

.padd-4 {
  padding: 2rem; }

.padd-5 {
  padding: 1rem; }
  @media (min-width: 1280px) {
    .padd-5 {
      padding: 4rem 12rem; } }

.padd-6 {
  padding-top: 1rem;
  padding-bottom: 1rem; }

.mod_article .page {
  padding-top: 1rem;
  padding-bottom: 1rem; }
  @media (min-width: 1020px) {
    .mod_article .page {
      padding-top: 3rem;
      padding-bottom: 3rem; } }
  @media (min-width: 1280px) {
    .mod_article .page {
      padding-top: 4rem;
      padding-bottom: 4rem; } }

.mod_article.no-padd,
.mod_article.no-padd .page {
  padding-top: 0;
  padding-bottom: 0; }

.mod_article .page.page-s,
.mod_article.article-s .page {
  padding-top: 2rem;
  padding-bottom: 2rem; }

.padding-article-1 {
  padding-top: 1rem;
  padding-bottom: 1rem; }
  @media (min-width: 1020px) {
    .padding-article-1 {
      padding-top: 3rem;
      padding-bottom: 3rem; } }
  @media (min-width: 1280px) {
    .padding-article-1 {
      padding-top: 4rem;
      padding-bottom: 4rem; } }

.mod_article.no-margin-t .page {
  padding-top: 1rem; }

.content-cta .btn {
  margin-left: 0.35rem;
  margin-right: 0.35rem; }

.swiper-key,
.content-key-value {
  counter-reset: list-number;
  margin-bottom: 1rem; }
  .swiper-key .content-text,
  .content-key-value .content-text {
    margin-top: 1rem;
    margin-bottom: 1rem;
    grid-column: auto/span 12;
    -webkit-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
    box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
    border-radius: 0.5rem;
    -moz-border-radius: 0.5rem;
    -webkit-border-radius: 0.5rem;
    overflow: hidden;
    display: grid;
    column-gap: 2.5%;
    align-items: center; }
    @media (min-width: 1280px) {
      .swiper-key .content-text,
      .content-key-value .content-text {
        grid-column: auto/span 8;
        grid-column-start: 3; } }
    @media (min-width: 768px) {
      .swiper-key .content-text,
      .content-key-value .content-text {
        grid-template-columns: 120px 1fr 120px; } }
    @media (min-width: 1280px) {
      .swiper-key .content-text,
      .content-key-value .content-text {
        grid-template-columns: 200px 1fr 200px; } }
    .swiper-key .content-text h3,
    .content-key-value .content-text h3 {
      margin-bottom: 0.25rem; }
    .swiper-key .content-text img,
    .content-key-value .content-text img {
      margin-bottom: 0; }
    .swiper-key .content-text .text,
    .content-key-value .content-text .text {
      background-color: #fff;
      padding-left: 1rem;
      padding-right: 1rem; }
      @media (min-width: 768px) {
        .swiper-key .content-text .text,
        .content-key-value .content-text .text {
          padding: 0; } }
    .swiper-key .content-text .image,
    .content-key-value .content-text .image {
      background-color: #ebe9dc;
      padding: 1rem;
      min-height: 160px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center; }
      .swiper-key .content-text .image figure,
      .content-key-value .content-text .image figure {
        width: 100%;
        display: flex;
        justify-content: center; }
      .swiper-key .content-text .image img,
      .content-key-value .content-text .image img {
        width: 250px;
        height: auto; }
        @media (min-width: 768px) {
          .swiper-key .content-text .image img,
          .content-key-value .content-text .image img {
            width: 100%;
            height: auto; } }
    .swiper-key .content-text .number:before,
    .content-key-value .content-text .number:before {
      counter-increment: list-number;
      content: counter(list-number);
      display: block;
      display: flex;
      justify-content: center;
      font-size: 120px;
      font-size: 7.5rem;
      font-weight: 900;
      -webkit-text-fill-color: white;
      -webkit-text-stroke-width: 2px;
      -webkit-text-stroke-color: #de012c; }

#main .content-leistungen-swiper .content-swiper {
  margin-bottom: 1rem; }
  @media (min-width: 0) and (max-width: 989px) {
    #main .content-leistungen-swiper .content-swiper .swiper-wrapper {
      display: block;
      width: 100%;
      height: auto; } }
  #main .content-leistungen-swiper .content-swiper .slide {
    margin-bottom: 1rem;
    border-radius: 0.5rem;
    -moz-border-radius: 0.5rem;
    -webkit-border-radius: 0.5rem;
    overflow: hidden;
    display: grid;
    -webkit-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
    box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
    margin-bottom: 1rem;
    margin-top: 1rem; }
    @media (min-width: 990px) {
      #main .content-leistungen-swiper .content-swiper .slide {
        height: 31rem;
        margin-bottom: 0; } }
    @media (min-width: 990px) {
      #main .content-leistungen-swiper .content-swiper .slide {
        grid-template-columns: 60% 40%; } }
    #main .content-leistungen-swiper .content-swiper .slide .col-left {
      order: 2;
      background-color: #fff;
      display: grid;
      column-gap: 2.5%;
      padding: 1rem; }
      @media (min-width: 990px) {
        #main .content-leistungen-swiper .content-swiper .slide .col-left {
          order: 1; } }
      @media (min-width: 768px) {
        #main .content-leistungen-swiper .content-swiper .slide .col-left {
          grid-template-columns: 60px 1fr; } }
      @media (min-width: 0) and (max-width: 767px) {
        #main .content-leistungen-swiper .content-swiper .slide .col-left .image {
          display: none; } }
      @media (min-width: 1280px) {
        #main .content-leistungen-swiper .content-swiper .slide .col-left {
          grid-template-columns: 80px 1fr; } }
      @media (min-width: 1280px) {
        #main .content-leistungen-swiper .content-swiper .slide .col-left {
          padding: 3rem; } }
      #main .content-leistungen-swiper .content-swiper .slide .col-left ul, #main .content-leistungen-swiper .content-swiper .slide .col-left img {
        margin-bottom: 0; }
      #main .content-leistungen-swiper .content-swiper .slide .col-left ul li.first {
        font-size: 18px;
        font-size: 1.125rem;
        margin-bottom: 0.5rem;
        margin-top: 0; }
      #main .content-leistungen-swiper .content-swiper .slide .col-left ul li {
        margin-top: 0.4rem;
        margin-bottom: 0.4rem; }
      #main .content-leistungen-swiper .content-swiper .slide .col-left img {
        width: 100%;
        height: auto; }
    #main .content-leistungen-swiper .content-swiper .slide .col-last {
      order: 1;
      background-color: #ebe9dc;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      padding-top: 1rem;
      padding-bottom: 1rem; }
      @media (min-width: 990px) {
        #main .content-leistungen-swiper .content-swiper .slide .col-last {
          order: 2; } }
      @media (min-width: 990px) {
        #main .content-leistungen-swiper .content-swiper .slide .col-last {
          padding-bottom: 0; } }
      #main .content-leistungen-swiper .content-swiper .slide .col-last img {
        margin-bottom: 0; }
  #main .content-leistungen-swiper .content-swiper .nav-swiper {
    position: relative;
    width: 80%;
    margin-left: 10%;
    margin-right: 10%;
    margin-top: -3rem;
    z-index: 99;
    margin-bottom: 1rem; }
    @media (min-width: 0) and (max-width: 989px) {
      #main .content-leistungen-swiper .content-swiper .nav-swiper {
        display: none; } }
  #main .content-leistungen-swiper .content-swiper .swiper-pagination {
    margin: 0;
    width: 100%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap; }
    #main .content-leistungen-swiper .content-swiper .swiper-pagination .swiper-pagination-bullet {
      display: block;
      color: #000;
      position: relative;
      background: #fff;
      transition: all 0.5s ease;
      margin: 0.35rem;
      width: auto;
      border-radius: 0.5rem;
      -moz-border-radius: 0.5rem;
      -webkit-border-radius: 0.5rem;
      padding: 0.75rem;
      opacity: 1;
      height: auto; }
    #main .content-leistungen-swiper .content-swiper .swiper-pagination .swiper-pagination-bullet-active {
      width: auto;
      transition: all 0.5s ease;
      background-color: #de012c;
      color: #fff; }

.cta .grid-cta-produkte {
  border-radius: 0.5rem;
  -moz-border-radius: 0.5rem;
  -webkit-border-radius: 0.5rem;
  overflow: hidden;
  border: 1px solid #d2d0b6; }
  .cta .grid-cta-produkte .col-first {
    background-color: #f6f3ea; }
  .cta .grid-cta-produkte .col-last {
    background-color: #ebe9dc; }
    .cta .grid-cta-produkte .col-last .cta-downloads {
      display: flex;
      flex-wrap: wrap; }
      .cta .grid-cta-produkte .col-last .cta-downloads a {
        color: #000;
        text-decoration: underline; }
      .cta .grid-cta-produkte .col-last .cta-downloads .col-full img,
      .cta .grid-cta-produkte .col-last .cta-downloads .col img {
        width: 100%;
        height: auto; }
      .cta .grid-cta-produkte .col-last .cta-downloads .col-full {
        width: 100%; }
        .cta .grid-cta-produkte .col-last .cta-downloads .col-full img {
          width: 150px;
          height: auto;
          overflow: hidden;
          margin-bottom: 1rem;
          border-radius: 0.5rem;
          -moz-border-radius: 0.5rem;
          -webkit-border-radius: 0.5rem; }
      .cta .grid-cta-produkte .col-last .cta-downloads .col {
        width: 150px;
        margin-right: 1rem; }
        .cta .grid-cta-produkte .col-last .cta-downloads .col .image_container {
          height: 200px;
          overflow: hidden;
          margin-bottom: 1rem;
          border-radius: 0.5rem;
          -moz-border-radius: 0.5rem;
          -webkit-border-radius: 0.5rem; }
  .cta .grid-cta-produkte .col-first,
  .cta .grid-cta-produkte .col-last {
    padding: 1rem; }
    @media (min-width: 990px) {
      .cta .grid-cta-produkte .col-first,
      .cta .grid-cta-produkte .col-last {
        padding: 2rem; } }

.conten-box-links .bg-color-1,
.conten-box-links .content-hyperlink {
  text-align: center;
  padding: 1rem;
  border-radius: 0.5rem;
  -moz-border-radius: 0.5rem;
  -webkit-border-radius: 0.5rem; }
  .conten-box-links .bg-color-1 p.h2,
  .conten-box-links .bg-color-1 a,
  .conten-box-links .content-hyperlink p.h2,
  .conten-box-links .content-hyperlink a {
    color: #de012c;
    margin-bottom: 0em;
    font-size: 17px;
    font-size: 1.0625rem;
    font-weight: 500; }
    @media (min-width: 768px) {
      .conten-box-links .bg-color-1 p.h2,
      .conten-box-links .bg-color-1 a,
      .conten-box-links .content-hyperlink p.h2,
      .conten-box-links .content-hyperlink a {
        font-size: 19px;
        font-size: 1.1875rem;
        font-weight: 700; } }
    @media (min-width: 990px) {
      .conten-box-links .bg-color-1 p.h2,
      .conten-box-links .bg-color-1 a,
      .conten-box-links .content-hyperlink p.h2,
      .conten-box-links .content-hyperlink a {
        font-size: 20px;
        font-size: 1.25rem; } }
    @media (min-width: 1280px) {
      .conten-box-links .bg-color-1 p.h2,
      .conten-box-links .bg-color-1 a,
      .conten-box-links .content-hyperlink p.h2,
      .conten-box-links .content-hyperlink a {
        font-size: 23px;
        font-size: 1.4375rem; } }

.conten-box-links .content-hyperlink {
  background-color: #ebe9dc; }

.conten-box-links .bg-color-1 p.h2 {
  color: #fff;
  font-weight: 900; }

.conten-box-links .linie-1 {
  width: 3px;
  margin-left: auto;
  margin-right: auto;
  background-color: #de012c;
  height: 15px; }
  @media (min-width: 990px) {
    .conten-box-links .linie-1 {
      height: 33px; } }

#main .content-box-5 {
  counter-reset: list-number;
  margin-bottom: 1rem;
  -webkit-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
  border-radius: 0.5rem;
  -moz-border-radius: 0.5rem;
  -webkit-border-radius: 0.5rem;
  overflow: hidden; }
  #main .content-box-5 .content-text {
    overflow: unset;
    display: flex;
    flex-wrap: wrap;
    align-items: center; }
    #main .content-box-5 .content-text svg.polygon {
      position: absolute;
      width: 44px;
      height: 18px;
      fill: #ebe9dc;
      bottom: -18px;
      z-index: 1;
      margin-left: -22px; }
      @media (min-width: 0) and (max-width: 1019px) {
        #main .content-box-5 .content-text svg.polygon {
          left: 50%; } }
      @media (min-width: 1020px) {
        #main .content-box-5 .content-text svg.polygon {
          margin-left: 186px; } }
    #main .content-box-5 .content-text .image {
      width: 100%;
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      background-color: #ebe9dc; }
      @media (min-width: 1020px) {
        #main .content-box-5 .content-text .image {
          width: 280px; } }
      #main .content-box-5 .content-text .image .inside {
        margin-left: 2rem;
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;
        position: relative; }
        @media (min-width: 0) and (max-width: 1019px) {
          #main .content-box-5 .content-text .image .inside {
            margin-right: 2rem;
            width: 100%; } }
        @media (min-width: 1020px) {
          #main .content-box-5 .content-text .image .inside {
            justify-content: space-between; } }
      #main .content-box-5 .content-text .image .number::before {
        counter-increment: list-number;
        content: counter(list-number);
        display: block;
        display: flex;
        justify-content: center;
        font-size: 100px;
        font-size: 6.25rem;
        font-weight: 900;
        width: 50px;
        color: #fff; }
      #main .content-box-5 .content-text .image img {
        margin-left: 3rem;
        width: 80px;
        height: auto;
        margin-bottom: 0; }
        @media (min-width: 0) and (max-width: 1019px) {
          #main .content-box-5 .content-text .image img {
            margin-left: 1rem;
            width: 122px;
            height: auto;
            margin-bottom: 0;
            margin-top: 5px; } }
    #main .content-box-5 .content-text .text {
      width: 100%;
      padding: 1.5rem 1rem 1rem 1rem;
      background-color: #fff; }
      @media (min-width: 0) and (max-width: 1019px) {
        #main .content-box-5 .content-text .text {
          text-align: center; } }
      @media (min-width: 1020px) {
        #main .content-box-5 .content-text .text {
          width: calc(100% - 280px);
          height: 126px;
          display: flex;
          flex-wrap: wrap;
          justify-content: center;
          flex-direction: column;
          overflow: hidden;
          padding: 0.25rem 1rem; } }
      #main .content-box-5 .content-text .text h3 {
        margin-bottom: 0.25rem;
        font-size: 20px;
        font-size: 1.25rem; }
      #main .content-box-5 .content-text .text p {
        margin-bottom: 0; }
  #main .content-box-5 .content-text:nth-child(odd) .image {
    background-color: #d5d3c8; }
  #main .content-box-5 .content-text:nth-child(odd) .text {
    background-color: #ebe9dc; }
  #main .content-box-5 .content-text:nth-child(odd) svg.polygon {
    fill: #d5d3c8; }
  #main .content-box-5 .content-text:last-child .image {
    background-color: #095f38; }
    #main .content-box-5 .content-text:last-child .image img {
      width: 129px;
      margin-left: 1rem; }
  #main .content-box-5 .content-text:last-child .text {
    background-color: #0b7745; }
    #main .content-box-5 .content-text:last-child .text p, #main .content-box-5 .content-text:last-child .text h3 {
      color: #fff; }
  #main .content-box-5 .content-text:last-child .number::before {
    color: #fff; }
  #main .content-box-5 .content-text:last-child svg.polygon {
    display: none !important; }

#main .content-box-2 .content-hyperlink {
  background-color: #fff;
  border-radius: 0.5rem;
  -moz-border-radius: 0.5rem;
  -webkit-border-radius: 0.5rem;
  overflow: hidden;
  padding: 1rem;
  text-align: center;
  display: grid;
  margin-bottom: 1rem; }
  #main .content-box-2 .content-hyperlink h2 {
    order: 2;
    color: #000;
    font-size: 22px;
    font-size: 1.375rem; }
  #main .content-box-2 .content-hyperlink figure {
    order: 1; }
    #main .content-box-2 .content-hyperlink figure img {
      width: 60%;
      height: auto; }

.content-zitat {
  display: grid;
  grid-template-columns: 120px 1fr;
  column-gap: 2.5%; }
  .content-zitat .image figure {
    width: 120px;
    height: 120px;
    border-radius: 60px;
    -moz-border-radius: 60px;
    -webkit-border-radius: 60px;
    overflow: hidden;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center; }
    .content-zitat .image figure img {
      margin-bottom: 0; }

@media (min-width: 768px) {
  #main .content-header {
    height: 600px;
    overflow: hidden;
    position: relative; } }

@media (min-width: 1640px) {
  #main .content-header {
    height: 700px; } }

@media (min-width: 0) and (max-width: 767px) {
  #main .content-header .page {
    background-color: #ebe9dc;
    padding-top: 1rem;
    padding-bottom: 1rem; } }

#main .content-header .img-header .content-image {
  display: block; }
  #main .content-header .img-header .content-image video,
  #main .content-header .img-header .content-image img {
    width: 100%;
    height: auto; }
    @media (min-width: 768px) {
      #main .content-header .img-header .content-image video,
      #main .content-header .img-header .content-image img {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: all 0.4s ease; } }

#main .content-header .relative {
  position: relative; }

#main .content-header .col {
  margin-top: 1rem; }
  @media (min-width: 768px) {
    #main .content-header .col {
      position: absolute;
      height: 600px;
      padding-bottom: 6rem;
      display: flex;
      flex-direction: column;
      justify-content: end; } }
  @media (min-width: 1640px) {
    #main .content-header .col {
      height: 700px; } }
  #main .content-header .col .content-headline {
    background-color: #de012c;
    color: #f6f3ea;
    display: block;
    padding: 0.75rem 1.25rem; }
  #main .content-header .col .flex-btn .btn {
    margin-bottom: 1rem; }
  @media (min-width: 400px) and (max-width: 767px) {
    #main .content-header .col .flex-btn {
      display: grid;
      grid-template-columns: 1fr 1fr;
      column-gap: 1rem; }
      #main .content-header .col .flex-btn .btn a {
        width: 100%;
        display: block; } }
  @media (min-width: 768px) {
    #main .content-header .col .flex-btn {
      display: flex;
      flex-wrap: wrap;
      gap: 1rem; } }

@media (min-width: 768px) {
  #main .content-header .col-headline-single {
    padding-bottom: 10rem; } }

a.link-2:hover,
a.link-2:focus {
  outline: 2px solid #171717;
  background-color: #f2f2f2; }

.image100 img {
  width: 100%;
  height: auto; }

.image80 img {
  margin-left: 10%;
  margin-right: 10%;
  width: 80%;
  height: auto; }

.image50 img {
  width: 50%;
  height: auto;
  margin-left: 25%;
  margin-right: 25%; }

.image50-2 img {
  width: 100%;
  text-align: center;
  height: auto; }
  @media (min-width: 768px) {
    .image50-2 img {
      width: 50%;
      margin-left: 25%;
      margin-right: 25%; } }

.image420 {
  text-align: center; }
  .image420 img {
    width: 300px;
    height: auto; }
    @media (min-width: 768px) {
      .image420 img {
        width: 420px;
        height: auto;
        margin-left: auto;
        margin-right: auto; } }

.img-kreis figure {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-color: #fff;
  margin-bottom: 0; }

.ce_accordionSingle,
.ce_accordionStart {
  border-radius: 0.5rem;
  -moz-border-radius: 0.5rem;
  -webkit-border-radius: 0.5rem;
  overflow: hidden;
  border: 1px solid #d2d0b6;
  margin-bottom: 2rem;
  background-color: #f6f3ea; }
  .ce_accordionSingle .toggler,
  .ce_accordionStart .toggler {
    border: 1px solid #f6f3ea;
    background-color: #f6f3ea;
    border-radius: 0.5rem;
    -moz-border-radius: 0.5rem;
    -webkit-border-radius: 0.5rem;
    padding: 1rem;
    padding-bottom: 1.1rem;
    cursor: pointer; }
    .ce_accordionSingle .toggler h3,
    .ce_accordionStart .toggler h3 {
      margin-bottom: 0; }
    .ce_accordionSingle .toggler svg,
    .ce_accordionStart .toggler svg {
      transform: rotate(0deg);
      transition: transform 0.15s ease; }
  .ce_accordionSingle .toggler.active svg,
  .ce_accordionStart .toggler.active svg {
    transform: rotate(180deg);
    transition: transform 0.15s ease; }
  .ce_accordionSingle .toggler:focus,
  .ce_accordionStart .toggler:focus {
    border: 1px solid #000; }
  .ce_accordionSingle .toggler:hover,
  .ce_accordionStart .toggler:hover {
    background-color: #ebe9dc; }
  .ce_accordionSingle .accordion .box-4,
  .ce_accordionStart .accordion .box-4 {
    grid-column: auto/span 3; }
    @media (min-width: 990px) {
      .ce_accordionSingle .accordion .box-4,
      .ce_accordionStart .accordion .box-4 {
        grid-column: auto/span 1; } }
  .ce_accordionSingle .accordion .box-8,
  .ce_accordionSingle .accordion .box-6,
  .ce_accordionStart .accordion .box-8,
  .ce_accordionStart .accordion .box-6 {
    grid-column: auto/span 3; }
    @media (min-width: 990px) {
      .ce_accordionSingle .accordion .box-8,
      .ce_accordionSingle .accordion .box-6,
      .ce_accordionStart .accordion .box-8,
      .ce_accordionStart .accordion .box-6 {
        grid-column: auto/span 2; } }
  .ce_accordionSingle .accordion > div,
  .ce_accordionStart .accordion > div {
    padding: 1rem;
    padding-bottom: 0;
    display: grid; }
    .ce_accordionSingle .accordion > div li,
    .ce_accordionStart .accordion > div li {
      list-style: disc;
      list-style-position: outside;
      padding-left: 0rem;
      margin-left: 1rem;
      margin-top: 0.3rem;
      margin-bottom: 0.3rem; }
    .ce_accordionSingle .accordion > div li:first-child,
    .ce_accordionStart .accordion > div li:first-child {
      margin-top: 0; }
    .ce_accordionSingle .accordion > div a,
    .ce_accordionStart .accordion > div a {
      color: #000;
      text-decoration: underline; }
    @media (min-width: 990px) {
      .ce_accordionSingle .accordion > div,
      .ce_accordionStart .accordion > div {
        grid-template-columns: 1fr 1fr 1fr;
        column-gap: 2.5%; } }
    .ce_accordionSingle .accordion > div img,
    .ce_accordionStart .accordion > div img {
      border-radius: 0.5rem;
      -moz-border-radius: 0.5rem;
      -webkit-border-radius: 0.5rem;
      overflow: hidden; }
    .ce_accordionSingle .accordion > div .box-rechtliches,
    .ce_accordionStart .accordion > div .box-rechtliches {
      margin: -1rem;
      margin-bottom: 0;
      grid-column: auto/span 3;
      padding: 1rem;
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      column-gap: 1.25%; }
      .ce_accordionSingle .accordion > div .box-rechtliches h3,
      .ce_accordionStart .accordion > div .box-rechtliches h3 {
        grid-column: auto/span 3;
        margin-bottom: 0; }
      .ce_accordionSingle .accordion > div .box-rechtliches .col-1,
      .ce_accordionStart .accordion > div .box-rechtliches .col-1 {
        background-color: #fff;
        padding: 1rem;
        padding-bottom: 0;
        grid-column: auto/span 3; }
        @media (min-width: 990px) {
          .ce_accordionSingle .accordion > div .box-rechtliches .col-1,
          .ce_accordionStart .accordion > div .box-rechtliches .col-1 {
            grid-column: auto/span 1; } }
        .ce_accordionSingle .accordion > div .box-rechtliches .col-1 p, .ce_accordionSingle .accordion > div .box-rechtliches .col-1 li, .ce_accordionSingle .accordion > div .box-rechtliches .col-1 h3, .ce_accordionSingle .accordion > div .box-rechtliches .col-1 h4,
        .ce_accordionStart .accordion > div .box-rechtliches .col-1 p,
        .ce_accordionStart .accordion > div .box-rechtliches .col-1 li,
        .ce_accordionStart .accordion > div .box-rechtliches .col-1 h3,
        .ce_accordionStart .accordion > div .box-rechtliches .col-1 h4 {
          color: #000; }

.acc-3.ce_accordionStart .accordion > div,
.acc-3.ce_accordionSingle .accordion > div {
  display: block; }

.block-none {
  overflow: unset !important; }

#main .news-30 .layout_full {
  display: grid;
  display: grid;
  column-gap: 2.5%;
  grid-template-columns: repeat(12, 1fr); }
  #main .news-30 .layout_full .col1 {
    grid-column: auto/span 12;
    margin-bottom: 1rem; }
    @media (min-width: 768px) {
      #main .news-30 .layout_full .col1 {
        grid-column: auto/span 8; } }
  #main .news-30 .layout_full .col2 {
    grid-column: auto/span 12;
    margin-bottom: 1rem; }
    @media (min-width: 768px) {
      #main .news-30 .layout_full .col2 {
        grid-column: auto/span 4; } }
    #main .news-30 .layout_full .col2 .ce_image {
      background-color: #fff;
      border-radius: 0.5rem;
      -moz-border-radius: 0.5rem;
      -webkit-border-radius: 0.5rem;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      min-height: 6rem;
      padding: 1rem;
      width: 100%; }
      #main .news-30 .layout_full .col2 .ce_image img {
        width: 100%;
        height: auto;
        margin-bottom: 0; }

#main .news-11 .layout_latest {
  display: grid;
  column-gap: 2.5%;
  background-color: #fff;
  border-radius: 0.5rem;
  -moz-border-radius: 0.5rem;
  -webkit-border-radius: 0.5rem;
  overflow: hidden; }
  @media (min-width: 768px) {
    #main .news-11 .layout_latest {
      grid-template-columns: 300px 1fr; } }
  #main .news-11 .layout_latest .ce_image {
    background-color: #ebe9dc;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-height: 4rem; }
    #main .news-11 .layout_latest .ce_image img {
      width: 200px;
      height: auto;
      margin-bottom: 0; }
  #main .news-11 .layout_latest .col {
    padding: 1rem; }

#main .layout_full_karriere .spezifikationen {
  margin-top: 1rem;
  grid-column: auto/span 12;
  font-size: 18px;
  font-size: 1.125rem;
  display: flex;
  flex-wrap: wrap; }
  @media (min-width: 1020px) {
    #main .layout_full_karriere .spezifikationen {
      grid-column: auto/span 7; } }
  #main .layout_full_karriere .spezifikationen .col-1 {
    width: 100%;
    font-weight: 700;
    margin-bottom: 0.25rem; }
    @media (min-width: 500px) {
      #main .layout_full_karriere .spezifikationen .col-1 {
        width: 180px; } }
  #main .layout_full_karriere .spezifikationen .col-2 {
    width: 100%;
    margin-top: 0; }
    @media (min-width: 500px) {
      #main .layout_full_karriere .spezifikationen .col-2 {
        width: calc(100% - 180px);
        margin-top: 1rem; } }

#main .layout_full_karriere .cta {
  margin-top: 1rem;
  margin-bottom: 1rem;
  grid-column: auto/span 12; }
  @media (min-width: 1020px) {
    #main .layout_full_karriere .cta {
      grid-column: auto/span 5;
      margin-top: 2rem; } }
  #main .layout_full_karriere .cta .flex {
    display: grid;
    grid-template-columns: 80px 1fr;
    column-gap: 0.5rem; }
    #main .layout_full_karriere .cta .flex .btn {
      grid-column: auto/span 2;
      width: 100%; }
      #main .layout_full_karriere .cta .flex .btn a {
        width: 100%;
        display: block; }
    #main .layout_full_karriere .cta .flex .mail a {
      background-image: url("../../files/daten/icon/icom-mail-k.svg");
      background-repeat: no-repeat;
      background-position: top left;
      background-size: 48px 48px;
      background-size: 39px 28px;
      background-position: center center; }
    #main .layout_full_karriere .cta .flex .fon a {
      background-image: url("../../files/daten/icon/icom-fon-k.svg");
      background-repeat: no-repeat;
      background-position: top left;
      background-size: 48px 48px;
      background-size: 17px 26px;
      background-position: 10px center; }
    #main .layout_full_karriere .cta .flex .mail,
    #main .layout_full_karriere .cta .flex .fon {
      margin-top: 1rem; }
      #main .layout_full_karriere .cta .flex .mail a,
      #main .layout_full_karriere .cta .flex .fon a {
        display: block;
        height: 52px;
        background-color: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        border: 1px solid #de012c;
        border-radius: 100px;
        -moz-border-radius: 100px;
        -webkit-border-radius: 100px; }

#main .mod_newsreader .contact-box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center; }
  #main .mod_newsreader .contact-box .img {
    width: 115px;
    margin-right: 15px; }
    #main .mod_newsreader .contact-box .img .image_container {
      width: 115px;
      height: 115px;
      border-radius: 57.5px;
      -moz-border-radius: 57.5px;
      -webkit-border-radius: 57.5px;
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden; }
      #main .mod_newsreader .contact-box .img .image_container img {
        width: 100%;
        height: auto;
        margin-bottom: 0; }
  #main .mod_newsreader .contact-box .text {
    width: calc(100% - 130px); }

#main .layout_list_karriere #count-jobs {
  width: 50px;
  height: 50px;
  border-radius: 25px;
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #171717;
  color: #fff;
  font-weight: 900;
  margin-right: 12px; }

#main .layout_list_karriere .filter .flex {
  justify-content: space-between; }
  @media (min-width: 1020px) {
    #main .layout_list_karriere .filter .flex {
      margin-bottom: 1rem; } }

#main .layout_list_karriere .filter .widget-checkbox ul.level_1 .wrapper {
  position: relative; }

#main .layout_list_karriere .filter .widget-checkbox.active ul label.btn:hover,
#main .layout_list_karriere .filter .widget-checkbox.active ul label.btn {
  background-color: #171717;
  border: 1px solid #171717;
  color: #fff; }

#main .layout_list_karriere .filter .widget-checkbox:hover label.btn {
  background-color: #dedede;
  border: 1px solid #dedede;
  -webkit-border-bottom-right-radius: 0px;
  -webkit-border-bottom-left-radius: 0px;
  -moz-border-radius-bottomright: 0px;
  -moz-border-radius-bottomleft: 0px;
  border-bottom-right-radius: 0px;
  border-bottom-left-radius: 0px; }

#main .layout_list_karriere .filter .widget-checkbox ul label.btn {
  width: 100% !important;
  padding: 0.65rem;
  background-color: #fff;
  box-sizing: border-box;
  border: 1px solid #fff;
  color: #171717;
  font-weight: 700;
  -webkit-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
  border-radius: 8px;
  display: block;
  cursor: pointer;
  z-index: 9;
  position: relative; }

#main .layout_list_karriere .filter .widget-checkbox ul label.btn:hover {
  background-color: #dedede;
  border: 1px solid #dedede;
  -webkit-border-bottom-right-radius: 0px;
  -webkit-border-bottom-left-radius: 0px;
  -moz-border-radius-bottomright: 0px;
  -moz-border-radius-bottomleft: 0px;
  border-bottom-right-radius: 0px;
  border-bottom-left-radius: 0px; }

#main .layout_list_karriere .filter .widget-checkbox ul input.btn {
  display: none !important; }

#main .layout_list_karriere .filter .widget-checkbox ul li.re {
  position: relative; }

#main .layout_list_karriere .filter .widget-checkbox ul.level_1:hover ul.level_2 {
  left: auto;
  opacity: 1;
  max-height: 100%;
  width: 100%;
  overflow: unset; }
  #main .layout_list_karriere .filter .widget-checkbox ul.level_1:hover ul.level_2 li:last-child {
    padding-bottom: 1rem; }
  #main .layout_list_karriere .filter .widget-checkbox ul.level_1:hover ul.level_2 li {
    display: block;
    color: #171717;
    background-color: #dedede;
    padding: 0.35rem 1rem; }
    #main .layout_list_karriere .filter .widget-checkbox ul.level_1:hover ul.level_2 li label span {
      color: #171717; }
    #main .layout_list_karriere .filter .widget-checkbox ul.level_1:hover ul.level_2 li input {
      margin-right: 8px; }

#main .layout_list_karriere .filter .widget-checkbox ul.level_2 {
  position: absolute;
  left: 0;
  z-index: 10;
  opacity: 0;
  max-height: 0;
  overflow: hidden; }

#main .layout_list_karriere .filter .widget-select {
  margin-bottom: 1rem; }
  #main .layout_list_karriere .filter .widget-select select {
    width: 100% !important;
    padding: 0.65rem;
    box-shadow: inset 0 2px 2px rgba(0, 0, 0, 0.15);
    background-color: #fff;
    box-sizing: border-box;
    border: 1px solid #fff; }

#main .layout_list_karriere .filter .widget-submit {
  text-align: right;
  margin-bottom: 1rem; }
  #main .layout_list_karriere .filter .widget-submit button {
    border: 1px solid #de012c;
    background-color: #de012c;
    padding: 0.65rem 5rem;
    color: #fff;
    font-weight: 700;
    cursor: pointer; }
    @media (min-width: 0) and (max-width: 1019px) {
      #main .layout_list_karriere .filter .widget-submit button {
        width: 100% !important; } }
  #main .layout_list_karriere .filter .widget-submit button:hover {
    background-color: #fe476b;
    border: 1px solid #fe476b;
    transition: all 0.2ms ease-in; }

#main .layout_list_karriere .filter .col-50 {
  width: 100%;
  margin-top: 0; }
  @media (min-width: 1020px) {
    #main .layout_list_karriere .filter .col-50 {
      width: 49%; } }

#main .layout_list_karriere .filter .col-30 {
  width: 100%; }
  @media (min-width: 1020px) {
    #main .layout_list_karriere .filter .col-30 {
      width: 32%; } }

#main .layout_list_karriere h1 {
  display: flex;
  align-items: center;
  font-weight: 300;
  font-size: 22px;
  font-size: 1.375rem; }

#main .layout_list_karriere table {
  width: 100%; }
  #main .layout_list_karriere table tr {
    display: grid;
    grid-template-columns: 1fr;
    padding-top: 0.35rem;
    padding-bottom: 0.35rem; }
    @media (min-width: 1280px) {
      #main .layout_list_karriere table tr {
        grid-template-columns: 1fr 500px 100px;
        padding-top: 0.75rem;
        padding-bottom: 0.75rem; } }
  #main .layout_list_karriere table thead {
    border-bottom: 1px solid #000; }
    @media (min-width: 0) and (max-width: 1279px) {
      #main .layout_list_karriere table thead {
        display: none; } }
  #main .layout_list_karriere table tbody tr:nth-child(odd) {
    background-color: #ebe9dc; }
  #main .layout_list_karriere table tbody tr:nth-child(even) {
    background-color: #fff; }
  #main .layout_list_karriere table tbody a {
    text-decoration: underline; }
  @media (min-width: 1280px) {
    #main .layout_list_karriere table tbody th.first {
      padding-left: 5px; } }
  @media (min-width: 0) and (max-width: 1279px) {
    #main .layout_list_karriere table tbody th {
      padding: 0.25rem 0.25rem 0.25rem 0.5rem;
      display: block;
      width: 100%; } }
  @media (min-width: 0) and (max-width: 1279px) {
    #main .layout_list_karriere table tbody th.last {
      display: none; } }
  #main .layout_list_karriere table tbody th.last a {
    margin-top: 1rem;
    background-color: #de012c;
    border-radius: 100px;
    -moz-border-radius: 100px;
    -webkit-border-radius: 100px;
    color: #fff;
    padding: 0.35rem 1rem;
    text-transform: uppercase;
    letter-spacing: 0.1rem;
    font-weight: 300;
    font-size: 14px;
    font-size: 0.875rem;
    text-decoration: none; }
    @media (min-width: 1280px) {
      #main .layout_list_karriere table tbody th.last a {
        margin-top: 0; } }
  @media (min-width: 0) and (max-width: 1019px) {
    #main .layout_list_karriere table tbody th.ort {
      padding-left: 5px; } }

@media (min-width: 0) and (max-width: 768px) {
  #main .news-1 .layout_latest {
    grid-column: auto/span 12; } }

@media (min-width: 768px) {
  #main .news-1 .layout_latest {
    float: left;
    width: 91.5%;
    margin-left: 4.2%; } }

#main .news-10 .box-aus {
  display: grid;
  background-color: #fff;
  align-items: center;
  margin-bottom: 2rem;
  -webkit-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
  border-radius: 0.5rem;
  -moz-border-radius: 0.5rem;
  -webkit-border-radius: 0.5rem;
  overflow: hidden; }
  @media (min-width: 990px) {
    #main .news-10 .box-aus {
      grid-template-columns: 30% 1fr 180px;
      column-gap: 2.5%; } }
  #main .news-10 .box-aus .ce_image {
    height: 100%; }
    #main .news-10 .box-aus .ce_image .image_container {
      height: 100%; }
    #main .news-10 .box-aus .ce_image img {
      width: 100%;
      height: auto; }
      @media (min-width: 768px) {
        #main .news-10 .box-aus .ce_image img {
          object-fit: cover;
          width: 100%;
          height: 100%;
          margin-bottom: -7px; } }
  @media (min-width: 0) and (max-width: 989px) {
    #main .news-10 .box-aus .ce_text, #main .news-10 .box-aus .details {
      margin-left: 1rem;
      margin-right: 1rem; } }
  @media (min-width: 0) and (max-width: 989px) {
    #main .news-10 .box-aus .ce_text {
      margin-top: 1rem; } }
  @media (min-width: 0) and (max-width: 989px) {
    #main .news-10 .box-aus .details {
      margin-bottom: 1rem; } }

.img-radius img {
  border-radius: 0.5rem;
  -moz-border-radius: 0.5rem;
  -webkit-border-radius: 0.5rem;
  overflow: hidden; }

.schatten-1 {
  -webkit-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2); }

.border-radius-1 {
  border-radius: 0.5rem;
  -moz-border-radius: 0.5rem;
  -webkit-border-radius: 0.5rem; }

.overflow-hidden {
  overflow: hidden; }

.border-radius-top {
  border-radius: 0rem;
  -moz-border-radius: 0rem;
  -webkit-border-radius: 0rem;
  -webkit-border-top-left-radius: 0.5rem;
  -webkit-border-top-right-radius: 0.5rem;
  -moz-border-radius-topleft: 0.5rem;
  -moz-border-radius-topright: 0.5rem;
  border-top-left-radius: 0.5rem;
  border-top-right-radius: 0.5rem; }

.border-radius-bottom {
  border-radius: 0rem;
  -moz-border-radius: 0rem;
  -webkit-border-radius: 0rem;
  -webkit-border-bottom-left-radius: 0.5rem;
  -webkit-border-bottom-right-radius: 0.5rem;
  -moz-border-radius-bottomleft: 0.5rem;
  -moz-border-radius-bottomright: 0.5rem;
  border-bottom-left-radius: 0.5rem;
  border-bottom-right-radius: 0.5rem; }

.absolut {
  position: absolute; }

.br {
  display: block; }

a.underline {
  text-decoration: underline; }

.grid-num {
  margin-bottom: 2rem;
  height: 3.5rem; }
  .grid-num .num {
    color: #de012c;
    font-size: 42px;
    font-size: 2.625rem;
    font-weight: 400; }
  .grid-num .num-text {
    font-size: 22px;
    font-size: 1.375rem;
    line-height: 1.7rem;
    font-weight: 400; }

.content-gallery ul {
  display: grid;
  column-gap: 2.6%; }
  .content-gallery ul li img {
    width: 100%;
    height: auto; }

.content-gallery ul.gall1 {
  grid-template-columns: 1fr; }

.content-gallery.gall7 ul {
  grid-template-columns: 1fr 1fr 1fr; }

.content-gallery.gall15 ul,
.content-gallery.gall20 ul,
.content-gallery.gall25 ul,
.content-gallery.gall30 ul,
.content-gallery.gall50 ul {
  grid-template-columns: 1fr 1fr; }

@media (min-width: 768px) {
  .content-gallery.gall30 ul {
    grid-template-columns: 1fr 1fr 1fr; }
  .content-gallery.gall25 ul {
    grid-template-columns: 1fr 1fr 1fr 1fr; }
  .content-gallery.gall20 ul {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr; }
  .content-gallery.gall15 ul {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr; }
  .content-gallery.gall7 ul {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr; } }

@media (min-width: 1280px) {
  .flyout {
    display: none;
    visibility: hidden; }
  li[aria-expanded="false"] > .flyout,
  li[data-focus="false"] > .flyout {
    display: none; }
  ul.level_2 li[aria-expanded="false"] .flyout,
  ul.level_1 li[aria-expanded="true"] .flyout {
    display: block;
    visibility: visible; }
  .nav-01 .menu-liste > ul {
    display: flex;
    justify-content: flex-end; }
  .nav-01 .menu-toggle {
    display: none; }
  .nav-01 ul {
    margin-bottom: 0; }
    .nav-01 ul a {
      font-family: "NeueHaasGroteskText55Roman", Arial, sans-serif;
      font-weight: normal;
      font-size: 20px;
      font-size: 1.25rem;
      color: #171717; }
    .nav-01 ul a:hover {
      color: #de012c; }
    .nav-01 ul li:hover {
      color: #de012c;
      background-color: #d5d3c8;
      border-radius: 0.5rem;
      -moz-border-radius: 0.5rem;
      -webkit-border-radius: 0.5rem; }
      .nav-01 ul li:hover a {
        color: #de012c; }
    .nav-01 ul li.submenu:hover {
      border-radius: 0rem;
      -moz-border-radius: 0rem;
      -webkit-border-radius: 0rem;
      -webkit-border-top-left-radius: 0.5rem;
      -webkit-border-top-right-radius: 0.5rem;
      -moz-border-radius-topleft: 0.5rem;
      -moz-border-radius-topright: 0.5rem;
      border-top-left-radius: 0.5rem;
      border-top-right-radius: 0.5rem; }
    .nav-01 ul li.trail a.trail,
    .nav-01 ul a.active {
      color: #000;
      font-family: "NeueHaasGroteskText75Bold", Arial, sans-serif;
      font-weight: bold; }
    .nav-01 ul button[aria-expanded="true"] svg {
      transform: rotate(180deg); }
    .nav-01 ul li.submenu:hover button {
      outline: 2px solid #d5d3c8; }
      .nav-01 ul li.submenu:hover button svg {
        transform: rotate(180deg);
        transition: transform 0.25s ease-in;
        stroke: #de012c; }
    .nav-01 ul li.submenu {
      display: grid;
      grid-template-columns: 1fr 30px;
      column-gap: 0px; }
      .nav-01 ul li.submenu img {
        margin-bottom: 0.25rem; }
      .nav-01 ul li.submenu a:focus {
        outline: 2px solid #000;
        outline-offset: -3px; }
      .nav-01 ul li.submenu button {
        border: transparent;
        background-color: transparent;
        outline: 2px solid #ebe9dc;
        display: flex;
        align-items: center;
        flex-direction: column;
        justify-content: center;
        outline-offset: -3px; }
        .nav-01 ul li.submenu button svg {
          transition: transform 0.25s ease-in;
          fill: none;
          stroke: #171717;
          stroke-miterlimit: 10;
          stroke-width: 1px;
          width: 100%;
          height: auto; }
      .nav-01 ul li.submenu button:focus {
        outline: 2px solid #000; }
        .nav-01 ul li.submenu button:focus svg {
          stroke: #de012c; }
    .nav-01 ul li {
      margin-left: 0.5rem;
      margin-right: 0.5rem; }
      .nav-01 ul li a {
        color: #171717;
        outline: 2px solid #ebe9dc;
        padding: 0.75rem 0.75rem;
        display: block; }
      .nav-01 ul li a:hover {
        color: #de012c; }
      .nav-01 ul li ul.level_2 {
        position: absolute;
        display: block;
        background-color: #d5d3c8;
        min-width: 300px;
        padding: 1rem;
        padding-bottom: 1.5rem;
        z-index: 99999; }
        .nav-01 ul li ul.level_2 li {
          display: block;
          margin-top: 1rem; }
          .nav-01 ul li ul.level_2 li button {
            display: none; }
          .nav-01 ul li ul.level_2 li a {
            display: block;
            padding-left: 0;
            text-decoration: none;
            margin-bottom: 5px;
            outline: 2px solid #d5d3c8;
            padding: 0;
            font-size: 18px;
            font-size: 1.125rem;
            color: #171717; }
          .nav-01 ul li ul.level_2 li a:hover {
            color: #de012c; }
          .nav-01 ul li ul.level_2 li a:focus {
            outline-offset: 0px;
            outline: 2px solid #000; }
        .nav-01 ul li ul.level_2 ul.level_3 {
          display: block;
          margin-bottom: 1rem;
          padding-left: 0;
          padding-right: 0; }
          .nav-01 ul li ul.level_2 ul.level_3 li {
            margin-top: 0.25rem;
            margin-left: 0;
            margin-right: 0; }
            .nav-01 ul li ul.level_2 ul.level_3 li a {
              font-size: 15px;
              font-size: 0.9375rem;
              text-decoration: none; }
            .nav-01 ul li ul.level_2 ul.level_3 li a:focus {
              outline-offset: 0px;
              outline: 2px solid #000; }
  .nav-01 li.leistungen ul.level_2 {
    left: 0;
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    column-gap: 2.5%; }
    .nav-01 li.leistungen ul.level_2 li.li-alle {
      grid-column: auto/span 5; } }

@media (min-width: 1640px) {
  .nav-01 li.leistungen ul.level_2 {
    padding-left: 5%;
    padding-right: 5%; } }

@media (max-width: 1279px) {
  #header .box {
    height: 70px; }
  .nav-01 button.menu-toggle-close {
    display: none; }
  .nav-01 button.menu-toggle {
    float: right;
    width: 50px;
    height: 50px;
    background-color: #d5d3c8;
    border-radius: 0.5rem;
    -moz-border-radius: 0.5rem;
    -webkit-border-radius: 0.5rem;
    border: transparent;
    outline: 2px solid #d5d3c8;
    outline-offset: -2px;
    color: #fff;
    display: grid;
    place-content: center;
    cursor: pointer; }
    .nav-01 button.menu-toggle .m-toggle {
      grid-area: text; }
      .nav-01 button.menu-toggle .m-toggle .linie {
        height: 3px;
        width: 25px;
        background-color: #000;
        margin-top: 4px;
        margin-bottom: 4px; }
      .nav-01 button.menu-toggle .m-toggle .linie:nth-child(1) {
        transform-origin: center bottom; }
      .nav-01 button.menu-toggle .m-toggle .linie:nth-child(2) {
        transform-origin: center center; }
      .nav-01 button.menu-toggle .m-toggle .linie:nth-child(3) {
        transform-origin: center top; }
    .nav-01 button.menu-toggle[aria-expanded="true"] .m-toggle {
      margin-left: -2px; }
    .nav-01 button.menu-toggle[aria-expanded="true"] .linie {
      transition: transform 0.2s ease-in, opacity 0.2s ease-in;
      margin-top: 0;
      margin-bottom: 0; }
    .nav-01 button.menu-toggle[aria-expanded="true"] .linie:nth-child(1) {
      transform: rotate(-45deg) translateY(4px);
      transform-origin: center bottom; }
    .nav-01 button.menu-toggle[aria-expanded="true"] .linie:nth-child(2) {
      opacity: 0;
      /* Versteckt die mittlere Linie */
      transform: scale(0); }
    .nav-01 button.menu-toggle[aria-expanded="true"] .linie:nth-child(3) {
      transform: rotate(45deg) translateY(-3px);
      transform-origin: center;
      transform-origin: top center; }
  .nav-01 button.menu-toggle:focus {
    outline: 2px solid #fff; }
  .nav-01 button.menu-toggle[aria-expanded="false"] + .menu-liste {
    display: block;
    transform: translateX(0) translateY(-5%);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease, visibility 0.5s ease, transform 0.5s ease;
    transition: right 0.5s ease; }
  .nav-01 button.menu-toggle[aria-expanded="true"] + .menu-liste {
    display: block;
    opacity: 1;
    visibility: visible;
    transform: translateX(0) translateY(0);
    z-index: 9999;
    transition: opacity 0.5s ease, visibility 0.5s ease, transform 0.2s ease;
    position: absolute;
    top: 100%;
    width: 100%;
    left: 0; }
  .nav-01 .menu-liste {
    position: absolute;
    background-color: #ebe9dc;
    width: 100%;
    left: 0;
    top: 100%;
    transition: right 1s ease; }
  .nav-01 .menu-liste > ul {
    width: 94%;
    margin-left: 3%;
    margin-right: 3%;
    background-color: #fff;
    border: 1px solid #fe2d56;
    -webkit-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
    box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
    border-radius: 0.5rem;
    -moz-border-radius: 0.5rem;
    -webkit-border-radius: 0.5rem;
    overflow: hidden;
    height: calc(100vh - 70px);
    overflow-y: auto; }
  .nav-01 .menu-liste ul > li {
    border-bottom: 1px solid #171717; }
  .nav-01 .menu-liste ul {
    margin-bottom: 0; }
    .nav-01 .menu-liste ul a {
      display: block;
      color: #000;
      font-weight: 700;
      font-size: 17px;
      font-size: 1.0625rem;
      border-left: 10px solid #fff;
      padding-left: 0.5rem; }
    .nav-01 .menu-liste ul a, .nav-01 .menu-liste ul button {
      height: 50px;
      display: flex;
      flex-direction: column;
      justify-content: center; }
    .nav-01 .menu-liste ul li.trail .trail {
      color: #000; }
    .nav-01 .menu-liste ul a.active {
      color: #de012c; }
    .nav-01 .menu-liste ul li {
      display: block; }
    .nav-01 .menu-liste ul li.submenu button[aria-expanded="false"] + .flyout {
      display: none; }
    .nav-01 .menu-liste ul li.submenu button[aria-expanded="true"] + .flyout {
      display: block !important; }
    .nav-01 .menu-liste ul li.submenu button[aria-expanded="true"] svg {
      transform: rotate(180deg);
      transition: transform 0.25s ease-in; }
    .nav-01 .menu-liste ul li.submenu button svg {
      transition: transform 0.25s ease-in; }
    .nav-01 .menu-liste ul li a:focus,
    .nav-01 .menu-liste ul li a:focus-visible {
      background-color: white;
      outline: 2px solid #de012c;
      outline-offset: -4px;
      border-left: 10px solid #d2d0b6; }
    .nav-01 .menu-liste ul li.submenu {
      display: grid;
      grid-template-columns: 1fr 50px;
      align-items: center;
      border-bottom: 1px solid #171717; }
      .nav-01 .menu-liste ul li.submenu a {
        color: #000;
        text-decoration: none;
        border-left: 10px solid #fff;
        padding-left: 0.5rem; }
      .nav-01 .menu-liste ul li.submenu a:focus,
      .nav-01 .menu-liste ul li.submenu a:focus-visible {
        border-left: 10px solid #ebe9dc; }
      .nav-01 .menu-liste ul li.submenu a.active {
        color: #de012c;
        border-left: 10px solid #ebe9dc;
        background-color: #f2f2f2; }
      .nav-01 .menu-liste ul li.submenu button {
        border: transparent;
        background-color: #f2f2f2;
        outline: 2px solid #f2f2f2;
        display: flex;
        align-items: center;
        flex-direction: column;
        justify-content: center;
        outline-offset: -3px; }
        .nav-01 .menu-liste ul li.submenu button svg {
          transition: transform 0.25s ease-in;
          fill: none;
          stroke: #de012c;
          stroke-miterlimit: 10;
          stroke-width: 2px;
          width: 60%;
          height: auto; }
      .nav-01 .menu-liste ul li.submenu button:focus {
        outline: 2px solid #de012c;
        background-color: white; }
      .nav-01 .menu-liste ul li.submenu .flyout {
        border-top: 1px solid #171717;
        width: 100%;
        grid-column: auto/span 2;
        display: block; }
        .nav-01 .menu-liste ul li.submenu .flyout li {
          border-bottom: 1px solid #171717; }
          .nav-01 .menu-liste ul li.submenu .flyout li a {
            border-left: 10px solid #d5d3c8; }
          .nav-01 .menu-liste ul li.submenu .flyout li a.active {
            border-left: 10px solid #d5d3c8; }
        .nav-01 .menu-liste ul li.submenu .flyout li:last-child {
          border-bottom: none; }
        .nav-01 .menu-liste ul li.submenu .flyout ul ul li a {
          border-left: 20px solid #d5d3c8; }
        .nav-01 .menu-liste ul li.submenu .flyout ul.level_2 > li.submenu {
          grid-template-columns: 40px 1fr 50px;
          align-items: center; }
          .nav-01 .menu-liste ul li.submenu .flyout ul.level_2 > li.submenu .image {
            border-left: 10px solid #ebe9dc;
            padding-left: 10px;
            height: 50px;
            display: flex;
            flex-direction: column;
            justify-content: center; }
            .nav-01 .menu-liste ul li.submenu .flyout ul.level_2 > li.submenu .image img {
              margin-bottom: 0; }
          .nav-01 .menu-liste ul li.submenu .flyout ul.level_2 > li.submenu .flyout {
            grid-column: auto/span 3; }
          .nav-01 .menu-liste ul li.submenu .flyout ul.level_2 > li.submenu a {
            border-left: 0; }
          .nav-01 .menu-liste ul li.submenu .flyout ul.level_2 > li.submenu ul li a {
            border-left: 10px solid #d5d3c8; } }

.content-gallery ul {
  display: grid;
  column-gap: 2.6%; }
  .content-gallery ul li img {
    width: 100%;
    height: auto; }

.content-gallery ul.gall1 {
  grid-template-columns: 1fr; }

.content-gallery.gall7 ul {
  grid-template-columns: 1fr 1fr 1fr; }

.content-gallery.gall15 ul,
.content-gallery.gall20 ul,
.content-gallery.gall25 ul,
.content-gallery.gall30 ul,
.content-gallery.gall50 ul {
  grid-template-columns: 1fr 1fr; }

@media (min-width: 768px) {
  .content-gallery.gall30 ul {
    grid-template-columns: 1fr 1fr 1fr; }
  .content-gallery.gall25 ul {
    grid-template-columns: 1fr 1fr 1fr 1fr; }
  .content-gallery.gall20 ul {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr; }
  .content-gallery.gall15 ul {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr; }
  .content-gallery.gall7 ul {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr; } }

*, *:before, *:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.page {
  padding-left: 5%;
  padding-right: 5%; }

#main {
  overflow: hidden; }

@media (min-width: 1280px) {
  .page {
    padding-left: 3%;
    padding-right: 3%;
    width: 1280px; } }

@media (min-width: 1640px) {
  .page {
    padding-left: 0%;
    padding-right: 0%;
    width: 1540px; } }

.page {
  max-width: 100%;
  margin-left: auto;
  margin-right: auto; }

.page:after {
  content: " ";
  display: block;
  clear: both; }

#user #main {
  min-height: calc(100vh - 300px); }

.rtl {
  float: right; }

#footer .footer-formular {
  padding-top: 1rem; }

#footer .page {
  padding-top: 2rem;
  padding-bottom: 1rem; }
  @media (min-width: 990px) {
    #footer .page {
      padding-top: 6rem; } }

#footer .grid-footer {
  display: grid;
  grid-template-columns: 1fr; }
  @media (min-width: 1280px) {
    #footer .grid-footer {
      grid-template-columns: 1fr 1fr 1fr 1fr;
      column-gap: 2.5%; } }
  #footer .grid-footer .logo {
    grid-column: auto/span 1; }
    @media (min-width: 1280px) {
      #footer .grid-footer .logo {
        grid-column: auto/span 4; } }
    #footer .grid-footer .logo a {
      display: block;
      width: 140px;
      height: 57px; }
      @media (min-width: 1280px) {
        #footer .grid-footer .logo a {
          width: 200px;
          height: 82px; } }
      #footer .grid-footer .logo a img {
        width: 100%;
        height: auto; }
  #footer .grid-footer a {
    text-decoration: underline;
    color: #000; }
  #footer .grid-footer .col-5,
  #footer .grid-footer .col,
  #footer .grid-footer .kontakt {
    margin-top: 1rem; }
  #footer .grid-footer p.headline-4 {
    margin-bottom: 0.35rem; }
  #footer .grid-footer address {
    font-style: normal; }
  #footer .grid-footer .spacer-4,
  #footer .grid-footer .col-5 {
    grid-column: auto/span 1; }
    @media (min-width: 1280px) {
      #footer .grid-footer .spacer-4,
      #footer .grid-footer .col-5 {
        grid-column: auto/span 4; } }
  #footer .grid-footer .col-5 .flex {
    width: 100%; }
    @media (min-width: 990px) {
      #footer .grid-footer .col-5 .flex .btn:first-child {
        margin-right: 1rem; } }
  #footer .grid-footer .btn {
    margin-bottom: 1rem; }
    #footer .grid-footer .btn a {
      text-decoration: none;
      color: #fff; }

#footer .mod_customnav li {
  margin-top: 0.25rem;
  margin-bottom: 0.25rem; }

#footer .grid-copy {
  grid-template-columns: 1fr; }
  @media (min-width: 1280px) {
    #footer .grid-copy {
      grid-template-columns: 1fr 1fr;
      column-gap: 2.5%; } }
  #footer .grid-copy .nav-10 {
    margin-top: 1rem; }
    @media (min-width: 1280px) {
      #footer .grid-copy .nav-10 {
        margin-top: 0; } }
    @media (min-width: 1280px) {
      #footer .grid-copy .nav-10 ul {
        text-align: right; } }
    #footer .grid-copy .nav-10 ul li {
      display: block;
      margin-top: 0.25rem;
      margin-bottom: 0.25rem;
      font-size: 14px;
      font-size: 0.875rem; }
      @media (min-width: 768px) {
        #footer .grid-copy .nav-10 ul li {
          display: inline;
          margin: 0 0.35rem; } }
    #footer .grid-copy .nav-10 ul li:first-child {
      margin-left: 0; }
    #footer .grid-copy .nav-10 ul li:last-child {
      margin-right: 0; }
    #footer .grid-copy .nav-10 ul a {
      color: #000;
      text-decoration: underline; }

#footer .cookie a {
  color: #000;
  text-decoration: underline; }

:focus {
  outline: revert;
  outline-offset: revert; }

.no-view {
  border: 0 !important;
  clip: rect(0, 0, 0, 0) !important;
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important; }

.invisible {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  background-color: #fff;
  color: #000; }

a[href*="#skip"].invisible:focus {
  display: inline-block;
  clip: auto;
  outline: 2px dotted #000;
  width: auto;
  height: auto;
  margin: 0;
  position: relative;
  z-index: 999; }

a[href*="#skip"].invisible.invisible-header:focus {
  position: absolute;
  top: 0;
  left: 0;
  background-color: #000;
  color: #fff;
  padding: 0.5rem;
  z-index: 999; }

#main .mod_testimonials_liste_module,
#main .mod_plenta_testimonials {
  margin-top: 1rem;
  display: grid;
  justify-content: center; }
  @media (min-width: 1280px) {
    #main .mod_testimonials_liste_module .testimonial:first-child,
    #main .mod_plenta_testimonials .testimonial:first-child {
      grid-column-start: 3; } }
  #main .mod_testimonials_liste_module .testimonial,
  #main .mod_plenta_testimonials .testimonial {
    margin-top: 1rem;
    grid-column: auto/span 12; }
    @media (min-width: 768px) {
      #main .mod_testimonials_liste_module .testimonial,
      #main .mod_plenta_testimonials .testimonial {
        grid-column: auto/span 6; } }
    @media (min-width: 1280px) {
      #main .mod_testimonials_liste_module .testimonial,
      #main .mod_plenta_testimonials .testimonial {
        grid-column: auto/span 4; } }
    #main .mod_testimonials_liste_module .testimonial .image,
    #main .mod_plenta_testimonials .testimonial .image {
      background-image: url(../../files/daten/icon/icon-zitat.svg);
      background-repeat: no-repeat;
      background-position: center bottom;
      background-size: 158px 128px;
      text-align: center; }
      #main .mod_testimonials_liste_module .testimonial .image .image_container,
      #main .mod_plenta_testimonials .testimonial .image .image_container {
        width: 180px;
        height: 180px;
        border-radius: 90px;
        -moz-border-radius: 90px;
        -webkit-border-radius: 90px;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        margin-left: auto;
        margin-right: auto; }
        #main .mod_testimonials_liste_module .testimonial .image .image_container img,
        #main .mod_plenta_testimonials .testimonial .image .image_container img {
          width: 180px;
          height: 180px;
          margin-bottom: 0; }
    #main .mod_testimonials_liste_module .testimonial .testimonial-meta,
    #main .mod_plenta_testimonials .testimonial .testimonial-meta {
      margin-top: 2rem; }
    #main .mod_testimonials_liste_module .testimonial .testimonial-text,
    #main .mod_plenta_testimonials .testimonial .testimonial-text {
      margin-top: 1rem; }

@media (min-width: 0) and (max-width: 989px) {
  #main .mod_storelocator_search.map {
    background-color: #f2f2f2;
    padding-top: 1rem;
    padding-bottom: 1rem;
    padding-left: 5%;
    padding-right: 5%; } }

@media (min-width: 990px) {
  #main .mod_storelocator_search.map {
    position: absolute;
    margin-top: 10px;
    margin-left: 10px;
    background-color: #fff;
    z-index: 99;
    -webkit-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
    box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
    padding: 1rem; } }

.mod_storelocator_list .margin {
  display: grid;
  margin-top: 1rem; }
  @media (min-width: 768px) {
    .mod_storelocator_list .margin {
      grid-template-columns: 1fr 1fr;
      column-gap: 2.5%; } }
  @media (min-width: 1280px) {
    .mod_storelocator_list .margin {
      grid-template-columns: 1fr 1fr 1fr; } }

.mod_storelocator_list .page.no-margin {
  padding-top: 0;
  padding-bottom: 0; }

.mod_storelocator_list .entry {
  margin: 0.1rem;
  margin-bottom: 1rem;
  margin-top: 1rem;
  border-radius: 0.5rem;
  -moz-border-radius: 0.5rem;
  -webkit-border-radius: 0.5rem;
  -webkit-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
  background-color: #f9fafb;
  padding: 1rem; }

.mod_storelocator_list a {
  color: #de012c;
  text-decoration: underline;
  font-weight: 600; }

#main .mod_storelocator_search.kontakt input.text {
  margin: 2px; }

#main .mod_storelocator_search .formbody {
  font-size: 18px;
  font-size: 1.125rem; }
  #main .mod_storelocator_search .formbody input.text {
    border: 1px solid #171717;
    border: 2px solid #d5d3c8;
    border-radius: 6px;
    -moz-border-radius: 6px;
    -webkit-border-radius: 6px;
    height: 56px;
    padding-left: 9px;
    padding-right: 0.5rem; }
  #main .mod_storelocator_search .formbody input.text:focus {
    border: 2px solid #712433;
    outline: none;
    transition: all 0.2s ease; }
  #main .mod_storelocator_search .formbody button {
    background-color: #de012c;
    padding: 0.5rem 4rem;
    border-radius: 100px;
    -moz-border-radius: 100px;
    -webkit-border-radius: 100px;
    border: 1px solid #de012c;
    cursor: pointer;
    color: #fff;
    margin-top: 1rem; }

#main .mod_storelocator_list #map-wrapper {
  margin-bottom: 2rem; }
  @media (min-width: 0) and (max-width: 990px) {
    #main .mod_storelocator_list #map-wrapper {
      padding-left: 12px;
      padding-right: 12px;
      background-color: #f2f2f2; } }
  @media (min-width: 990px) {
    #main .mod_storelocator_list #map-wrapper {
      margin-bottom: 6rem; } }
  #main .mod_storelocator_list #map-wrapper #map-canvas {
    height: 55vh !important; }

