/*	THEME
 	- DEFAULTS - IMPORTS ___ ANFANG
================================================================ */
@import "../styles/vendor/bootstrap-grid.min.css";
@import "../styles/vendor/bootstrap-nav.min.css";
/* 	THEME
/*	- RESET - Mini
================================================================ */
* {
  margin: 0px;
  padding: 0px;
  border: none;
}

/* 	THEME
/*	- RESET - Clearfix
================================================================ */
.clearfix:before,
.clearfix:after {
  content: " ";
  display: table;
}

.clearfix:after {
  clear: both;
}

/* 	THEME
/*	- RESET - Normalize
================================================================ */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

button,
select {
  text-transform: none;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

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

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: middle;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

[type=checkbox],
[type=radio] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

iframe {
  width: 100%;
}

img {
  display: block;
}

details {
  display: block;
}

summary {
  display: list-item;
}

nav ul,
nav ol {
  list-style: none;
  list-style-image: none;
  margin: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

input,
select {
  vertical-align: middle;
}

a {
  background: transparent;
}

a:active,
a:hover {
  outline: 0;
}

b,
strong {
  font-weight: bolder;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
  overflow: visible;
}

/* 	THEME
/*	- VARIABLES
================================================================ */
/*	- VARIABLES
	Color */
/*	- VARIABLES
	Typo */
::-moz-selection {
  background: #BF0D3E;
  color: #ffffff;
  text-shadow: none;
}
::selection {
  background: #BF0D3E;
  color: #ffffff;
  text-shadow: none;
}

/* 	THEME
/*	- VARIABLES - Mixin
================================================================ */
/*	- VARIABLES
	Spaces */
:root {
  /* Define you base variables */
  /* SPACES Start */
  --space-small-xs: 4px;
  --space-small-sm-up: 8px;
  --space-small-md-up: 16px;
  --space-default-xs: 40px;
  --space-default-sm-up: 64px;
  --space-default-md-up: 80px;
  --space-large-xs: 64px;
  --space-large-sm-up: 80px;
  --space-large-md-up: 120px;
  --space-gap-xs: 16px;
  --space-gap-sm-up: 24px;
  --space-gap-md-up: 40px;
  --page-margin-xs: 18px;
  --page-margin-sm-up: 24px;
  --page-margin-md-up: 40px;
  --page-margin-ld-up: 80px;
  /* SPACES Ende */
  /* RADIUS Start */
  --radius-small-xs: 2px;
  --radius-small-sm-up: 3px;
  --radius-small-md-up: 4px;
  --radius-small-ld-up: 4px;
  --radius-medium-xs: 6px;
  --radius-medium-sm-up: 6px;
  --radius-medium-md-up: 8px;
  --radius-medium-ld-up: 12px;
  --radius-large-xs: 12px;
  --radius-large-sm-up: 16px;
  --radius-large-md-up: 16px;
  --radius-large-ld-up: 24px;
  /* RADIUS Ende */
  /* Assign the base variable to the element variables */
  /* SPACES Start */
  --space-small: var(--space-small-xs);
  --space-default: var(--space-default-xs);
  --space-large: var(--space-large-xs);
  --space-gap: var(--space-gap-xs);
  --page-margin: var(--page-margin-xs);
  /* SPACES Ende */
  /* RADIUS Start */
  --radius-small: var(--radius-small-xs);
  --radius-medium: var(--radius-medium-xs);
  --radius-large: var(--radius-large-xs);
  /* RADIUS Ende */
}

@media screen and (min-width: 576px) {
  :root {
    /* Change base variable used for element variable */
    /* SPACES Start */
    --space-small: var(--space-small-sm-up);
    --space-default: var(--space-default-sm-up);
    --space-large: var(--space-large-sm-up);
    --space-gap: var(--space-gap-sm-up);
    --page-margin: var(--page-margin-sm-up);
    /* SPACES Ende */
    /* RADIUS Start */
    --radius-small: var(--radius-small-sm-up);
    --radius-medium: var(--radius-medium-sm-up);
    --radius-large: var(--radius-large-sm-up);
    /* RADIUS Ende */
  }
}
@media screen and (min-width: 992px) {
  :root {
    /* Change base variable used for element variable */
    /* SPACES Start */
    --space-small: var(--space-small-md-up);
    --space-default: var(--space-default-md-up);
    --space-large: var(--space-large-md-up);
    --space-gap: var(--space-gap-md-up);
    --page-margin: var(--page-margin-md-up);
    /* SPACES Ende */
    /* RADIUS Start */
    --radius-small: var(--radius-small-md-up);
    --radius-medium: var(--radius-medium-md-up);
    --radius-large: var(--radius-large-md-up);
    /* RADIUS Ende */
  }
}
@media screen and (min-width: 4521px) {
  :root {
    /* Change base variable used for element variable */
    /* SPACES Start */
    --page-margin: var(--page-margin-ld-up);
    /* SPACES Ende */
    /* RADIUS Start */
    --radius-small: var(--radius-small-ld-up);
    --radius-medium: var(--radius-medium-ld-up);
    --radius-large: var(--radius-large-ld-up);
    /* RADIUS Ende */
  }
}
/* SPACES Start */
/* SPACES Ende */
/* RADIUS Start */
/* RADIUS Ende */
/* 	THEME
/*	- HELPERS - Text
================================================================ */
.text-12 {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 20px;
}

.text-14 {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 22px;
}

.text-16 {
  font-size: 16px;
  font-size: 1rem;
  line-height: 24px;
}

.text-18 {
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 26px;
}

.text-20 {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 28px;
}

.text-22 {
  font-size: 22px;
  font-size: 1.375rem;
  line-height: 30px;
}

.text-24 {
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 32px;
}

.text-26 {
  font-size: 26px;
  font-size: 1.625rem;
  line-height: 34px;
}

.text-28 {
  font-size: 28px;
  font-size: 1.75rem;
  line-height: 36px;
}

.text-30 {
  font-size: 30px;
  font-size: 1.875rem;
  line-height: 38px;
}

.text-32 {
  font-size: 32px;
  font-size: 2rem;
  line-height: 40px;
}

.text-34 {
  font-size: 34px;
  font-size: 2.125rem;
  line-height: 42px;
}

.text-36 {
  font-size: 36px;
  font-size: 2.25rem;
  line-height: 44px;
}

.text-38 {
  font-size: 38px;
  font-size: 2.375rem;
  line-height: 46px;
}

.text-40 {
  font-size: 40px;
  font-size: 2.5rem;
  line-height: 48px;
}

.text-42 {
  font-size: 42px;
  font-size: 2.625rem;
  line-height: 50px;
}

.text-44 {
  font-size: 44px;
  font-size: 2.75rem;
  line-height: 52px;
}

.text-46 {
  font-size: 46px;
  font-size: 2.875rem;
  line-height: 54px;
}

.text-48 {
  font-size: 48px;
  font-size: 3rem;
  line-height: 56px;
}

.text-50 {
  font-size: 50px;
  font-size: 3.125rem;
  line-height: 58px;
}

.text-52 {
  font-size: 52px;
  font-size: 3.25rem;
  line-height: 60px;
}

.text-54 {
  font-size: 54px;
  font-size: 3.375rem;
  line-height: 62px;
}

/* 	THEME
/*	- HELPERS - Margin & Padding
================================================================ */
.mt-15 {
  margin-top: 15px;
}

.mt-30 {
  margin-top: 30px;
}

.mt-45 {
  margin-top: 45px;
}

.mt-60 {
  margin-top: 60px;
}

.mt-75 {
  margin-top: 75px;
}

.mt-90 {
  margin-top: 90px;
}

.mt-105 {
  margin-top: 105px;
}

.mt-120 {
  margin-top: 120px;
}

.mt-135 {
  margin-top: 135px;
}

.mt-150 {
  margin-top: 150px;
}

.mt-165 {
  margin-top: 165px;
}

.mt-180 {
  margin-top: 180px;
}

.mr-15 {
  margin-right: 15px;
}

.mr-30 {
  margin-right: 30px;
}

.mr-45 {
  margin-right: 45px;
}

.mr-60 {
  margin-right: 60px;
}

.mr-75 {
  margin-right: 75px;
}

.mr-90 {
  margin-right: 90px;
}

.mr-105 {
  margin-right: 105px;
}

.mr-120 {
  margin-right: 120px;
}

.mr-135 {
  margin-right: 135px;
}

.mr-150 {
  margin-right: 150px;
}

.mr-165 {
  margin-right: 165px;
}

.mr-180 {
  margin-right: 180px;
}

.mb-15 {
  margin-bottom: 15px;
}

.mb-30 {
  margin-bottom: 30px;
}

.mb-45 {
  margin-bottom: 45px;
}

.mb-60 {
  margin-bottom: 60px;
}

.mb-75 {
  margin-bottom: 75px;
}

.mb-90 {
  margin-bottom: 90px;
}

.mb-105 {
  margin-bottom: 105px;
}

.mb-120 {
  margin-bottom: 120px;
}

.mb-135 {
  margin-bottom: 135px;
}

.mb-150 {
  margin-bottom: 150px;
}

.mb-165 {
  margin-bottom: 165px;
}

.mb-180 {
  margin-bottom: 180px;
}

.ml-15 {
  margin-left: 15px;
}

.ml-30 {
  margin-left: 30px;
}

.ml-45 {
  margin-left: 45px;
}

.ml-60 {
  margin-left: 60px;
}

.ml-75 {
  margin-left: 75px;
}

.ml-90 {
  margin-left: 90px;
}

.ml-105 {
  margin-left: 105px;
}

.ml-120 {
  margin-left: 120px;
}

.ml-135 {
  margin-left: 135px;
}

.ml-150 {
  margin-left: 150px;
}

.ml-165 {
  margin-left: 165px;
}

.ml-180 {
  margin-left: 180px;
}

.mt {
  margin-top: 0px;
}

.mb {
  margin-bottom: 0px;
}

/* 	THEME
/*	- HELPERS - Text & Align
================================================================ */
.text-upper {
  text-transform: uppercase;
}

.text-none {
  text-transform: none;
}

.text-right {
  text-align: right;
}

.text-left {
  text-align: left;
}

.text-center {
  text-align: center;
}

.text-lowercase {
  text-transform: lowercase;
}

.text-white {
  color: #ffffff !important;
}

.text-highlight {
  color: #BF0D3E !important;
}

.text-red {
  color: #BF0D3E;
}

@media (min-width: 576px) {
  .alignleft {
    float: left;
    margin-right: 48px;
    margin-bottom: 48px;
  }
  .alignright {
    float: right;
    padding-left: 48px;
  }
}
@media (min-width: 992px) {
  .text-break {
    display: block;
  }
}
/* pp-editorial-new-400 - latin */
@font-face {
  font-family: "PP Editorial New";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../webfonts/PPEditorialNew-Regular.woff2") format("woff2"), url("../webfonts/PPEditorialNew-Regular.woff") format("woff");
}
/* pp-editorial-new-400-italic - latin */
@font-face {
  font-family: "PP Editorial New";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("../webfonts/PPEditorialNew-Italic.woff2") format("woff2"), url("../webfonts/PPEditorialNew-Italic.woff") format("woff");
}
/* pp-editorial-new-700 - latin */
@font-face {
  font-family: "PP Editorial New";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../webfonts/PPEditorialNew-Bold.woff2") format("woff2"), url("../webfonts/PPEditorialNew-Bold.woff") format("woff");
}
/* pp-editorial-new-700-italic - latin */
@font-face {
  font-family: "PP Editorial New";
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url("../webfonts/PPEditorialNew-BoldItalic.woff2") format("woff2"), url("../webfonts/PPEditorialNew-BoldItalic.woff") format("woff");
}
[data-background-color=white] {
  background: #ffffff;
  color: #111111;
}
[data-background-color=white] h1,
[data-background-color=white] h2,
[data-background-color=white] h3,
[data-background-color=white] h4,
[data-background-color=white] h5,
[data-background-color=white] h6,
[data-background-color=white] p,
[data-background-color=white] span,
[data-background-color=white] li,
[data-background-color=white] a {
  color: #111111;
}

.gradient {
  display: block;
  position: absolute;
  left: 0px;
  top: 0px;
  bottom: 0px;
  right: 0px;
  width: 100%;
  height: 100%;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(55%, rgba(255, 255, 255, 0)), to(rgba(0, 0, 0, 0.5)));
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 55%, rgba(0, 0, 0, 0.5) 100%);
}

