@charset "UTF-8";
/* red-hat-display-300 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Red Hat Display";
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/red-hat-display-v14-latin-300.woff2") format("woff2"), url("../fonts/red-hat-display-v14-latin-300.woff") format("woff");
  /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* red-hat-display-300italic - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Red Hat Display";
  font-style: italic;
  font-weight: 300;
  src: url("../fonts/red-hat-display-v14-latin-300italic.woff2") format("woff2"), url("../fonts/red-hat-display-v14-latin-300italic.woff") format("woff");
  /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* red-hat-display-600 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Red Hat Display";
  font-style: normal;
  font-weight: 600;
  src: url("../fonts/red-hat-display-v14-latin-600.woff2") format("woff2"), url("../fonts/red-hat-display-v14-latin-600.woff") format("woff");
  /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* red-hat-display-600italic - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Red Hat Display";
  font-style: italic;
  font-weight: 600;
  src: url("../fonts/red-hat-display-v14-latin-600italic.woff2") format("woff2"), url("../fonts/red-hat-display-v14-latin-600italic.woff") format("woff");
  /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* red-hat-display-800 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Red Hat Display";
  font-style: normal;
  font-weight: 800;
  src: url("../fonts/red-hat-display-v14-latin-800.woff2") format("woff2"), url("../fonts/red-hat-display-v14-latin-800.woff") format("woff");
  /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* red-hat-display-800italic - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Red Hat Display";
  font-style: italic;
  font-weight: 800;
  src: url("../fonts/red-hat-display-v14-latin-800italic.woff2") format("woff2"), url("../fonts/red-hat-display-v14-latin-800italic.woff") format("woff");
  /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* red-hat-text-regular - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Red Hat Text";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/red-hat-text-v13-latin-regular.woff2") format("woff2"), url("../fonts/red-hat-text-v13-latin-regular.woff") format("woff");
  /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* red-hat-text-italic - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Red Hat Text";
  font-style: italic;
  font-weight: 400;
  src: url("../fonts/red-hat-text-v13-latin-italic.woff2") format("woff2"), url("../fonts/red-hat-text-v13-latin-italic.woff") format("woff");
  /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* red-hat-text-700 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Red Hat Text";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/red-hat-text-v13-latin-700.woff2") format("woff2"), url("../fonts/red-hat-text-v13-latin-700.woff") format("woff");
  /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* red-hat-text-700italic - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Red Hat Text";
  font-style: italic;
  font-weight: 700;
  src: url("../fonts/red-hat-text-v13-latin-700italic.woff2") format("woff2"), url("../fonts/red-hat-text-v13-latin-700italic.woff") format("woff");
  /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
/* !BROWSER RESET ------------------------------------------------------------------------------------------------------ */
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: top;
  text-decoration: none;
}

@media screen and (max-width: 767px) {
  html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
    overflow-wrap: break-word;
    word-wrap: break-word;
    hyphens: auto;
  }
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
section,
audio,
canvas,
video,
form {
  display: block;
  position: relative;
}

html {
  -webkit-text-size-adjust: none;
  -webkit-overflow-scrolling: touch;
}

a {
  text-decoration: none;
  color: inherit;
}

a:hover {
  cursor: pointer;
}

ol,
ul {
  list-style: none;
}

sup {
  vertical-align: super;
  font-size: small;
}

sub {
  vertical-align: sub;
  font-size: small;
}

blockquote::before,
blockquote::after {
  content: "";
  content: none;
}

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

@media (hover: hover) {
  :focus {
    outline: none;
  }

  :focus-visible {
    outline: 3px solid black;
    box-shadow: 0 0 0 6px white;
  }
}
table {
  width: 100%;
}

img {
  image-rendering: -webkit-optimize-contrast;
}

hr {
  border-top: 1px solid #e0e0e0;
  border-bottom: none;
  border-left: none;
  border-right: none;
}

button {
  font-size: 1em;
}

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

html,
body {
  min-height: 100%;
  min-height: 100dvh;
}

/* !GRID KLASSEN ------------------------------------------------------------------------------------------------------ */
.wrapper {
  width: 92%;
  margin: 0 auto;
  max-width: 1800px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: center;
}

.wrapper__large {
  width: 96%;
  margin: 0 auto;
  max-width: 2400px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: center;
}

.wrapper__slider {
  width: 92%;
  max-width: 1680px;
  margin: 0 0 0 auto;
  overflow: hidden;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: center;
}

#partner__content .wrapper {
  margin: 0;
  width: 100%;
}

.col__padding0-5 {
  padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)/ 2);
}
@media screen and (max-width: 1280px) {
  .col__padding0-5 {
    padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)/ 2);
  }
}

.col__padding1 {
  padding: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}

.col__padding01 {
  padding: 0 clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}

.col__padding1-5 {
  padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)/ 2 + $text__base-size);
}

.col__padding2 {
  padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) + clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem));
}

.full__height {
  height: 100vh;
}

.margin__left1 {
  margin-left: 1rem;
}

.margin__right1 {
  margin-right: 1rem;
}

.margin__list {
  margin: 0 1em 0.2em 0;
}

.border__bottom {
  border-bottom: 1px solid #d9d9d9;
}

.border__bottom:last-child {
  border-bottom: none;
}

.flex {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
}
.flex__dir-col {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
.flex__justify-start {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}
.flex__justify-end {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}
.flex__justify-center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.flex__flow-col {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-flow: column wrap;
  flex-flow: column wrap;
}
.flex__flow-row {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
}
.flex__reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
.flex__flow {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row;
  flex-flow: row;
}
.flex__align-stretch {
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}
.flex__align-content-stretch {
  -ms-flex-line-pack: stretch;
  align-content: stretch;
}
.flex__align-center {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.flex__align-self-start {
  -ms-flex-item-align: flex-start;
  -ms-grid-row-align: flex-start;
  align-self: flex-start;
}
.flex__align-self-center {
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center;
}
.flex__align-self-end {
  -ms-flex-item-align: flex-end;
  -ms-grid-row-align: flex-end;
  align-self: flex-end;
}
.flex__align-end {
  -webkit-box-align: flex-end;
  -ms-flex-align: flex-end;
  align-items: flex-end;
}
.flex__align-start {
  -webkit-box-align: flex-start;
  -ms-flex-align: flex-start;
  align-items: flex-start;
}
.flex__margin-left-auto {
  margin-left: auto !important;
}
.flex__margin-right-auto {
  margin-right: auto !important;
}
.flex__margin-top-auto {
  margin-top: auto !important;
}
.flex__margin-bottom-auto {
  margin-bottom: auto !important;
}

.col__1 {
  width: 8.33%;
  max-width: 8.33%;
}
.col__2 {
  width: 16.66%;
  max-width: 16.66%;
}
.col__3 {
  width: 25%;
  max-width: 25%;
}
.col__4 {
  width: 33.33%;
  max-width: 33.33%;
}
.col__5 {
  width: 41.66%;
  max-width: 41.66%;
}
.col__6 {
  width: 50%;
  max-width: 50%;
}
.col__7 {
  width: 58.33%;
  max-width: 58.33%;
}
.col__8 {
  width: 66.66%;
  max-width: 66.66%;
}
.col__9 {
  width: 75%;
  max-width: 75%;
}
.col__10 {
  width: 83.33%;
  max-width: 83.33%;
}
.col__11 {
  width: 91.66%;
  max-width: 91.66%;
}
.col__12 {
  width: 100%;
  max-width: 100%;
}
.col__offset-1 {
  margin-left: 8.33%;
}
.col__offset-2 {
  margin-left: 16.66%;
}
.col__offset-3 {
  margin-left: 25%;
}
.col__offset-4 {
  margin-left: 33.33%;
}
.col__offset-5 {
  margin-left: 41.66%;
}
.col__offset-6 {
  margin-left: 50%;
}
.col__offset-7 {
  margin-left: 58.33%;
}
.col__offset-8 {
  margin-left: 66.66%;
}
.col__offset-9 {
  margin-left: 75%;
}
.col__offset-10 {
  margin-left: 83.33%;
}
.col__offset-11 {
  margin-left: 91.66%;
}
.col__offset-12 {
  margin-left: 100%;
}

.full {
  width: 100%;
}

.margin__bottom-1 {
  padding-bottom: calc(1 * clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) * 0.75);
}
.margin__bottom-2 {
  padding-bottom: calc(2 * clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) * 0.75);
}
.margin__bottom-3 {
  padding-bottom: calc(3 * clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) * 0.75);
}
.margin__bottom-4 {
  padding-bottom: calc(4 * clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) * 0.75);
}
.margin__bottom-5 {
  padding-bottom: calc(5 * clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) * 0.75);
}
.margin__bottom-6 {
  padding-bottom: calc(6 * clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) * 0.75);
}
.margin__bottom-7 {
  padding-bottom: calc(7 * clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) * 0.75);
}
.margin__bottom-8 {
  padding-bottom: calc(8 * clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) * 0.75);
}
.margin__bottom-9 {
  padding-bottom: calc(9 * clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) * 0.75);
}
.margin__bottom-10 {
  padding-bottom: calc(10 * clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) * 0.75);
}
.margin__top-1 {
  padding-top: calc(1 * clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) * 0.75);
}
.margin__top-2 {
  padding-top: calc(2 * clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) * 0.75);
}
.margin__top-3 {
  padding-top: calc(3 * clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) * 0.75);
}
.margin__top-4 {
  padding-top: calc(4 * clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) * 0.75);
}
.margin__top-5 {
  padding-top: calc(5 * clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) * 0.75);
}
.margin__top-6 {
  padding-top: calc(6 * clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) * 0.75);
}
.margin__top-7 {
  padding-top: calc(7 * clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) * 0.75);
}
.margin__top-8 {
  padding-top: calc(8 * clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) * 0.75);
}
.margin__top-9 {
  padding-top: calc(9 * clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) * 0.75);
}
.margin__top-10 {
  padding-top: calc(10 * clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) * 0.75);
}
.margin__nomargin {
  padding: 0;
}
.margin__nomargin-top {
  padding-top: 0;
}
.margin__nomargin-bottom {
  padding-bottom: 0;
}

/* !GRADIENTS & FARB KLASSEN ------------------------------------------------------------------------------------------------------ */
.color__text, .color__text * {
  color: #171717;
}
.color__text-35, .color__text-35 * {
  color: #595959;
}
.color__text-65, .color__text-65 * {
  color: #a6a6a6;
}
.color__text-85, .color__text-85 * {
  color: #d9d9d9;
}
.color__primary, .color__primary * {
  color: #164192;
}
.color__white, .color__white * {
  color: white;
}
.color__white svg * {
  fill: white;
}

.bg__bg-a80 {
  background-color: rgba(245, 245, 245, 0.8);
}
.bg__bg-93 {
  background-color: #ebebeb;
}
.bg__bg-90 {
  background-color: #e0e0e0;
}
.bg__primary {
  background-color: #164192;
}
.bg__white {
  background-color: white;
}
.bg__black {
  background-color: #171717;
}
.bg__white-80 {
  background-color: rgba(255, 255, 255, 0.8);
}
.bg__arrow-left {
  position: relative;
}
.bg__arrow-right {
  position: relative;
}

section.bg__arrow-left::before {
  content: url("../img/bg_arrow_left.svg");
  width: 100%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: -1;
}

section.bg__arrow-right::before {
  content: url("../img/bg_arrow_right.svg");
  width: 100%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: -1;
}

.fill__primary {
  fill: #164192;
}
.fill__white, .fill__white * {
  fill: white;
}
.fill__black {
  fill: #171717;
}

.gradient__blue-img-overlay {
  background: rgba(22, 65, 146, 0.5);
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(22, 22, 22, 0)), to(#161616));
  background: -o-linear-gradient(top, rgba(22, 22, 22, 0) 0%, #161616 100%);
  background: linear-gradient(180deg, rgba(22, 22, 22, 0) 0%, #161616 100%);
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: "Red Hat Text", Helvetica, Arial, sans-serif;
  font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  color: #171717;
  line-height: 1.6;
  background: whitesmoke;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
}
@media screen and (max-width: 1280px) {
  body {
    font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
    line-height: 1.6;
  }
}
@media screen and (max-width: 1024px) {
  body {
    font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
    line-height: 1.6;
  }
}

img[src$=".svg"] {
  width: 100%;
}

.phone__show {
  display: none;
}

.jobdetail_ansehen {
  -webkit-opacity: 0;
  -moz-opacity: 0;
  opacity: 0;
}

.show__hover {
  -webkit-transform: translateX(calc($text__base-size * -1));
  -ms-transform: translateX(calc($text__base-size * -1));
  transform: translateX(calc($text__base-size * -1));
  -webkit-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.job__list-item {
  -webkit-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  border-bottom: 1px solid #e0e0e0;
}
.job__list-item a {
  texttext-decoration: none;
}
.job__list-item .jobdetail_titel {
  margin: 0;
}
.job__list-item:hover {
  background: rgba(23, 23, 23, 0.025);
}
.job__list-item:hover .jobdetail_titel {
  color: #164192;
}

.job__list-item:hover .show__hover {
  fill: #164192;
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);
  -webkit-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
}
.job__list-item:hover .jobdetail_ansehen {
  -webkit-opacity: 1;
  -moz-opacity: 1;
  opacity: 1;
}

.job__grid-item .jobdetail_ansehen {
  -webkit-opacity: 1;
  -moz-opacity: 1;
  opacity: 1;
}
.job__grid-item .show__hover {
  -webkit-opacity: 0;
  -moz-opacity: 0;
  opacity: 0;
}
.job__grid-item:hover .show__hover {
  fill: #164192;
  -webkit-opacity: 1;
  -moz-opacity: 1;
  opacity: 1;
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);
}
.job__grid-item:hover .jobdetail_ansehen {
  -webkit-opacity: 1;
  -moz-opacity: 1;
  opacity: 1;
}

/* !ANIMATIONEN ------------------------------------------------------------------------------------------------------ */
a,
a img,
.gig__logo,
.gig__logo *,
.image__box,
.card__box,
.card__box *,
.card__box figcaption p,
.sub-menu,
.row *,
.show_image-content,
.show_image-content *,
.post__item,
.card__item-hover,
.overlay__container,
.faq__frage::before,
.hex-grid__item,
.ui-accordion-header h2,
.hex-grid__item *,
.slick-prev,
.slick-next,
.ui-accordion-header,
.filter-display-container,
#nav__primary li,
#nav__primary li .sub-menu,
#nav__primary li a {
  -webkit-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

a:hover,
a:hover img,
.gig__logo:hover,
.gig__logo:hover *,
.image__box:hover,
.card__box:hover,
.card__box:hover *,
.card__box:hover figcaption p,
.sub-menu:hover,
.row:hover *,
.show_image-content:hover,
.show_image-content:hover *,
.post__item:hover,
.card__item-hover:hover,
.overlay__container:hover,
.ui-accordion-header h2:hover,
.hex-grid__item *:hover,
.slick-prev:hover,
.slick-next:hover,
.ui-accordion-header:hover,
.filter-display-container:hover,
#nav__primary li:hover,
#nav__primary li:hover .sub-menu,
#nav__primary li a:hover {
  -webkit-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.do-animation {
  -webkit-opacity: 0;
  -moz-opacity: 0;
  opacity: 0;
}

.do-animation.animated {
  -webkit-opacity: 1;
  -moz-opacity: 1;
  opacity: 1;
}

/* !EFFEKT KLASSEN ------------------------------------------------------------------------------------------------------ */
.pos__rel {
  position: relative;
}

.pos__abs {
  position: absolute;
}

.fixed {
  position: fixed !important;
}

.hidden {
  display: none !important;
}

.no__scroll {
  overflow: hidden !important;
}

.visualhidden {
  -webkit-opacity: 0;
  -moz-opacity: 0;
  opacity: 0;
}

.visualhidden * {
  pointer-events: none;
  cursor: default;
}

.jw_csspositionsticky.jw_notouchevent .position_sticky,
.jw_csspositionsticky.jw_notouchevent .sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 100px;
}

.rotate {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
  -webkit-transition: 0.5s ease-in-out;
  -moz-transition: 0.5s ease-in-out;
  -o-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}

.fancybox-lock {
  overflow: hidden !important;
  width: auto;
}

/* !TYPOGRAPHY ------------------------------------------------------------------------------------------------------ */
.formatting h1, .formatting h2, .formatting h3, .formatting h4, .formatting h5, .formatting h6, .formatting form legend {
  margin-bottom: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.75);
  line-height: 1.2;
}
.formatting h1 *, .formatting h2 *, .formatting h3 *, .formatting h4 *, .formatting h5 *, .formatting h6 * {
  vertical-align: baseline;
}
.formatting h2, .formatting h3, .formatting h4, .formatting h5, .formatting h6 {
  margin-top: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  font-family: "Red Hat Display";
}
.formatting h2:first-child, .formatting h3:first-child, .formatting h4:first-child, .formatting h5:first-child, .formatting h6:first-child {
  margin-top: 0;
}
.formatting h1:only-child,
.formatting h2:only-child, .formatting h3:only-child, .formatting h4:only-child, .formatting h5:only-child, .formatting h6:only-child {
  margin-bottom: 0;
}
.formatting h1 {
  font-weight: 100;
  font-family: "Red Hat Display";
}
.formatting h2 {
  font-weight: 300;
}
.formatting .text__xxxl {
  font-size: clamp(2.5rem, calc(1.625rem + 4.375vw), 6.875rem);
  line-height: 1.2;
}
@media screen and (max-width: 1366px) {
  .formatting .text__xxxl {
    font-size: clamp(2.5rem, calc(1.625rem + 4.375vw), 6.875rem);
  }
}
@media screen and (max-width: 767px) {
  .formatting .text__xxxl {
    font-size: clamp(2rem, calc(1.4375rem + 2.8125vw), 4.8125rem);
  }
}
.formatting h1, .formatting .text__xxl {
  font-size: clamp(2rem, calc(1.4375rem + 2.8125vw), 4.8125rem);
  line-height: 1.2;
}
@media screen and (max-width: 1366px) {
  .formatting h1, .formatting .text__xxl {
    font-size: clamp(2rem, calc(1.4375rem + 2.8125vw), 4.8125rem);
  }
}
@media screen and (max-width: 767px) {
  .formatting h1, .formatting .text__xxl {
    font-size: clamp(1.5rem, calc(1.1375rem + 1.8125vw), 3.3125rem);
  }
}
.formatting h2, .formatting .text__xl {
  font-size: clamp(1.5rem, calc(1.1375rem + 1.8125vw), 3.3125rem);
  line-height: 1.2;
}
@media screen and (max-width: 1366px) {
  .formatting h2, .formatting .text__xl {
    font-size: clamp(1.5rem, calc(1.1375rem + 1.8125vw), 3.3125rem);
  }
}
@media screen and (max-width: 767px) {
  .formatting h2, .formatting .text__xl {
    font-size: clamp(1.125rem, calc(1.025rem + 0.5vw), 1.625rem);
  }
}
.formatting h3, .formatting .text__lg {
  font-size: clamp(1.125rem, calc(1.025rem + 0.5vw), 1.625rem);
  line-height: 1.2;
}
@media screen and (max-width: 1366px) {
  .formatting h3, .formatting .text__lg {
    font-size: clamp(1.125rem, calc(1.025rem + 0.5vw), 1.625rem);
  }
}
@media screen and (max-width: 767px) {
  .formatting h3, .formatting .text__lg {
    font-size: clamp(1rem, calc(0.975rem + 0.125vw), 1.25rem);
  }
}
.formatting h4, .formatting .text__md {
  font-size: clamp(1rem, calc(0.975rem + 0.125vw), 1.25rem);
}
@media screen and (max-width: 1366px) {
  .formatting h4, .formatting .text__md {
    font-size: clamp(1rem, calc(0.975rem + 0.125vw), 1.25rem);
  }
}
@media screen and (max-width: 767px) {
  .formatting h4, .formatting .text__md {
    font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  }
}
.formatting .text__sm, .formatting small {
  font-size: clamp(0.75rem, calc(0.7125rem + 0.1875vw), 0.9375rem);
}
@media screen and (max-width: 1366px) {
  .formatting .text__sm, .formatting small {
    font-size: clamp(0.75rem, calc(0.7125rem + 0.1875vw), 0.9375rem);
  }
}
.formatting .text__xs {
  font-size: clamp(0.625rem, calc(0.5875rem + 0.1875vw), 0.8125rem);
}
@media screen and (max-width: 1366px) {
  .formatting .text__xs {
    font-size: clamp(0.625rem, calc(0.5875rem + 0.1875vw), 0.8125rem);
  }
}
.formatting .text__std {
  font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
@media screen and (max-width: 1366px) {
  .formatting .text__std {
    font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  }
}
.formatting .font__primary {
  font-family: "Red Hat Text";
}
.formatting .font__secondary {
  font-family: "Red Hat Display";
}
.formatting p {
  line-height: 1.6;
  margin-bottom: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
@media screen and (max-width: 767px) {
  .formatting p {
    line-height: 1.6;
  }
}
.formatting .no__margin,
.formatting p:last-child, .formatting p:last-of-type {
  margin-bottom: 0;
}
.formatting a {
  display: inline-block;
  text-decoration: underline;
}
.formatting a:hover {
  text-decoration: none;
}
.formatting a.underline_hover {
  text-decoration: none;
}
.formatting a.underline_hover:hover {
  text-decoration: underline;
}
@media screen and (max-width: 767px) {
  .formatting a {
    overflow-wrap: break-word;
    word-wrap: break-word;
    -ms-word-break: break-all;
    word-break: break-all;
    word-break: break-word;
    -ms-hyphens: auto;
    -moz-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;
  }
}
.formatting a.logo {
  display: block;
  width: clamp(100px, 10%, 140px);
  height: auto;
  background: none;
}
.formatting a.logo:hover {
  cursor: pointer;
}
.formatting a.logo svg {
  fill: #164192;
}
.formatting a.logo svg:hover {
  fill: #171717;
  cursor: pointer;
}
.formatting .arrow_big::before {
  content: url("../img/icon__arrow-link-big.svg");
  margin-right: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.875);
  display: block;
}
.formatting .arrow_big-primary::before {
  content: url("../img/icon__arrow-link-big-primary.svg");
  margin-right: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.875);
  display: block;
}
.formatting .link_box_content-box-hover:hover .arrow_big-primary::before {
  content: url("../img/icon__arrow-link-big-white.svg");
  margin-right: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.875);
  display: block;
}
.formatting .arrow_check::before {
  content: url("../img/icon__check.svg");
  margin-right: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.875);
  display: block;
}
.formatting .arrow_check-primary::before {
  content: url("../img/icon__check-primary.svg");
  margin-right: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.875);
  display: block;
}
.formatting .arrow::before {
  content: url("../img/icon__arrow-link.svg");
  margin-right: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)/ 2);
  display: inline-block;
}
.formatting .close::before {
  content: url("../img/icon__x.svg");
  margin-right: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)/ 2);
  display: inline-block;
  height: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