.overlay {
  display: block;
  position: absolute;
  left: 0px;
  top: 0px;
  bottom: 0px;
  right: 0px;
  width: 100%;
  height: 100%;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

[data-overlay-opacity="100"] {
  opacity: 1;
}

[data-overlay-opacity="95"] {
  opacity: 0.95;
}

[data-overlay-opacity="90"] {
  opacity: 0.9;
}

[data-overlay-opacity="85"] {
  opacity: 0.85;
}

[data-overlay-opacity="80"] {
  opacity: 0.8;
}

[data-overlay-opacity="75"] {
  opacity: 0.75;
}

[data-overlay-opacity="70"] {
  opacity: 0.7;
}

[data-overlay-opacity="65"] {
  opacity: 0.65;
}

[data-overlay-opacity="60"] {
  opacity: 0.6;
}

[data-overlay-opacity="55"] {
  opacity: 0.55;
}

[data-overlay-opacity="50"] {
  opacity: 0.5;
}

[data-overlay-opacity="45"] {
  opacity: 0.45;
}

[data-overlay-opacity="40"] {
  opacity: 0.4;
}

[data-overlay-opacity="35"] {
  opacity: 0.35;
}

[data-overlay-opacity="30"] {
  opacity: 0.3;
}

[data-overlay-opacity="25"] {
  opacity: 0.25;
}

[data-overlay-opacity="20"] {
  opacity: 0.2;
}

[data-overlay-opacity="15"] {
  opacity: 0.15;
}

[data-overlay-opacity="10"] {
  opacity: 0.1;
}

[data-overlay-opacity="5"] {
  opacity: 0.05;
}

[data-overlay-opacity="0"] {
  opacity: 0;
  display: none;
}

.image-background {
  position: absolute;
  top: 0px;
  left: 0px;
  right: 0px;
  bottom: 0px;
  z-index: 0;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-size: cover;
}

.no-gutters {
  margin-right: 0;
  margin-left: 0;
}
.no-gutters > .col,
.no-gutters > [class*=col-] {
  padding-right: 0;
  padding-left: 0;
}

/*	THEME
	MOBILE - NAVIGATION
================================================================ */
/*	THEME
	MOBILE - NAVIGATION
================================================================ */
#btn-navigation-mobile {
  display: none;
  position: absolute;
  z-index: 1;
  text-align: center;
  height: 24px;
  line-height: 24px;
  width: 24px;
  margin: 0;
  background-color: transparent;
  text-decoration: none;
  right: var(--page-margin);
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

#menu:not(.mm-menu) {
  display: none;
}

/* MM NEW */
#menu.mm-menu {
  background: #ffffff !important;
  color: #111111 !important;
  z-index: 10;
  max-width: 80vw !important;
}
@media screen and (min-width: 1201px) {
  #menu.mm-menu {
    display: none;
  }
}
#menu.mm-menu .mm-navbar {
  border-color: #111111;
  padding: 0 var(--page-margin);
}
#menu.mm-menu .mm-navbar .mm-navbar__title {
  color: #111111;
}
#menu.mm-menu .mm-navbar .mm-btn {
  width: calc(var(--page-margin) * 2);
}
#menu.mm-menu .mm-navbar .mm-btn:before {
  border-color: #111111;
  left: calc(var(--page-margin) + 2px);
}
#menu.mm-menu .mm-navbar .mm-btn:hover:before {
  border-color: #BF0D3E;
}
#menu.mm-menu .mm-listview {
  margin-left: 0;
}
#menu.mm-menu .mm-listview li:last-child {
  margin-bottom: 0px;
}
#menu.mm-menu .mm-listview li a {
  display: block;
  padding: 24px var(--page-margin);
  color: #111111;
  border-bottom: 1px solid #111111 !important;
  border-color: #111111;
}
#menu.mm-menu .mm-listview li a.mm-btn_next {
  width: 100%;
}
#menu.mm-menu .mm-listview li a.mm-btn_next:after {
  border-color: #111111;
}
#menu.mm-menu .mm-listview li a.mm-btn_next:before {
  display: none;
}
#menu.mm-menu .mm-listview li:hover a {
  color: #BF0D3E;
}
#menu.mm-menu .mm-listview li:hover a:after {
  border-color: #BF0D3E;
}
#menu.mm-menu .mm-listview .mm-btn_next {
  padding: 0;
}
#menu.mm-menu .mm-listview .mm-btn_next:after {
  border-color: #111111;
  right: var(--page-margin);
}
#menu.mm-menu .mm-listview .mm-btn_next:after:hover {
  border-color: #BF0D3E;
}
#menu.mm-menu .mm-panel {
  padding-left: 0;
}

@media screen and (min-width: 1201px) {
  .mm-page__blocker {
    display: none !important;
  }
  .mm-wrapper_blocking,
  .mm-wrapper_blocking body {
    overflow-y: visible !important;
  }
}
.mm-wrapper_opening .mm-menu_offcanvas.mm-menu_opened ~ .mm-slideout {
  -webkit-transform: translate3d(80vw, 0, 0) !important;
          transform: translate3d(80vw, 0, 0) !important;
}

.mm-wrapper_opened .mm-menu_fx-menu-slide {
  -webkit-transform: translate(-80vw, 0);
  transform: translate(-80vw, 0);
  -webkit-transform: translate3d(-80vw, 0, 0);
  transform: translate3d(-80vw, 0, 0);
}