.formatting .color__white .arrow::before {
  content: url("../img/icon__arrow-link_white.svg");
  margin-right: 0.5rem;
}
.formatting .bold, .formatting strong, .formatting b {
  font-variation-settings: "wght" 650;
  font-weight: 650;
}
.formatting .italic, .formatting em {
  font-variation-settings: "slnt" 1;
  font-style: italic;
}
.formatting .no__underline {
  text-decoration: none;
}
.formatting .no__underline:hover {
  text-decoration: underline;
}
.formatting .spacing {
  letter-spacing: 1px;
}
.formatting .text__align-center {
  text-align: center;
}
.formatting .text__align-right {
  text-align: right;
}
.formatting .text__uppercase {
  text-transform: uppercase;
  letter-spacing: 1px;
}
.formatting ul {
  list-style: disc outside;
  margin-left: 1.2em;
  margin-bottom: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
.formatting ol {
  list-style: decimal outside;
  margin-left: 1.2em;
  margin-bottom: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
.formatting ul.linklist, .formatting .nav ul, .formatting ul.menu, .formatting ul.sub-menu {
  list-style: none;
  margin-left: 0;
}
.formatting ul.linklist {
  margin-bottom: 0;
}
.formatting .no__margin {
  margin: 0px !important;
}
.formatting #HDatenschutzerklE4rung,
.formatting #HIMPRESSUM {
  display: none;
}
.formatting table {
  width: 100%;
  margin: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 2) 0;
}
.formatting table th {
  padding: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5);
  color: #164192;
  text-align: left;
}
@media screen and (max-width: 1024px) {
  .formatting table th {
    width: 50%;
    padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5);
  }
}
@media screen and (max-width: 480px) {
  .formatting table th {
    width: 100%;
    padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.25) calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5);
  }
}
.formatting table td {
  padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5);
}
@media screen and (max-width: 1024px) {
  .formatting table td {
    width: 50%;
  }
}
@media screen and (max-width: 480px) {
  .formatting table td {
    width: 100%;
    padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.25) calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5);
  }
}
@media screen and (max-width: 1024px) {
  .formatting table tr {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
  }
}
.formatting table tr:nth-child(2n+3) {
  background: #e0e0e0;
}

.button {
  display: inline-block;
  border: 1px solid;
  background: transparent;
  color: inherit;
  padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5) calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 1.5);
  line-height: 1.6;
  cursor: pointer;
  text-decoration: none !important;
  -webkit-border-radius: 2rem !important;
  -moz-border-radius: 2rem !important;
  border-radius: 2rem !important;
  font-size: 0.875em;
}
@media screen and (max-width: 1024px) {
  .button {
    margin: 0 calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5) calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5) 0;
  }
}
.button:hover {
  color: #a6a6a6;
  border-color: #a6a6a6;
  text-decoration: none !important;
}
.button.button__small {
  padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.375) clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
.button.border__none {
  border: none;
}
.button.blue {
  background: #164192;
  color: #ebebeb;
  border-color: #164192;
}
.button.blue:hover {
  background: transparent;
  color: #164192;
}
.button.blue-outline {
  color: #164192;
  background: transparent;
  border-color: #164192;
}
.button.blue-outline:hover {
  background: #164192;
  color: #ebebeb;
}

.bg__primary .button.blue {
  background: #ebebeb;
  color: #164192;
  border-color: #ebebeb;
}
.bg__primary .button.blue:hover {
  background: #164192;
  color: #ebebeb;
}
.bg__primary .button.blue-outline {
  color: #ebebeb;
  background: transparent;
  border-color: #ebebeb;
}
.bg__primary .button.blue-outline:hover {
  background: #ebebeb;
  color: #164192;
}

/* !SVGs ------------------------------------------------------------------------------------------------------ */
svg {
  shape-rendering: geometricPrecision;
}

#logo {
  line-height: 1;
  z-index: 10000;
}

.gig__logo {
  width: calc(clamp(5rem, 4.34vw + 4.167rem, 9.375rem));
  height: auto;
}

#logo:hover .gig__logo.fill__primary * {
  fill: #d9d9d9;
}

#logo__footer:hover .gig__logo.fill__primary * {
  fill: #d9d9d9;
}

.no__bgcolor {
  background: transparent !important;
}

.box__shadow {
  -webkit-box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  -webkit-transform: translateY(-0.2em);
  -moz-transform: translateY(-0.2em);
  -ms-transform: translateY(-0.2em);
  transform: translateY(-0.2em);
}

/* !NAVIGATION ------------------------------------------------------------------------------------------------------ */
#nav-icon-box {
  display: none;
}
@media screen and (max-width: 1023px) {
  #nav-icon-box {
    display: block;
    margin-left: auto;
  }
}

#nav-icon {
  width: 36px;
  height: 24px;
  position: relative;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: 0.5s ease-in-out;
  -moz-transition: 0.5s ease-in-out;
  -o-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  cursor: pointer;
}

#nav-icon span {
  display: block;
  position: absolute;
  height: 2px;
  width: 100%;
  background: #171717;
  opacity: 1;
  left: 0;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

#nav-icon:hover span {
  background: #164192;
}

#nav-icon.open span {
  background: #164192;
}

#nav-icon span:nth-child(1) {
  top: 0px;
}

#nav-icon span:nth-child(2) {
  top: 8px;
}

#nav-icon span:nth-child(3) {
  top: 16px;
  width: 80%;
}

#nav-icon.open span:nth-child(1) {
  -webkit-opacity: 1;
  -moz-opacity: 1;
  opacity: 1;
  top: 12px;
  -webkit-transform: rotate(135deg);
  -moz-transform: rotate(135deg);
  -o-transform: rotate(135deg);
  transform: rotate(135deg);
}

#nav-icon.open span:nth-child(2) {
  -webkit-opacity: 0;
  -moz-opacity: 0;
  opacity: 0;
  left: -60px;
}

#nav-icon.open span:nth-child(3) {
  width: 100%;
  top: 12px;
  -webkit-transform: rotate(-135deg);
  -moz-transform: rotate(-135deg);
  -o-transform: rotate(-135deg);
  transform: rotate(-135deg);
}

#breadcrumb_list {
  list-style: none;
  margin: 0;
  color: #a6a6a6;
}

#breadcrumb_list * {
  line-height: 1rem;
}

#breadcrumb_list .separator {
  margin: 0 0.5rem;
}

#breadcrumb_list li {
  display: inline-block;
}

.nav {
  display: inline-block;
}

#nav_primary {
  text-align: right;
  z-index: 0;
}
@media screen and (max-width: 1023px) {
  #nav_primary {
    position: absolute;
    padding: 0;
    text-align: left;
    width: 100vw;
    max-width: 100vw;
    top: -200vh;
    left: 0;
    opacity: 1;
  }
}
#nav_primary .wrapper {
  width: auto;
}
#nav_primary .menu {
  width: 100%;
}
@media screen and (min-width: 1024px) {
  #nav_primary .menu {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
  }
}
#nav_primary li {
  position: relative;
}
#nav_primary li a {
  cursor: pointer;
  font-family: "Red Hat Display";
  color: inherit;
  line-height: 1.6;
  padding: 1rem 1.5rem 1rem;
  font-size: clamp(1rem, calc(0.975rem + 0.125vw), 1.25rem);
  font-weight: 600;
  -webkit-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  display: block;
}
@media screen and (max-width: 1600px) {
  #nav_primary li a {
    padding: 0.35rem 1.25rem;
  }
}
@media screen and (max-width: 1440px) {
  #nav_primary li a {
    padding: 0.25rem 1.25rem;
  }
}
@media screen and (max-width: 1280px) {
  #nav_primary li a {
    padding: 0.25rem 1rem;
  }
}
@media screen and (max-width: 1023px) {
  #nav_primary li a {
    font-size: clamp(1rem, calc(0.975rem + 0.125vw), 1.25rem);
    padding: 0.5rem 0.75rem;
    padding-left: 1rem;
  }
}
#nav_primary li:hover a {
  color: #164192;
  -webkit-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
}
#nav_primary li .sub-menu {
  background: whitesmoke;
  display: none;
  position: absolute;
  left: 0;
  min-width: 230px;
  -webkit-box-shadow: 0px 50px 50px 0px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0px 50px 50px 0px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 50px 50px 0px rgba(0, 0, 0, 0.1);
  -webkit-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
}
@media screen and (max-width: 1280px) {
  #nav_primary li .sub-menu {
    min-width: 200px;
  }
}
#nav_primary li .sub-menu li a {
  overflow-wrap: break-word;
  word-wrap: break-word;
  -ms-word-break: break-all;
  word-break: break-all;
  word-break: break-word;
  -ms-hyphens: auto;
  -moz-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
  font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
@media screen and (max-width: 1023px) {
  #nav_primary li .sub-menu li a {
    font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  }
}
@media screen and (min-width: 1024px) {
  #nav_primary li:hover .sub-menu, #nav_primary li:focus-within .sub-menu {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
  }
}
#nav_primary li:hover .sub-menu li, #nav_primary li:focus-within .sub-menu li {
  width: 100%;
  display: block;
  text-align: left;
  font-weight: 500;
  margin: 0;
}
#nav_primary li:hover .sub-menu li a, #nav_primary li:focus-within .sub-menu li a {
  color: #171717;
  padding: 0.5rem 1.5rem 0.5rem;
  font-weight: normal;
  font-family: "Red Hat Text";
  border: none;
}
@media screen and (max-width: 1280px) {
  #nav_primary li:hover .sub-menu li a, #nav_primary li:focus-within .sub-menu li a {
    padding: 0.5rem 1rem 0.5rem;
  }
}
#nav_primary li:hover .sub-menu li a:hover, #nav_primary li:focus-within .sub-menu li a:hover {
  color: #164192;
  background: #ebebeb;
}
#nav_primary li:last-of-type > .sub-menu {
  right: 0;
  left: auto;
}
#nav_primary .nav__button a {
  font-weight: 500;
  border: 2px solid #164192;
  border-radius: 1rem;
  padding: 0.5rem 1.5rem 0.5rem;
  margin-left: 1.5rem;
}
@media screen and (max-width: 1280px) {
  #nav_primary .nav__button a {
    margin-top: 0;
    border-radius: 0.75rem;
    margin-left: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
    padding: 0.25rem clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  }
}
#nav_primary .nav__button a:hover {
  background: none;
}
#nav_primary li.mega_menu {
  position: inherit;
}
@media screen and (min-width: 1024px) {
  #nav_primary li.mega_menu:hover .sub-menu {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
  }
}
#nav_primary li.mega_menu .wrapper {
  width: 94%;
}
#nav_primary li.mega_menu .nav__mega {
  background: whitesmoke;
  position: absolute;
  left: 0;
  width: 100vw;
  -webkit-box-shadow: 0px 50px 50px 0px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0px 50px 50px 0px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 50px 50px 0px rgba(0, 0, 0, 0.1);
}
#nav_primary li.mega_menu .nav__mega .sub-menu {
  position: static;
  -webkit-box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0);
  -moz-box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0);
  box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0);
  padding-bottom: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
#nav_primary li.mega_menu .nav__mega li {
  padding: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) 0;
  background-clip: content-box;
  overflow: hidden;
}
@media screen and (max-width: 1280px) {
  #nav_primary li.mega_menu .nav__mega li {
    padding: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) 0;
  }
}
@media screen and (max-width: 768px) {
  #nav_primary li.mega_menu .nav__mega li {
    padding: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)/2 clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) 0;
  }
}
#nav_primary li.mega_menu .nav__mega li a {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  line-height: 1.6;
  font-weight: normal;
  border: none;
  padding: 0;
  width: 100%;
  overflow-wrap: break-word;
  word-wrap: break-word;
  -ms-word-break: break-all;
  word-break: break-all;
  word-break: break-word;
  -ms-hyphens: auto;
  -moz-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
}
@media screen and (max-width: 1280px) {
  #nav_primary li.mega_menu .nav__mega li a {
    font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  }
}
@media screen and (max-width: 767px) {
  #nav_primary li.mega_menu .nav__mega li a {
    font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  }
}
#nav_primary li.mega_menu .nav__mega li a:hover {
  background: none;
}
#nav_primary li.mega_menu .nav__mega li:hover {
  background: none;
}
#nav_primary li.mega_menu .nav__mega li:hover imb {
  -webkit-transform: scale(1.03);
  -ms-transform: scale(1.03);
  transform: scale(1.03);
}
#nav_primary li.mega_menu .nav__mega li.show_image {
  width: calc(100% / 5);
}
#nav_primary li.mega_menu .nav__mega li.show_image .show_image-image {
  width: 40%;
}
#nav_primary li.mega_menu .nav__mega li.show_image .show_image-image figure {
  overflow: hidden;
}
#nav_primary li.mega_menu .nav__mega li.show_image .show_image-text {
  width: 60%;
  padding-left: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  overflow-wrap: break-word;
  word-wrap: break-word;
  -ms-word-break: break-all;
  word-break: break-all;
  word-break: break-word;
  -ms-hyphens: auto;
  -moz-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
}
#nav_primary li.mega_menu .nav__mega li.show_image .sublink {
  padding: 0 clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
@media screen and (max-width: 1280px) {
  #nav_primary li.mega_menu .nav__mega li.show_image .sublink {
    padding: 0 clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  }
}
#nav_primary li.mega_menu .nav__mega li.show_image .sublink:last-child {
  padding-bottom: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
#nav_primary li.mega_menu .nav__mega li.show_image:hover img {
  -webkit-opacity: 0.75;
  -moz-opacity: 0.75;
  opacity: 0.75;
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
}
#nav_primary li.mega_menu .nav__mega li.show_image:hover a {
  background: #ebebeb;
}
#nav_primary li.mega_menu .nav__mega li.show_image-square {
  width: calc(100% / 4);
}
@media screen and (max-width: 1024px) {
  #nav_primary li.mega_menu .nav__mega li.show_image-square {
    padding: 0 clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) 0;
  }
}
#nav_primary li.mega_menu .nav__mega li.show_image-square a {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
#nav_primary li.mega_menu .nav__mega li.show_image-square a:hover {
  background: #ebebeb;
}
#nav_primary li.mega_menu .nav__mega li.show_image-square .show_image-bild img {
  max-width: 100px;
  width: 100%;
  height: auto;
}
#nav_primary li.mega_menu .nav__mega li.show_image-square .show_image-text {
  padding: 0 clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) 0;
  display: block;
  word-break: break-word;
}
@media screen and (max-width: 1280px) {
  #nav_primary li.mega_menu .nav__mega li.show_image-square .show_image-text {
    padding: 0 clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) 0;
  }
}
#nav_primary li.current-menu-item a {
  color: #164192;
  pointer-events: auto;
}
#nav_primary li.current-menu-item li a {
  pointer-events: auto;
}
#nav_primary li.current-menu-ancestor > a {
  color: #164192;
}
#nav_primary li.current-menu-ancestor .current-menu-item a.sublink {
  pointer-events: auto;
}
#nav_primary .sub-menu li.current-menu-item a {
  color: #164192;
  background: #ebebeb;
}
#nav_primary li .sub-menu li.current-menu-item a {
  color: #164192;
  background: #ebebeb;
}
#nav_primary li .sub-menu li.current-menu-item.show_image a {
  background: none;
}
#nav_primary li .sub-menu li.current-menu-item.show_image a.sublink {
  color: #171717;
}
#nav_primary li .sub-menu li.current-menu-item.show_image a.sublink:hover {
  color: #164192;
}
#nav_primary #menu-item-search button {
  padding: 1rem;
  line-height: 0;
  background: none;
  border: none;
}
@media screen and (max-width: 1280px) {
  #nav_primary #menu-item-search button {
    padding: 0.5rem 0.75rem;
  }
}
#nav_primary #menu-item-search button:hover svg, #nav_primary #menu-item-search button:hover svg * {
  fill: #164192 !important;
}
#nav_primary #menu-item-search:hover #suche__button {
  background: transparent;
}
#nav_primary #menu-item-search #suche__button img {
  display: inline;
  vertical-align: baseline;
}

#nav_primary.open {
  width: 100vw;
  z-index: 0;
  top: 0;
  left: 0;
  padding: 40px 0 clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  text-align: left;
  display: block;
  overflow-y: scroll;
  overflow-x: hidden;
  opacity: 1;
  position: relative;
}
#nav_primary.open .menu {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
}
#nav_primary.open li {
  width: 100%;
  display: block;
  border-bottom: 1px solid #e0e0e0;
}
#nav_primary.open li a {
  font-size: clamp(1rem, calc(0.975rem + 0.125vw), 1.25rem);
}
#nav_primary.open li li {
  border-bottom: none;
}
#nav_primary.open li li a {
  font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
@media screen and (max-width: 1023px) {
  #nav_primary.open li li a {
    font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  }
}
#nav_primary.open li:hover a {
  background: none;
}
#nav_primary.open li#menu-item-search, #nav_primary.open li.menu-item_wpml_lang, #nav_primary.open li#menu-item_wpml_lang-sel {
  border-bottom: none;
  margin-top: 1rem;
}
#nav_primary.open li#menu-item_wpml_lang-sel {
  margin-top: 1rem;
}
#nav_primary.open li#menu-item_wpml_lang-sel a {
  padding: 0 calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5);
  color: #164192;
  font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
#nav_primary.open li.menu-item_wpml_lang a {
  padding: 0 calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5);
  color: #171717;
  font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
#nav_primary.open li#menu-item_wpml_lang-sel li {
  width: 100%;
}
#nav_primary.open li#menu-item_wpml_lang-sel:hover li a {
  padding: 0 calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5);
}
#nav_primary.open li.menu-item-has-children {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  position: relative;
}
#nav_primary.open li.menu-item-has-children::after {
  content: url("../img/icon__arrow-down.svg");
  margin-left: auto;
  padding: 0 clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  pointer-events: none;
  order: 2;
  position: absolute;
  right: 0;
  top: 10px;
}
#nav_primary.open li.menu-item-has-children.sub-menu__active::after {
  transform: rotate(180deg);
}
#nav_primary.open li .sub-menu {
  position: inherit;
  order: 3;
  background: none;
  margin: 0;
  width: 100%;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  background: none;
}
#nav_primary.open li .sub-menu li {
  width: calc(100% / 2);
}
@media screen and (max-width: 480px) {
  #nav_primary.open li .sub-menu li {
    width: calc(100%);
  }
}
#nav_primary.open li .sub-menu li a {
  line-height: 1.6;
  padding-bottom: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5) !important;
}
#nav_primary.open li .sub-menu li a.sublink {
  line-height: 1.2;
  padding-bottom: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.75) !important;
}
#nav_primary.open .sub-menu__active .sub-menu {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  padding-bottom: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
@media screen and (max-width: 1023px) {
  #nav_primary.open .sub-menu__active .sub-menu {
    padding-bottom: 0;
  }
}
#nav_primary.open .nav__kontakt a {
  font-weight: bold;
  border: none;
  border-radius: 0;
  margin-left: 0;
  padding: 1rem 1.5rem 1rem;
  -webkit-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
}
@media screen and (max-width: 1280px) {
  #nav_primary.open .nav__kontakt a {
    padding: 0.5rem 0.75rem;
  }
}
@media screen and (max-width: 1024px) {
  #nav_primary.open .nav__kontakt a {
    padding-left: 1rem;
  }
}
#nav_primary.open .nav__kontakt a:hover {
  background: none;
}
#nav_primary.open .nav__mega {
  width: 100%;
}
#nav_primary.open li.mega_menu .nav__mega {
  position: inherit;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  background: none;
}
#nav_primary.open li.mega_menu .nav__mega li.show_image-square img {
  width: 15%;
}
#nav_primary.open li.mega_menu .nav__mega li.show_image-swuare .show_image-text {
  width: 85%;
}
#nav_primary.open li.mega_menu .nav__mega li.show_image img {
  width: 20%;
}
#nav_primary.open li.mega_menu .nav__mega li.show_image .show_image-text {
  width: 80%;
}
#nav_primary.open li.mega_menu .nav__mega li.show_image, #nav_primary.open li.mega_menu .nav__mega li.show_image-square {
  width: calc(100% / 2);
}
@media screen and (max-width: 767px) {
  #nav_primary.open li.mega_menu .nav__mega li.show_image, #nav_primary.open li.mega_menu .nav__mega li.show_image-square {
    width: calc(100% / 1);
  }
}
#nav_primary.open li.mega_menu .nav__mega li.show_image .show_image-text, #nav_primary.open li.mega_menu .nav__mega li.show_image .sublink {
  padding: 0;
  padding-left: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
#nav_primary.open li.mega_menu .nav__mega li.show_image-square .show_image-text {
  font-weight: normal;
  padding: 0;
  padding-left: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
#nav_primary.open #menu-item_wpml_lang-sel {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  width: auto;
}
#nav_primary.open .menu-item_wpml_lang {
  width: auto;
}
#nav_primary.open #menu-item_wpml_lang-sel .sub-menu {
  display: block;
}
#nav_primary.open #menu-item_wpml_lang-sel .sub-menu li a {
  line-height: 1.6;
  text-decoration: underline;
  font-weight: bold;
  color: #171717;
}
#nav_primary.open #menu-item-search {
  order: 99;
  text-align: left;
  width: auto;
  margin-left: auto;
}
@media screen and (max-width: 1023px) {
  #nav_primary.open #menu-item-search {
    margin-left: inherit;
    margin-right: auto;
  }
}

#nav_secondary {
  text-align: right;
  z-index: 0;
}
@media screen and (max-width: 1023px) {
  #nav_secondary {
    position: absolute;
    padding: 0;
    text-align: left;
    width: 100vw;
    max-width: 100vw;
    top: -200vh;
    left: 0;
    opacity: 1;
  }
}
#nav_secondary .wrapper {
  width: auto;
}
#nav_secondary .menu {
  width: 100%;
}
@media screen and (min-width: 1024px) {
  #nav_secondary .menu {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
  }
}
#nav_secondary li {
  position: relative;
}
#nav_secondary li a {
  font-family: "Red Hat Text";
  color: #595959;
  line-height: 1.6;
  padding: 0.35rem 0.75rem;
  font-size: clamp(0.75rem, calc(0.7125rem + 0.1875vw), 0.9375rem);
  font-weight: 400;
  -webkit-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  display: block;
}
@media screen and (max-width: 1440px) {
  #nav_secondary li a {
    padding: 0.25rem 0.75rem;
  }
}
@media screen and (max-width: 1280px) {
  #nav_secondary li a {
    padding: 0.25rem 0.5rem;
  }
}
@media screen and (max-width: 1023px) {
  #nav_secondary li a {
    font-size: clamp(1rem, calc(0.975rem + 0.125vw), 1.25rem);
    padding: 0.5rem 0.75rem;
    padding-left: 1rem;
  }
}
#nav_secondary li:hover a {
  color: #164192;
  -webkit-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
}
#nav_secondary li.current-menu-item a {
  color: #164192;
  pointer-events: auto;
}
#nav_secondary li.current-menu-item li a {
  pointer-events: auto;
}
#nav_secondary li.current-menu-ancestor > a {
  color: #164192;
}
#nav_secondary li.current-menu-ancestor .current-menu-item a.sublink {
  pointer-events: auto;
}
#nav_secondary .sub-menu li.current-menu-item a {
  color: #164192;
  background: #ebebeb;
}
#nav_secondary li .sub-menu li.current-menu-item a {
  color: #164192;
  background: #ebebeb;
}
#nav_secondary li .sub-menu li.current-menu-item.show_image a {
  background: none;
}
#nav_secondary li .sub-menu li.current-menu-item.show_image a.sublink {
  color: #171717;
}
#nav_secondary li .sub-menu li.current-menu-item.show_image a.sublink:hover {
  color: #164192;
}
#nav_secondary li .wpml_lang {
  color: #a6a6a6;
  font-size: clamp(0.75rem, calc(0.7125rem + 0.1875vw), 0.9375rem);
  font-weight: 700;
  display: flex;
  border: 2px solid;
  padding: 0.15em 0.5em;
  text-decoration: none;
  margin-left: 5px;
}
@media screen and (max-width: 1280px) {
  #nav_secondary li .wpml_lang {
    font-size: clamp(0.75rem, calc(0.7125rem + 0.1875vw), 0.9375rem);
    padding: 0.5rem 0.75rem;
  }
}
#nav_secondary li .wpml_lang:hover {
  color: whitesmoke;
  text-decoration: none;
  border: 2px solid #164192;
  background: #164192;
}
#nav_secondary li#menu-item_wpml_lang-sel .wpml_active {
  pointer-events: none;
  text-decoration: none;
  color: #164192;
}
#nav_secondary li#menu-item_wpml_lang-sel .wpml_lang {
  border: 2px solid;
}
#nav_secondary li#menu-item_wpml_lang-sel .wpml_lang:hover {
  background: transparent;
}
#nav_secondary li#menu-item_wpml_lang-sel img {
  margin-right: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.375);
}
#nav_secondary li#menu-item_wpml_lang-sel:hover .sub-menu li a {
  padding: 1rem;
}
@media screen and (max-width: 1280px) {
  #nav_secondary li#menu-item_wpml_lang-sel:hover .sub-menu li a {
    font-size: clamp(0.75rem, calc(0.7125rem + 0.1875vw), 0.9375rem);
    padding: 0.5rem 0.75rem;
  }
}
#nav_secondary li#menu-item_wpml_lang-sel .sub-menu {
  min-width: 100%;
}

#nav_secondary.open {
  width: 100vw;
  z-index: 0;
  top: 0;
  left: 0;
  padding: 0 0 clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  text-align: left;
  display: block;
  overflow-y: scroll;
  overflow-x: hidden;
  opacity: 1;
  position: relative;
}
#nav_secondary.open .menu {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
}
#nav_secondary.open li {
  width: 100%;
  display: block;
  border-bottom: 1px solid #e0e0e0;
}
#nav_secondary.open li a {
  font-size: clamp(0.75rem, calc(0.7125rem + 0.1875vw), 0.9375rem);
}
#nav_secondary.open li li {
  border-bottom: none;
}
#nav_secondary.open li li a {
  font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  font-weight: 400;
}
#nav_secondary.open li:hover a {
  background: none;
}
#nav_secondary.open li#menu-item-search, #nav_secondary.open li.menu-item_wpml_lang, #nav_secondary.open li#menu-item_wpml_lang-sel {
  border-bottom: none;
  margin-top: 1rem;
}
#nav_secondary.open li#menu-item_wpml_lang-sel {
  margin-top: 1rem;
}
#nav_secondary.open li#menu-item_wpml_lang-sel a {
  padding: 0 calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5);
  color: #164192;
  font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
#nav_secondary.open li.menu-item_wpml_lang a {
  padding: 0 calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5);
  color: #171717;
  font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
#nav_secondary.open li#menu-item_wpml_lang-sel li {
  width: 100%;
}
#nav_secondary.open li#menu-item_wpml_lang-sel:hover li a {
  padding: 0 calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5);
}
#nav_secondary.open li.menu-item-has-children {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  position: relative;
}
#nav_secondary.open li.menu-item-has-children::after {
  content: url("../img/icon__arrow-down.svg");
  margin-left: auto;
  padding: 0 clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  pointer-events: none;
  order: 2;
  position: absolute;
  right: 0;
  top: 10px;
}
#nav_secondary.open li.menu-item-has-children.sub-menu__active::after {
  transform: rotate(180deg);
}
#nav_secondary.open li .sub-menu {
  position: inherit;
  order: 3;
  background: none;
  margin: 0;
  width: 100%;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  background: none;
}
#nav_secondary.open li .sub-menu li {
  width: calc(100% / 2);
}
@media screen and (max-width: 480px) {
  #nav_secondary.open li .sub-menu li {
    width: calc(100%);
  }
}
#nav_secondary.open li .sub-menu li a {
  line-height: 1.6;
  padding-bottom: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5) !important;
}
#nav_secondary.open li .sub-menu li a.sublink {
  line-height: 1.2;
  padding-bottom: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.75) !important;
}
#nav_secondary.open .sub-menu__active .sub-menu {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  padding-bottom: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
@media screen and (max-width: 1023px) {
  #nav_secondary.open .sub-menu__active .sub-menu {
    padding-bottom: 0;
  }
}
#nav_secondary.open .nav__kontakt a {
  font-weight: bold;
  border: none;
  border-radius: 0;
  margin-left: 0;
  padding: 1rem 1.5rem 1rem;
  -webkit-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
}
@media screen and (max-width: 1280px) {
  #nav_secondary.open .nav__kontakt a {
    padding: 0.5rem 0.75rem;
  }
}
@media screen and (max-width: 1024px) {
  #nav_secondary.open .nav__kontakt a {
    padding-left: 1rem;
  }
}
#nav_secondary.open .nav__kontakt a:hover {
  background: none;
}
#nav_secondary.open .nav__mega {
  width: 100%;
}
#nav_secondary.open li.mega_menu .nav__mega {
  position: inherit;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  background: none;
}
#nav_secondary.open li.mega_menu .nav__mega li.show_image-square img {
  display: none;
}
#nav_secondary.open li.mega_menu .nav__mega li.show_image img {
  width: 20%;
}
#nav_secondary.open li.mega_menu .nav__mega li.show_image .show_image-text {
  width: 80%;
}
#nav_secondary.open li.mega_menu .nav__mega li.show_image, #nav_secondary.open li.mega_menu .nav__mega li.show_image-square {
  width: calc(100% / 2);
}
@media screen and (max-width: 767px) {
  #nav_secondary.open li.mega_menu .nav__mega li.show_image, #nav_secondary.open li.mega_menu .nav__mega li.show_image-square {
    width: calc(100% / 1);
  }
}
#nav_secondary.open li.mega_menu .nav__mega li.show_image .show_image-text, #nav_secondary.open li.mega_menu .nav__mega li.show_image .sublink {
  padding: 0;
  padding-left: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
#nav_secondary.open li.mega_menu .nav__mega li.show_image-square .show_image-text {
  font-weight: normal;
  padding: 0;
}
#nav_secondary.open #menu-item_wpml_lang-sel {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  width: auto;
}
#nav_secondary.open .menu-item_wpml_lang {
  width: auto;
}
#nav_secondary.open #menu-item_wpml_lang-sel .sub-menu {
  display: block;
}
#nav_secondary.open #menu-item_wpml_lang-sel .sub-menu li a {
  line-height: 1.6;
  text-decoration: underline;
  font-weight: bold;
  color: #171717;
}
#nav_secondary.open #menu-item-search {
  order: 99;
  text-align: right;
  width: auto;
  margin-left: auto;
}

#suche {
  padding: clamp(1rem, calc(0.975rem + 0.125vw), 1.25rem);
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100%;
  z-index: 10001;
  background: whitesmoke;
}

#suche__close {
  padding: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}

#suche .search-form {
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 1280px) {
  #suche .search-form {
    height: 100%;
  }
}

.ie #suche .search-form {
  align-items: center;
}

.ie #suche .search-field {
  line-height: 1em;
}

#suche input {
  margin: 0;
  font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  line-height: 40px;
  padding: 10px 0 10px 5px;
  border: none;
  width: 100%;
  background: transparent;
}
@media screen and (max-width: 1280px) {
  #suche input {
    padding: 0 10px;
    line-height: 1.2;
  }
}

#suche input:focus,
#suche input:focus-within {
  color: #171717;
  outline: 3px solid black;
  box-shadow: 0 0 0 6px white;
}

#suche button {
  border: none;
  background: none;
  padding: 0;
  margin: 0;
  margin-left: 1em;
  align-items: center;
  display: flex;
  align-self: center;
  line-height: 50px;
}

#suche.open {
  z-index: 110;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
}

#footer__menu-primary .menu {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
}
#footer__menu-primary .menu li {
  margin-right: 2em;
}
#footer__menu-primary .menu li a {
  font-weight: 200;
  text-decoration: none;
}
@media screen and (max-width: 1280px) {
  #footer__menu-primary .menu li a {
    font-size: clamp(1rem, calc(0.975rem + 0.125vw), 1.25rem);
  }
}
#footer__menu-primary .menu li a:hover {
  text-decoration: underline;
}
#footer__menu-primary .menu li li a {
  text-transform: none;
  font-weight: normal;
  font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  letter-spacing: normal;
  -webkit-opacity: 1;
  -moz-opacity: 1;
  opacity: 1;
}
@media screen and (max-width: 1280px) {
  #footer__menu-primary .menu li li a {
    font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  }
}

#footer__menu-secondary * {
  font-size: clamp(0.75rem, calc(0.7125rem + 0.1875vw), 0.9375rem);
}
@media screen and (max-width: 1280px) {
  #footer__menu-secondary * {
    font-size: clamp(0.75rem, calc(0.7125rem + 0.1875vw), 0.9375rem);
  }
}
@media screen and (max-width: 1024px) {
  #footer__menu-secondary * {
    font-size: clamp(0.625rem, calc(0.5875rem + 0.1875vw), 0.8125rem);
  }
}
#footer__menu-secondary .menu {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
}
#footer__menu-secondary .menu li {
  margin-right: 2em;
}
#footer__menu-secondary .menu li a {
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: 1px;
}
#footer__menu-secondary .menu li a:hover {
  text-decoration: underline;
}
#footer__menu-secondary .menu li li a {
  text-transform: none;
  font-weight: normal;
  letter-spacing: normal;
  -webkit-opacity: 1;
  -moz-opacity: 1;
  opacity: 1;
}

#menu-partnermenue {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
}
#menu-partnermenue li {
  margin-right: 2em;
}
#menu-partnermenue li a {
  text-decoration: none;
}
#menu-partnermenue li a::before {
  content: url("../img/icon__arrow-link.svg");
  margin-right: 0.5rem;
}
#menu-partnermenue li a:hover {
  text-decoration: underline;
}

/* !LAYOUT ------------------------------------------------------------------------------------------------------ */
#header {
  position: fixed;
  top: 0;
  z-index: 50000;
  background-color: rgba(245, 245, 245, 0.8);
  -webkit-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
}
@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none) {
  #header {
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
    background-color: rgba(245, 245, 245, 0.8);
  }
}
#header.open {
  background-color: rgba(245, 245, 245, 0.8);
}
@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none) {
  #header.open {
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
    background-color: rgba(245, 245, 245, 0.8);
  }
}
#header.open > .wrapper {
  height: 100vh;
  height: 100dvh;
  overflow: auto;
  align-items: flex-start;
}
#header.nav-down {
  position: fixed;
  padding-top: 0;
  top: 0px;
  -webkit-transform: translateY(0%);
  -ms-transform: translateY(0%);
  transform: translateY(0%);
}
#header.nav-down.bg {
  background-color: whitesmoke !important;
}
#header.nav-up {
  position: fixed;
  -webkit-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
  transform: translateY(-100%);
}
#header #nav_primary {
  order: 3;
}
@media screen and (max-width: 1023px) {
  #header #nav_primary {
    order: 2;
  }
}
#header #nav_secondary {
  order: 1;
}
@media screen and (max-width: 1023px) {
  #header #nav_secondary {
    order: 3;
  }
}
#header #logo {
  order: 2;
}
@media screen and (max-width: 1023px) {
  #header #logo {
    order: 0;
  }
}

#footer {
  background: url("../img/bg_footer.svg") bottom right no-repeat;
  background-size: contain;
  background-size: clamp(100px, 50%, 500px);
  min-height: 300px;
}
#footer #footer_info a {
  text-decoration: none;
}
#footer #footer_info a:hover {
  text-decoration: underline;
}

.sociallinks svg {
  margin-right: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5);
}

.social {
  margin-right: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}

.social * {
  fill: currentColor;
}

.social:hover * {
  fill: #a6a6a6;
}

#pagecontent {
  padding-top: 100px;
}