.mm-wrapper_opening .mm-menu_fx-menu-slide {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.btn {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 16px 24px;
  background-color: #111111;
  color: #ffffff;
  font-family: Arial, Helvetica, sans-serif;
  border-radius: var(--radius-medium);
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.btn:before, .btn:after {
  background-size: 24px;
  background-repeat: no-repeat;
  display: inline-block;
  width: 24px;
  height: 24px;
  margin-bottom: 2px;
}
.btn.btn--arrow-right:after {
  content: "";
  background-image: url("../images/arrow-right-white.svg");
  background-position: center left;
  margin-left: 4px;
}
.btn.btn--external:after {
  content: "";
  background-image: url("../images/arrow-external-white.svg");
  background-position: center left;
  margin-left: 4px;
}
.btn.btn--list-left:before {
  content: "";
  background-image: url("../images/list-white.svg");
  background-position: center right;
  margin-right: 4px;
}
.btn:hover {
  -webkit-transition: 0.3s;
  transition: 0.3s;
  background-color: #333333;
}
.btn.btn--primary {
  background-color: #BF0D3E;
  color: #ffffff;
}
.btn.btn--primary:hover {
  background-color: #980A31;
}
.btn.btn--secondary {
  background-color: #F2F2F2;
  color: #111111;
}
.btn.btn--secondary.btn--arrow-right:after {
  background-image: url("../images/arrow-right-typo.svg");
}
.btn.btn--secondary.btn--external:after {
  background-image: url("../images/arrow-external-typo.svg");
}
.btn.btn--secondary.btn--list-left:before {
  background-image: url("../images/list-typo.svg");
}
.btn.btn--secondary:hover {
  background-color: #E6E6E6;
}
.btn.btn--tertiary {
  background-color: transparent;
  color: #BF0D3E;
  padding: 0;
  border-radius: 0;
  border-bottom: 0.035em solid transparent;
}
.btn.btn--tertiary.btn--arrow-right:after {
  background-image: url("../images/arrow-right-red.svg");
}
.btn.btn--tertiary.btn--external:after {
  background-image: url("../images/arrow-external-red.svg");
}
.btn.btn--tertiary.btn--list-left:before {
  background-image: url("../images/list-red.svg");
}
.btn.btn--tertiary:hover {
  border-bottom: 0.035em solid #BF0D3E;
}

/*	THEME
	FORMULAR
================================================================ */
form {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

form input {
  margin-top: var(--space-gap);
}

/*	- COMPONENTS
	.page__components ___ ANFANG
================================================================ */
.component {
  position: relative;
  padding-top: var(--space-default);
  padding-bottom: var(--space-default);
}
.component .headline__outer.headline--sticky {
  position: sticky;
  top: var(--space-default);
}
@media screen and (min-width: 576px) {
  .component .headline__outer.headline-sticky--xs {
    position: sticky;
    top: var(--space-default);
  }
}
@media screen and (min-width: 768px) {
  .component .headline__outer.headline-sticky--sm {
    position: sticky;
    top: var(--space-default);
  }
}
@media screen and (min-width: 992px) {
  .component .headline__outer.headline-sticky--md {
    position: sticky;
    top: var(--space-default);
  }
}
@media screen and (min-width: 1201px) {
  .component .headline__outer.headline-sticky--ld {
    position: sticky;
    top: var(--space-default);
  }
}
.component .headline__outer div:not(:only-child):first-child * {
  margin: 0;
}
.component.line-show:after {
  content: "";
  position: absolute;
  bottom: 0;
  width: calc(100% - var(--page-margin) * 2);
  height: 1px;
  left: var(--page-margin);
  border-bottom: 1px solid #111111;
}

/* ITEMS
    */
/*  ITEM
    */
.item .item__link {
  display: block;
  text-decoration: none;
}

/*  ITEM
        Wrap */
.item__wrap {
  position: relative;
}

/*  ITEM
        Title */
.item__title {
  text-align: left;
  margin-bottom: 24px;
  -ms-hyphens: auto;
      hyphens: auto;
}

/* TEXT Anfang */
.component-text + .component-text {
  padding-top: 0;
}
.component-text.line-show + .component-text {
  padding-top: var(--space-default);
}
.component-text ul {
  padding-bottom: 1em;
}
.component-text .col-image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
}
.component-text .col-image.col-image--sticky {
  display: block;
  -webkit-box-align: none;
      -ms-flex-align: none;
          align-items: none;
}
.component-text .col-image.col-image--sticky .row {
  position: sticky;
  top: var(--space-default);
}
.component-text .col-image .row {
  width: 100%;
}
.component-text .col-image .component-text__image {
  width: 100%;
  height: auto;
  aspect-ratio: 5/4;
  border-radius: var(--radius-medium);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
.component-text .col-image .component-text__image.component-text__image--vertical {
  aspect-ratio: 4/5;
}
@media screen and (max-width: 576px) {
  .component-text .col-image .component-text__image {
    margin-bottom: var(--space-gap);
    max-width: 66.666%;
  }
}
.component-text.component-text--promo .col-image {
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}
.component-text.component-text--promo .col-image .component-promotext__image-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  gap: var(--space-gap);
}
@media screen and (max-width: 767px) {
  .component-text.component-text--promo .col-image .component-promotext__image-wrapper {
    padding-bottom: var(--space-gap);
  }
}
.component-text.component-text--promo .col-image .component-promotext__image-wrapper .component-promotext__image {
  width: 100%;
  height: auto;
  max-width: 192px;
  aspect-ratio: 1/1;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}

/* TEXT Ende */
/* HERO Anfang */
.component-hero {
  width: 100%;
  height: 100vh;
  background-color: #BF0D3E;
  padding-bottom: 0;
  padding-top: 60px;
}
@media screen and (max-width: 576px) {
  .component-hero.component-hero--default {
    max-height: unset;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
  }
}
.component-hero.component-hero--default .component-hero__wrapper {
  padding-top: var(--page-margin);
  padding-bottom: var(--page-margin);
}
@media screen and (max-width: 576px) {
  .component-hero.component-hero--default .component-hero__wrapper {
    padding-top: var(--space-large);
  }
}
@media screen and (min-width: 1201px) {
  .component-hero.component-hero--default .component-hero__wrapper {
    padding-top: var(--space-large);
    padding-bottom: 40px;
  }
}
@media screen and (min-width: 1501px) {
  .component-hero.component-hero--default .component-hero__wrapper {
    padding-top: var(--page-margin);
    padding-bottom: var(--page-margin);
  }
}
@media screen and (max-width: 576px) {
  .component-hero.component-hero--background {
    background-color: #ffffff;
    height: auto;
  }
}
.component-hero.component-hero--background .component-hero__wrapper {
  z-index: 3;
  padding-top: var(--page-margin);
  padding-bottom: var(--page-margin);
}
@media screen and (max-width: 576px) {
  .component-hero.component-hero--background .component-hero__wrapper {
    height: auto;
    padding-top: var(--space-large);
    padding-bottom: var(--space-large);
  }
  .component-hero.component-hero--background .component-hero__wrapper * {
    color: #111111 !important;
  }
  .component-hero.component-hero--background .component-hero__wrapper .col-text .component-hero__content-wrapper {
    height: auto;
  }
  .component-hero.component-hero--background .component-hero__wrapper .col-image .component-hero__text-wrapper--mobile {
    padding-top: 0;
  }
}
.component-hero.component-hero--background .component-hero__background-image {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}
.component-hero.component-hero--background .component-hero__background-image:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 2;
  background-color: #000000;
  opacity: 0.5;
}
@media screen and (max-width: 576px) {
  .component-hero.component-hero--background .component-hero__background-image {
    position: relative;
    aspect-ratio: 5/4;
    height: auto;
  }
  .component-hero.component-hero--background .component-hero__background-image:after {
    display: none;
  }
}
.component-hero.component-hero--white {
  background-color: #ffffff;
  height: 70vh;
}
.component-hero.component-hero--white .component-hero__wrapper {
  padding-top: 40px;
  padding-bottom: 40px;
  height: calc(70vh - 60px);
}
.component-hero.component-hero--white .component-hero__wrapper .row .col-text,
.component-hero.component-hero--white .component-hero__wrapper .row .col-text-mobile {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-pack: end !important;
      -ms-flex-pack: end !important;
          justify-content: end !important;
}
.component-hero.component-hero--white .component-hero__wrapper .row .col-text .headline__wrapper,
.component-hero.component-hero--white .component-hero__wrapper .row .col-text-mobile .headline__wrapper {
  height: auto !important;
  margin-bottom: var(--space-small) !important;
}
.component-hero.component-hero--white .component-hero__wrapper .row .col-text .headline__wrapper .title,
.component-hero.component-hero--white .component-hero__wrapper .row .col-text-mobile .headline__wrapper .title {
  color: #111111;
}
.component-hero.component-hero--white .component-hero__wrapper .row .col-text .subline__wrapper .title,
.component-hero.component-hero--white .component-hero__wrapper .row .col-text-mobile .subline__wrapper .title {
  color: #757575;
}
.component-hero.component-hero--white .btn {
  padding-top: var(--space-small) !important;
}
.component-hero .component-hero__wrapper {
  width: 100%;
  aspect-ratio: 16/9;
  padding-top: var(--space-large);
  padding-bottom: 40px;
  height: calc(100vh - 60px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
}
@media screen and (max-width: 576px) {
  .component-hero .component-hero__wrapper {
    max-height: unset;
    aspect-ratio: unset;
  }
}
.component-hero .component-hero__wrapper > .row {
  height: 100%;
  width: calc(100% + var(--space-gap));
}
@media screen and (min-width: 576px) {
  .component-hero .component-hero__wrapper > .row > [class*=col-] {
    height: 100%;
  }
}
@media screen and (min-width: 576px) {
  .component-hero .component-hero__wrapper > .row .col-text,
  .component-hero .component-hero__wrapper > .row .col-text-mobile {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}
.component-hero .component-hero__wrapper > .row .col-text .component-hero__content-wrapper,
.component-hero .component-hero__wrapper > .row .col-text-mobile .component-hero__content-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  margin-top: 0;
}
.component-hero .component-hero__wrapper > .row .col-text .component-hero__content-wrapper .headline__wrapper,
.component-hero .component-hero__wrapper > .row .col-text-mobile .component-hero__content-wrapper .headline__wrapper {
  width: 100%;
  margin-bottom: 8px;
}
.component-hero .component-hero__wrapper > .row .col-text .component-hero__content-wrapper .row,
.component-hero .component-hero__wrapper > .row .col-text-mobile .component-hero__content-wrapper .row {
  width: 100%;
}
.component-hero .component-hero__wrapper > .row .col-text .component-hero__content-spacer,
.component-hero .component-hero__wrapper > .row .col-text .component-hero__content-wrapper,
.component-hero .component-hero__wrapper > .row .col-text-mobile .component-hero__content-spacer,
.component-hero .component-hero__wrapper > .row .col-text-mobile .component-hero__content-wrapper {
  height: 50%;
}
@media screen and (max-width: 576px) {
  .component-hero .component-hero__wrapper > .row .col-text .component-hero__content-spacer,
  .component-hero .component-hero__wrapper > .row .col-text .component-hero__content-wrapper,
  .component-hero .component-hero__wrapper > .row .col-text-mobile .component-hero__content-spacer,
  .component-hero .component-hero__wrapper > .row .col-text-mobile .component-hero__content-wrapper {
    height: auto;
  }
}
@media screen and (max-width: 576px) {
  .component-hero .component-hero__wrapper > .row .col-text .component-hero__content-spacer,
  .component-hero .component-hero__wrapper > .row .col-text-mobile .component-hero__content-spacer {
    display: none;
  }
}
.component-hero .component-hero__wrapper > .row .col-text .component-hero__text-wrapper--mobile,
.component-hero .component-hero__wrapper > .row .col-text-mobile .component-hero__text-wrapper--mobile {
  margin-top: var(--space-gap);
}
.component-hero .component-hero__wrapper > .row .component-hero__text-wrapper--mobile {
  display: none;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
@media screen and (max-width: 576px) {
  .component-hero .component-hero__wrapper > .row .col-text .component-hero__text-wrapper {
    display: none;
  }
  .component-hero .component-hero__wrapper > .row .component-hero__text-wrapper--mobile {
    display: block;
    padding-top: var(--space-gap);
  }
}
@media screen and (max-width: 576px) {
  .component-hero .component-hero__wrapper > .row .col-image {
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    -ms-flex-item-align: end;
        align-self: flex-end;
  }
}
@media screen and (min-width: 576px) {
  .component-hero .component-hero__wrapper > .row .col-image {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: end;
  }
}
.component-hero .component-hero__wrapper > .row .col-image .component-hero__image-wrapper {
  width: 100%;
}
.component-hero .component-hero__wrapper > .row .col-image .component-hero__image-wrapper .component-hero__image {
  border-radius: var(--radius-medium);
  width: 100%;
  height: auto;
  aspect-ratio: 5/4;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.component-hero .component-hero__wrapper .headline__wrapper *,
.component-hero .component-hero__wrapper .component-hero__text-wrapper *,
.component-hero .component-hero__wrapper .component-hero__text-wrapper--mobile * {
  color: #ffffff;
}

/* HERO Ende */
/* LINK LIST Anfang */
.component-link-list .component-link-list__wrapper .component-link-list__entry {
  display: block;
  width: 100%;
  padding: 8px 0 24px 0;
  border-bottom: 1px solid #111111;
  margin-bottom: 16px;
}
.component-link-list .component-link-list__wrapper .component-link-list__entry .component-link-list__entry-link {
  display: block;
  width: 100%;
  color: #111111;
  text-decoration: none;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto 2em;
  grid-template-columns: auto 2em;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.component-link-list .component-link-list__wrapper .component-link-list__entry .component-link-list__entry-link:hover, .component-link-list .component-link-list__wrapper .component-link-list__entry .component-link-list__entry-link:active {
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #BF0D3E;
}
.component-link-list .component-link-list__wrapper .component-link-list__entry .component-link-list__entry-link:hover:after, .component-link-list .component-link-list__wrapper .component-link-list__entry .component-link-list__entry-link:active:after {
  background-image: url("../images/arrow-right-red.svg");
}
.component-link-list .component-link-list__wrapper .component-link-list__entry .component-link-list__entry-link:after {
  content: "";
  width: 2em;
  height: 1em;
  display: inline-block;
  background-image: url("../images/arrow-right-typo.svg");
  background-size: 1.15em auto;
  background-repeat: no-repeat;
  background-position: center right;
}

/* LINK LIST Ende */
/* MEDIA TEASER Anfang */
.component-media-teaser .component-media-teaser__wrapper {
  position: relative;
  width: 100%;
  border-radius: var(--radius-medium);
}
.component-media-teaser .component-media-teaser__wrapper .component-media-teaser__image,
.component-media-teaser .component-media-teaser__wrapper .component-media-teaser__video {
  border-radius: var(--radius-medium);
  width: 100%;
  height: auto;
}
.component-media-teaser .component-media-teaser__wrapper .component-media-teaser__image {
  display: block;
  aspect-ratio: 16/9;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* MEDIA TEASER Ende */
/* CONTACTPERSON LIST Anfang */
.component-contactperson-list .component-contactperson-list__wrapper {
  padding-top: var(--space-default);
}

.component-contactperson-list__wrapper .headline__wrapper {
  padding-bottom: 24px;
  border-bottom: 1px solid #111111;
}
.component-contactperson-list__wrapper .component-contactperson-list__entry {
  position: relative;
  padding-top: var(--space-gap);
  padding-bottom: 24px;
  border-bottom: 1px solid #111111;
}
.component-contactperson-list__wrapper .component-contactperson-list__entry .component-contactperson-list__person {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 23% var(--space-gap) 1fr;
  grid-template-columns: 23% 1fr;
  min-height: auto;
  grid-auto-rows: -webkit-min-content;
  grid-auto-rows: min-content;
  grid-auto-flow: column;
  gap: var(--space-gap);
  color: #111111;
  text-decoration: none;
}
@media screen and (max-width: 576px) {
  .component-contactperson-list__wrapper .component-contactperson-list__entry .component-contactperson-list__person {
    -ms-grid-columns: 33% 1fr;
    grid-template-columns: 33% 1fr;
  }
}
.component-contactperson-list__wrapper .component-contactperson-list__entry .component-contactperson-list__person .component-contactperson-list__person-image {
  border-radius: var(--radius-medium);
  width: 100%;
  height: auto;
  aspect-ratio: 4/5;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.component-contactperson-list__wrapper .component-contactperson-list__entry .component-contactperson-list__person .component-contactperson-list__person-text {
  display: -ms-grid;
  display: grid;
  grid-auto-rows: -webkit-min-content;
  grid-auto-rows: min-content;
  grid-auto-flow: column;
  -ms-grid-columns: 33% var(--space-gap) 1fr;
  grid-template-columns: 33% 1fr;
  gap: var(--space-gap);
}
@media screen and (max-width: 576px) {
  .component-contactperson-list__wrapper .component-contactperson-list__entry .component-contactperson-list__person .component-contactperson-list__person-text {
    display: block;
  }
}
.component-contactperson-list__wrapper .component-contactperson-list__entry .component-contactperson-list__person .component-contactperson-list__person-name {
  color: #111111;
  text-decoration-line: underline;
  text-decoration-style: solid;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
  text-decoration-thickness: 0.035em;
  text-underline-offset: auto;
  text-underline-position: from-font;
}
.component-contactperson-list__wrapper .component-contactperson-list__entry .component-contactperson-list__person .component-contactperson-list__person-name:hover {
  color: #BF0D3E;
}
@media screen and (max-width: 576px) {
  .component-contactperson-list__wrapper .component-contactperson-list__entry .component-contactperson-list__person .component-contactperson-list__person-name {
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
  }
}
.component-contactperson-list__wrapper .component-contactperson-list__entry .component-contactperson-list__person .component-contactperson-list__person-profession {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 576px) {
  .component-contactperson-list__wrapper .component-contactperson-list__entry .component-contactperson-list__person .component-contactperson-list__person-profession {
    padding-top: var(--space-gap);
  }
}
.component-contactperson-list__wrapper .component-contactperson-list__entry .component-contactperson-list__person .component-contactperson-list__person-profession ul {
  overflow-wrap: break-word;
  word-wrap: break-word;
  word-break: break-word;
  -ms-hyphens: auto;
      hyphens: auto;
  max-width: 100%;
}
.component-contactperson-list__wrapper .component-contactperson-list__entry .component-contactperson-list__person .component-contactperson-list__person-profession ul li {
  max-width: 100 .component-contactperson-list__wrapper .component-contactperson-list__entry .component-contactperson-list__person .component-contactperson-list__person-profession ul li;
  word-break: break-word;
}
.component-contactperson-list__wrapper .component-contactperson-list__entry .component-contactperson-list__person:hover .component-contactperson-list__person-name,
.component-contactperson-list__wrapper .component-contactperson-list__entry .component-contactperson-list__person:hover .component-contactperson-list__person-profession {
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #BF0D3E;
}

/* CONTACTPERSON LIST Ende */
/* CONTACTPERSON CTA Anfang */
.component-contactperson-cta {
  background-color: #BF0D3E;
}
.component-contactperson-cta .component-contactperson-cta__wrapper * {
  color: #ffffff;
}
.component-contactperson-cta .component-contactperson-cta__wrapper .component-contactperson-cta__image {
  border-radius: var(--radius-medium);
  width: 100%;
  height: auto;
  aspect-ratio: 4/5;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* CONTACTPERSON CTA Ende */
/* LOCATION LIST Anfang */
.component-location-list .component-location-list__entry {
  padding-top: var(--space-gap);
}
.component-location-list .component-location-list__entry a {
  color: #111111;
  text-decoration-line: underline;
  text-decoration-style: solid;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
  text-decoration-thickness: 0.035em;
  text-underline-offset: auto;
  text-underline-position: from-font;
}
.component-location-list .component-location-list__entry a:hover {
  color: #BF0D3E;
}
.component-location-list .component-location-list__entry:first-child {
  padding-top: 0;
}
.component-location-list .component-location-list__entry .component-location-list__entry-image {
  border-radius: var(--radius-medium);
  width: 100%;
  height: auto;
  aspect-ratio: 5/4;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 576px) {
  .component-location-list .component-location-list__entry .component-location-list__entry-image {
    margin-bottom: var(--space-gap);
  }
}
.component-location-list .component-location-list__entry .component-location-list__entry-name,
.component-location-list .component-location-list__entry .component-location-list__entry-contact,
.component-location-list .component-location-list__entry .component-location-list__entry-popup {
  margin-bottom: var(--space-small);
}
.component-location-list .component-location-list__entry .component-location-list__entry-name *,
.component-location-list .component-location-list__entry .component-location-list__entry-contact *,
.component-location-list .component-location-list__entry .component-location-list__entry-popup * {
  color: #111111;
}
.component-location-list .component-location-list__entry .component-location-list__entry-address {
  color: #757575;
  margin-bottom: var(--space-small);
}
.component-location-list .component-location-list__entry .component-location-list__entry-management * {
  color: #111111;
}

.component-location-list__popup.fancybox-content {
  width: 75vw;
  height: 100%;
  padding: 80px var(--page-margin) var(--page-margin) var(--page-margin);
  border-top-left-radius: var(--radius-large);
  border-bottom-left-radius: var(--radius-large);
}
@media screen and (min-width: 992px) {
  .component-location-list__popup.fancybox-content {
    width: 50vw;
  }
}
.component-location-list__popup.fancybox-content .component-contactperson-list__wrapper .component-contactperson-list__entry:first-child {
  padding-top: 0;
}
.component-location-list__popup.fancybox-content .component-references__wrapper .component-references__entry {
  margin-bottom: var(--space-default);
}
.component-location-list__popup.fancybox-content .component-references__wrapper .component-references__entry .component-references__table--wrapper {
  width: 100%;
  overflow-y: auto;
}
.component-location-list__popup.fancybox-content .component-references__wrapper .component-references__entry .component-references__table {
  width: 100%;
}
.component-location-list__popup.fancybox-content .component-references__wrapper .component-references__entry .component-references__table tr {
  border-bottom: 1px solid #111111;
}
.component-location-list__popup.fancybox-content .component-references__wrapper .component-references__entry .component-references__table tr td {
  padding: var(--space-small);
}
.component-location-list__popup.fancybox-content .component-references__wrapper .component-references__entry .component-references__table tr td:first-child {
  padding-left: 0;
}
.component-location-list__popup.fancybox-content .component-references__wrapper .component-references__entry .component-references__table tr td:last-child {
  padding-right: 0;
  width: 50%;
}

/* LOCATION LIST Ende */
/* DOWNLOAD Anfang */
.component-download .component-download__category {
  padding-top: var(--space-default);
}
@media screen and (max-width: 767px) {
  .component-download .component-download__category table {
    border-collapse: separate;
  }
}
.component-download .component-download__category table thead tr td strong {
  padding-top: var(--space-gap);
  display: block;
}
@media screen and (max-width: 767px) {
  .component-download .component-download__category table thead tr td strong {
    padding-bottom: var(--space-gap);
  }
}
.component-download .component-download__category table thead:first-child tr td strong {
  padding-top: 0;
}
@media screen and (max-width: 767px) {
  .component-download .component-download__category table thead tr td:not(:first-child) {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .component-download .component-download__category table tbody tr {
    padding: 1.5em 0 var(--space-gap) 0;
  }
  .component-download .component-download__category table tbody tr td:first-child {
    display: none;
  }
}
.component-download .component-download__category table tr {
  -webkit-transition: 0.2s;
  transition: 0.2s;
  border-bottom: 1px solid #111111;
}
@media screen and (max-width: 767px) {
  .component-download .component-download__category table tr {
    display: table;
    width: 100%;
  }
}
.component-download .component-download__category table tr[data-href] {
  cursor: pointer;
}
.component-download .component-download__category table tr[data-href]:hover .component-download__title,
.component-download .component-download__category table tr[data-href]:hover .component-download__info {
  color: #BF0D3E;
}
.component-download .component-download__category table tr td {
  padding: var(--space-small);
}
.component-download .component-download__category table tr td:first-child {
  padding-left: 0;
}
.component-download .component-download__category table tr td:last-child {
  text-align: right;
  padding-right: 0;
}
@media screen and (max-width: 767px) {
  .component-download .component-download__category table tr .component-download__category-title {
    display: table-row;
  }
}
@media screen and (max-width: 767px) {
  .component-download .component-download__category table tr .component-download__title {
    display: table-row;
  }
}
.component-download .component-download__category table tr .component-download__info {
  text-transform: uppercase;
  color: #757575;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .component-download .component-download__category table tr .component-download__info {
    padding-left: 0;
  }
}
.component-download .component-download__category table tr .component-download__link {
  min-width: 2em;
}
@media screen and (max-width: 767px) {
  .component-download .component-download__category table tr .component-download__link {
    padding-right: 0;
  }
}
.component-download .component-download__category table tr .component-download__link img {
  display: block;
  margin-left: auto;
}
.component-download .component-download__category table tr .component-download__link .component-download__icon--hover {
  display: none;
}
.component-download .component-download__category table tr:hover {
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.component-download .component-download__category table tr:hover .component-download__link .component-download__icon {
  display: none;
}
.component-download .component-download__category table tr:hover .component-download__link .component-download__icon--hover {
  display: block;
}

/* DOWNLOAD Ende */
/* PROMOBANNER Anfang */
.component-promobanner {
  padding: 0;
}
.component-promobanner.line-show {
  padding-bottom: var(--space-default);
}
.component-promobanner .component-promobanner__wrapper {
  position: relative;
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 40px;
  background-color: #130106;
  min-height: 600px;
  border-radius: var(--radius-medium);
}
.component-promobanner .component-promobanner__wrapper:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 2;
  background-color: #000000;
  opacity: 0.5;
  border-radius: var(--radius-medium);
}
.component-promobanner .component-promobanner__wrapper .row {
  position: relative;
  z-index: 3;
}
.component-promobanner .component-promobanner__wrapper .component-promobanner__inner {
  min-height: 520px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.component-promobanner .component-promobanner__wrapper .component-promobanner__inner .component-promobanner__title {
  margin-bottom: calc(var(--space-small) + 8px);
}
.component-promobanner .component-promobanner__wrapper .component-promobanner__inner .component-promobanner__text {
  margin-bottom: var(--space-gap);
}
.component-promobanner .component-promobanner__wrapper .component-promobanner__inner .headline {
  color: #ffffff;
}
.component-promobanner *, .component-promobanner .h1, .component-promobanner .h2, .component-promobanner .h3, .component-promobanner .h4, .component-promobanner .h5, .component-promobanner .h6 {
  color: #ffffff;
}
.component-promobanner.component-promobanner--contactperson .component-promobanner__wrapper:after {
  display: none;
}

/* PROMOBANNER Ende */
/* LIST Anfang */
.component-list .component-list__wrapper {
  padding-bottom: var(--space-gap);
}
.component-list .component-list__wrapper .component-list__entry {
  padding: var(--space-gap) 0 var(--space-small) 0;
  border-bottom: 1px solid #111111;
}
.component-list .component-list__wrapper .component-list__entry a {
  color: #111111;
  text-decoration-line: underline;
  text-decoration-style: solid;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
  text-decoration-thickness: 0.035em;
  text-underline-offset: auto;
  text-underline-position: from-font;
}
.component-list .component-list__wrapper .component-list__entry a:hover {
  color: #BF0D3E;
}
.component-list .component-list__wrapper .component-list__entry:first-child {
  padding-top: 0;
}
.component-list .component-list__wrapper .component-list__entry .component-list__certificate-wrapper {
  margin-top: 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.component-list .component-list__wrapper .component-list__entry .component-list__certificate-wrapper .component-list__certificate {
  height: 80px;
  width: 80px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  margin-right: var(--space-small);
}
.component-list .component-list__wrapper .component-list__entry .component-list__certificate-wrapper .component-list__certificate:last-child {
  margin-right: 0;
}

/* LIST Ende */
/* JOB OFFER LIST Anfang */
.component-job-offer-list .component-job-offer__text {
  color: #757575;
  margin-top: calc(var(--space-gap) * -1 + 8px);
  margin-bottom: var(--space-gap);
}
@media screen and (max-width: 767px) {
  .component-job-offer-list table {
    border-collapse: inherit;
    border-spacing: 0 var(--space-small);
  }
}
@media screen and (max-width: 767px) {
  .component-job-offer-list table tbody tr {
    padding: 1.5em 0 var(--space-gap) 0;
  }
}
.component-job-offer-list table tr {
  -webkit-transition: 0.2s;
  transition: 0.2s;
  border-bottom: 1px solid #111111;
}
@media screen and (max-width: 767px) {
  .component-job-offer-list table tr {
    display: table;
    width: 100%;
  }
}
.component-job-offer-list table tr[data-href] {
  cursor: pointer;
}
.component-job-offer-list table tr[data-href]:hover .component-job-offer-list__title,
.component-job-offer-list table tr[data-href]:hover .component-job-offer-list__location,
.component-job-offer-list table tr[data-href]:hover .component-job-offer-list__date {
  color: #BF0D3E;
}
@media screen and (min-width: 768px) {
  .component-job-offer-list table tr td {
    padding: var(--space-small);
  }
}
.component-job-offer-list table tr td:first-child {
  padding-left: 0;
}
.component-job-offer-list table tr td:last-child {
  text-align: right;
  padding-right: 0;
}
@media screen and (max-width: 767px) {
  .component-job-offer-list table tr .component-job-offer-list__title,
  .component-job-offer-list table tr .component-job-offer-list__location {
    display: table-row;
  }
}
.component-job-offer-list table tr .component-job-offer-list__location {
  padding-top: var(--space-small);
}
.component-job-offer-list table tr .component-job-offer-list__date {
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .component-job-offer-list table tr .component-job-offer-list__date {
    padding-left: 0;
  }
}
.component-job-offer-list table tr .component-job-offer-list__link {
  min-width: 2em;
}
@media screen and (max-width: 767px) {
  .component-job-offer-list table tr .component-job-offer-list__link {
    padding-right: 0;
  }
}
.component-job-offer-list table tr .component-job-offer-list__link img {
  display: block;
  margin-left: auto;
}
.component-job-offer-list table tr .component-job-offer-list__link .component-job-offer-list__icon--hover {
  display: none;
}
.component-job-offer-list table tr:hover {
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.component-job-offer-list table tr:hover .component-job-offer-list__link .component-job-offer-list__icon {
  display: none;
}
.component-job-offer-list table tr:hover .component-job-offer-list__link .component-job-offer-list__icon--hover {
  display: block;
}

/* JOB OFFER LIST Ende */
/* SERVICES LIST Anfang */
.component-services-list .component-services-list__wrapper {
  padding-top: var(--space-default);
}
@media screen and (min-width: 992px) {
  .component-services-list .component-services-list__wrapper {
    padding-top: calc(var(--space-large) * 2);
  }
}
.component-services-list .component-services-list__wrapper .component-services-list__entry {
  padding: var(--space-gap) 0;
  border-bottom: 1px solid #111111;
}
.component-services-list .component-services-list__wrapper .component-services-list__entry p {
  margin: 0;
}
.component-services-list .component-services-list__wrapper .component-services-list__entry:first-child {
  padding-top: 0;
}
.component-services-list .component-services-list__wrapper .component-services-list__entry details {
  position: relative;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding-bottom: 22px;
}
@media screen and (min-width: 992px) {
  .component-services-list .component-services-list__wrapper .component-services-list__entry details {
    padding-bottom: 20px;
  }
}
@media screen and (min-width: 1201px) {
  .component-services-list .component-services-list__wrapper .component-services-list__entry details {
    padding-bottom: 30px;
  }
}
@media screen and (min-width: 1501px) {
  .component-services-list .component-services-list__wrapper .component-services-list__entry details {
    padding-bottom: 28px;
  }
}
.component-services-list .component-services-list__wrapper .component-services-list__entry details summary {
  display: block;
  position: absolute;
  bottom: 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: #BF0D3E;
  cursor: pointer;
}
.component-services-list .component-services-list__wrapper .component-services-list__entry details summary::marker, .component-services-list .component-services-list__wrapper .component-services-list__entry details summary::-webkit-details-marker {
  display: none;
  content: "";
}
.component-services-list .component-services-list__wrapper .component-services-list__entry details summary:hover {
  text-decoration-line: underline;
  text-decoration-style: solid;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
  text-decoration-thickness: 0.035em;
  text-underline-offset: auto;
  text-underline-position: from-font;
}
.component-services-list .component-services-list__wrapper .component-services-list__entry details .detail-text__wrapper {
  padding: var(--space-small) 0;
}
.component-services-list .component-services-list__wrapper .component-services-list__entry details .detail-text__wrapper .component-services-list__navigation-entry {
  display: block;
  width: 100%;
  padding: 8px 0 24px 0;
  border-bottom: 1px solid #111111;
}
.component-services-list .component-services-list__wrapper .component-services-list__entry details .detail-text__wrapper .component-services-list__navigation-entry a {
  display: block;
  width: 100%;
  color: #111111;
  text-decoration: none;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto 2em;
  grid-template-columns: auto 2em;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.component-services-list .component-services-list__wrapper .component-services-list__entry details .detail-text__wrapper .component-services-list__navigation-entry a:hover, .component-services-list .component-services-list__wrapper .component-services-list__entry details .detail-text__wrapper .component-services-list__navigation-entry a:active {
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #BF0D3E;
}
.component-services-list .component-services-list__wrapper .component-services-list__entry details .detail-text__wrapper .component-services-list__navigation-entry a:hover:after, .component-services-list .component-services-list__wrapper .component-services-list__entry details .detail-text__wrapper .component-services-list__navigation-entry a:active:after {
  background-image: url("../images/arrow-right-red.svg");
}
.component-services-list .component-services-list__wrapper .component-services-list__entry details .detail-text__wrapper .component-services-list__navigation-entry a:after {
  content: "";
  width: 2em;
  height: 1em;
  display: inline-block;
  background-image: url("../images/arrow-right-typo.svg");
  background-size: 1.15em auto;
  background-repeat: no-repeat;
  background-position: center right;
}

/* SERVICES LIST Ende */
/*	THEME
 	- DEFAULTS - IMPORTS ___ ENDE
================================================================ */
html {
  -webkit-font-smoothing: antialiased;
  font-size: 100%;
  font-family: Arial, Helvetica, sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
}

body {
  overflow-x: hidden;
  background-color: #ffffff;
  color: #111111;
  font-family: Arial, Helvetica, sans-serif;
  margin: 0;
  font-size: 16px;
  font-size: 1rem;
  line-height: 22px;
}
@media screen and (min-width: 992px) {
  body {
    font-size: 17px;
    font-size: 1.0625rem;
    line-height: 20px;
  }
}
@media screen and (min-width: 1201px) {
  body {
    font-size: 21px;
    font-size: 1.3125rem;
    line-height: 30px;
  }
}
@media screen and (min-width: 4521px) {
  body {
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 28px;
  }
}

html,
body,
button,
input,
textarea,
select,
label {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 400;
  color: #111111;
}

strong {
  font-weight: 700;
}

/* 	THEME
/*	- DEFAULT - Headers
================================================================ */
.title,
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  color: #111111;
  position: relative;
}

a.h1,
a.h2,
a.h3,
a.h4,
a.h5,
a.h6,
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a,
.h1 a,
.h2 a,
.h3 a,
.h4 a,
.h5 a,
.h6 a {
  text-decoration-line: underline;
  text-decoration-style: solid;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
  text-decoration-thickness: 0.035em;
  text-underline-offset: auto;
  text-underline-position: from-font;
}

@media screen and (max-width: 767px) {
  .title,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  .h1,
  .h2,
  .h3,
  .h4,
  .h5,
  .h6 {
    overflow-wrap: break-word;
    word-wrap: break-word;
    word-break: break-word;
    -ms-hyphens: auto;
        hyphens: auto;
  }
}
.title {
  font-family: "PP Editorial New", "Times New Roman", Times, serif;
  font-weight: 400;
  margin-bottom: var(--space-gap);
  letter-spacing: -1px;
  text-wrap: balance;
  font-size: 32px;
  font-size: 2rem;
  line-height: 36px;
}
@media screen and (min-width: 1201px) {
  .title {
    font-size: 62px;
    font-size: 3.875rem;
    line-height: 76px;
  }
}
@media screen and (min-width: 4521px) {
  .title {
    font-size: 76px;
    font-size: 4.75rem;
    line-height: 96px;
  }
}

h1, .h1, .h1 p {
  font-family: "PP Editorial New", "Times New Roman", Times, serif;
  font-weight: 400;
  margin-bottom: var(--space-gap);
  text-wrap: balance;
  font-size: 28px;
  font-size: 1.75rem;
  line-height: 32px;
}
@media screen and (min-width: 1201px) {
  h1, .h1, .h1 p {
    font-size: 40px;
    font-size: 2.5rem;
    line-height: 43px;
  }
}
@media screen and (min-width: 4521px) {
  h1, .h1, .h1 p {
    font-size: 61px;
    font-size: 3.8125rem;
    line-height: 72px;
  }
}

h2, .h2, .h2 p {
  font-family: "PP Editorial New", "Times New Roman", Times, serif;
  font-weight: 400;
  margin-bottom: var(--space-gap);
  font-size: 25px;
  font-size: 1.5625rem;
  line-height: 30px;
}
@media screen and (min-width: 1201px) {
  h2, .h2, .h2 p {
    font-size: 43px;
    font-size: 2.6875rem;
    line-height: 44px;
  }
}
@media screen and (min-width: 4521px) {
  h2, .h2, .h2 p {
    font-size: 48px;
    font-size: 3rem;
    line-height: 50px;
  }
}

h3, .h3, .h3 p {
  font-family: "PP Editorial New", "Times New Roman", Times, serif;
  font-weight: 400;
  margin-bottom: var(--space-gap);
  font-size: 22px;
  font-size: 1.375rem;
  line-height: 24px;
}
@media screen and (min-width: 1201px) {
  h3, .h3, .h3 p {
    font-size: 35px;
    font-size: 2.1875rem;
    line-height: 40px;
  }
}
@media screen and (min-width: 4521px) {
  h3, .h3, .h3 p {
    font-size: 39px;
    font-size: 2.4375rem;
    line-height: 44px;
  }
}

h4, .h4, .h4 p {
  font-family: "PP Editorial New", "Times New Roman", Times, serif;
  font-weight: 400;
  margin-bottom: var(--space-gap);
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 20px;
}
@media screen and (min-width: 1201px) {
  h4, .h4, .h4 p {
    font-size: 22px;
    font-size: 1.375rem;
    line-height: 28px;
  }
}
@media screen and (min-width: 4521px) {
  h4, .h4, .h4 p {
    font-size: 25px;
    font-size: 1.5625rem;
    line-height: 30px;
  }
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a,
.h1 a,
.h2 a,
.h3 a,
.h4 a,
.h5 a,
.h6 a {
  color: inherit;
}

h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover,
.h1 a:hover,
.h2 a:hover,
.h3 a:hover,
.h4 a:hover,
.h5 a:hover,
.h6 a:hover {
  color: #111111;
}

.headline__wrapper.color-red h1,
.headline__wrapper.color-red h2,
.headline__wrapper.color-red h3,
.headline__wrapper.color-red h4,
.headline__wrapper.color-red h5,
.headline__wrapper.color-red h6,
.headline__wrapper.color-red .h1,
.headline__wrapper.color-red .h2,
.headline__wrapper.color-red .h3,
.headline__wrapper.color-red .h4,
.headline__wrapper.color-red .h5,
.headline__wrapper.color-red .h6,
.subline__wrapper.color-red h1,
.subline__wrapper.color-red h2,
.subline__wrapper.color-red h3,
.subline__wrapper.color-red h4,
.subline__wrapper.color-red h5,
.subline__wrapper.color-red h6,
.subline__wrapper.color-red .h1,
.subline__wrapper.color-red .h2,
.subline__wrapper.color-red .h3,
.subline__wrapper.color-red .h4,
.subline__wrapper.color-red .h5,
.subline__wrapper.color-red .h6 {
  color: #BF0D3E;
}

h1.p,
h2.p,
h3.p,
h4.p,
h5.p,
h6.p {
  font-family: Arial, Helvetica, sans-serif;
  margin: 0;
  font-size: 16px;
  font-size: 1rem;
  line-height: 22px;
}
@media screen and (min-width: 992px) {
  h1.p,
  h2.p,
  h3.p,
  h4.p,
  h5.p,
  h6.p {
    font-size: 17px;
    font-size: 1.0625rem;
    line-height: 20px;
  }
}
@media screen and (min-width: 1201px) {
  h1.p,
  h2.p,
  h3.p,
  h4.p,
  h5.p,
  h6.p {
    font-size: 21px;
    font-size: 1.3125rem;
    line-height: 30px;
  }
}
@media screen and (min-width: 4521px) {
  h1.p,
  h2.p,
  h3.p,
  h4.p,
  h5.p,
  h6.p {
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 28px;
  }
}

h1.strong,
h2.strong,
h3.strong,
h4.strong,
h5.strong,
h6.strong {
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 700;
  margin: 0;
  font-size: 16px;
  font-size: 1rem;
  line-height: 22px;
}
@media screen and (min-width: 992px) {
  h1.strong,
  h2.strong,
  h3.strong,
  h4.strong,
  h5.strong,
  h6.strong {
    font-size: 17px;
    font-size: 1.0625rem;
    line-height: 20px;
  }
}
@media screen and (min-width: 1201px) {
  h1.strong,
  h2.strong,
  h3.strong,
  h4.strong,
  h5.strong,
  h6.strong {
    font-size: 21px;
    font-size: 1.3125rem;
    line-height: 30px;
  }
}
@media screen and (min-width: 4521px) {
  h1.strong,
  h2.strong,
  h3.strong,
  h4.strong,
  h5.strong,
  h6.strong {
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 28px;
  }
}

/* 	THEME
/*	- DEFAULT - Text
================================================================ */
ul,
ol {
  list-style-position: outside;
  padding-left: 1em;
}

p:empty {
  margin-bottom: 0;
}

p:not(.h1, .h2, .h3, .h4, .h5, .h6) {
  margin-bottom: 1em;
}

p a,
li a,
label a {
  font-family: Arial, Helvetica, sans-serif;
  color: #111111;
  text-decoration-line: underline;
  text-decoration-style: solid;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
  text-decoration-thickness: 0.035em;
  text-underline-offset: auto;
  text-underline-position: from-font;
}
p a:hover,
li a:hover,
label a:hover {
  color: #BF0D3E;
}

p:last-child:not(.h1, .h2, .h3, .h4, .h5, .h6) {
  margin-bottom: 0px;
}

a:link {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  color: inherit;
}

/* 	THEME
/*	- DEFAULT - Layout
================================================================ */
.container {
  position: relative;
}

.wrapper {
  position: relative;
  padding-left: var(--page-margin);
  padding-right: var(--page-margin);
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.row {
  margin-left: calc(var(--space-gap) / -2);
  margin-right: calc(var(--space-gap) / -2);
}
.row > [class*=col-] {
  padding-left: calc(var(--space-gap) / 2);
  padding-right: calc(var(--space-gap) / 2);
}

.fancybox-slide--html {
  padding: 0;
  text-align: right;
}
.fancybox-slide--html .fancybox-close-small {
  background-color: #F2F2F2;
  color: #111111;
  top: 24px;
  right: 24px;
  border-radius: var(--radius-medium);
}

.otgs-development-site-front-end {
  display: none;
}

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

nav ul {
  list-style: none;
}

nav ul li a {
  display: block;
  text-decoration: none;
}

nav ul li ul li {
  float: none;
}

.img-responsive {
  max-width: 100%;
  width: 100%;
  height: auto;
}

@media screen and (min-width: 1201px) {
  #site {
    -webkit-transform: none !important;
            transform: none !important;
  }
}

/*	HEADER
/*	#site-header ___ ANFANG
================================================================ */
#site-header {
  z-index: 6;
  position: fixed;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 60px;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  background-color: #ffffff;
}
#site-header.hero--default {
  position: fixed;
  background-color: transparent;
}
#site-header.hero--default.header--fixed {
  background-color: #ffffff;
}
#site-header.hero--default.header--fixed #site-header__navigation ul li a {
  color: #111111;
  border-color: #111111;
}
#site-header.hero--default.header--fixed #site-header__brand img.brand--mega {
  display: block;
}
#site-header.hero--default.header--fixed #site-header__brand img.brand {
  display: none;
}
#site-header.hero--default #site-header__navigation ul li a {
  color: #ffffff;
  border-color: #ffffff;
}
#site-header.hero--background {
  position: fixed;
  background-color: transparent;
}
@media screen and (max-width: 576px) {
  #site-header.hero--background {
    background-color: #ffffff;
  }
}
#site-header.hero--background.header--fixed {
  background-color: #ffffff;
}
#site-header.hero--background.header--fixed #site-header__navigation ul li a {
  color: #111111;
  border-color: #111111;
}
#site-header.hero--background.header--fixed #site-header__brand img.brand--mega {
  display: block;
}
#site-header.hero--background.header--fixed #site-header__brand img.brand--desktop {
  display: none;
}
#site-header.hero--background.header--fixed #site-header__brand img.brand--mobile {
  display: none;
}
#site-header.hero--background #site-header__brand .brand--mobile {
  display: block;
}
#site-header.hero--background #site-header__brand .brand--desktop {
  display: none;
}
#site-header.hero--background .btn-navigation-mobile__icon {
  -webkit-filter: invert(1);
          filter: invert(1);
}
@media screen and (min-width: 576px) {
  #site-header.hero--background #site-header__brand .brand--desktop {
    display: block;
  }
  #site-header.hero--background #site-header__brand .brand--mobile {
    display: none;
  }
  #site-header.hero--background #site-header__navigation ul li a {
    color: #ffffff;
    border-color: #ffffff;
  }
  #site-header.hero--background .btn-navigation-mobile__icon {
    -webkit-filter: none;
            filter: none;
  }
}
#site-header.mega--active #site-header__brand img.brand, #site-header.mega--active #site-header__brand img.brand--desktop, #site-header.mega--active #site-header__brand img.brand--mobile {
  display: none;
}
#site-header.mega--active #site-header__brand img.brand--mega {
  display: block;
}
#site-header.mega--active #site-header__navigation ul li a {
  color: #111111;
  border-color: #111111;
}