.rank-math-breadcrumb {
  margin-bottom: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
.rank-math-breadcrumb * {
  color: #595959;
  text-transform: uppercase;
  font-size: clamp(0.75rem, calc(0.7125rem + 0.1875vw), 0.9375rem);
  letter-spacing: 1px;
}
@media screen and (max-width: 1024px) {
  .rank-math-breadcrumb * {
    font-size: clamp(0.75rem, calc(0.7125rem + 0.1875vw), 0.9375rem);
  }
}
.rank-math-breadcrumb .last {
  display: none;
}

.color__white .rank-math-breadcrumb * {
  color: #d9d9d9;
}

.quicksearch {
  font-family: "Red Hat Text", Helvetica, Arial, sans-serif;
  font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  color: #171717;
  line-height: 1.6;
  padding: 0.5rem 1rem;
  border: 1px solid #d9d9d9;
  margin-bottom: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}

.ui-group h3 {
  font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  font-weight: bold;
}
@media screen and (max-width: 1366px) {
  .ui-group h3 {
    font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  }
}

.ui-group h3:hover {
  cursor: pointer;
}

.ui-accordion-header {
  align-items: flex-end;
}
.ui-accordion-header h2 {
  width: 100%;
  margin-left: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
.ui-accordion-header h2:hover {
  color: #a6a6a6;
}

.modul__projektchallenge .ui-accordion-header h2 {
  color: #164192;
}

.ui-accordion-header-icon {
  margin-left: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  order: 2;
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: all 0 cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition: all 0 cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition: all 0 cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 0 cubic-bezier(0.165, 0.84, 0.44, 1);
}

.ui-accordion-header-icon::before {
  content: "+";
  font-family: "Red Hat Display";
  font-size: clamp(2rem, calc(1.4375rem + 2.8125vw), 4.8125rem);
  font-weight: 100;
  line-height: 1;
  color: #164192;
}

.ui-state-active .ui-accordion-header-icon {
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
  -webkit-transition: all 600 cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition: all 600 cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition: all 600 cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 600 cubic-bezier(0.165, 0.84, 0.44, 1);
}

.product__container {
  background: url("../img/loading.svg") no-repeat top center;
}
.product__container.container__loaded {
  background: none;
}

.jw_no-touchevents .ui-accordion-header {
  cursor: pointer;
}
.jw_no-touchevents .ui-accordion-header:hover h3 {
  -webkit-opacity: 0.25;
  -moz-opacity: 0.25;
  opacity: 0.25;
}
.jw_no-touchevents .ui-accordion-header:active h3 {
  -webkit-opacity: 1;
  -moz-opacity: 1;
  opacity: 1;
}

.product__filter-container {
  position: -webkit-sticky;
  position: sticky;
  z-index: 9000;
  background: whitesmoke;
  width: 100%;
  display: block;
  top: 0px;
}

.product__accordion {
  opacity: 0;
}

.filter__accordion {
  padding-bottom: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  margin-bottom: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  border-bottom: 1px solid #a6a6a6;
  max-height: 50vh;
  overflow-y: scrolL;
}

.link_box_content-box-border {
  border: 2px solid #e0e0e0;
}

.link_box_content-box,
.link_box_content-box-hover {
  text-decoration: none !important;
  overflow-wrap: break-word;
  word-wrap: break-word;
  -ms-word-break: break-all;
  word-break: break-all;
  word-break: break-word;
  -ms-hyphens: auto;
  -moz-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
}

.formatting .link_box_content-box-hover {
  display: flex;
}

.link_box_content-box-hover:hover {
  background-color: #e0e0e0;
  -webkit-box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  -webkit-transform: translateY(-0.2em);
  -moz-transform: translateY(-0.2em);
  -ms-transform: translateY(-0.2em);
  transform: translateY(-0.2em);
  -webkit-transform: translateY(-0.5em);
  -ms-transform: translateY(-0.5em);
  transform: translateY(-0.5em);
}

.image__container {
  height: 150px;
  max-height: 150px;
  width: 100%;
}

.image__container img {
  max-height: 150px;
  height: auto;
  width: auto;
  max-width: 100%;
}

.modul__top_blogbeitrage .post__item a:hover {
  text-decoration: underline;
}

.search__item {
  margin-bottom: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  border-bottom: 1px solid #d9d9d9;
}

.formatting .search__item-link {
  margin-top: 0;
  margin-bottom: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}

.modul__header .formatting h1 {
  margin: 0;
}

.modul__header-background {
  min-height: 400px;
  max-height: 800px;
  position: relative;
  z-index: 1;
  overflow: hidden;
}

.modul__header-background.modul__noheight {
  min-height: 0;
  max-height: 0;
  z-index: 0;
}

.modul__header-heading {
  position: relative;
  z-index: 3;
}

.modul__header-heading-before {
  position: absolute;
  z-index: 3;
  top: 0;
  right: 0;
  width: 8%;
  height: auto;
  transform: translateY(0%);
  pointer-events: none;
}

.modul__header-heading-after {
  content: url("../img/bg_overlay_gray.svg");
  position: absolute;
  z-index: 2;
  bottom: 0;
  right: 0;
  width: 25%;
  height: auto;
  transform: translateY(50%);
  pointer-events: none;
}

.modul__header-after {
  position: absolute;
  z-index: 2;
  top: 150px;
  right: 0;
  width: 100vw;
  height: auto;
  transform: translateY(0%);
  mix-blend-mode: soft-light;
  pointer-events: none;
}

.field-validation-error * {
  color: #164192 !important;
}

.modul__timeline .timeline > .column {
  display: flex;
  flex-direction: column;
  position: relative;
}
@media screen and (max-width: 768px) {
  .modul__timeline .timeline > .column {
    width: 100%;
    max-width: 100%;
  }
}
.modul__timeline .timeline > .column::before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  transform: translatex(-50%);
  border: 1px solid #e0e0e0;
  height: 100%;
  border-image: linear-gradient(to bottom, #e0e0e0 90%, transparent) 1 100%;
}
@media screen and (max-width: 768px) {
  .modul__timeline .timeline > .column::before {
    left: 50px;
  }
}
.modul__timeline .timeline > .column:last-child()::before {
  border: none;
}
.modul__timeline .timeline > .column > .row {
  display: flex;
  padding-bottom: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 2);
}
@media screen and (max-width: 768px) {
  .modul__timeline .timeline > .column > .row {
    height: auto;
  }
}
.modul__timeline .timeline > .column > .row:hover > .text * {
  color: #164192;
}
.modul__timeline .timeline > .column > .row > .text {
  flex: 1 1 calc(50% - 100px);
  position: relative;
}
@media screen and (max-width: 768px) {
  .modul__timeline .timeline > .column > .row > .text {
    order: 2;
    flex: 1 1 calc(100% - 50px);
    width: calc(100% - 100px);
  }
}
.modul__timeline .timeline > .column > .row > .icon {
  flex: 1 1 100px;
  padding: 0 calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 2);
}
@media screen and (max-width: 768px) {
  .modul__timeline .timeline > .column > .row > .icon {
    order: 1;
    padding: 0;
    width: 100px;
  }
}
.modul__timeline .timeline > .column > .row > .icon > div {
  width: 200px;
  height: 200px;
  background: whitesmoke;
  border-radius: 50%;
  margin: auto;
  position: relative;
  border: 2px solid #e0e0e0;
  overflow: hidden;
}
@media screen and (max-width: 1280px) {
  .modul__timeline .timeline > .column > .row > .icon > div {
    width: 150px;
    height: 150px;
  }
}
@media screen and (max-width: 768px) {
  .modul__timeline .timeline > .column > .row > .icon > div {
    width: 80px;
    height: 80px;
  }
}
.modul__timeline .timeline > .column > .row:hover > .icon > div {
  -webkit-box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  -webkit-transform: translateY(-0.2em);
  -moz-transform: translateY(-0.2em);
  -ms-transform: translateY(-0.2em);
  transform: translateY(-0.2em);
}
.modul__timeline .timeline > .column > .row:hover > .icon > div {
  -webkit-transform: "scale(1.05)";
  -ms-transform: "scale(1.05)";
  transform: "scale(1.05)";
}
.modul__timeline .timeline > .column > .row > .icon > div a:hover {
  -webkit-opacity: 0.5;
  -moz-opacity: 0.5;
  opacity: 0.5;
}
.modul__timeline .timeline > .column > .row > .time {
  flex: 1 1 calc(50% - 100px);
  padding-top: 1rem;
}
@media screen and (max-width: 768px) {
  .modul__timeline .timeline > .column > .row > .time {
    display: none;
  }
}
.modul__timeline .timeline > .column > .row:nth-child(even) {
  flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  .modul__timeline .timeline > .column > .row:nth-child(even) {
    flex-direction: row;
  }
}
.modul__timeline .timeline > .column > .row:nth-child(odd) {
  text-align: right;
}
@media screen and (max-width: 768px) {
  .modul__timeline .timeline > .column > .row:nth-child(odd) {
    text-align: left;
  }
}
.modul__timeline .timeline > .column > .row:nth-child(even) > div:last-child {
  text-align: end;
}

.modul__projekt_map #map {
  height: 50vh;
  min-height: 500px;
}

@media screen and (max-width: 767px) {
  .modul__projektcredits .col__8 .col__6 {
    width: 100%;
    max-width: 100%;
  }
}

@media screen and (max-width: 500px) {
  .modul__projektcredits .col__8,
.modul__projektchallenge .col__8 {
    width: 90%;
    max-width: 90%;
  }
}

.projekt__list {
  position: relative;
}

.projekt__list-header {
  background: whitesmoke;
  position: -webkit-sticky;
  position: sticky;
  top: 0px;
  z-index: 200;
}

.projekt__list-item {
  border-bottom: 1px solid #e0e0e0;
  align-items: center;
}
.projekt__list-item:hover {
  background: #ebebeb;
  cursor: pointer;
}
.projekt__list-item:hover img {
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
}
.projekt__list-item figure {
  overflow: hidden;
}

.modul__bildergalerie_slider,
.modul__projekt_kategorien,
.modul__referenzen {
  overflow: hidden;
}
.modul__bildergalerie_slider .slick-list,
.modul__projekt_kategorien .slick-list,
.modul__referenzen .slick-list {
  overflow: inherit;
}

.sort__button {
  color: #a6a6a6;
  width: 100%;
  display: block;
}
.sort__button.is-checked {
  color: #171717;
}
.sort__button.is-checked::before {
  margin-right: 0.5em;
  content: url("../img/icon__arrow-down.svg");
  width: 1rem;
  height: 1rem;
}
.sort__button:hover {
  color: #164192;
}
.sort__button:hover::before {
  margin-right: 0.5em;
  content: url("../img/icon__arrow-down.svg");
  width: 1rem;
  height: 1rem;
}

.slider_prev,
.slider_next {
  display: block;
  height: 40px;
  width: 40px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  border: none;
  outline: none;
}
.slider_prev.slick-disabled,
.slider_next.slick-disabled {
  pointer-events: none;
}
.slider_prev.slick-disabled:before,
.slider_next.slick-disabled:before {
  opacity: 0.2;
  background: rgba(255, 255, 255, 0.5);
}

.slider_prev:before {
  content: url("../img/icon__arrow-left.svg");
}

.slider_next {
  right: 2rem;
}
.slider_next:before {
  content: url("../img/icon__arrow-right.svg");
}

.modul__inhaltstypen_grid .team__box .team__box-text,
.modul__standard .team__box .team__box-text {
  width: 70%;
}
.modul__inhaltstypen_grid .team__box .team__box-image,
.modul__standard .team__box .team__box-image {
  width: 30%;
  max-width: 150px;
  overflow: hidden;
}
.modul__inhaltstypen_grid .team__box .team__box-image img,
.modul__standard .team__box .team__box-image img {
  object-fit: contain;
}
.modul__inhaltstypen_grid .team__box .team__box-image:hover img,
.modul__standard .team__box .team__box-image:hover img {
  -webkit-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 200ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
}

/* !Images ------------------------------------------------------------------------------------------------------ */
.modul__bild-volle-breite {
  position: relative;
  overflow: hidden;
}

.bg__responsive-image {
  background-repeat: no-repeat;
  background-position: 0% 0%;
  background-size: cover;
  overflow: hidden;
}

.bg__responsive-image-center {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  overflow: hidden;
}

.ratio-box {
  position: relative;
  height: 0;
  display: block;
  width: 100%;
  padding-bottom: 56.25%;
  max-height: 100vh;
}

.ratio-box img,
.ratio-box iframe,
.ratio-box video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
}

.image__max-size img {
  width: 100%;
  height: auto;
}

.image__round {
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}

.image__fixed {
  background-attachment: fixed;
}

.image__pos-center {
  background-position: center center;
}

.image__pos-top {
  background-position: top center;
}

.image__pos-bottom {
  background-position: bottom center;
}

.jw_touchevents .image__fixed {
  background-attachment: scroll;
}

figure,
figure img {
  width: 100% !important;
  height: auto;
}

figure {
  position: relative;
}

figcaption {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  color: #171717;
  font-size: clamp(0.625rem, calc(0.5875rem + 0.1875vw), 0.8125rem);
  -webkit-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

figure:hover figcaption {
  -webkit-opacity: 1;
  -moz-opacity: 1;
  opacity: 1;
}

figure.image__box:hover figcaption {
  background-color: rgba(255, 255, 255, 0.8);
}

a figure.image__box:hover img {
  -webkit-opacity: 0.8;
  -moz-opacity: 0.8;
  opacity: 0.8;
}

figure .fullscreen__icon {
  position: absolute;
  z-index: 1000;
  width: 40px !important;
  height: 40px !important;
  top: 0;
  right: 0;
}

.image__box {
  overflow: hidden;
}

.image__box:hover:not(.no__shadow),
.image__box:active:not(.no__shadow) {
  -webkit-box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  -webkit-transform: translateY(-0.2em);
  -moz-transform: translateY(-0.2em);
  -ms-transform: translateY(-0.2em);
  transform: translateY(-0.2em);
}

.image__box figcaption {
  height: auto;
  -webkit-opacity: 0;
  -moz-opacity: 0;
  opacity: 0;
}

.image__box.box__shadow:hover {
  -webkit-box-shadow: 0px 15px 25px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 15px 25px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 15px 25px 0px rgba(0, 0, 0, 0.2);
  -webkit-transform: translateY(0em);
  -moz-transform: translateY(0em);
  -ms-transform: translateY(0em);
  transform: translateY(0em);
}

.card__box figcaption {
  height: auto;
  min-height: 25%;
  width: 100%;
}
.card__box figcaption h3 {
  margin-bottom: 0;
}
.card__box figcaption .card__hidden {
  max-height: 0;
  visibility: collapse;
  -webkit-opacity: 0;
  -moz-opacity: 0;
  opacity: 0;
}
.card__box figcaption a.card__hidden {
  display: none;
}
.card__box:hover figcaption {
  height: 100%;
}
.card__box:hover figcaption .card__hidden {
  max-height: 10rem;
  visibility: visible;
  -webkit-opacity: 1;
  -moz-opacity: 1;
  opacity: 1;
  margin-top: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
.card__box:hover figcaption a.card__hidden {
  display: inline-block;
}

.overlay__container {
  position: relative;
  overflow: hidden;
  width: 100%;
}
.overlay__container.overlay__container-slider {
  height: 56%;
}
.overlay__container.overlay__container-slider:hover {
  -webkit-box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  -webkit-transform: translateY(-0.2em);
  -moz-transform: translateY(-0.2em);
  -ms-transform: translateY(-0.2em);
  transform: translateY(-0.2em);
}
.overlay__container.overlay__container-square:hover {
  -webkit-box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  -webkit-transform: translateY(-0.2em);
  -moz-transform: translateY(-0.2em);
  -ms-transform: translateY(-0.2em);
  transform: translateY(-0.2em);
}
.overlay__container.overlay__container-square figure {
  height: auto;
}
.overlay__container video, .overlay__container figure {
  object-fit: cover;
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
}
.overlay__container:after {
  content: "";
  display: block;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.3);
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(22, 22, 22, 0)), to(rgba(22, 22, 22, 0.5)));
  background: -o-linear-gradient(top, rgba(22, 22, 22, 0) 0%, rgba(22, 22, 22, 0.5) 100%);
  background: linear-gradient(180deg, rgba(22, 22, 22, 0) 0%, rgba(22, 22, 22, 0.5) 100%);
  z-index: 1;
  mix-blend-mode: darken;
}
.overlay__container .overlay__callout {
  z-index: 10;
  position: relative;
  height: 100%;
}

.referenzen_slider .card__box figcaption {
  max-height: 0;
  -webkit-opacity: 0;
  -moz-opacity: 0;
  opacity: 0;
}
.referenzen_slider .card__box:hover figcaption {
  max-height: 10rem;
  -webkit-opacity: 1;
  -moz-opacity: 1;
  opacity: 1;
}

.card__item-hover .card__box:hover {
  -webkit-box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  -webkit-transform: translateY(-0.2em);
  -moz-transform: translateY(-0.2em);
  -ms-transform: translateY(-0.2em);
  transform: translateY(-0.2em);
  -webkit-transform: "translateY:-1rem";
  -ms-transform: "translateY:-1rem";
  transform: "translateY:-1rem";
}

.card__item-hover a {
  display: block;
  width: 100%;
}

.border__box {
  border: 1px solid;
  margin-bottom: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}

.modul__slider figure:hover figcaption {
  display: none;
}

.modul__projektchallenge figure img {
  filter: grayscale(100%);
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
}
.modul__projektchallenge figure a:hover img {
  filter: grayscale(0%);
  -webkit-filter: grayscale(0%);
  -moz-filter: grayscale(0%);
}

.lazyload {
  opacity: 0;
  -webkit-transform: translateY(3vh);
  -moz-transform: translateY(3vh);
  -ms-transform: translateY(3vh);
  transform: translateY(3vh);
  -webkit-transition: all 600ms ease-out;
  -moz-transition: all 600ms ease-out;
  -o-transition: all 600ms ease-out;
  transition: all 600ms ease-out;
}

.lazyloading {
  opacity: 1;
  background: #e0e0e0;
  -webkit-transform: translateY(3vh);
  -moz-transform: translateY(3vh);
  -ms-transform: translateY(3vh);
  transform: translateY(3vh);
  -webkit-transition: all 600ms ease-out;
  -moz-transition: all 600ms ease-out;
  -o-transition: all 600ms ease-out;
  transition: all 600ms ease-out;
}

.lazyloaded {
  opacity: 1;
  -webkit-transform: translateY(0px);
  -moz-transform: translateY(0px);
  -ms-transform: translateY(0px);
  transform: translateY(0px);
}

.bg__responsive-image,
.bg__scroll-image {
  background-repeat: no-repeat;
  background-size: cover;
}

/* !INPUT FIELDS FORMULARE ------------------------------------------------------------------------------------------------------ */
::-webkit-input-placeholder {
  color: #a7abab;
}

::-moz-placeholder {
  /* Firefox 19+ */
  color: #a7abab;
}

:-ms-input-placeholder {
  /* IE 10+ */
  color: #a7abab;
}

:-moz-placeholder {
  /* Firefox 18- */
  color: #a7abab;
}

.country__selection #country__select {
  font-size: clamp(1rem, calc(0.975rem + 0.125vw), 1.25rem);
  line-height: 1.6;
  font-weight: 400;
  letter-spacing: 1;
  color: #595959;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: none;
  border: none;
  color: #4e5659;
  padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5) calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 1.5) calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5) clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  cursor: pointer;
}
@media screen and (max-width: 1366px) {
  .country__selection #country__select {
    font-size: clamp(1rem, calc(0.975rem + 0.125vw), 1.25rem);
    padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5) clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  }
}
.country__selection .wrap_select {
  display: inline-block;
  position: relative;
  border: 2px solid #595959;
  -webkit-border-radius: 1rem !important;
  -moz-border-radius: 1rem !important;
  border-radius: 1rem !important;
}
@media screen and (max-width: 1366px) {
  .country__selection .wrap_select {
    -webkit-border-radius: 0.75rem !important;
    -moz-border-radius: 0.75rem !important;
    border-radius: 0.75rem !important;
  }
}
.country__selection .wrap_select:after {
  content: url("../img/icon__arrow-down.svg");
  top: 1em;
  position: absolute;
  right: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5);
  z-index: 1;
  pointer-events: none;
}