#site-header .wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 1720px;
}

#site-header__brand {
  position: relative;
  display: inline-block;
  z-index: 3;
  margin: 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-align: left;
}
#site-header__brand img {
  width: auto;
  height: 100%;
  margin: 0;
}
#site-header__brand img.brand--mega {
  display: none;
}

/*	- NAVIGATION
		#site-header__navigation ___ ANFANG
	================================================================ */
#site-header__navigation {
  display: none;
}

#btn-navigation-mobile {
  display: block;
}

@media screen and (min-width: 1201px) {
  #btn-navigation-mobile {
    display: none;
  }
  #site-header__navigation {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: 0;
    right: 0;
    margin: 0;
    z-index: 3;
    text-align: right;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    min-width: 50%;
  }
}
/*	- NAVIGATION
			Level 1 */
#site-header__navigation ul {
  list-style: none;
  padding-right: var(--page-margin);
  width: 100%;
  text-align: left;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

#site-header__navigation ul li {
  display: inline-block;
  padding: 0;
  padding-left: var(--space-small);
  font-size: 1.188rem;
  line-height: 1.375rem;
}

#site-header__navigation ul li:first-child {
  padding-left: calc(var(--space-gap) / 2);
}

#site-header__navigation ul li:last-child {
  margin-left: auto;
}