.download-item label {
  margin-top: 0;
}
.download-item select {
  font-size: clamp(0.75rem, calc(0.7125rem + 0.1875vw), 0.9375rem);
  line-height: 1.6;
  font-weight: 400;
  letter-spacing: 1;
  color: #595959;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: none;
  border: none;
  color: #4e5659;
  padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5) calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 2) calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5) clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  cursor: pointer;
}
@media screen and (max-width: 1366px) {
  .download-item select {
    font-size: clamp(0.75rem, calc(0.7125rem + 0.1875vw), 0.9375rem);
    padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5) calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 2) calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5) clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  }
}
.download-item .wrap_select {
  display: inline-block;
  position: relative;
  border: 2px solid #595959;
}
.download-item .wrap_select:after {
  content: url("../img/icon__arrow-down.svg");
  top: 0.25em;
  position: absolute;
  right: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5);
  z-index: 1;
  height: 100%;
  pointer-events: none;
}
.download-item .download-item_image {
  width: 30%;
  min-width: 100px;
  height: auto;
}
.download-item.download-item__large {
  border: 1px solid #d9d9d9;
}
.download-item.download-item__large .download-item_image {
  margin-right: 1rem;
}
.download-item .download_box-beschreibung {
  margin-top: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.75);
}

.wpcf7 .wpcf7-form {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
}
.wpcf7 .wpcf7-form-control-wrap {
  display: block;
  padding: 0 calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5) clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) 0;
  width: 100%;
}
.wpcf7 .wpcf7-form-control-wrap.dx-name, .wpcf7 .wpcf7-form-control-wrap.dx-firma, .wpcf7 .wpcf7-form-control-wrap.dx-email, .wpcf7 .wpcf7-form-control-wrap.dx-telefon, .wpcf7 .wpcf7-form-control-wrap.dx-adresse, .wpcf7 .wpcf7-form-control-wrap.dx-plz, .wpcf7 .wpcf7-form-control-wrap.dx-land, .wpcf7 .wpcf7-form-control-wrap.dx-uid {
  width: 50%;
}
.wpcf7 .wpcf7-form-control-wrap.dx-pagetitle, .wpcf7 .wpcf7-form-control-wrap.dx-pageurl, .wpcf7 .wpcf7-form-control-wrap.dx-url {
  display: none;
}
.wpcf7 .wpcf7-form-control-wrap:last-child {
  margin-bottom: 0;
}
.wpcf7 .wpcf7-list-item {
  margin: 0;
}
.wpcf7 .wpcf7-checkbox .wpcf7-list-item {
  margin-right: 2rem;
}
.wpcf7 input,
.wpcf7 select,
.wpcf7 textarea {
  font-family: "Red Hat Text", Helvetica, Arial, sans-serif;
}
.wpcf7 input[type=text],
.wpcf7 input[type=search],
.wpcf7 input[type=url],
.wpcf7 input[type=tel],
.wpcf7 input[type=number],
.wpcf7 input[type=range],
.wpcf7 input[type=date],
.wpcf7 input[type=month],
.wpcf7 input[type=week],
.wpcf7 input[type=time],
.wpcf7 input[type=datetime],
.wpcf7 input[type=datetime-local],
.wpcf7 input[type=color],
.wpcf7 input[type=email],
.wpcf7 input[type=file],
.wpcf7 select,
.wpcf7 textarea {
  padding: 0;
  margin: 0;
  display: block;
  width: 100%;
  padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.75) calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 1.5);
  -webkit-box-sizing: border-box;
  /* Safari/Chrome, other WebKit */
  -moz-box-sizing: border-box;
  /* Firefox, other Gecko */
  box-sizing: border-box;
  background-color: #ebebeb;
  border: none;
  border-bottom: 1px solid transparent;
  -webkit-appearance: none;
  font-family: "Red Hat Text", Helvetica, Arial, sans-serif;
  font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  line-height: 1.6;
  font-weight: 400;
  color: #595959;
  -webkit-border-radius: 0px !important;
  -moz-border-radius: 0px !important;
  border-radius: 0px !important;
}
@media screen and (max-width: 1280px) {
  .wpcf7 input[type=text],
.wpcf7 input[type=search],
.wpcf7 input[type=url],
.wpcf7 input[type=tel],
.wpcf7 input[type=number],
.wpcf7 input[type=range],
.wpcf7 input[type=date],
.wpcf7 input[type=month],
.wpcf7 input[type=week],
.wpcf7 input[type=time],
.wpcf7 input[type=datetime],
.wpcf7 input[type=datetime-local],
.wpcf7 input[type=color],
.wpcf7 input[type=email],
.wpcf7 input[type=file],
.wpcf7 select,
.wpcf7 textarea {
    font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  }
}
@media screen and (max-width: 767px) {
  .wpcf7 input[type=text],
.wpcf7 input[type=search],
.wpcf7 input[type=url],
.wpcf7 input[type=tel],
.wpcf7 input[type=number],
.wpcf7 input[type=range],
.wpcf7 input[type=date],
.wpcf7 input[type=month],
.wpcf7 input[type=week],
.wpcf7 input[type=time],
.wpcf7 input[type=datetime],
.wpcf7 input[type=datetime-local],
.wpcf7 input[type=color],
.wpcf7 input[type=email],
.wpcf7 input[type=file],
.wpcf7 select,
.wpcf7 textarea {
    font-size: clamp(0.75rem, calc(0.7125rem + 0.1875vw), 0.9375rem);
  }
}
.wpcf7 input[type=text]:focus,
.wpcf7 input[type=search]:focus,
.wpcf7 input[type=url]:focus,
.wpcf7 input[type=tel]:focus,
.wpcf7 input[type=number]:focus,
.wpcf7 input[type=range]:focus,
.wpcf7 input[type=date]:focus,
.wpcf7 input[type=month]:focus,
.wpcf7 input[type=week]:focus,
.wpcf7 input[type=time]:focus,
.wpcf7 input[type=datetime]:focus,
.wpcf7 input[type=datetime-local]:focus,
.wpcf7 input[type=color]:focus,
.wpcf7 input[type=email]:focus,
.wpcf7 input[type=file]:focus,
.wpcf7 select:focus,
.wpcf7 textarea:focus {
  border: 1px solid #164192;
}
.wpcf7 input[type=submit] {
  border: 1px solid;
  padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.75) calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 1.5);
  line-height: 1.6;
  cursor: pointer;
  text-decoration: none !important;
  -webkit-border-radius: 2rem !important;
  -moz-border-radius: 2rem !important;
  border-radius: 2rem !important;
  text-align: center;
  min-width: 150px;
  font-weight: bold;
  font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  line-height: 1.6;
  background: #164192;
  color: white;
}
@media screen and (max-width: 1280px) {
  .wpcf7 input[type=submit] {
    font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  }
}
@media screen and (max-width: 767px) {
  .wpcf7 input[type=submit] {
    font-size: clamp(0.75rem, calc(0.7125rem + 0.1875vw), 0.9375rem);
    padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5) clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
    min-width: 120px;
  }
}
.wpcf7 input[type=submit]:hover {
  background: transparent;
  color: #171717;
  cursor: pointer;
}
.wpcf7 input[type=submit][disabled] {
  color: #a6a6a6;
  background: transparent;
  border: 1px solid #a6a6a6;
}
.wpcf7 input[type=checkbox],
.wpcf7 input[type=radio] {
  margin-right: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
@media screen and (max-width: 767px) {
  .wpcf7 input[type=checkbox],
.wpcf7 input[type=radio] {
    margin-right: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  }
}
.wpcf7 .wpcf7-acceptance {
  display: block;
  margin-top: 2rem;
}
.wpcf7 .wpcf7-acceptance label,
.wpcf7 .wpcf7-checkbox {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
}
.wpcf7 .wpcf7-acceptance .wpcf7-list-item label {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
  font-size: clamp(0.75rem, calc(0.7125rem + 0.1875vw), 0.9375rem);
  color: #a6a6a6;
}
@media screen and (max-width: 767px) {
  .wpcf7 .wpcf7-acceptance .wpcf7-list-item label {
    font-size: clamp(0.75rem, calc(0.7125rem + 0.1875vw), 0.9375rem);
    width: 100%;
  }
}
.wpcf7 .wpcf7-acceptance .wpcf7-list-item label span {
  width: 80%;
}
.wpcf7 .screen-reader-response {
  display: none;
}
.wpcf7 .wpcf7-not-valid-tip {
  color: #9e0000;
  font-size: clamp(0.75rem, calc(0.7125rem + 0.1875vw), 0.9375rem);
}
@media screen and (max-width: 767px) {
  .wpcf7 .wpcf7-not-valid-tip {
    font-size: clamp(0.75rem, calc(0.7125rem + 0.1875vw), 0.9375rem);
  }
}
.wpcf7 .wpcf7-validation-errors {
  color: #164192;
  border: 2px solid;
  padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.75) calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 1.5);
  margin: 0;
}
.wpcf7 .wpcf7-mail-sent-ok {
  border: 2px solid #171717;
  color: #171717;
  padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.75) calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 1.5);
  margin: 0;
}

.grecaptcha-badge {
  display: none;
}

.search__submit {
  padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.75) calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 1.5);
  margin: 0;
  border: none;
  background: none;
  text-align: center;
  font-weight: bold;
  font-family: "Red Hat Text";
  font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  line-height: 1.6;
  -webkit-border-radius: 0px !important;
  -moz-border-radius: 0px !important;
  border-radius: 0px !important;
  cursor: pointer;
  line-height: 100%;
}
@media screen and (max-width: 1280px) {
  .search__submit {
    font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  }
}
@media screen and (max-width: 767px) {
  .search__submit {
    font-size: clamp(0.75rem, calc(0.7125rem + 0.1875vw), 0.9375rem);
  }
}
.search__submit svg * {
  fill: #171717;
}
.search__submit:hover {
  background: #164192;
}
.search__submit:hover svg * {
  fill: white;
}
.search__field {
  padding: 0;
  margin: 0;
  display: block;
  width: 100%;
  padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.75) calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 1.5);
  -webkit-box-sizing: border-box;
  /* Safari/Chrome, other WebKit */
  -moz-box-sizing: border-box;
  /* Firefox, other Gecko */
  box-sizing: border-box;
  background-color: #ebebeb;
  border: none;
  border: 1px solid transparent;
  -webkit-appearance: none;
  font-family: "Red Hat Text";
  font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  line-height: 1.6;
  font-weight: 400;
  color: #595959;
  -webkit-border-radius: 0px !important;
  -moz-border-radius: 0px !important;
  border-radius: 0px !important;
}
@media screen and (max-width: 1280px) {
  .search__field {
    font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  }
}
@media screen and (max-width: 767px) {
  .search__field {
    font-size: clamp(0.75rem, calc(0.7125rem + 0.1875vw), 0.9375rem);
  }
}
.search__field:focus {
  border: 1px solid #164192;
}
.search__field::-webkit-search-cancel-button {
  -webkit-appearance: none;
  content: url("../img/icon__x.svg");
  cursor: pointer;
}

/* ====================================================================================================================
 * TOOLTIP
 * ====================================================================================================================*/
#tooltip {
  position: absolute;
  background: #164192;
  padding: 0.5em 1em;
  color: whitesmoke;
  font-size: 0.75rem;
  line-height: 1.5em;
  letter-spacing: 1;
  font-weight: 500;
  z-index: 12000;
  max-width: 300px;
}

#image_tooltip {
  position: absolute;
  display: none;
  z-index: 9998;
  width: 150px;
  height: auto;
  background: white;
  padding: 10px;
}

#image_tooltip img {
  width: 100%;
}

body .buorg {
  text-align: left;
  width: 300px;
  top: 50px;
  right: 50px;
  left: auto;
  border: none;
  color: #e0e0e0;
  background-color: #171717;
  box-shadow: none;
  -webkit-box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 35px 50px 0px rgba(0, 0, 0, 0.2);
  -webkit-transform: translateY(-0.2em);
  -moz-transform: translateY(-0.2em);
  -ms-transform: translateY(-0.2em);
  transform: translateY(-0.2em);
  font-family: inherit;
  font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  font-variation-settings: "slnt" 0;
  line-height: 1.2;
}
body .buorg .buorg-moremsg {
  padding-bottom: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
body .buorg .buorg-pad {
  padding: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
}
body .buorg #buorgig, body .buorg #buorgul, body .buorg #buorgpermanent {
  color: #171717;
  text-decoration: none;
  cursor: pointer;
  padding: 1px 10px;
  border: 2px solid #164192;
  border-radius: 4px;
  -webkit-border-radius: 1rem !important;
  -moz-border-radius: 1rem !important;
  border-radius: 1rem !important;
  font-weight: normal;
  background: #164192;
  white-space: nowrap;
  margin-bottom: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5);
  padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5) clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  line-height: 1.6;
  display: inline-block;
}
@media screen and (max-width: 1366px) {
  body .buorg #buorgig, body .buorg #buorgul, body .buorg #buorgpermanent {
    font-size: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
    padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5) clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
    -webkit-border-radius: 0.75rem !important;
    -moz-border-radius: 0.75rem !important;
    border-radius: 0.75rem !important;
  }
}

/* !SLICK STYLES ------------------------------------------------------------------------------------------------------ */
/* ====================================================================================================================
 * SLICKSLIDER
 * ====================================================================================================================*/
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
  z-index: 0;
}

.modul__slider_volle_breite .slick-list {
  padding: 2rem 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before,
.slick-track:after {
  display: table;
  content: "";
}

.slick-track:after {
  clear: both;
}

.slick-slide {
  display: none;
  float: left;
  min-height: 1px;
}

[dir=rtl] .slick-slide {
  float: right;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-loading .slick-track,
.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-slide img,
.slick-initialized .slick-slide {
  display: block;
}

.slick-slide.slick-loading img,
.slick-arrow.slick-hidden {
  display: none;
}

/* ====================================================================================================================
 * DEFAULT THEME
 * ====================================================================================================================*/
.slick-loading .slick-list {
  background: #fff center center no-repeat;
}

.slick-prev,
.slick-next {
  z-index: 1000;
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 30px;
  height: 60px;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .slick-prev,
.slick-next {
    width: 18px;
  }
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  color: transparent;
  outline: none;
  background: transparent;
}

.slick-prev::before,
.slick-next::before {
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -25px;
}

.modul__slider_volle_breite .slick-prev {
  left: 25px;
}

[dir=rtl] .slick-prev {
  right: -25px;
  left: auto;
}

.slick-next {
  right: -25px;
}

.modul__slider_volle_breite .slick-next {
  right: 25px;
}

[dir=rtl] .slick-next {
  right: auto;
  left: -25px;
}

.slick-dots {
  position: absolute;
  bottom: -1rem;
  display: block;
  left: 0;
  width: 100%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  list-style: none;
  text-align: center;
  margin: 0;
  padding: 1rem;
}

.modul__slider .slick-dots {
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

.modul__slider_volle_breite .slick-dots {
  display: none !important;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  width: 40px;
  height: 1rem;
  cursor: pointer;
  margin: 0 5px;
  padding: 0;
}

.slick-dots li:only-child {
  display: none;
}

.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 48px;
  height: 48px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
  padding: 5px;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
  outline: none;
}

.slick-dots li button::before {
  line-height: 1rem;
  position: absolute;
  top: 0;
  left: 0;
  width: 30px;
  height: 7px;
  content: "";
  text-align: center;
  background-color: #ffffff;
  border-radius: 3px;
}

.slick-dots li.slick-active button::before {
  background-color: #164192;
}

.slick-dots li.slick-active button:hover::before {
  background-color: #164192;
  pointer-events: none;
  cursor: default;
}

.slick-dots li button:hover::before {
  background-color: #164192;
}

.slick-dots li button:hover::before,
.slick-dots li button:focus::before {
  -webkit-opacity: 1;
  -moz-opacity: 1;
  opacity: 1;
}

.slick-prev:hover::before,
.slick-prev:focus::before,
.slick-next:hover::before,
.slick-next:focus::before {
  -webkit-opacity: 0.5;
  -moz-opacity: 0.5;
  opacity: 0.5;
}

.slick-prev::before,
[dir=rtl] .slick-next::before {
  content: "←";
  font-size: 2.5rem;
  color: #164192;
}

[dir=rtl] .slick-prev::before,
.slick-next::before {
  content: "→";
  font-size: 2.5rem;
  color: #164192;
}

.slick-prev.slick-disabled {
  cursor: default;
  pointer-events: none;
}

.slick-prev.slick-disabled::before,
.slick-next.slick-disabled::before,
.slick-prev.slick-disabled:hover::before,
.slick-next.slick-disabled:hover::before {
  opacity: 0.1;
}

.fancybox-lock {
  overflow: hidden !important;
  width: auto;
  height: 100%;
}

/* !SLICK THEME ------------------------------------------------------------------------------------------------------ */
/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  z-index: 1000;
  display: block;
  height: 40px;
  width: 40px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  border-radius: 20px;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 4px;
  border: none;
  outline: none;
  -webkit-opacity: 0;
  -moz-opacity: 0;
  opacity: 0;
}
.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  background: #e0e0e0;
  color: transparent;
}
.slick-prev:hover:before, .slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}
.slick-prev:before,
.slick-next:before {
  font-family: "slick";
  font-size: 23px;
  line-height: 1;
  color: white;
  opacity: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.2;
  background: rgba(255, 255, 255, 0.5);
}

.slider:hover .slick-prev,
.slider:hover .slick-next {
  -webkit-opacity: 1;
  -moz-opacity: 1;
  opacity: 1;
  cursor: pointer;
}

.slider_next:hover,
.slider_prev:hover {
  -webkit-opacity: 0.5;
  -moz-opacity: 0.5;
  opacity: 0.5;
  cursor: pointer;
}

.slick-prev {
  left: 2rem;
}
[dir=rtl] .slick-prev {
  left: auto;
  right: 2rem;
}
.slick-prev:before {
  content: url(../img/icon__arrow-left.svg);
}
[dir=rtl] .slick-prev:before {
  content: url(../img/icon__arrow-right.svg);
}

.slick-next {
  right: 2rem;
}
[dir=rtl] .slick-next {
  left: 2rem;
  right: auto;
}
.slick-next:before {
  content: url(../img/icon__arrow-right.svg);
}
[dir=rtl] .slick-next:before {
  content: url(../img/icon__arrow-left.svg);
}

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 0px;
}

.slick-dots {
  position: absolute;
  right: 0;
  list-style: none;
  display: block;
  text-align: right;
  margin: 0;
  width: auto;
  padding: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  -webkit-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
  transform: translateY(-100%);
}
@media screen and (max-width: 1280px) {
  .slick-dots {
    padding: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  }
}
@media screen and (max-width: 767px) {
  .slick-dots {
    padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)/ 2);
  }
}
@media screen and (max-width: 400px) {
  .slick-dots {
    padding: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)/ 3);
  }
}
.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}
.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}
.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}
.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  content: url("../img/icon_square-full.svg");
}
.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: url("../img/icon_square.svg");
  width: 20px;
  height: 20px;
  font-family: "slick";
  font-size: 6px;
  line-height: 20px;
  text-align: center;
  color: black;
  opacity: 0.2;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@media screen and (max-width: 1366px) {
  .slick-dots li button:before {
    transform: scale(0.5);
  }
}
.slick-dots li.slick-active button:before {
  content: url("../img/icon_square-full.svg");
  opacity: 1;
}

.modul__slider .slick-dots {
  margin-right: 1rem;
  -webkit-opacity: 0;
  -moz-opacity: 0;
  opacity: 0;
}