#site-header__navigation ul li a {
  font-weight: 400;
  color: #111111;
  -webkit-transition: 0s;
  transition: 0s;
  cursor: pointer;
}

#site-header__navigation ul li a:hover {
  text-decoration-line: underline;
  text-decoration-style: solid;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
  text-decoration-thickness: 0.035em;
  text-underline-offset: auto;
  text-underline-position: from-font;
}

#site-header__navigation ul li:last-child a {
  margin-right: 0;
}

#site-header__navigation ul li.current_page_item > a {
  /*color: $base-color-primary !important;*/
}

#site-header__navigation ul li.menu-item-has-children {
  position: relative;
}

#site-header__navigation ul li ul.sub-menu {
  position: absolute;
  display: none;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  max-width: 40vw;
  max-height: calc(100vh - 70px);
  overflow-y: auto;
  top: calc(100% + 8px);
  left: -8px;
  background-color: #ffffff;
  padding: 16px 24px;
  border-radius: var(--radius-medium);
  overflow-y: auto;
  pointer-events: auto;
  -ms-touch-action: pan-y;
      touch-action: pan-y;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
#site-header__navigation ul li ul.sub-menu::-webkit-scrollbar {
  display: none;
}

#site-header__navigation ul li:first-child ul.sub-menu {
  left: -4px;
}