.modul__slider:hover .slick-dots {
  -webkit-opacity: 1;
  -moz-opacity: 1;
  opacity: 1;
}

.modul__messen .slick-track {
  margin: 0;
}

/* !FANCYBOX ------------------------------------------------------------------------------------------------------ */
body.compensate-for-scrollbar {
  overflow: hidden;
}

.fancybox-active {
  height: auto;
}

.fancybox-is-hidden {
  left: -9999px;
  margin: 0;
  position: absolute !important;
  top: -9999px;
  visibility: hidden;
}

.fancybox-container {
  -webkit-backface-visibility: hidden;
  height: 100%;
  left: 0;
  outline: none;
  position: fixed;
  -webkit-tap-highlight-color: transparent;
  top: 0;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  transform: translateZ(0);
  width: 100%;
  z-index: 99992;
}

.fancybox-container * {
  box-sizing: border-box;
}

.fancybox-outer,
.fancybox-inner,
.fancybox-bg,
.fancybox-stage {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.fancybox-outer {
  -webkit-overflow-scrolling: touch;
  overflow-y: auto;
}

.fancybox-bg {
  background: #1e1e1e;
  opacity: 0;
  transition-duration: inherit;
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.47, 0, 0.74, 0.71);
}

.fancybox-is-open .fancybox-bg {
  opacity: 0.9;
  transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
}

.fancybox-infobar,
.fancybox-toolbar,
.fancybox-caption,
.fancybox-navigation .fancybox-button {
  direction: ltr;
  opacity: 0;
  position: absolute;
  transition: opacity 0.25s ease, visibility 0s ease 0.25s;
  visibility: hidden;
  z-index: 99997;
}

.fancybox-show-infobar .fancybox-infobar,
.fancybox-show-toolbar .fancybox-toolbar,
.fancybox-show-caption .fancybox-caption,
.fancybox-show-nav .fancybox-navigation .fancybox-button {
  opacity: 1;
  transition: opacity 0.25s ease 0s, visibility 0s ease 0s;
  visibility: visible;
}

.fancybox-infobar {
  color: #ccc;
  font-size: 13px;
  -webkit-font-smoothing: subpixel-antialiased;
  height: 44px;
  left: 0;
  line-height: 44px;
  min-width: 44px;
  mix-blend-mode: difference;
  padding: 0 10px;
  pointer-events: none;
  top: 0;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.fancybox-toolbar {
  right: 0;
  top: 0;
}

.fancybox-stage {
  direction: ltr;
  overflow: visible;
  transform: translateZ(0);
  z-index: 99994;
}

.fancybox-is-open .fancybox-stage {
  overflow: hidden;
}

.fancybox-slide {
  -webkit-backface-visibility: hidden;
  /* Using without prefix would break IE11 */
  display: none;
  height: 100%;
  left: 0;
  outline: none;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 44px;
  position: absolute;
  text-align: center;
  top: 0;
  transition-property: transform, opacity;
  white-space: normal;
  width: 100%;
  z-index: 99994;
}

.fancybox-slide::before {
  content: "";
  display: inline-block;
  font-size: 0;
  height: 100%;
  vertical-align: middle;
  width: 0;
}

.fancybox-is-sliding .fancybox-slide,
.fancybox-slide--previous,
.fancybox-slide--current,
.fancybox-slide--next {
  display: block;
}

.fancybox-slide--image {
  overflow: hidden;
  padding: 44px 0;
}

.fancybox-slide--image::before {
  display: none;
}

.fancybox-slide--html {
  padding: 6px;
}

.fancybox-content {
  background: #fff;
  display: inline-block;
  margin: 0;
  max-width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 44px;
  position: relative;
  text-align: left;
  vertical-align: middle;
}

.fancybox-slide--image .fancybox-content {
  animation-timing-function: cubic-bezier(0.5, 0, 0.14, 1);
  -webkit-backface-visibility: hidden;
  background: transparent;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  left: 0;
  max-width: none;
  overflow: visible;
  padding: 0;
  position: absolute;
  top: 0;
  -ms-transform-origin: top left;
  transform-origin: top left;
  transition-property: transform, opacity;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  z-index: 99995;
}

.fancybox-can-zoomOut .fancybox-content {
  cursor: zoom-out;
}

.fancybox-can-zoomIn .fancybox-content {
  cursor: zoom-in;
}

.fancybox-can-swipe .fancybox-content,
.fancybox-can-pan .fancybox-content {
  cursor: -webkit-grab;
  cursor: grab;
}

.fancybox-is-grabbing .fancybox-content {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.fancybox-container [data-selectable=true] {
  cursor: text;
}

.fancybox-image,
.fancybox-spaceball {
  background: transparent;
  border: 0;
  height: 100%;
  left: 0;
  margin: 0;
  max-height: none;
  max-width: none;
  padding: 0;
  position: absolute;
  top: 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  width: 100%;
}

.fancybox-spaceball {
  z-index: 1;
}

.fancybox-slide--video .fancybox-content,
.fancybox-slide--map .fancybox-content,
.fancybox-slide--pdf .fancybox-content,
.fancybox-slide--iframe .fancybox-content {
  height: 100%;
  overflow: visible;
  padding: 0;
  width: 100%;
}

.fancybox-slide--video .fancybox-content {
  background: #000;
}

.fancybox-slide--map .fancybox-content {
  background: #e5e3df;
}

.fancybox-slide--iframe .fancybox-content {
  background: #fff;
}

.fancybox-video,
.fancybox-iframe {
  background: transparent;
  border: 0;
  display: block;
  height: 100%;
  margin: 0;
  overflow: hidden;
  padding: 0;
  width: 100%;
}

/* Fix iOS */
.fancybox-iframe {
  left: 0;
  position: absolute;
  top: 0;
}

.fancybox-error {
  background: #fff;
  cursor: default;
  max-width: 400px;
  padding: 40px;
  width: 100%;
}

.fancybox-error p {
  color: #444;
  font-size: 16px;
  line-height: 20px;
  margin: 0;
  padding: 0;
}

/* Buttons */
.fancybox-button {
  background: rgba(30, 30, 30, 0.6);
  border: 0;
  border-radius: 0;
  box-shadow: none;
  cursor: pointer;
  display: inline-block;
  height: 44px;
  margin: 0;
  padding: 10px;
  position: relative;
  transition: color 0.2s;
  vertical-align: top;
  visibility: inherit;
  width: 44px;
}

.fancybox-button,
.fancybox-button:visited,
.fancybox-button:link {
  color: #ccc;
}

.fancybox-button:hover {
  color: #fff;
}

.fancybox-button:focus {
  outline: none;
}

.fancybox-button.fancybox-focus {
  outline: 1px dotted;
}

.fancybox-button[disabled],
.fancybox-button[disabled]:hover {
  color: #888;
  cursor: default;
  outline: none;
}

/* Fix IE11 */
.fancybox-button div {
  height: 100%;
}

.fancybox-button svg {
  display: block;
  height: 100%;
  overflow: visible;
  position: relative;
  width: 100%;
}

.fancybox-button svg path {
  fill: currentColor;
  stroke-width: 0;
}

.fancybox-button--play svg:nth-child(2),
.fancybox-button--fsenter svg:nth-child(2) {
  display: none;
}

.fancybox-button--pause svg:nth-child(1),
.fancybox-button--fsexit svg:nth-child(1) {
  display: none;
}

.fancybox-progress {
  background: #ff5268;
  height: 2px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  -ms-transform: scaleX(0);
  transform: scaleX(0);
  -ms-transform-origin: 0;
  transform-origin: 0;
  transition-property: transform;
  transition-timing-function: linear;
  z-index: 99998;
}

/* Close button on the top right corner of html content */
.fancybox-close-small {
  background: transparent;
  border: 0;
  border-radius: 0;
  color: #ccc;
  cursor: pointer;
  opacity: 0.8;
  padding: 8px;
  position: absolute;
  right: -12px;
  top: -44px;
  z-index: 401;
}

.fancybox-close-small:hover {
  color: #fff;
  opacity: 1;
}

.fancybox-slide--html .fancybox-close-small {
  color: currentColor;
  padding: 10px;
  right: 0;
  top: 0;
}

.fancybox-slide--image.fancybox-is-scaling .fancybox-content {
  overflow: hidden;
}

.fancybox-is-scaling .fancybox-close-small,
.fancybox-is-zoomable.fancybox-can-pan .fancybox-close-small {
  display: none;
}

/* Navigation arrows */
.fancybox-navigation .fancybox-button {
  background-clip: content-box;
  height: 100px;
  opacity: 0;
  position: absolute;
  top: calc(50% - 50px);
  width: 70px;
}

.fancybox-navigation .fancybox-button div {
  padding: 7px;
}

.fancybox-navigation .fancybox-button--arrow_left {
  left: 0;
  left: env(safe-area-inset-left);
  padding: 31px 26px 31px 6px;
}

.fancybox-navigation .fancybox-button--arrow_right {
  padding: 31px 6px 31px 26px;
  right: 0;
  right: env(safe-area-inset-right);
}

/* Caption */
.fancybox-caption {
  background: linear-gradient(to top, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0.3) 50%, rgba(0, 0, 0, 0.15) 65%, rgba(0, 0, 0, 0.075) 75.5%, rgba(0, 0, 0, 0.037) 82.85%, rgba(0, 0, 0, 0.019) 88%, rgba(0, 0, 0, 0) 100%);
  bottom: 0;
  color: #eee;
  font-size: 14px;
  font-weight: 400;
  left: 0;
  line-height: 1.5;
  padding: 75px 44px 25px 44px;
  pointer-events: none;
  right: 0;
  text-align: center;
  z-index: 99996;
}

@supports (padding: max(0px)) {
  .fancybox-caption {
    padding: 75px max(44px, env(safe-area-inset-right)) max(25px, env(safe-area-inset-bottom)) max(44px, env(safe-area-inset-left));
  }
}
.fancybox-caption--separate {
  margin-top: -50px;
}

.fancybox-caption__body {
  max-height: 50vh;
  overflow: auto;
  pointer-events: all;
}

.fancybox-caption a,
.fancybox-caption a:link,
.fancybox-caption a:visited {
  color: #ccc;
  text-decoration: none;
}

.fancybox-caption a:hover {
  color: #fff;
  text-decoration: underline;
}

/* Loading indicator */
.fancybox-loading {
  animation: fancybox-rotate 1s linear infinite;
  background: transparent;
  border: 4px solid #888;
  border-bottom-color: #fff;
  border-radius: 50%;
  height: 50px;
  left: 50%;
  margin: -25px 0 0 -25px;
  opacity: 0.7;
  padding: 0;
  position: absolute;
  top: 50%;
  width: 50px;
  z-index: 99999;
}

@keyframes fancybox-rotate {
  100% {
    transform: rotate(360deg);
  }
}
/* Transition effects */
.fancybox-animated {
  transition-timing-function: cubic-bezier(0, 0, 0.25, 1);
}

/* transitionEffect: slide */
.fancybox-fx-slide.fancybox-slide--previous {
  opacity: 0;
  transform: translate3d(-100%, 0, 0);
}

.fancybox-fx-slide.fancybox-slide--next {
  opacity: 0;
  transform: translate3d(100%, 0, 0);
}

.fancybox-fx-slide.fancybox-slide--current {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

/* transitionEffect: fade */
.fancybox-fx-fade.fancybox-slide--previous,
.fancybox-fx-fade.fancybox-slide--next {
  opacity: 0;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.fancybox-fx-fade.fancybox-slide--current {
  opacity: 1;
}

/* transitionEffect: zoom-in-out */
.fancybox-fx-zoom-in-out.fancybox-slide--previous {
  opacity: 0;
  transform: scale3d(1.5, 1.5, 1.5);
}

.fancybox-fx-zoom-in-out.fancybox-slide--next {
  opacity: 0;
  transform: scale3d(0.5, 0.5, 0.5);
}

.fancybox-fx-zoom-in-out.fancybox-slide--current {
  opacity: 1;
  transform: scale3d(1, 1, 1);
}

/* transitionEffect: rotate */
.fancybox-fx-rotate.fancybox-slide--previous {
  opacity: 0;
  -ms-transform: rotate(-360deg);
  transform: rotate(-360deg);
}

.fancybox-fx-rotate.fancybox-slide--next {
  opacity: 0;
  -ms-transform: rotate(360deg);
  transform: rotate(360deg);
}

.fancybox-fx-rotate.fancybox-slide--current {
  opacity: 1;
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
}

/* transitionEffect: circular */
.fancybox-fx-circular.fancybox-slide--previous {
  opacity: 0;
  transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0);
}

.fancybox-fx-circular.fancybox-slide--next {
  opacity: 0;
  transform: scale3d(0, 0, 0) translate3d(100%, 0, 0);
}

.fancybox-fx-circular.fancybox-slide--current {
  opacity: 1;
  transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
}

/* transitionEffect: tube */
.fancybox-fx-tube.fancybox-slide--previous {
  transform: translate3d(-100%, 0, 0) scale(0.1) skew(-10deg);
}

.fancybox-fx-tube.fancybox-slide--next {
  transform: translate3d(100%, 0, 0) scale(0.1) skew(10deg);
}

.fancybox-fx-tube.fancybox-slide--current {
  transform: translate3d(0, 0, 0) scale(1);
}

/* Styling for Small-Screen Devices */
@media all and (max-height: 576px) {
  .fancybox-slide {
    padding-left: 6px;
    padding-right: 6px;
  }

  .fancybox-slide--image {
    padding: 6px 0;
  }

  .fancybox-close-small {
    right: -6px;
  }

  .fancybox-slide--image .fancybox-close-small {
    background: #4e4e4e;
    color: #f2f4f6;
    height: 36px;
    opacity: 1;
    padding: 6px;
    right: 0;
    top: 0;
    width: 36px;
  }

  .fancybox-caption {
    padding-left: 12px;
    padding-right: 12px;
  }

  @supports (padding: max(0px)) {
    .fancybox-caption {
      padding-left: max(12px, env(safe-area-inset-left));
      padding-right: max(12px, env(safe-area-inset-right));
    }
  }
}
/* Share */
.fancybox-share {
  background: #f4f4f4;
  border-radius: 3px;
  max-width: 90%;
  padding: 30px;
  text-align: center;
}

.fancybox-share h1 {
  color: #222;
  font-size: 35px;
  font-weight: 700;
  margin: 0 0 20px 0;
}

.fancybox-share p {
  margin: 0;
  padding: 0;
}

.fancybox-share__button {
  border: 0;
  border-radius: 3px;
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  line-height: 40px;
  margin: 0 5px 10px 5px;
  min-width: 130px;
  padding: 0 15px;
  text-decoration: none;
  transition: all 0.2s;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  white-space: nowrap;
}

.fancybox-share__button:visited,
.fancybox-share__button:link {
  color: #fff;
}

.fancybox-share__button:hover {
  text-decoration: none;
}

.fancybox-share__button--fb {
  background: #3b5998;
}

.fancybox-share__button--fb:hover {
  background: #344e86;
}

.fancybox-share__button--pt {
  background: #bd081d;
}

.fancybox-share__button--pt:hover {
  background: #aa0719;
}

.fancybox-share__button--tw {
  background: #1da1f2;
}

.fancybox-share__button--tw:hover {
  background: #0d95e8;
}

.fancybox-share__button svg {
  height: 25px;
  margin-right: 7px;
  position: relative;
  top: -1px;
  vertical-align: middle;
  width: 25px;
}

.fancybox-share__button svg path {
  fill: #fff;
}

.fancybox-share__input {
  background: transparent;
  border: 0;
  border-bottom: 1px solid #d7d7d7;
  border-radius: 0;
  color: #5d5b5b;
  font-size: 14px;
  margin: 10px 0 0 0;
  outline: none;
  padding: 10px 15px;
  width: 100%;
}

/* Thumbs */
.fancybox-thumbs {
  background: #ddd;
  bottom: 0;
  display: none;
  margin: 0;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  padding: 2px 2px 4px 2px;
  position: absolute;
  right: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  top: 0;
  width: 212px;
  z-index: 99995;
}

.fancybox-thumbs-x {
  overflow-x: auto;
  overflow-y: hidden;
}

.fancybox-show-thumbs .fancybox-thumbs {
  display: block;
}

.fancybox-show-thumbs .fancybox-inner {
  right: 212px;
}

.fancybox-thumbs__list {
  font-size: 0;
  height: 100%;
  list-style: none;
  margin: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 0;
  position: absolute;
  position: relative;
  white-space: nowrap;
  width: 100%;
}

.fancybox-thumbs-x .fancybox-thumbs__list {
  overflow: hidden;
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar {
  width: 7px;
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-track {
  background: #fff;
  border-radius: 10px;
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-thumb {
  background: #2a2a2a;
  border-radius: 10px;
}

.fancybox-thumbs__list a {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background-color: rgba(0, 0, 0, 0.1);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  cursor: pointer;
  float: left;
  height: 75px;
  margin: 2px;
  max-height: calc(100% - 8px);
  max-width: calc(50% - 4px);
  outline: none;
  overflow: hidden;
  padding: 0;
  position: relative;
  -webkit-tap-highlight-color: transparent;
  width: 100px;
}

.fancybox-thumbs__list a::before {
  border: 6px solid #ff5268;
  bottom: 0;
  content: "";
  left: 0;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0;
  transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  z-index: 99991;
}

.fancybox-thumbs__list a:focus::before {
  opacity: 0.5;
}

.fancybox-thumbs__list a.fancybox-thumbs-active::before {
  opacity: 1;
}

/* Styling for Small-Screen Devices */
@media all and (max-width: 576px) {
  .fancybox-thumbs {
    width: 110px;
  }

  .fancybox-show-thumbs .fancybox-inner {
    right: 110px;
  }

  .fancybox-thumbs__list a {
    max-width: calc(100% - 10px);
  }
}
/* !LEAFLET ------------------------------------------------------------------------------------------------------ */
/* required styles */
.leaflet-pane,
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-tile-container,
.leaflet-pane > svg,
.leaflet-pane > canvas,
.leaflet-zoom-box,
.leaflet-image-layer,
.leaflet-layer {
  position: absolute;
  left: 0;
  top: 0;
}

.leaflet-container {
  overflow: hidden;
}

.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -webkit-user-drag: none;
}

/* Prevents IE11 from highlighting tiles in blue */
.leaflet-tile::selection {
  background: transparent;
}

/* Safari renders non-retina tile on retina better with this, but Chrome is worse */
.leaflet-safari .leaflet-tile {
  image-rendering: -webkit-optimize-contrast;
}

/* hack that prevents hw layers "stretching" when loading new tiles */
.leaflet-safari .leaflet-tile-container {
  width: 1600px;
  height: 1600px;
  -webkit-transform-origin: 0 0;
}

.leaflet-marker-icon,
.leaflet-marker-shadow {
  display: block;
}

/* .leaflet-container svg: reset svg max-width decleration shipped in Joomla! (joomla.org) 3.x */
/* .leaflet-container img: map is broken in FF if you have max-width: 100% on tiles */
.leaflet-container .leaflet-overlay-pane svg {
  max-width: none !important;
  max-height: none !important;
}

.leaflet-container .leaflet-marker-pane img,
.leaflet-container .leaflet-shadow-pane img,
.leaflet-container .leaflet-tile-pane img,
.leaflet-container img.leaflet-image-layer,
.leaflet-container .leaflet-tile {
  max-width: none !important;
  max-height: none !important;
  width: auto;
  padding: 0;
}

.leaflet-container img.leaflet-tile {
  /* See: https://bugs.chromium.org/p/chromium/issues/detail?id=600120 */
  mix-blend-mode: plus-lighter;
}

.leaflet-container.leaflet-touch-zoom {
  -ms-touch-action: pan-x pan-y;
  touch-action: pan-x pan-y;
}

.leaflet-container.leaflet-touch-drag {
  -ms-touch-action: pinch-zoom;
  /* Fallback for FF which doesn't support pinch-zoom */
  touch-action: none;
  touch-action: pinch-zoom;
}

.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {
  -ms-touch-action: none;
  touch-action: none;
}

.leaflet-container {
  -webkit-tap-highlight-color: transparent;
}

.leaflet-container a {
  -webkit-tap-highlight-color: rgba(51, 181, 229, 0.4);
}

.leaflet-tile {
  filter: inherit;
  visibility: hidden;
}

.leaflet-tile-loaded {
  visibility: inherit;
}

.leaflet-zoom-box {
  width: 0;
  height: 0;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  z-index: 800;
}

/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */
.leaflet-overlay-pane svg {
  -moz-user-select: none;
}

.leaflet-pane {
  z-index: 400;
}

.leaflet-tile-pane {
  z-index: 200;
}

.leaflet-overlay-pane {
  z-index: 400;
}

.leaflet-shadow-pane {
  z-index: 500;
}

.leaflet-marker-pane {
  z-index: 600;
}

.leaflet-tooltip-pane {
  z-index: 650;
}

.leaflet-popup-pane {
  z-index: 700;
}

.leaflet-map-pane canvas {
  z-index: 100;
}

.leaflet-map-pane svg {
  z-index: 200;
}

.leaflet-vml-shape {
  width: 1px;
  height: 1px;
}

.lvml {
  behavior: url(#default#VML);
  display: inline-block;
  position: absolute;
}

/* control positioning */
.leaflet-control {
  position: relative;
  z-index: 800;
  pointer-events: visiblePainted;
  /* IE 9-10 doesn't have auto */
  pointer-events: auto;
}

.leaflet-top,
.leaflet-bottom {
  position: absolute;
  z-index: 1000;
  pointer-events: none;
}

.leaflet-top {
  top: 0;
}

.leaflet-right {
  right: 0;
}

.leaflet-bottom {
  bottom: 0;
}

.leaflet-left {
  left: 0;
}

.leaflet-control {
  float: left;
  clear: both;
}

.leaflet-right .leaflet-control {
  float: right;
}

.leaflet-top .leaflet-control {
  margin-top: 10px;
}

.leaflet-bottom .leaflet-control {
  margin-bottom: 10px;
}

.leaflet-left .leaflet-control {
  margin-left: 10px;
}

.leaflet-right .leaflet-control {
  margin-right: 10px;
}

/* zoom and fade animations */
.leaflet-fade-anim .leaflet-popup {
  opacity: 0;
  -webkit-transition: opacity 0.2s linear;
  -moz-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
  opacity: 1;
}

.leaflet-zoom-animated {
  -webkit-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  transform-origin: 0 0;
}

svg.leaflet-zoom-animated {
  will-change: transform;
}

.leaflet-zoom-anim .leaflet-zoom-animated {
  -webkit-transition: -webkit-transform 0.25s cubic-bezier(0, 0, 0.25, 1);
  -moz-transition: -moz-transform 0.25s cubic-bezier(0, 0, 0.25, 1);
  transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1);
}

.leaflet-zoom-anim .leaflet-tile,
.leaflet-pan-anim .leaflet-tile {
  -webkit-transition: none;
  -moz-transition: none;
  transition: none;
}

.leaflet-zoom-anim .leaflet-zoom-hide {
  visibility: hidden;
}

/* cursors */
.leaflet-interactive {
  cursor: pointer;
}

.leaflet-grab {
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: grab;
}

.leaflet-crosshair,
.leaflet-crosshair .leaflet-interactive {
  cursor: crosshair;
}

.leaflet-popup-pane,
.leaflet-control {
  cursor: auto;
}

.leaflet-dragging .leaflet-grab,
.leaflet-dragging .leaflet-grab .leaflet-interactive,
.leaflet-dragging .leaflet-marker-draggable {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: grabbing;
}

/* marker & overlays interactivity */
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-image-layer,
.leaflet-pane > svg path,
.leaflet-tile-container {
  pointer-events: none;
}

.leaflet-marker-icon.leaflet-interactive,
.leaflet-image-layer.leaflet-interactive,
.leaflet-pane > svg path.leaflet-interactive,
svg.leaflet-image-layer.leaflet-interactive path {
  pointer-events: visiblePainted;
  /* IE 9-10 doesn't have auto */
  pointer-events: auto;
}

/* visual tweaks */
.leaflet-container {
  background: #ddd;
  outline-offset: 1px;
}

.leaflet-container a {
  color: #0078a8;
}

.leaflet-zoom-box {
  border: 2px dotted #38f;
  background: rgba(255, 255, 255, 0.5);
}

/* general typography */
.leaflet-container {
  font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.5;
}

/* general toolbar styles */
.leaflet-bar {
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.65);
  border-radius: 4px;
}

.leaflet-bar a {
  background-color: #fff;
  border-bottom: 1px solid #ccc;
  width: 26px;
  height: 26px;
  line-height: 26px;
  display: block;
  text-align: center;
  text-decoration: none;
  color: black;
}

.leaflet-bar a,
.leaflet-control-layers-toggle {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  display: block;
}

.leaflet-bar a:hover,
.leaflet-bar a:focus {
  background-color: #f4f4f4;
}

.leaflet-bar a:first-child {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}

.leaflet-bar a:last-child {
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  border-bottom: none;
}

.leaflet-bar a.leaflet-disabled {
  cursor: default;
  background-color: #f4f4f4;
  color: #bbb;
}

.leaflet-touch .leaflet-bar a {
  width: 30px;
  height: 30px;
  line-height: 30px;
}

.leaflet-touch .leaflet-bar a:first-child {
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
}

.leaflet-touch .leaflet-bar a:last-child {
  border-bottom-left-radius: 2px;
  border-bottom-right-radius: 2px;
}

/* zoom control */
.leaflet-control-zoom-in,
.leaflet-control-zoom-out {
  font: bold 18px "Lucida Console", Monaco, monospace;
  text-indent: 1px;
}

.leaflet-touch .leaflet-control-zoom-in,
.leaflet-touch .leaflet-control-zoom-out {
  font-size: 22px;
}

/* layers control */
.leaflet-control-layers {
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.4);
  background: #fff;
  border-radius: 5px;
}

.leaflet-control-layers-toggle {
  background-image: url(../img/leaflet/layers.png);
  width: 36px;
  height: 36px;
}

.leaflet-retina .leaflet-control-layers-toggle {
  background-image: url(../img/leaflet/layers-2x.png);
  background-size: 26px 26px;
}

.leaflet-touch .leaflet-control-layers-toggle {
  width: 44px;
  height: 44px;
}

.leaflet-control-layers .leaflet-control-layers-list,
.leaflet-control-layers-expanded .leaflet-control-layers-toggle {
  display: none;
}

.leaflet-control-layers-expanded .leaflet-control-layers-list {
  display: block;
  position: relative;
}

.leaflet-control-layers-expanded {
  padding: 6px 10px 6px 6px;
  color: #333;
  background: #fff;
}

.leaflet-control-layers-scrollbar {
  overflow-y: scroll;
  overflow-x: hidden;
  padding-right: 5px;
}

.leaflet-control-layers-selector {
  margin-top: 2px;
  position: relative;
  top: 1px;
}

.leaflet-control-layers label {
  display: block;
  font-size: 13px;
  font-size: 1.08333em;
}

.leaflet-control-layers-separator {
  height: 0;
  border-top: 1px solid #ddd;
  margin: 5px -10px 5px -6px;
}

/* Default icon URLs */
.leaflet-default-icon-path {
  /* used only in path-guessing heuristic, see L.Icon.Default */
  background-image: url(../img/leaflet/marker-icon.png);
}

/* attribution and scale controls */
.leaflet-container .leaflet-control-attribution {
  background: #fff;
  background: rgba(255, 255, 255, 0.8);
  margin: 0;
}

.leaflet-control-attribution,
.leaflet-control-scale-line {
  padding: 0 5px;
  color: #333;
  line-height: 1.4;
}

.leaflet-control-attribution a {
  text-decoration: none;
}

.leaflet-control-attribution a:hover,
.leaflet-control-attribution a:focus {
  text-decoration: underline;
}

.leaflet-attribution-flag {
  display: inline !important;
  vertical-align: baseline !important;
  width: 1em;
  height: 0.6669em;
}

.leaflet-left .leaflet-control-scale {
  margin-left: 5px;
}

.leaflet-bottom .leaflet-control-scale {
  margin-bottom: 5px;
}

.leaflet-control-scale-line {
  border: 2px solid #777;
  border-top: none;
  line-height: 1.1;
  padding: 2px 5px 1px;
  white-space: nowrap;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: rgba(255, 255, 255, 0.8);
  text-shadow: 1px 1px #fff;
}

.leaflet-control-scale-line:not(:first-child) {
  border-top: 2px solid #777;
  border-bottom: none;
  margin-top: -2px;
}

.leaflet-control-scale-line:not(:first-child):not(:last-child) {
  border-bottom: 2px solid #777;
}

.leaflet-touch .leaflet-control-attribution,
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
  box-shadow: none;
}

.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
  border: 2px solid rgba(0, 0, 0, 0.2);
  background-clip: padding-box;
}