#site-header__navigation ul li.sub-menu-active ul.sub-menu {
  display: block;
}

#site-header__navigation ul li ul.sub-menu > li {
  display: block;
  padding: 0;
  margin-bottom: 16px;
}
#site-header__navigation ul li ul.sub-menu > li:last-child {
  margin-bottom: 0;
}

#site-header__navigation ul li ul.sub-menu > li > a {
  color: #000000 !important;
}

body.sub-menu-active #site:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: black;
  z-index: 2;
  opacity: 0.1;
}

/*	- NAVIGATION
/*	#site-header__navigation ___ ENDE
================================================================ */
/*	HEADER
/*	#site-header ___ ENDE
================================================================ */
/*	MAIN
/*	#site-main ___ ANFANG
================================================================ */
.entry-page .entry-header {
  margin-bottom: 24px;
}

.entry-page .entry-header h1 {
  margin: 0px 0px 24px 0px;
}

.entry-page .entry-content {
  text-align: left;
}

.entry-link {
  text-align: right;
}
.entry-link .button {
  display: inline-block;
  margin: 0;
}

.archive-title {
  font-size: 28px;
  font-size: 1.75rem;
  line-height: 34px;
  text-align: left;
  margin-bottom: 48px;
}

.archive-title span {
  color: #BF0D3E;
}

/*	- SIDEBAR
		#page-sidebar ___ ANFANG
	================================================================ */
#page-sidebar {
  margin-top: 48px;
}

@media screen and (min-width: 768px) {
  #page-sidebar {
    margin-top: 0px;
  }
}
/*	- SIDEBAR
			Widgets */
#page-sidebar .widget-title {
  font-size: 1rem;
  font-weight: 700;
  color: #BF0D3E;
  margin-bottom: 8px;
}

#page-sidebar .widget-title a {
  text-decoration: none;
  color: #BF0D3E;
}

#page-sidebar .widget ul {
  list-style: none;
}

#page-sidebar .widget ul li {
  margin-bottom: 8px;
}

#page-sidebar .widget ul li:last-child {
  margin-bottom: none;
}

#page-sidebar .widget ul li a {
  display: block;
  color: #111111;
  border-bottom: 1px solid #CCCCCC;
  padding-bottom: 8px;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 18px;
  text-decoration: none;
}

#page-sidebar .widget ul li a:hover {
  color: #BF0D3E;
}

/*	- SIDEBAR
			Navigation */
#sidebar-navigation {
  position: relative;
  z-index: 2;
}

#sidebar-navigation ul li {
  float: none;
  margin-bottom: 4.8px;
}

#sidebar-navigation ul li:last-child {
  margin-bottom: 0px;
}