/* popup */
.leaflet-popup {
  position: absolute;
  text-align: center;
  margin-bottom: 20px;
  min-width: 300px;
  max-width: 600px;
  width: 25vw;
}

.leaflet-popup-content-wrapper {
  padding: 1px;
  text-align: left;
  border-radius: 12px;
}

.leaflet-popup-content {
  padding: 0px;
  line-height: 1.3;
  font-size: 13px;
  font-size: 1.08333em;
  min-height: 1px;
}

.leaflet-popup-tip-container {
  width: 40px;
  height: 20px;
  position: absolute;
  left: 50%;
  margin-top: -1px;
  margin-left: -20px;
  overflow: hidden;
  pointer-events: none;
}

.leaflet-popup-tip {
  width: 17px;
  height: 17px;
  padding: 1px;
  margin: -10px auto 0;
  pointer-events: auto;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.leaflet-popup-content-wrapper,
.leaflet-popup-tip {
  background: white;
  color: #333;
  box-shadow: 0 3px 14px rgba(0, 0, 0, 0.4);
}

.leaflet-container a.leaflet-popup-close-button {
  position: absolute;
  top: 0;
  right: 0;
  border: none;
  text-align: center;
  width: 24px;
  height: 24px;
  font: 16px/24px Tahoma, Verdana, sans-serif;
  color: #757575;
  text-decoration: none;
  background: transparent;
}

.leaflet-container a.leaflet-popup-close-button:hover,
.leaflet-container a.leaflet-popup-close-button:focus {
  color: #585858;
}

.leaflet-popup-scrolled {
  overflow: auto;
}

.leaflet-oldie .leaflet-popup-content-wrapper {
  -ms-zoom: 1;
}

.leaflet-oldie .leaflet-popup-tip {
  width: 24px;
  margin: 0 auto;
  -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
  filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);
}

.leaflet-oldie .leaflet-control-zoom,
.leaflet-oldie .leaflet-control-layers,
.leaflet-oldie .leaflet-popup-content-wrapper,
.leaflet-oldie .leaflet-popup-tip {
  border: 1px solid #999;
}

/* div icon */
.leaflet-div-icon {
  background: #fff;
  border: 1px solid #666;
}

/* Tooltip */
/* Base styles for the element that has a tooltip */
.leaflet-tooltip {
  position: absolute;
  padding: 6px;
  background-color: #fff;
  border: 1px solid #fff;
  border-radius: 3px;
  color: #222;
  white-space: nowrap;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  pointer-events: none;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}

.leaflet-tooltip.leaflet-interactive {
  cursor: pointer;
  pointer-events: auto;
}

.leaflet-tooltip-top:before,
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
  position: absolute;
  pointer-events: none;
  border: 6px solid transparent;
  background: transparent;
  content: "";
}

/* Directions */
.leaflet-tooltip-bottom {
  margin-top: 6px;
}

.leaflet-tooltip-top {
  margin-top: -6px;
}

.leaflet-tooltip-bottom:before,
.leaflet-tooltip-top:before {
  left: 50%;
  margin-left: -6px;
}

.leaflet-tooltip-top:before {
  bottom: 0;
  margin-bottom: -12px;
  border-top-color: #fff;
}

.leaflet-tooltip-bottom:before {
  top: 0;
  margin-top: -12px;
  margin-left: -6px;
  border-bottom-color: #fff;
}

.leaflet-tooltip-left {
  margin-left: -6px;
}

.leaflet-tooltip-right {
  margin-left: 6px;
}

.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
  top: 50%;
  margin-top: -6px;
}

.leaflet-tooltip-left:before {
  right: 0;
  margin-right: -12px;
  border-left-color: #fff;
}

.leaflet-tooltip-right:before {
  left: 0;
  margin-left: -12px;
  border-right-color: #fff;
}

/* Printing */
@media print {
  /* Prevent printers from removing background-images of controls. */
  .leaflet-control {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }
}
.leaflet-cluster-anim .leaflet-marker-icon,
.leaflet-cluster-anim .leaflet-marker-shadow {
  -webkit-transition: -webkit-transform 0.3s ease-out, opacity 0.3s ease-in;
  -moz-transition: -moz-transform 0.3s ease-out, opacity 0.3s ease-in;
  -o-transition: -o-transform 0.3s ease-out, opacity 0.3s ease-in;
  transition: transform 0.3s ease-out, opacity 0.3s ease-in;
}

.leaflet-cluster-spider-leg {
  /* stroke-dashoffset (duration and function) should match with leaflet-marker-icon transform in order to track it exactly */
  -webkit-transition: -webkit-stroke-dashoffset 0.3s ease-out, -webkit-stroke-opacity 0.3s ease-in;
  -moz-transition: -moz-stroke-dashoffset 0.3s ease-out, -moz-stroke-opacity 0.3s ease-in;
  -o-transition: -o-stroke-dashoffset 0.3s ease-out, -o-stroke-opacity 0.3s ease-in;
  transition: stroke-dashoffset 0.3s ease-out, stroke-opacity 0.3s ease-in;
}

.marker-cluster-small {
  background-color: rgba(181, 226, 140, 0.6);
}

.marker-cluster-small div {
  background-color: rgba(110, 204, 57, 0.6);
}

.marker-cluster-medium {
  background-color: rgba(241, 211, 87, 0.6);
}

.marker-cluster-medium div {
  background-color: rgba(240, 194, 12, 0.6);
}

.marker-cluster-large {
  background-color: rgba(253, 156, 115, 0.6);
}

.marker-cluster-large div {
  background-color: rgba(241, 128, 23, 0.6);
}

/* IE 6-8 fallback colors */
.leaflet-oldie .marker-cluster-small {
  background-color: #b5e28c;
}

.leaflet-oldie .marker-cluster-small div {
  background-color: #6ecc39;
}

.leaflet-oldie .marker-cluster-medium {
  background-color: #f1d357;
}

.leaflet-oldie .marker-cluster-medium div {
  background-color: #f0c20c;
}

.leaflet-oldie .marker-cluster-large {
  background-color: #fd9c73;
}

.leaflet-oldie .marker-cluster-large div {
  background-color: #f18017;
}

.marker-cluster {
  background-clip: padding-box;
  border-radius: 20px;
}

.marker-cluster div {
  width: 30px;
  height: 30px;
  margin-left: 5px;
  margin-top: 5px;
  text-align: center;
  border-radius: 15px;
  font: 12px "Helvetica Neue", Arial, Helvetica, sans-serif;
}

.marker-cluster span {
  line-height: 30px;
}

@keyframes leaflet-gestures-fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.leaflet-container:after {
  animation: leaflet-gestures-fadein 0.8s backwards;
  color: #fff;
  font-family: "Roboto", Arial, sans-serif;
  font-size: 22px;
  justify-content: center;
  display: flex;
  align-items: center;
  padding: 15px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  z-index: 461;
  pointer-events: none;
}

.leaflet-gesture-handling-touch-warning:after,
.leaflet-gesture-handling-scroll-warning:after {
  animation: leaflet-gestures-fadein 0.8s forwards;
}

.leaflet-gesture-handling-touch-warning:after {
  content: attr(data-gesture-handling-touch-content);
}

.leaflet-gesture-handling-scroll-warning:after {
  content: attr(data-gesture-handling-scroll-content);
}

/* !RESPONSIVE ------------------------------------------------------------------------------------------------------ */
/* !RESPONSIVE LAYOUTS ------------------------------------------------------------------------------------------------------ */
@media screen and (max-width: 1920px) {
  .product__item.col__2,
.ui-group.col__2 {
    width: calc(100% / 5);
    max-width: calc(100% / 5);
  }
}
@media screen and (max-width: 1440px) {
  .product__item.col__2,
.ui-group.col__2 {
    width: calc(100% / 4);
    max-width: calc(100% / 4);
  }
}
@media screen and (max-width: 1280px) {
  .modul__download .col__4 {
    width: 50%;
    max-width: 50%;
  }

  .modul__standard .col__2 {
    width: calc(100% / 4);
    max-width: calc(100% / 4);
  }

  .modul__inhaltstypen_grid.modul__team .col__4 {
    width: calc(100% / 2);
    max-width: calc(100% / 2);
  }
}
@media screen and (max-width: 1024px) {
  .modul__link_boxen .col__3 {
    width: 50%;
    max-width: 50%;
  }

  .modul__link_boxen .col__4 {
    width: 50%;
    max-width: 50%;
  }

  .modul__standard .col__6.col__offset-3 {
    width: calc(100% / 12 * 10);
    max-width: calc(100% / 12 * 10);
    margin-left: calc(100% / 12 * 1);
  }
  .modul__standard .col__6 .col__3 {
    width: calc(100% / 2);
    max-width: calc(100% / 2);
  }
  .modul__standard .col__8.col__offset-2 {
    width: calc(100% / 12 * 10);
    max-width: calc(100% / 12 * 10);
    margin-left: calc(100% / 12 * 1);
  }
  .modul__standard .col__8 .col__3 {
    width: calc(100% / 2);
    max-width: calc(100% / 2);
  }

  #partner__content {
    width: calc(100% / 12 * 12);
    max-width: calc(100% / 12 * 12);
  }

  #partner__aside {
    width: calc(100% / 12 * 12);
    max-width: calc(100% / 12 * 12);
    background-color: #ebebeb;
  }

  #partner__aside-data {
    width: calc(100% / 12 * 12);
    max-width: calc(100% / 12 * 12);
    columns: 2;
  }

  #partner__aside .partner__aside-contact {
    width: calc(100% / 12 * 6);
    max-width: calc(100% / 12 * 6);
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
  }
  #partner__aside .partner__aside-contact img {
    margin: 0 clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem) 0 0;
  }

  .modul__table_guidelines .table_guidelines .col__table-header,
.modul__table_guidelines .table_guidelines .col__table-row {
    display: none;
  }
  .modul__table_guidelines .table_guidelines_nachricht {
    display: block;
  }
}
@media screen and (max-width: 1023px) {
  #header > .wrapper {
    padding: 10px 0;
  }

  #pagecontent {
    padding-top: 54px;
  }

  .modul__standard .modul__text.col__4 {
    width: 100%;
    max-width: 100%;
  }

  .modul__header_slider_platten .col__8,
.modul__header .col__8 {
    width: 100%;
    max-width: 100%;
  }

  .modul__hex_grid .col__4 {
    width: 50%;
    max-width: 50%;
    margin-left: 0;
  }

  .modul__newsletter .col__9 {
    width: 100%;
    max-width: 100%;
    background: rgba(0, 0, 0, 0.55);
  }
  .modul__newsletter .col__9 .col__1 {
    width: 5%;
    max-width: 5%;
  }
  .modul__newsletter .col__9 .col__1:first-of-type {
    width: 15%;
    max-width: 15%;
  }
  .modul__newsletter .col__9 .col__9 {
    width: 80%;
    max-width: 80%;
    background: none;
  }

  .modul__messen .col__4,
.modul__messen .col__8 {
    width: 50%;
    max-width: 50%;
  }

  .modul__kontakt .col__4 {
    width: calc(100% / 12 * 6);
    max-width: calc(100% / 12 * 6);
  }

  #footer__info .col__4 {
    width: 50%;
    max-width: 50%;
  }

  #footer__info #footerbox__company-social .sociallinks {
    justify-content: flex-start;
  }

  #footer__info #footerbox__company-social,
#footer__menu-secondary .footerbox,
.product__produkteigenschaften .col__3,
.product__produkteigenschaften .col__9 {
    width: 100%;
    max-width: 100%;
  }

  .product__farbcombos {
    width: 100%;
    max-width: 100%;
  }
  .product__farbcombos .col__3 {
    width: calc(100% / 3);
    max-width: calc(100% / 3);
  }

  .product__plattenbild {
    width: 100%;
    max-width: 100%;
  }

  .anchor_menu {
    margin-left: 0;
  }

  .check_icon,
.social svg {
    transform: scale(0.75);
  }

  .stars_icon {
    transform: scale(0.75) translateX(-20px);
  }

  .post__item .col__6.col__offset-1 {
    width: calc(100% / 2);
    max-width: calc(100% / 2);
    margin-left: 0;
  }

  .post__item .col__4.col__offset-1 {
    margin-left: calc(100% / 12 * 2);
  }

  .post__item.col__4 {
    width: calc(100% / 2);
    max-width: calc(100% / 2);
  }

  .post__item.col__4:nth-of-type(3) {
    display: none;
  }

  .modul__faq .col__6 {
    width: calc(100% / 12 * 10);
    max-width: calc(100% / 12 * 10);
  }

  .item__image.col__3 {
    width: calc(100% / 2);
    max-width: calc(100% / 2);
  }

  .card__item,
.card__item-hover {
    width: calc(100% / 3);
    max-width: calc(100% / 3);
  }

  .team__box.col__3 {
    width: calc(100% / 3);
    max-width: calc(100% / 3);
  }

  /* three items */
  .card__item:first-child:nth-last-child(3),
.card__item:first-child:nth-last-child(3) ~ .card__item {
    width: calc(100% / 3);
    max-width: calc(100% / 3);
  }

  /* four items */
  .card__item:first-child:nth-last-child(4),
.card__item:first-child:nth-last-child(4) ~ .card__item {
    width: calc(100% / 2);
    max-width: calc(100% / 2);
  }

  /* three items */
  .card__item-hover:first-child:nth-last-child(3),
.card__item-hover:first-child:nth-last-child(3) ~ .card__item-hover {
    width: calc(100% / 3);
    max-width: calc(100% / 3);
  }

  /* four items */
  .card__item-hover:first-child:nth-last-child(4),
.card__item-hover:first-child:nth-last-child(4) ~ .card__item-hover {
    width: calc(100% / 2);
    max-width: calc(100% / 2);
  }

  .modul__inhaltstypen_grid .col__3 {
    width: calc(100% / 2);
    max-width: calc(100% / 2);
  }

  .modul__inhaltstypen_grid .team__box .team__box-image,
.modul__standard .team__box .team__box-image {
    width: 20%;
  }

  .modul__inhaltstypen_grid .team__box .team__box-text,
.modul__standard .team__box .team__box-text {
    width: 80%;
  }
}
@media screen and (orientation: portrait) {
  .bg__responsive-image {
    max-height: 50vh;
  }
}
@media screen and (max-width: 1024px) and (orientation: portrait) {
  .product__item.col__2,
.ui-group.col__2 {
    width: calc(100% / 3);
    max-width: calc(100% / 3);
  }
}
@media screen and (max-width: 768px) {
  .wrapper {
    width: 94%;
  }

  .product__item.col__2,
.ui-group.col__2,
.product__item.col__3 {
    width: calc(100% / 3);
    max-width: calc(100% / 3);
  }

  .modul__inhaltstypen_grid.modul__product .product__item.col__3:nth-of-type(4) {
    display: none;
  }

  .modul__standard .col__2 {
    width: calc(100% / 3);
    max-width: calc(100% / 3);
  }

  .modul-partner__download .col__6 {
    width: 100%;
    max-width: 100%;
  }
}
@media screen and (max-width: 767px) {
  * {
    overflow-wrap: break-word;
    word-wrap: break-word;
    -ms-word-break: break-all;
    word-break: break-all;
    word-break: break-word;
    -ms-hyphens: auto;
    -moz-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;
  }

  .filter__accordion .col__3 {
    width: calc(100% / 3);
    max-width: calc(100% / 3);
  }

  .product__item.col__2,
.ui-group.col__2,
.product__item.col__3 {
    width: calc(100% / 3);
    max-width: calc(100% / 3);
  }

  .product__bilder .col__4 {
    width: calc(100% / 12 * 6);
    max-width: calc(100% / 12 * 6);
  }

  .modul__header .col__6 {
    width: calc(100% / 12 * 10);
    max-width: calc(100% / 12 * 10);
  }

  .modul__kontakt .col__4 {
    width: calc(100% / 12 * 12);
    max-width: calc(100% / 12 * 12);
  }

  .modul__kontakt .col__6 {
    width: calc(100% / 12 * 10);
    max-width: calc(100% / 12 * 10);
  }

  .modul__bildergalerie_slider .col__10.col__offset-1,
.modul__bildergalerie_slider .col__8.col__offset-2,
.modul__bildergalerie_slider .col__6.col__offset-3 {
    width: calc(100% / 12 * 10);
    max-width: calc(100% / 12 * 10);
    margin-left: calc(100% / 12 * 1);
  }

  .item__image.col__3 {
    width: calc(100% / 2);
    max-width: calc(100% / 2);
  }

  .product__textblock_produktgruppen .col__6.col__offset-3 {
    width: calc(100% / 12 * 10);
    max-width: calc(100% / 12 * 10);
    margin-left: calc(100% / 12 * 1);
  }

  .product__bilderdownloads .col__2,
.product__produkteigenschaften .col__2 {
    width: calc(100% / 12 * 3);
    max-width: calc(100% / 12 * 3);
  }

  .product__verarbeitung .col__6 {
    width: calc(100% / 12 * 12);
    max-width: calc(100% / 12 * 12);
    margin-left: 0;
  }

  .post__item .col__6.col__offset-1,
.post__item .col__6,
.post__item .col__4.col__offset-1,
.post__item .col__4 {
    width: calc(100% / 1);
    max-width: calc(100% / 1);
    margin-left: 0;
  }

  .modul__inhaltstypen_grid .col__3 .col__4 {
    width: calc(100% / 2);
    max-width: calc(100% / 2);
  }

  .post__item.col__4 {
    width: calc(100% / 1);
    max-width: calc(100% / 1);
  }

  .card__item,
.card__item-hover {
    width: calc(100% / 2);
    max-width: calc(100% / 2);
  }

  .modul__standard .col__2 {
    width: calc(100% / 2);
    max-width: calc(100% / 2);
  }
  .modul__standard .col__6 .col__4, .modul__standard .col__8 .col__4, .modul__standard .col__10 .col__4, .modul__standard .full .col__4 {
    width: calc(100%);
    max-width: calc(100%);
  }
  .modul__standard .col__10.col__offset-1 {
    width: calc(100% / 12 * 10);
    max-width: calc(100% / 12 * 10);
    margin-left: calc(100% / 12 * 1);
  }
  .modul__standard .col__10 .col__3, .modul__standard .col__12 .col__3 {
    width: calc(100% / 2);
    max-width: calc(100% / 2);
  }
  .modul__standard .col__10.col__offset-1 {
    width: calc(100% / 12 * 12);
    max-width: calc(100% / 12 * 12);
    margin-left: 0;
  }

  .single-product .col__1 {
    min-width: 80px;
  }

  #partner__content {
    width: calc(100% / 12 * 12);
    max-width: calc(100% / 12 * 12);
  }

  #partner__content .col__10.col__offset-1, #partner__content .col__8.col__offset-2, #partner__content .col__6.col__offset-3 {
    width: calc(100% / 12 * 12);
    max-width: calc(100% / 12 * 12);
    margin-left: 0;
  }

  #partner__aside-data {
    width: calc(100% / 12 * 12);
    max-width: calc(100% / 12 * 12);
    columns: 1;
  }

  #partner__aside .partner__aside-contact {
    width: calc(100% / 12 * 12);
    max-width: calc(100% / 12 * 12);
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
  }
  #partner__aside .partner__aside-contact img {
    margin: 0 calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 0.5) 0 0;
  }

  .modul__404 .col__6.col__offset-3 {
    width: calc(100% / 12 * 12);
    max-width: calc(100% / 12 * 12);
    margin-left: 0;
  }

  .modul__search .col__8 {
    width: calc(100% / 12 * 12);
    max-width: calc(100% / 12 * 12);
  }

  .modul__download .col__4 {
    width: 100%;
    max-width: 100%;
  }

  .modul__faq .col__6 {
    width: calc(100% / 12 * 12);
    max-width: calc(100% / 12 * 12);
  }

  .modul__produkt .product__item-std,
.modul__team-std .team__box {
    width: calc(100% / 12 * 4);
    max-width: calc(100% / 12 * 4);
  }

  .modul__inhaltstypen_grid.modul__team .col__4 {
    width: calc(100% / 1);
    max-width: calc(100% / 1);
  }
}
@media screen and (max-width: 600px) {
  .projekt__list-item .col__1,
.projekt__list-header .col__1 {
    width: calc(100% / 12 * 2);
    max-width: calc(100% / 12 * 2);
  }
  .projekt__list-item .col__11,
.projekt__list-header .col__11 {
    width: calc(100% / 12 * 10);
    max-width: calc(100% / 12 * 10);
    padding: clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  }
  .projekt__list-item .col__11 .col__padding1,
.projekt__list-header .col__11 .col__padding1 {
    padding: 0;
  }
  .projekt__list-item .col__5, .projekt__list-item .col__3,
.projekt__list-header .col__5,
.projekt__list-header .col__3 {
    width: 100%;
    max-width: 100%;
  }

  .projekt__list-header .col__11 {
    padding: 0 clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem);
  }

  .filter__accordion .col__3 {
    width: calc(100% / 2);
    max-width: calc(100% / 2);
  }

  .flag::after {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }

  .product__item.col__2,
.ui-group.col__2,
.product__item.col__3 {
    width: calc(100% / 2);
    max-width: calc(100% / 2);
  }

  .modul__zweispaltig .zweispaltig__item.col__6,
.modul__inhaltstypen_grid.modul__team .col__6 {
    width: calc(100% / 12 * 12);
    max-width: calc(100% / 12 * 12);
  }

  .modul__inhaltstypen_grid.modul__product .product__item.col__3:nth-of-type(4) {
    display: inherit;
  }

  .modul__bildergalerie_slider .col__10.col__offset-1,
.modul__bildergalerie_slider .col__8.col__offset-2,
.modul__bildergalerie_slider .col__6.col__offset-3 {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
  }

  .modul__faq .col__8 {
    width: calc(100% / 12 * 11);
    max-width: calc(100% / 12 * 11);
  }

  /* three items */
  .card__item:first-child:nth-last-child(3),
.card__item:first-child:nth-last-child(3) ~ .card__item {
    width: calc(100% / 1);
    max-width: calc(100% / 1);
  }

  /* four items */
  .card__item:first-child:nth-last-child(4),
.card__item:first-child:nth-last-child(4) ~ .card__item {
    width: calc(100% / 1);
    max-width: calc(100% / 1);
  }

  /* three items */
  .card__item-hover:first-child:nth-last-child(3),
.card__item-hover:first-child:nth-last-child(3) ~ .card__item-hover {
    width: calc(100% / 1);
    max-width: calc(100% / 1);
  }

  /* four items */
  .card__item-hover:first-child:nth-last-child(4),
.card__item-hover:first-child:nth-last-child(4) ~ .card__item-hover {
    width: calc(100% / 1);
    max-width: calc(100% / 1);
  }

  .card__item,
.card__item-hover {
    width: calc(100% / 1);
    max-width: calc(100% / 1);
  }

  .card__item,
.card__item-hover {
    margin-bottom: calc(clamp(0.875rem, calc(0.825rem + 0.25vw), 1.125rem)* 1.5);
  }

  .modul__link_boxen .col__3,
.modul__link_boxen .col__4,
.modul__link_boxen .col__6 {
    width: calc(100% / 12 * 12);
    max-width: calc(100% / 12 * 12);
  }

  .item__image.col__3 {
    width: calc(100% / 1);
    max-width: calc(100% / 1);
  }

  .modul__standard .col__6 .col__4, .modul__standard .col__8 .col__4 {
    width: calc(100%);
    max-width: calc(100%);
  }
  .modul__standard .col__10.col__offset-1 {
    width: calc(100% / 12 * 12);
    max-width: calc(100% / 12 * 12);
    margin-left: 0;
  }
  .modul__standard .col__10 .col__4, .modul__standard .col__12 .col__4 {
    width: calc(100% / 1);
    max-width: calc(100% / 1);
  }
  .modul__standard .col__10.col__offset-1 {
    width: calc(100% / 12 * 12);
    max-width: calc(100% / 12 * 12);
    margin-left: 0;
  }

  .modul__standard.full .col__6 {
    width: calc(100%);
    max-width: calc(100%);
  }

  .modul__projektbeschreibung .col__6.col__offset-1, .modul__projektbeschreibung .col__4.col__offset-1 {
    width: calc(100% / 12 * 10);
    max-width: calc(100% / 12 * 10);
    margin-left: 0;
  }

  .product__kombination .col__3,
.product__produkteigenschaften .col__2 {
    width: calc(100% / 12 * 6);
    max-width: calc(100% / 12 * 6);
  }

  .product__bilderdownloads .col__2 {
    width: calc(100% / 12 * 4);
    max-width: calc(100% / 12 * 4);
  }

  .col__table-info {
    padding-bottom: 0;
    font-weight: bold;
  }

  .col__table-header .col__table-info {
    display: none;
  }

  .product__preise .col__3 {
    width: 100%;
    max-width: 100%;
  }

  .product__produkteigenschaften .col__table-info {
    width: calc(100% / 1);
    max-width: calc(100% / 1);
  }

  .product__produkteigenschaften .col__table-na,
.product__produkteigenschaften .col__table-sa {
    width: calc(100% / 12 * 6);
    max-width: calc(100% / 12 * 6);
  }

  #produkteigenschaften .col__3 h3 {
    color: #d9d9d9;
    font-weight: bold;
  }

  .team__box.col__3 {
    width: calc(100% / 2);
    max-width: calc(100% / 2);
  }

  .modul__inhaltstypen_grid .col__4,
.modul__jobliste .col__4 {
    width: calc(100% / 1);
    max-width: calc(100% / 1);
  }

  .social {
    margin-right: 0px;
  }
}
@media screen and (max-width: 450px) {
  .modul__projekt_map #map h3, .modul__projekt_map #map .col__8, .modul__projekt_map #map .col__8 .col__4 {
    width: calc(100% / 1);
    max-width: calc(100% / 1);
  }
  .modul__projekt_map #map .col__mobile-5 {
    width: calc(100% / 2);
    max-width: calc(100% / 2);
  }
  .modul__projekt_map #map hr {
    width: 100%;
  }

  #footer__info .col__4 {
    width: calc(100% / 1);
    max-width: calc(100% / 1);
  }

  .wrapper {
    width: 96%;
  }

  .modul__header .col__6 {
    width: calc(100% / 12 * 12);
    max-width: calc(100% / 12 * 12);
  }

  .modul__standard .col__8 {
    width: calc(100% / 12 * 10);
    max-width: calc(100% / 12 * 10);
  }
  .modul__standard .col__6 .col__4, .modul__standard .col__8 .col__4 {
    width: calc(100%);
    max-width: calc(100%);
  }
  .modul__standard .col__10.col__offset-1, .modul__standard .col__8.col__offset-2, .modul__standard .col__6.col__offset-3 {
    width: calc(100% / 12 * 12);
    max-width: calc(100% / 12 * 12);
    margin-left: 0;
  }
  .modul__standard .col__8 .col__3, .modul__standard .col__8 .col__4, .modul__standard .col__8 .col__6, .modul__standard .col__10 .col__3, .modul__standard .col__10 .col__4, .modul__standard .col__10 .col__6, .modul__standard .col__12 .col__3, .modul__standard .col__12 .col__4, .modul__standard .col__12 .col__6 {
    width: calc(100% / 1);
    max-width: calc(100% / 1);
  }
  .modul__standard .col__10.col__offset-1 {
    width: calc(100% / 12 * 12);
    max-width: calc(100% / 12 * 12);
    margin-left: 0;
  }
  .modul__standard .col__12 .col__9 {
    width: calc(100% / 12 * 11);
    max-width: calc(100% / 12 * 11);
  }

  .modul__inhaltstypen_grid .modul__headline {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
  }

  .modul__inhaltstypen_grid .modul__headline .text__align-right {
    text-align: left;
  }
}
/* !TEXTMARKIERUNGEN ------------------------------------------------------------------------------------------------------ */
::-moz-selection {
  background: rgba(35, 66, 144, 0.9);
  color: white !important;
  text-shadow: none;
}

::selection {
  background: rgba(35, 66, 144, 0.9);
  color: white !important;
  text-shadow: none;
}

.no__scrollbar::-webkit-scrollbar {
  display: none;
}

/* !ANIMATE.CSS KLASSEN ------------------------------------------------------------------------------------------------------ */
/*!
Animate.css - http://daneden.me/animate
Licensed under the MIT license - http://opensource.org/licenses/MIT
Copyright (c) 2015 Daniel Eden
*/
body {
  -webkit-backface-visibility: hidden;
}

.animated {
  -webkit-animation-duration: calc(1s);
  animation-duration: calc(1s);
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
.animated.infinite {
  animation-iteration-count: infinite;
}
.animated.hinge {
  -webkit-animation-duration: calc(1s * 2);
  animation-duration: calc(1s * 2);
}
.animated.bounceIn, .animated.bounceOut {
  -webkit-animation-duration: calc(1s * 0.75);
  animation-duration: calc(1s * 0.75);
}
.animated.flipOutX, .animated.flipOutY {
  -webkit-animation-duration: calc(1s * 0.75);
  animation-duration: calc(1s * 0.75);
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

@-webkit-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@keyframes fadeInDownBig {
  0% {
    opacity: 0;
    transform: translateY(-2000px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
}

@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@keyframes fadeInLeft {
  0% {
    opacity: 0;
    transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    transform: translateX(-2000px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}

@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@keyframes fadeInRight {
  0% {
    opacity: 0;
    transform: translateX(20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@keyframes fadeInRightBig {
  0% {
    opacity: 0;
    transform: translateX(2000px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}

@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

@-webkit-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@keyframes fadeInUpBig {
  0% {
    opacity: 0;
    transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@-webkit-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(20px);
  }
}
@keyframes fadeOutDown {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(20px);
  }
}
.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}

@-webkit-keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
  }
}
@keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(2000px);
  }
}
.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig;
}

@-webkit-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
  }
}
@keyframes fadeOutLeft {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-20px);
  }
}
.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}

@-webkit-keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
  }
}
@keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-2000px);
  }
}
.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig;
}

@-webkit-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(20px);
  }
}
@keyframes fadeOutRight {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(20px);
  }
}
.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}

@-webkit-keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
  }
}
@keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(2000px);
  }
}
.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig;
}

@-webkit-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
  }
}
@keyframes fadeOutUp {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-20px);
  }
}
.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}

@-webkit-keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
  }
}
@keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-2000px);
  }
}
.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig;
}

/*# sourceMappingURL=main.css.map */