#sidebar-navigation ul li a {
  display: block;
  font-size: 0.875rem;
  color: #111111;
}

#sidebar-navigation ul li a:hover {
  color: #BF0D3E;
}

.widget + .widget {
  margin-top: 24px;
}

/*	WIDGET
			Image */
.widget.widget-image {
  position: relative;
}

.widget.widget-image a {
  color: #ffffff;
  text-decoration: none;
}

/*	WIDGET
			Note */
.widget.widget-note {
  color: #ffffff;
  padding: 24px;
}

.widget-note .note-icon {
  font-size: 2.5rem;
  text-align: center;
}

.widget-note .note-title {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 26px;
  font-weight: 700;
  text-align: center;
  margin: 24px auto;
}

/*	- SIDEBAR
		#page-sidebar ___ ENDE
	================================================================ */
.topic-related {
  border-top: 4.8px solid #d1d1d1;
  border-bottom: 4.8px solid #d1d1d1;
  margin: 48px 0px 48px 0px;
  padding: 48px 0px;
}

/*	MAIN
/*	#site-main ___ ENDE
================================================================ */
#site-main {
  max-width: 1720px;
  margin: 0 auto;
}

.page-search h1 {
  text-align: left;
  margin-bottom: 24px;
  font-size: 1.75rem;
}

#site-main.page-search article.page,
#site-main.page-search article.post,
#site-main.page-search article.dates,
#site-main.page-search article.download,
#site-main.page-search article.products {
  margin-top: 48px;
  padding-bottom: 48px;
  padding-top: 0;
  border-bottom: 1px solid;
}

#site-main.page-search .entry-header,
#site-main.page-search .entry-summary {
  margin-bottom: 1rem;
}

.search-item {
  border-bottom: 4.8px solid #CCCCCC;
  padding: 24px 0px;
}

.search-item .search-title {
  font-size: 1.25rem;
  color: #111111;
}

.search-item .search-kind {
  font-style: italic;
  font-size: 0.875rem;
  color: #5e5e5e;
}

.search-item .button {
  margin-top: 0px;
}

/*	FOOTER
/*	#site-footer ___ ANFANG
================================================================ */
#site-footer {
  padding-top: var(--space-large);
  padding-bottom: var(--space-gap);
  position: relative;
}

#site-footer .wrapper {
  max-width: 1720px;
}

#site-footer #site-footer__background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #ffffff;
}

#site-footer .row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

#site-footer .row > [class*=col-] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
}

/*	- FOOTER
		Brand */
#site-footer__brand {
  padding: 48px 0;
}

#site-footer__brand .site-footer__brand-address p,
#site-footer__brand .site-footer__brand-address a {
  color: #ffffff;
  text-decoration: none;
}

#site-footer__brand .site-footer__brand-address a:hover {
  text-decoration: underline;
}

#site-footer__brand img {
  margin-bottom: 48px;
}

/*	- FOOTER
		Info */
#site-footer__info h1, #site-footer__info .h1 {
  margin: 0;
}
#site-footer__info .footer-mail a {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
#site-footer__info .footer-mail a:hover, #site-footer__info .footer-mail a:active {
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #BF0D3E;
}

/*	- FOOTER
Legal */
#site-footer__legal {
  padding: 0;
}
@media screen and (max-width: 576px) {
  #site-footer__legal {
    padding-top: var(--space-default);
  }
}
#site-footer__legal #site-footer__legal-navigation ul {
  list-style: none;
  float: right;
}
#site-footer__legal #site-footer__legal-navigation ul li {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-bottom: 0;
}
#site-footer__legal #site-footer__legal-navigation ul li:after {
  content: ",";
  display: inline-block;
  margin-bottom: 0;
  margin-right: 4px;
}
#site-footer__legal #site-footer__legal-navigation ul li:last-child:after {
  display: none;
}
#site-footer__legal #site-footer__legal-navigation ul li a {
  color: #111111;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
#site-footer__legal #site-footer__legal-navigation ul li a:hover, #site-footer__legal #site-footer__legal-navigation ul li a:active {
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #BF0D3E;
}

/*	- FOOTER
		-- Legal - Copyright */
#site-footer__legal .site-footer__legal-copyright {
  margin-top: 14px;
}

#site-footer__legal .site-footer__legal-copyright span {
  color: #ffffff;
}

@media screen and (max-width: 991px) {
  #site-footer__legal .site-footer__legal-copyright {
    margin-bottom: 48px;
  }
}
/*	FOOTER
/*	#site-footer ___ ENDE
================================================================ */
.megamenu {
  position: fixed;
  top: 0px;
  left: 0px;
  right: 0px;
  width: 100%;
  z-index: 5;
  display: none;
  overflow: auto;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  border-bottom: 1px solid #CCCCCC;
  background-color: #ffffff;
}
.megamenu .megamenu__body {
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  position: relative;
  z-index: 1;
  color: #111111;
  margin-top: 60px;
  border-top: 1px solid #CCCCCC;
}
.megamenu .megamenu__body .megamenu__nav-wrapper {
  max-width: 1720px;
}
.megamenu .megamenu__body .megamenu__nav-wrapper .nav-tabs {
  display: block;
  height: 100%;
  padding-top: var(--space-gap);
  padding-bottom: var(--space-large);
  padding-left: 0;
  border-right: 1px solid #CCCCCC;
}
.megamenu .megamenu__body .megamenu__nav-wrapper .nav-tabs li {
  display: block;
  width: 100%;
  padding: var(--space-small) var(--space-small) var(--space-small) 0;
  border-bottom: 1px solid #CCCCCC;
}
.megamenu .megamenu__body .megamenu__nav-wrapper .nav-tabs li a {
  display: block;
  width: 100%;
  text-decoration: none;
}
.megamenu .megamenu__body .megamenu__nav-wrapper .nav-tabs li a .headline__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.megamenu .megamenu__body .megamenu__nav-wrapper .nav-tabs li a .headline__wrapper h4, .megamenu .megamenu__body .megamenu__nav-wrapper .nav-tabs li a .headline__wrapper .h4 {
  width: 100%;
  color: #757575;
  margin: 0;
}
.megamenu .megamenu__body .megamenu__nav-wrapper .nav-tabs li a .headline__wrapper:after {
  content: "";
  background-image: url("../images/arrow-circle-right-gray.svg");
  background-size: 1.25em;
  background-repeat: no-repeat;
  background-position: center left;
  display: inline-block;
  width: 1.25em;
  height: 1.25em;
  margin-left: 4px;
}
.megamenu .megamenu__body .megamenu__nav-wrapper .nav-tabs li a:hover .headline__wrapper h4, .megamenu .megamenu__body .megamenu__nav-wrapper .nav-tabs li a:hover .headline__wrapper .h4, .megamenu .megamenu__body .megamenu__nav-wrapper .nav-tabs li a.active .headline__wrapper h4, .megamenu .megamenu__body .megamenu__nav-wrapper .nav-tabs li a.active .headline__wrapper .h4 {
  color: #BF0D3E;
}
.megamenu .megamenu__body .megamenu__nav-wrapper .nav-tabs li a:hover .headline__wrapper:after, .megamenu .megamenu__body .megamenu__nav-wrapper .nav-tabs li a.active .headline__wrapper:after {
  background-image: url("../images/arrow-circle-right-red.svg");
}
.megamenu .megamenu__body .megamenu__nav-wrapper .tab-content {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  padding-top: var(--space-gap);
  padding-bottom: var(--space-large);
}
.megamenu .megamenu__body .megamenu__nav-wrapper .tab-content > .tab-pane {
  -ms-grid-row: 1;
      grid-row-start: 1;
  -ms-grid-column: 1;
      grid-column-start: 1;
  display: block;
  opacity: 0;
  z-index: 1;
}
.megamenu .megamenu__body .megamenu__nav-wrapper .tab-content > .active {
  opacity: 1;
  z-index: 2;
}
.megamenu .megamenu__body .megamenu__nav-wrapper .tab-content nav {
  list-style: inside;
}
.megamenu .megamenu__body .megamenu__nav-wrapper .tab-content nav ul li {
  position: relative;
  padding-top: var(--space-small);
  display: block;
  width: 100%;
  padding-left: 0;
  list-style: none;
}
.megamenu .megamenu__body .megamenu__nav-wrapper .tab-content nav ul li:before {
  display: none;
}
.megamenu .megamenu__body .megamenu__nav-wrapper .tab-content nav ul li a {
  text-decoration: none;
  color: #111111;
  margin: 0;
  padding: 0;
}
.megamenu .megamenu__body .megamenu__nav-wrapper .tab-content nav ul li a:hover, .megamenu .megamenu__body .megamenu__nav-wrapper .tab-content nav ul li a.active {
  color: #BF0D3E;
}

.post-edit-link {
  display: block;
  width: 100%;
  padding: 8px;
  margin: 0 auto;
  background-color: #757575;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  font-size: 0.875rem;
}

.post-edit-link:hover {
  background-color: #686868;
}