@charset "UTF-8";
/*
///########################################################################
///########################################################################
///
///------------------------ designed - created - hosted | by HeiCom Systems
///
///########################################################################
///########################################################################
*/
/*
///########################################################################
///------------------- 01 Allgemein
///########################################################################
*/
/* ---------------------------------------------------------- Satoshi */
@font-face {
  font-family: "Satoshi";
  font-weight: 300;
  font-display: swap;
  font-style: normal;
  src: url("/wp-content/themes/heicom-systems/fonts/Satoshi-Light.woff2") format("woff2"), url("/wp-content/themes/heicom-systems/fonts/Satoshi-Light.woff") format("woff");
}
@font-face {
  font-family: "Satoshi";
  font-weight: 400;
  font-display: swap;
  font-style: normal;
  src: url("/wp-content/themes/heicom-systems/fonts/Satoshi-Regular.woff2") format("woff2"), url("/wp-content/themes/heicom-systems/fonts/Satoshi-Regular.woff") format("woff");
}
@font-face {
  font-family: "Satoshi";
  font-weight: 700;
  font-display: swap;
  font-style: normal;
  src: url("/wp-content/themes/heicom-systems/fonts/Satoshi-Bold.woff2") format("woff2"), url("/wp-content/themes/heicom-systems/fonts/Satoshi-Bold.woff") format("woff");
}
@font-face {
  font-family: "Satoshi";
  font-weight: 900;
  font-display: swap;
  font-style: normal;
  src: url("/wp-content/themes/heicom-systems/fonts/Satoshi-Black.woff2") format("woff2"), url("/wp-content/themes/heicom-systems/fonts/Satoshi-Black.woff") format("woff");
}
.box--xl {
  max-width: 1200px;
}
.box--l {
  max-width: 1000px;
}
.box--m {
  max-width: 800px;
}
.box--s {
  max-width: 600px;
}
.box--xs {
  max-width: 400px;
}
@keyframes key--fade-in-left {
  from {
    opacity: 0;
    transform: translate3d(-100px, 0, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes key--fade-in-bottom {
  from {
    opacity: 0;
    transform: translate3d(0, 100px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes key--fade-in-top {
  from {
    opacity: 0;
    transform: translate3d(0, -100px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes key--fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes key--zoom-out {
  0% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
body {
  scroll-behavior: smooth;
}
* {
  transition: all 0.1s ease;
}
.centered {
  text-align: center;
  justify-content: center;
  align-content: center;
  align-items: center;
  align-self: center;
}
.hyphens {
  hyphens: auto !important;
}
.hyphens h1, .hyphens h2, .hyphens h3, .hyphens h4, .hyphens p, .hyphens a, .hyphens li, .hyphens span {
  hyphens: auto !important;
}
.no-select {
  user-select: none;
}
.subscript {
  font-weight: 300;
  opacity: 0.7;
  font-size: var(--fluid-text-xs);
  margin-left: 0.5rem;
  letter-spacing: 0.02em;
}
/*
.vorlage--dev {
	// flex: grow shrink basis
	
	flex: 0 1 300px; // auf kind, kinder so klein wie möglich, nie kleiner als 300px, kinder unterschiedlich breit
	flex: 1 0 300px; // auf kind, kinder gleich groß, bei flex wrap gleich verteilt auf reihe. Minimum 300px
	flex: 0 1 0; // auf kind, kinder so klein wie der Inhalt
	
	width: max-content; // führt zu overflow
	width: min-content; // bricht Sätze zu früh um
	width: fit-content; // besser
	
	// alternativ:
	min-width: min-content;
	max-width: max-content;
	widht: auto;
	
	
	// strechd cards (genau 500px), mobile einzelen card genau 500px
	flex: 0 1 500px;
	width: fit-content;
	
	
	// strechd cards (min 500px oder mehr), mobile einzele card volle Breite
	flex: 1 0 500px;
	width: fit-content;
	
	// streched cards, mobile klein wie möglich in Reihe, einzelne cards aber 100% breite
	flex: 1 0 0;
	min-width: min-content;
	
	// fixe breite der cards (400px), kann auch auf 300 schrumpfen, einzele card 100%
	flex: 1 0 400px;
	min-width: 300px;
	
	
	// fixe breite der cards (400px), kann auch auf 300 schrumpfen, einzele card max 500px
	flex: 1 0 400px;
	max-width: 500px;
	min-width: 300px;
	
	// card 400px breit, kann mehr werden falls platz ist, einzelne card 100%
	flex: 1 1 400px;
	
	// card 400px breit, kann 500px falls platz ist, einzelne card 100% aber max 500px
	flex: 1 1 400px;
	max-width: 500px;
}
*/
@media (max-width: 768px) {
  .hide-on-tablet {
    display: none;
  }
}
@media (max-width: 500px) {
  .hide-on-mobile {
    display: none;
  }
}
[class*="_ctr"] {
  padding: 10rem 3rem;
}
[class*="_ctr"].zero {
  padding: 0;
}
[class*="_ctr"].zero--top {
  padding-top: 0;
}
[class*="_ctr"].zero--bottom {
  padding-bottom: 0;
}
[class*="_ctr"].zero--left {
  padding-left: 0;
}
[class*="_ctr"].zero--right {
  padding-right: 0;
}
[class*="_ctr"].min {
  padding: 3rem;
}
[class*="_ctr"].min--top {
  padding-top: 3rem;
}
[class*="_ctr"].min--bottom {
  padding-bottom: 3rem;
}
[class*="_ctr"].min--left {
  padding-left: 3rem;
}
[class*="_ctr"].min--right {
  padding-right: 3rem;
}
.fixed_ctr {
  width: 100%;
  max-width: 1800px;
}
.full_ctr {
  width: 100%;
}
@media (max-width: 1920px) {
  .fixed_ctr {
    max-width: 1550px;
  }
}
@media (max-width: 1600px) {
  .fixed_ctr {
    max-width: 1300px;
  }
}
@media (max-width: 1366px) {
  .fixed_ctr {
    max-width: 1024px;
  }
  [class*="_ctr"] {
    padding: 8rem 3rem;
  }
}
@media (max-width: 1024px) {
  .fixed_ctr {
    max-width: 100%;
  }
  [class*="_ctr"] {
    padding: 6rem 3rem;
  }
}
@media (max-width: 768px) {
  [class*="_ctr"] {
    padding: 4rem 2rem;
  }
  [class*="_ctr"].min {
    padding: 2rem;
  }
  [class*="_ctr"].min--top {
    padding-top: 2rem;
  }
  [class*="_ctr"].min--bottom {
    padding-bottom: 2rem;
  }
  [class*="_ctr"].min--left {
    padding-left: 2rem;
  }
  [class*="_ctr"].min--right {
    padding-right: 2rem;
  }
}
@media (max-width: 500px) {
  [class*="_ctr"] {
    padding: 3rem 1.5rem;
  }
  [class*="_ctr"].min {
    padding: 1.5rem;
  }
  [class*="_ctr"].min--top {
    padding-top: 1.5rem;
  }
  [class*="_ctr"].min--bottom {
    padding-bottom: 1.5rem;
  }
  [class*="_ctr"].min--left {
    padding-left: 1.5rem;
  }
  [class*="_ctr"].min--right {
    padding-right: 1.5rem;
  }
}
.justify-start {
  justify-content: flex-start;
}
.justify-end {
  justify-content: flex-end;
}
.justify-center {
  justify-content: center;
}
.justify-between {
  justify-content: space-between;
}
.justify-around {
  justify-content: space-around;
}
.justify-evenly {
  justify-content: space-evenly;
}
.justify-items-start {
  justify-items: start;
}
.justify-items-end {
  justify-items: end;
}
.justify-items-center {
  justify-items: center;
}
.justify-items-stretch {
  justify-items: stretch;
}
.justify-self-auto {
  justify-self: auto;
}
.justify-self-start {
  justify-self: start;
}
.justify-self-end {
  justify-self: end;
}
.justify-self-center {
  justify-self: center;
}
.justify-self-stretch {
  justify-self: stretch;
}
.content-center {
  align-content: center;
}
.content-start {
  align-content: flex-start;
}
.content-end {
  align-content: flex-end;
}
.content-between {
  align-content: space-between;
}
.content-around {
  align-content: space-around;
}
.content-evenly {
  align-content: space-evenly;
}
.content-baseline {
  align-content: baseline;
}
.items-start {
  align-items: flex-start;
}
.items-end {
  align-items: flex-end;
}
.items-center {
  align-items: center;
}
.items-baseline {
  align-items: baseline;
}
.items-stretch {
  align-items: stretch;
}
.self-auto {
  align-self: auto;
}
.self-start {
  align-self: flex-start;
}
.self-end {
  align-self: flex-end;
}
.self-center {
  align-self: center;
}
.self-stretch {
  align-self: stretch;
}
.self-baseline {
  align-self: baseline;
}
.place-content-center {
  place-content: center;
}
.place-content-start {
  place-content: start;
}
.place-content-end {
  place-content: end;
}
.place-content-between {
  place-content: space-between;
}
.place-content-around {
  place-content: space-around;
}
.place-content-evenly {
  place-content: space-evenly;
}
.place-content-baseline {
  place-content: baseline;
}
.place-content-stretch {
  place-content: stretch;
}
.place-items-start {
  place-items: start;
}
.place-items-end {
  place-items: end;
}
.place-items-center {
  place-items: center;
}
.place-items-baseline {
  place-items: baseline;
}
.place-items-stretch {
  place-items: stretch;
}
.place-self-auto {
  place-self: auto;
}
.place-self-start {
  place-self: start;
}
.place-self-end {
  place-self: end;
}
.place-self-center {
  place-self: center;
}
.place-self-stretch {
  place-self: stretch;
}
.mdl {
  margin: 1rem 0;
}
.mdl--s {
  margin: 0.75rem 0;
}
.mdl--l {
  margin: 1.25rem 0;
}
.mdl--zero {
  margin: 0;
}
.m--2xs, [class*="mdl"].m--2xs {
  margin: 0.5rem;
}
.m--xs, [class*="mdl"].m--xs {
  margin: 0.75rem;
}
.m--s, [class*="mdl"].m--s {
  margin: 1rem;
}
.m--m, [class*="mdl"].m--m {
  margin: 1.5rem;
}
.m--l, [class*="mdl"].m--l {
  margin: 2rem;
}
.m--xl, [class*="mdl"].m--xl {
  margin: 4rem;
}
.m--2xl, [class*="mdl"].m--2xl {
  margin: 6rem;
}
.mx--2xs, [class*="mdl"].mx--2xs {
  margin: 0 0.5rem;
}
.mx--xs, [class*="mdl"].mx--xs {
  margin: 0 0.75rem;
}
.mx--s, [class*="mdl"].mx--s {
  margin: 0 1rem;
}
.mx--m, [class*="mdl"].mx--m {
  margin: 0 1.5rem;
}
.mx--l, [class*="mdl"].mx--l {
  margin: 0 2rem;
}
.mx--xl, [class*="mdl"].mx--xl {
  margin: 0 4rem;
}
.mx--2xl, [class*="mdl"].mx--2xl {
  margin: 0 6rem;
}
.my--2xs, [class*="mdl"].my--2xs {
  margin: 0.5rem 0;
}
.my--xs, [class*="mdl"].my--xs {
  margin: 0.75rem 0;
}
.my--s, [class*="mdl"].my--s {
  margin: 1rem 0;
}
.my--m, [class*="mdl"].my--m {
  margin: 1.5rem 0;
}
.my--l, [class*="mdl"].my--l {
  margin: 2rem 0;
}
.my--xl, [class*="mdl"].my--xl {
  margin: 4rem 0;
}
.my--2xl, [class*="mdl"].my--2xl {
  margin: 6rem 0;
}
.ml--zero, [class*="mdl"].ml--zero {
  margin-left: 0;
}
.ml--2xs, [class*="mdl"].ml--2xs {
  margin-left: 0.5rem;
}
.ml--xs, [class*="mdl"].ml--xs {
  margin-left: 0.75rem;
}
.ml--s, [class*="mdl"].ml--s {
  margin-left: 1rem;
}
.ml--m, [class*="mdl"].ml--m {
  margin-left: 1.5rem;
}
.ml--l, [class*="mdl"].ml--l {
  margin-left: 2rem;
}
.ml--xl, [class*="mdl"].ml--xl {
  margin-left: 4rem;
}
.ml--2xl, [class*="mdl"].ml--2xl {
  margin-left: 6rem;
}
.mr--zero, [class*="mdl"].mr--zero {
  margin-right: 0;
}
.mr--2xs, [class*="mdl"].mr--2xs {
  margin-right: 0.5rem;
}
.mr--xs, [class*="mdl"].mr--xs {
  margin-right: 0.75rem;
}
.mr--s, [class*="mdl"].mr--s {
  margin-right: 1rem;
}
.mr--m, [class*="mdl"].mr--m {
  margin-right: 1.5rem;
}
.mr--l, [class*="mdl"].mr--l {
  margin-right: 2rem;
}
.mr--xl, [class*="mdl"].mr--xl {
  margin-right: 4rem;
}
.mr--2xl, [class*="mdl"].mr--2xl {
  margin-right: 6rem;
}
.mt--zero, [class*="mdl"].mt--zero {
  margin-top: 0;
}
.mt--2xs, [class*="mdl"].mt--2xs {
  margin-top: 0.5rem;
}
.mt--xs, [class*="mdl"].mt--xs {
  margin-top: 0.75rem;
}
.mt--s, [class*="mdl"].mt--s {
  margin-top: 1rem;
}
.mt--m, [class*="mdl"].mt--m {
  margin-top: 1.5rem;
}
.mt--l, [class*="mdl"].mt--l {
  margin-top: 2rem;
}
.mt--xl, [class*="mdl"].mt--xl {
  margin-top: 4rem;
}
.mt--2xl, [class*="mdl"].mt--2xl {
  margin-top: 6rem;
}
.mb--zero, [class*="mdl"].mb--zero {
  margin-bottom: 0;
}
.mb--2xs, [class*="mdl"].mb--2xs {
  margin-bottom: 0.5rem;
}
.mb--xs, [class*="mdl"].mb--xs {
  margin-bottom: 0.75rem;
}
.mb--s, [class*="mdl"].mb--s {
  margin-bottom: 1rem;
}
.mb--m, [class*="mdl"].mb--m {
  margin-bottom: 1.5rem;
}
.mb--l, [class*="mdl"].mb--l {
  margin-bottom: 2rem;
}
.mb--xl, [class*="mdl"].mb--xl {
  margin-bottom: 4rem;
}
.mb--2xl, [class*="mdl"].mb--2xl {
  margin-bottom: 6rem;
}
.p--2xs, [class*="mdl"].p--2xs {
  padding: 0.5rem;
}
.p--xs, [class*="mdl"].p--xs {
  padding: 0.75rem;
}
.p--s, [class*="mdl"].p--s {
  padding: 1rem;
}
.p--m, [class*="mdl"].p--m {
  padding: 1.5rem;
}
.p--l, [class*="mdl"].p--l {
  padding: 2rem;
}
.p--xl, [class*="mdl"].p--xl {
  padding: 4rem;
}
.p--2xl, [class*="mdl"].p--2xl {
  padding: 6rem;
}
.px--2xs, [class*="mdl"].px--2xs {
  padding: 0 0.5rem;
}
.px--xs, [class*="mdl"].px--xs {
  padding: 0 0.75rem;
}
.px--s, [class*="mdl"].px--s {
  padding: 0 1rem;
}
.px--m, [class*="mdl"].px--m {
  padding: 0 1.5rem;
}
.px--l, [class*="mdl"].px--l {
  padding: 0 2rem;
}
.px--xl, [class*="mdl"].px--xl {
  padding: 0 4rem;
}
.px--2xl, [class*="mdl"].px--2xl {
  padding: 0 6rem;
}
.py--2xs, [class*="mdl"].py--2xs {
  padding: 0.5rem 0;
}
.py--xs, [class*="mdl"].py--xs {
  padding: 0.75rem 0;
}
.py--s, [class*="mdl"].py--s {
  padding: 1rem 0;
}
.py--m, [class*="mdl"].py--m {
  padding: 1.5rem 0;
}
.py--l, [class*="mdl"].py--l {
  padding: 2rem 0;
}
.py--xl, [class*="mdl"].py--xl {
  padding: 4rem 0;
}
.py--2xl, [class*="mdl"].py--2xl {
  padding: 6rem 0;
}
.pl--zero, [class*="mdl"].pl--zero {
  padding-left: 0;
}
.pl--2xs, [class*="mdl"].pl--2xs {
  padding-left: 0.5rem;
}
.pl--xs, [class*="mdl"].pl--xs {
  padding-left: 0.75rem;
}
.pl--s, [class*="mdl"].pl--s {
  padding-left: 1rem;
}
.pl--m, [class*="mdl"].pl--m {
  padding-left: 1.5rem;
}
.pl--l, [class*="mdl"].pl--l {
  padding-left: 2rem;
}
.pl--xl, [class*="mdl"].pl--xl {
  padding-left: 4rem;
}
.pl--2xl, [class*="mdl"].pl--2xl {
  padding-left: 6rem;
}
.pr--zero, [class*="mdl"].pr--zero {
  padding-right: 0;
}
.pr--2xs, [class*="mdl"].pr--2xs {
  padding-right: 0.5rem;
}
.pr--xs, [class*="mdl"].pr--xs {
  padding-right: 0.75rem;
}
.pr--s, [class*="mdl"].pr--s {
  padding-right: 1rem;
}
.pr--m, [class*="mdl"].pr--m {
  padding-right: 1.5rem;
}
.pr--l, [class*="mdl"].pr--l {
  padding-right: 2rem;
}
.pr--xl, [class*="mdl"].pr--xl {
  padding-right: 4rem;
}
.pr--2xl, [class*="mdl"].pr--2xl {
  padding-right: 6rem;
}
.pt--zero, [class*="mdl"].pt--zero {
  padding-top: 0;
}
.pt--2xs, [class*="mdl"].pt--2xs {
  padding-top: 0.5rem;
}
.pt--xs, [class*="mdl"].pt--xs {
  padding-top: 0.75rem;
}
.pt--s, [class*="mdl"].pt--s {
  padding-top: 1rem;
}
.pt--m, [class*="mdl"].pt--m {
  padding-top: 1.5rem;
}
.pt--l, [class*="mdl"].pt--l {
  padding-top: 2rem;
}
.pt--xl, [class*="mdl"].pt--xl {
  padding-top: 4rem;
}
.pt--2xl, [class*="mdl"].pt--2xl {
  padding-top: 6rem;
}
.pb--zero, [class*="mdl"].pb--zero {
  padding-bottom: 0;
}
.pb--2xs, [class*="mdl"].pb--2xs {
  padding-bottom: 0.5rem;
}
.pb--xs, [class*="mdl"].pb--xs {
  padding-bottom: 0.75rem;
}
.pb--s, [class*="mdl"].pb--s {
  padding-bottom: 1rem;
}
.pb--m, [class*="mdl"].pb--m {
  padding-bottom: 1.5rem;
}
.pb--l, [class*="mdl"].pb--l {
  padding-bottom: 2rem;
}
.pb--xl, [class*="mdl"].pb--xl {
  padding-bottom: 4rem;
}
.pb--2xl, [class*="mdl"].pb--2xl {
  padding-bottom: 6rem;
}
@media (max-width: 768px) {
  .mdl {
    margin: 0.75rem 0;
  }
  .mdl--s {
    margin: 0.5rem 0;
  }
  .mdl--l {
    margin: 1rem 0;
  }
  .m--2xs, [class*="mdl"].m--2xs {
    margin: 0.25rem;
  }
  .m--xs, [class*="mdl"].m--xs {
    margin: 0.5rem;
  }
  .m--s, [class*="mdl"].m--s {
    margin: 0.75rem;
  }
  .m--m, [class*="mdl"].m--m {
    margin: 1rem;
  }
  .m--l, [class*="mdl"].m--l {
    margin: 1.5rem;
  }
  .m--xl, [class*="mdl"].m--xl {
    margin: 3.5rem;
  }
  .m--2xl, [class*="mdl"].m--2xl {
    margin: 5.5rem;
  }
  .mx--2xs, [class*="mdl"].mx--2xs {
    margin: 0 0.25rem;
  }
  .mx--xs, [class*="mdl"].mx--xs {
    margin: 0 0.5rem;
  }
  .mx--s, [class*="mdl"].mx--s {
    margin: 0 0.75rem;
  }
  .mx--m, [class*="mdl"].mx--m {
    margin: 0 1rem;
  }
  .mx--l, [class*="mdl"].mx--l {
    margin: 0 1.5rem;
  }
  .mx--xl, [class*="mdl"].mx--xl {
    margin: 0 3.5rem;
  }
  .mx--2xl, [class*="mdl"].mx--2xl {
    margin: 0 5.5rem;
  }
  .my--2xs, [class*="mdl"].my--2xs {
    margin: 0.25rem 0;
  }
  .my--xs, [class*="mdl"].my--xs {
    margin: 0.5rem 0;
  }
  .my--s, [class*="mdl"].my--s {
    margin: 0.75rem 0;
  }
  .my--m, [class*="mdl"].my--m {
    margin: 1rem 0;
  }
  .my--l, [class*="mdl"].my--l {
    margin: 1.5rem 0;
  }
  .my--xl, [class*="mdl"].my--xl {
    margin: 3.5rem 0;
  }
  .my--2xl, [class*="mdl"].my--2xl {
    margin: 5.5rem 0;
  }
  .ml--zero, [class*="mdl"].ml--zero {
    margin-left: 0;
  }
  .ml--2xs, [class*="mdl"].ml--2xs {
    margin-left: 0.25rem;
  }
  .ml--xs, [class*="mdl"].ml--xs {
    margin-left: 0.5rem;
  }
  .ml--s, [class*="mdl"].ml--s {
    margin-left: 0.75rem;
  }
  .ml--m, [class*="mdl"].ml--m {
    margin-left: 1rem;
  }
  .ml--l, [class*="mdl"].ml--l {
    margin-left: 1.5rem;
  }
  .ml--xl, [class*="mdl"].ml--xl {
    margin-left: 3.5rem;
  }
  .ml--2xl, [class*="mdl"].ml--2xl {
    margin-left: 5.5rem;
  }
  .mr--zero, [class*="mdl"].mr--zero {
    margin-right: 0;
  }
  .mr--2xs, [class*="mdl"].mr--2xs {
    margin-right: 0.25rem;
  }
  .mr--xs, [class*="mdl"].mr--xs {
    margin-right: 0.5rem;
  }
  .mr--s, [class*="mdl"].mr--s {
    margin-right: 0.75rem;
  }
  .mr--m, [class*="mdl"].mr--m {
    margin-right: 1rem;
  }
  .mr--l, [class*="mdl"].mr--l {
    margin-right: 1.5rem;
  }
  .mr--xl, [class*="mdl"].mr--xl {
    margin-right: 3.5rem;
  }
  .mr--2xl, [class*="mdl"].mr--2xl {
    margin-right: 5.5rem;
  }
  .mt--zero, [class*="mdl"].mt--zero {
    margin-top: 0;
  }
  .mt--2xs, [class*="mdl"].mt--2xs {
    margin-top: 0.25rem;
  }
  .mt--xs, [class*="mdl"].mt--xs {
    margin-top: 0.5rem;
  }
  .mt--s, [class*="mdl"].mt--s {
    margin-top: 0.75rem;
  }
  .mt--m, [class*="mdl"].mt--m {
    margin-top: 1rem;
  }
  .mt--l, [class*="mdl"].mt--l {
    margin-top: 1.5rem;
  }
  .mt--xl, [class*="mdl"].mt--xl {
    margin-top: 3.5rem;
  }
  .mt--2xl, [class*="mdl"].mt--2xl {
    margin-top: 5.5rem;
  }
  .mb--zero, [class*="mdl"].mb--zero {
    margin-bottom: 0;
  }
  .mb--2xs, [class*="mdl"].mb--2xs {
    margin-bottom: 0.25rem;
  }
  .mb--xs, [class*="mdl"].mb--xs {
    margin-bottom: 0.5rem;
  }
  .mb--s, [class*="mdl"].mb--s {
    margin-bottom: 0.75rem;
  }
  .mb--m, [class*="mdl"].mb--m {
    margin-bottom: 1rem;
  }
  .mb--l, [class*="mdl"].mb--l {
    margin-bottom: 1.5rem;
  }
  .mb--xl, [class*="mdl"].mb--xl {
    margin-bottom: 3.5rem;
  }
  .mb--2xl, [class*="mdl"].mb--2xl {
    margin-bottom: 5.5rem;
  }
  .p--2xs, [class*="mdl"].p--2xs {
    padding: 0.25rem;
  }
  .p--xs, [class*="mdl"].p--xs {
    padding: 0.5rem;
  }
  .p--s, [class*="mdl"].p--s {
    padding: 0.75rem;
  }
  .p--m, [class*="mdl"].p--m {
    padding: 1rem;
  }
  .p--l, [class*="mdl"].p--l {
    padding: 1.5rem;
  }
  .p--xl, [class*="mdl"].p--xl {
    padding: 3.5rem;
  }
  .p--2xl, [class*="mdl"].p--2xl {
    padding: 5.5rem;
  }
  .px--2xs, [class*="mdl"].px--2xs {
    padding: 0 0.25rem;
  }
  .px--xs, [class*="mdl"].px--xs {
    padding: 0 0.5rem;
  }
  .px--s, [class*="mdl"].px--s {
    padding: 0 0.75rem;
  }
  .px--m, [class*="mdl"].px--m {
    padding: 0 1rem;
  }
  .px--l, [class*="mdl"].px--l {
    padding: 0 1.5rem;
  }
  .px--xl, [class*="mdl"].px--xl {
    padding: 0 3.5rem;
  }
  .px--2xl, [class*="mdl"].px--2xl {
    padding: 0 5.5rem;
  }
  .py--2xs, [class*="mdl"].py--2xs {
    padding: 0.25rem 0;
  }
  .py--xs, [class*="mdl"].py--xs {
    padding: 0.5rem 0;
  }
  .py--s, [class*="mdl"].py--s {
    padding: 0.75rem 0;
  }
  .py--m, [class*="mdl"].py--m {
    padding: 1rem 0;
  }
  .py--l, [class*="mdl"].py--l {
    padding: 1.5rem 0;
  }
  .py--xl, [class*="mdl"].py--xl {
    padding: 3.5rem 0;
  }
  .py--2xl, [class*="mdl"].py--2xl {
    padding: 5.5rem 0;
  }
  .pl--zero, [class*="mdl"].pl--zero {
    padding-left: 0;
  }
  .pl--2xs, [class*="mdl"].pl--2xs {
    padding-left: 0.25rem;
  }
  .pl--xs, [class*="mdl"].pl--xs {
    padding-left: 0.5rem;
  }
  .pl--s, [class*="mdl"].pl--s {
    padding-left: 0.75rem;
  }
  .pl--m, [class*="mdl"].pl--m {
    padding-left: 1rem;
  }
  .pl--l, [class*="mdl"].pl--l {
    padding-left: 1.5rem;
  }
  .pl--xl, [class*="mdl"].pl--xl {
    padding-left: 3.5rem;
  }
  .pl--2xl, [class*="mdl"].pl--2xl {
    padding-left: 5.5rem;
  }
  .pr--zero, [class*="mdl"].pr--zero {
    padding-right: 0;
  }
  .pr--2xs, [class*="mdl"].pr--2xs {
    padding-right: 0.25rem;
  }
  .pr--xs, [class*="mdl"].pr--xs {
    padding-right: 0.5rem;
  }
  .pr--s, [class*="mdl"].pr--s {
    padding-right: 0.75rem;
  }
  .pr--m, [class*="mdl"].pr--m {
    padding-right: 1rem;
  }
  .pr--l, [class*="mdl"].pr--l {
    padding-right: 1.5rem;
  }
  .pr--xl, [class*="mdl"].pr--xl {
    padding-right: 3.5rem;
  }
  .pr--2xl, [class*="mdl"].pr--2xl {
    padding-right: 5.5rem;
  }
  .pt--zero, [class*="mdl"].pt--zero {
    padding-top: 0;
  }
  .pt--2xs, [class*="mdl"].pt--2xs {
    padding-top: 0.25rem;
  }
  .pt--xs, [class*="mdl"].pt--xs {
    padding-top: 0.5rem;
  }
  .pt--s, [class*="mdl"].pt--s {
    padding-top: 0.75rem;
  }
  .pt--m, [class*="mdl"].pt--m {
    padding-top: 1rem;
  }
  .pt--l, [class*="mdl"].pt--l {
    padding-top: 1.5rem;
  }
  .pt--xl, [class*="mdl"].pt--xl {
    padding-top: 3.5rem;
  }
  .pt--2xl, [class*="mdl"].pt--2xl {
    padding-top: 5.5rem;
  }
  .pb--zero, [class*="mdl"].pb--zero {
    padding-bottom: 0;
  }
  .pb--2xs, [class*="mdl"].pb--2xs {
    padding-bottom: 0.25rem;
  }
  .pb--xs, [class*="mdl"].pb--xs {
    padding-bottom: 0.5rem;
  }
  .pb--s, [class*="mdl"].pb--s {
    padding-bottom: 0.75rem;
  }
  .pb--m, [class*="mdl"].pb--m {
    padding-bottom: 1rem;
  }
  .pb--l, [class*="mdl"].pb--l {
    padding-bottom: 1.5rem;
  }
  .pb--xl, [class*="mdl"].pb--xl {
    padding-bottom: 3.5rem;
  }
  .pb--2xl, [class*="mdl"].pb--2xl {
    padding-bottom: 5.5rem;
  }
}
[class*="wrapper"].grid, [class*="wrapper"].flex {
  gap: calc(4rem + 2vw);
}
[class*="wrapper"].grid.min, [class*="wrapper"].flex.min {
  gap: calc(1rem + 1vw);
}
[class*="wrapper"].gap--zero {
  gap: 0;
}
[class*="wrapper"].gap--2xs {
  gap: calc(0.5rem + 0.25vw);
}
[class*="wrapper"].gap--xs {
  gap: calc(0.75rem + 0.25vw);
}
[class*="wrapper"].gap--s {
  gap: calc(1rem + 0.5vw);
}
[class*="wrapper"].gap--m {
  gap: calc(1rem + 1vw);
}
[class*="wrapper"].gap--l {
  gap: calc(2rem + 1vw);
}
[class*="wrapper"].gap--xl {
  gap: calc(3rem + 1vw);
}
[class*="wrapper"].gap--2xl {
  gap: calc(4rem + 2vw);
}
[class*="wrapper"].gap--3xl {
  gap: calc(6rem + 2vw);
}
[class*="wrapper"].gap--4xl {
  gap: calc(8rem + 2vw);
}
[class*="wrapper"].gap--5xl {
  gap: calc(10rem + 2vw);
}
.cards_wrapper.grid, .cards_wrapper.flex {
  gap: calc(1rem + 1vw);
}
.flex {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: center;
  flex-wrap: wrap;
}
.flex > .col, .flex > div {
  flex: 1 0 300px;
}
.flex--2 > .col, .flex--2 > div {
  flex: 0 0 calc(50% - (#{$col-gap--2xl;} / 2));
}
.flex--3 > .col, .flex--3 > div {
  flex: 0 0 calc(33.333% - (#{$col-gap--2xl;} / 2));
}
.grid {
  display: grid;
  grid-auto-rows: min-content;
}
.grid--2fr {
  grid-template-columns: 1fr 1fr;
}
.grid--3fr {
  grid-template-columns: 1fr 1fr 1fr;
}
.grid--4fr {
  grid-template-columns: 1fr 1fr 1fr 1fr;
}
.grid--5fr {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
}
.grid--21fr {
  grid-template-columns: 2fr 1fr;
}
.grid--12fr {
  grid-template-columns: 1fr 2fr;
}
.grid--32fr {
  grid-template-columns: 3fr 2fr;
}
.grid--23fr {
  grid-template-columns: 2fr 3fr;
}
.grid--auto {
  grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
}
@media (max-width: 1366px) {
  .grid {
    display: grid;
  }
  .grid--2fr, .grid--3fr, .grid--4fr, .grid--5fr, .grid--21fr, .grid--12fr, .grid--32fr, .grid--23fr {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 1024px) {
  .grid {
    display: grid;
  }
  .grid--2fr, .grid--3fr, .grid--4fr, .grid--5fr, .grid--21fr, .grid--12fr, .grid--32fr, .grid--23fr {
    grid-template-columns: 1fr;
  }
}
:root {
  --fluid-text--xs: clamp(0.79rem, -0.056vw + 0.808rem, 0.72rem);
  --fluid-text--s: clamp(0.889rem, 0.009vw + 0.886rem, 0.9rem);
  --fluid-text--m: clamp(1rem, 0.1vw + 0.969rem, 1.125rem);
  --fluid-text--l: clamp(1.125rem, 0.225vw + 1.055rem, 1.406rem);
  --fluid-heading--xs: clamp(1.266rem, 0.394vw + 1.143rem, 1.758rem);
  --fluid-heading--s: clamp(1.424rem, 0.619vw + 1.23rem, 2.197rem);
  --fluid-heading--m: clamp(1.602rem, 0.916vw + 1.316rem, 2.747rem);
  --fluid-heading--l: clamp(1.802rem, 1.305vw + 1.394rem, 3.433rem);
  --fluid-heading--xl: clamp(2.027rem, 1.811vw + 1.461rem, 4.292rem);
  --fluid-heading--2xl: clamp(2.281rem, 2.467vw + 1.51rem, 5.364rem);
  --fluid-heading--3xl: clamp(2.566rem, 3.312vw + 1.531rem, 6.706rem);
}
html {
  font-size: 100% !important;
}
body {
  font-size: 1rem;
  font-size: var(--fluid-text--m);
  line-height: 1.5;
}
h1 {
  font-size: var(--fluid-heading--m);
}
h2 {
  font-size: var(--fluid-heading--s);
}
h3 {
  font-size: var(--fluid-heading--xs);
}
h4 {
  font-size: var(--fluid-text--l);
}
h5 {
  font-size: var(--fluid-text--l);
}
h6 {
  font-size: var(--fluid-text--l);
}
.heading {
  line-height: 1.1;
  font-size: var(--fluid-text--l);
}
.heading--3xl {
  font-size: var(--fluid-heading--3xl);
}
.heading--2xl {
  font-size: var(--fluid-heading--2xl);
}
.heading--xl {
  font-size: var(--fluid-heading--xl);
}
.heading--l {
  font-size: var(--fluid-heading--l);
}
.heading--m {
  font-size: var(--fluid-heading--m);
}
.heading--s {
  font-size: var(--fluid-heading--s);
}
.heading--xs {
  font-size: var(--fluid-heading--xs);
}
.text {
  font-size: 1rem;
  font-size: var(--fluid-text--m);
  line-height: 1.5;
}
.text--l {
  font-size: var(--fluid-text--l);
}
.text--s {
  font-size: var(--fluid-text--s);
}
.text--xs {
  font-size: var(--fluid-text--xs);
}
[class*="heading_wrapper"] {
  margin-bottom: 3rem;
}
.heading_wrapper--hero, .heading_wrapper--cover {
  margin-bottom: 1rem;
}
.heading_wrapper--section {
  margin-bottom: 5rem;
}
.heading_wrapper--content {
  margin-bottom: 1rem;
}
.heading_wrapper--zero {
  margin-bottom: 0;
}
h1, h2, h3, h4, h5, h6 {
  line-height: 1.1;
  margin-bottom: 1rem;
  margin-top: 1rem;
  display: block;
  font-family: "Satoshi", "Open Sans", Arial, sans-serif;
  font-weight: 700;
  font-style: normal;
  color: #333;
}
.heading, .card__heading {
  font-family: "Satoshi", "Open Sans", Arial, sans-serif;
  font-weight: 700;
  font-style: normal;
  color: #333;
  line-height: 1.1;
  width: 100%;
  hyphens: auto;
}
.heading .thin, .card__heading .thin {
  font-weight: 300;
}
.heading .bolder, .card__heading .bolder {
  font-weight: 900;
}
[class*="heading--hero"] {
  font-size: var(--fluid-heading--3xl);
  color: #fff;
}
.heading--hero--s {
  font-size: var(--fluid-heading--2xl);
}
[class*="heading--cover"] {
  font-size: var(--fluid-heading--2xl);
  color: #fff;
}
.heading--cover--s {
  font-size: var(--fluid-heading--xl);
}
[class*="heading--section"] {
  font-size: var(--fluid-heading--xl);
  position: relative;
}
.heading--section {
  /*
	&::after {
        content: "";
        width: 10rem;
        height: var(--fluid-heading--s);
        top: 50%;
        left: -1rem;
        ///background-image: url(/wp-content/uploads/signet_color.svg);
        transform: translate3d(-100%, -50%, 0);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center right;
        position: absolute;
        z-index: 9;
	}
	*/
}
.heading--section--s {
  font-size: var(--fluid-heading--l);
}
.heading--section--s::after {
  height: var(--fluid-heading--xs);
}
[class*="heading--content"] {
  font-size: var(--fluid-heading--m);
}
.heading--content--s {
  font-size: var(--fluid-heading--s);
}
[class*="heading--before"] {
  color: #2E2E2E;
  font-weight: 700;
  font-size: var(--fluid-text--m);
  max-width: 800px;
  margin-bottom: 1rem;
}
.heading--before--hero, .heading--before--cover {
  font-size: var(--fluid-text--l);
  color: #FF00FB;
}
[class*="heading--after"] {
  font-weight: 300;
  font-size: var(--fluid-heading--xs);
  max-width: 800px;
  margin-top: 0;
  filter: opacity(0.7);
  animation: none;
}
.heading--after--hero, .heading--after--cover {
  font-size: var(--fluid-heading--s);
  color: #fff;
  font-weight: 400;
}
@media (max-width: 768px) {
  .heading_wrapper {
    margin-bottom: 1.5rem;
  }
  .heading_wrapper--section {
    margin-bottom: 3rem;
  }
  .heading--section::after {
    display: none;
  }
}
body, .hcs {
  font-family: "Open Sans", "Satoshi", Arial, sans-serif;
  font-weight: 400;
  font-style: normal;
  color: #333;
}
.text a, .rich-text a {
  text-decoration: underline;
}
.text a:hover, .rich-text a:hover {
  opacity: 0.7;
}
.text blockquote, .rich-text blockquote {
  font-size: var(--fluid-text--l);
  margin-bottom: 3rem;
  border-color: #2E2E2E;
}
.text hr, .rich-text hr {
  margin: 2rem 0;
}
.text--columns, .rich-text--columns {
  column-gap: 4rem;
  margin-top: 1rem;
  column-count: 3;
  column-width: 350px;
}
.text .colored, .text.colored, .rich-text .colored, .rich-text.colored {
  color: #2E2E2E;
}
.rich-text td, .table td {
  padding: 0.3rem 2rem;
  padding-left: 0;
}
.indicator, .indicator--s {
  position: relative;
}
.indicator::before, .indicator--s::before {
  content: "";
  background-image: url(/wp-content/uploads/list-icon.svg);
  position: absolute;
  top: 50%;
  left: -1.5rem;
  width: 1rem;
  height: 100%;
  background-size: contain;
  background-position: right center;
  background-repeat: no-repeat;
  transform: translateY(-50%) translateX(-100%);
}
.indicator--s::before, .indicator--s--s::before {
  left: -2rem;
  width: 1.2rem;
  height: 1.2rem;
}
@media (max-width: 768px) {
  .indicator::before {
    left: -0.9rem;
    width: 0.7rem;
  }
  .indicator--s::before {
    left: -0.7rem;
    width: 0.5rem;
  }
}
@media (max-width: 500px) {
  .indicator::before {
    left: -0.9rem;
    width: 0.6rem;
  }
  .indicator--s::before {
    left: -0.6rem;
    width: 0.4rem;
  }
}
.text > ul, .text > ol, .card__text > ul, .card__text > ol, .rich-text > ul, .rich-text > ol {
  padding-inline-start: 1rem;
  list-style-type: square;
  margin-block-start: 1rem;
  margin-block-end: 1rem;
  margin-inline-start: 0;
  margin-inline-end: 0;
}
.text.first > ul, .text.first > ol, .card__text.first > ul, .card__text.first > ol, .rich-text.first > ul, .rich-text.first > ol {
  margin-block-start: 0;
}
.text li, .card__text li, .rich-text li {
  line-height: 1.5;
  padding: 0;
  margin: 0.3rem 0;
  padding-left: 0.5rem;
}
.text ol li, .card__text ol li, .rich-text ol li {
  padding-left: 0.5rem;
}
.text ol li::before, .card__text ol li::before, .rich-text ol li::before {
  content: none;
}
.text ol li::marker, .card__text ol li::marker, .rich-text ol li::marker {
  font-weight: bold;
}
.list--bullets ul {
  list-style: none;
}
.list--bullets li {
  padding-left: 0;
  margin-left: 0;
}
.list--bullets li::before {
  content: "•";
  color: #2E2E2E;
  font-weight: 700;
  display: inline-block;
  width: 1.1rem;
  margin-left: -1.1rem;
}
.list--icons > ul {
  list-style: none;
  padding-inline-start: 0;
  margin-left: calc(0.8rem + 0.5rem);
}
.list--icons > ul > li {
  font-weight: 700;
}
.list--icons > ul > li::before {
  content: "";
  padding-left: 0.8rem;
  background: url(/wp-content/uploads/icon.svg) no-repeat left center;
  background-size: contain;
  margin-right: 0.5rem;
  margin-left: calc((0.8rem + 0.5rem) * -1);
}
/*
///########################################################################
///------------------- 02 sections
///########################################################################
*/
.section [class*="wrapper"].spacer {
  padding: 3rem 0;
}
.section [class*="wrapper"].spacer--top {
  padding-top: 3rem;
}
.section [class*="wrapper"].spacer--bottom {
  padding-bottom: 3rem;
}
.section {
  background: #fff;
  align-items: center;
  display: flex;
  flex-direction: column;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  position: relative;
  overflow: clip;
}
.section [class*="_ctr"] {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  margin-left: auto;
  margin-right: auto;
}
.section--white, .col--white {
  background-color: #fff;
}
.section--light, .col--light {
  background-color: #F3F3F3;
}
.section--color, .col--color {
  background-color: #2E2E2E;
}
.section--dark, .col--dark {
  background-color: #363636;
}
.section--texture, .col--texture {
  background-color: #FF00FB;
  background-size: 10px;
}
.section--split .full_ctr {
  padding: 0;
}
.section--split .full_ctr .wrapper {
  gap: 0;
}
.section--split .full_ctr .col {
  display: flex;
  align-self: stretch;
  justify-content: center;
  flex-direction: column;
}
.section--split .full_ctr .col--background-image {
  align-self: stretch !important;
  background-size: cover;
  min-height: min(50vw, 50vh);
  height: auto;
}
.section--split .full_ctr .col .fixed_ctr > .inner_wrapper {
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}
.section--color, .section--dark, .section--cover, .col--color, .col--dark, .col--cover {
  color: #fff;
}
.section--color .heading, .section--color .text, .section--dark .heading, .section--dark .text, .section--cover .heading, .section--cover .text, .col--color .heading, .col--color .text, .col--dark .heading, .col--dark .text, .col--cover .heading, .col--cover .text {
  color: #fff;
}
.section--color [class*="heading--before"], .section--dark [class*="heading--before"], .section--cover [class*="heading--before"], .col--color [class*="heading--before"], .col--dark [class*="heading--before"], .col--cover [class*="heading--before"] {
  color: #2E2E2E;
}
.section--color .text strong, .section--dark .text strong, .section--cover .text strong, .col--color .text strong, .col--dark .text strong, .col--cover .text strong {
  color: #fff;
}
/*

/// --------------------------------------------------------------------- Watermarks

/// falls section bg ist color

.watermark {
	&--left, &--right {
		background-image: url(/wp-content/uploads/icon_watermark_hell.svg);
		background-repeat: no-repeat;
		background-size: 45vw auto;
		
		&.section--dark {
            background-image: url(/wp-content/uploads/icon_watermark_dunkel.svg);
        }
	}
	
	&--left {
		background-position:  bottom -10vh left -10vw;
	}
	&--right {
		background-position:  bottom -10vh right -10vw;
	}
}


/// falls section bg ist gradient über background-image

.watermark {
	position: relative;
	z-index: 1;
	&::after {
		@include pseudo-after;
		z-index: -1;
		pointer-events: none;
		background-image: url(/wp-content/uploads/Statistikbalken_grau_mit_verlauf_deckkraft_7p.svg);
    	background-repeat: no-repeat;
    	background-size: 50vw auto;
    	background-position:  bottom 0 right 5vw;
	}
	

    &.section--color {
		&::after {
        	background-image: url(/wp-content/uploads/Statistikbalken_weiss_deckkraft_13p.svg);
		}
    }
}

*/
[class*="shape-divider"] {
  position: absolute;
  width: 100%;
  height: 10vh;
  z-index: 9;
  transition: all 0.6s ease-in-out;
}
.shape-divider--bottom {
  bottom: -2px;
}
.shape-divider--bottom-reverse {
  bottom: 3px;
  transform: translateY(100%) scale(-1);
}
.shape-divider--top {
  top: -2px;
  transform: rotate(180deg);
  transform-origin: center;
}
.divider.spacer > .line, .divider.line > .line {
  display: none;
}
.divider.spacer {
  margin: 2rem auto;
}
.divider.line {
  height: 0;
  border: none;
  border-bottom: 1px solid #DFDFDF;
}
.section.divider {
  position: relative;
}
.section.divider::after {
  content: "";
  box-shadow: 0 1.5rem 1.5rem -0.5rem #000000;
  height: 3rem;
  width: 100%;
  position: absolute;
  z-index: 9;
  bottom: 0;
  pointer-events: none;
}
.section.divider {
  position: relative;
  border-bottom: 1px solid #DFDFDF;
}
.section--50vh {
  min-height: 50vh;
  min-height: 50svh;
}
.section--75vh {
  min-height: 75vh;
  min-height: 75svh;
}
.section--100vh {
  min-height: 100vh;
  min-height: 100svh;
}
@media (max-width: 768px) {
  .section--split {
    gap: 1rem;
  }
  .section--split .full_ctr .wrapper {
    flex-direction: column;
  }
  .section--split .full_ctr .col .fixed_ctr > .inner_wrapper {
    max-width: 100%;
  }
}
/*
///########################################################################
///------------------- 03 Template / Theme
///########################################################################
*/
.footer__content {
  background-color: #222;
}
.footer__imprint {
  background-color: #2E2E2E;
}
.footer__imprint [class*="_ctr"] {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
[class*="footer__heading"] {
  font-weight: 700;
  font-family: "Satoshi", "Open Sans", Arial, sans-serif;
  line-height: 1.1;
  font-size: var(--fluid-text--m);
  margin-bottom: 1rem;
  color: #BFBFBF;
}
.footer__content a, .footer__content p, .footer__content td {
  font-weight: 300;
  line-height: 1.5;
  font-size: var(--fluid-text--s);
  color: #BFBFBF;
}
.footer__content a:hover {
  text-decoration: underline;
  opacity: 1;
}
.footer__imprint a, .footer__imprint p, .footer__imprint span, .footer__imprint td {
  font-weight: 300;
  line-height: 1.5;
  font-size: var(--fluid-text--xs);
  color: #fff;
}
.footer__content .wrapper {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 6vh calc(3vw + 3rem);
  justify-content: center;
  align-self: center;
  width: fit-content;
}
.footer__content .wrapper > .col {
  flex: 1 0 auto;
  width: fit-content;
  border-left: 1px solid #DFDFDF;
  padding-left: 2rem;
  align-self: stretch;
  max-width: 500px;
  justify-content: flex-start;
  align-items: flex-start;
}
.footer__content .wrapper > .col:first-child {
  padding-left: 0;
  border-left: none;
}
.footer__logo {
  width: 200px;
  max-width: 50vw;
  align-self: flex-start;
}
.footer__info-text {
  width: 500px;
  max-width: 25vw;
}
.footer__social-icons.icon-list svg, .footer__social-icons.icon-list i, .footer__social-icons.icon-list i::before {
  font-size: var(--fluid-text--l);
  width: var(--fluid-text--l);
  height: var(--fluid-text--l);
  color: #2E2E2E;
  fill: #2E2E2E;
}
.footer__nav-links ul li a, .footer__nav-links a.nav__link {
  display: flex !important;
}
.footer__nav-links ul li a:hover, .footer__nav-links a.nav__link:hover {
  color: #2E2E2E;
}
.footer__icon-boxes.icon-boxes {
  gap: 1rem 0.5rem;
}
.footer__icon-boxes.icon-boxes .icon-box {
  width: fit-content;
}
.footer__icon-boxes.icon-boxes .icon-box .icon-box__icon {
  align-items: center;
}
.footer__icon-boxes.icon-boxes .icon-box .icon-box__icon, .footer__icon-boxes.icon-boxes .icon-box svg, .footer__icon-boxes.icon-boxes .icon-box i, .footer__icon-boxes.icon-boxes .icon-box i::before {
  font-size: var(--fluid-text--s);
  width: var(--fluid-text--s);
  height: var(--fluid-text--s);
  color: #2E2E2E;
  fill: #2E2E2E;
}
@media (max-width: 1366px) {
  .footer__content .wrapper > .col--logo {
    flex: 1 0 auto;
    width: 100%;
    padding-left: 0;
  }
}
@media (max-width: 1024px) {
  .footer__content .col_wrapper {
    justify-content: center;
  }
  .footer__imprint > div {
    justify-content: center !important;
  }
}
@media (max-width: 500px) {
  .footer__content .wrapper > .col {
    flex: 1 0 auto;
    width: 100%;
    padding-left: 0;
    border-left: none;
    justify-content: center;
    align-items: center;
    align-content: center;
    text-align: center !important;
  }
  .footer__content .wrapper > .col * {
    text-align: center;
    justify-content: center;
    align-content: center;
    align-items: center !important;
  }
}
.hcs .brx-popup {
  transition: all 0.5s ease-in-out;
}
.hcs .brx-popup-content {
  max-height: 90vh;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
  background: #fff;
  border-radius: 0.7rem;
  border: 5px solid #fff;
  width: 95%;
  max-width: 700px;
  padding: 0;
  scrollbar-width: thin;
}
.hcs .brx-popup-content::-webkit-scrollbar {
  width: 7px;
}
.hcs .brx-popup-content::-webkit-scrollbar-track {
  background: transparent;
}
.hcs .brx-popup-content::-webkit-scrollbar-thumb {
  background-color: rgba(155, 155, 155, 0.5);
  border-radius: 20px;
  border: transparent;
}
.hcs .brx-popup-backdrop {
  background-color: rgba(0, 0, 0, 0.8);
  transition: all 0.5s ease-in-out;
}
.modal__header {
  position: relative;
}
.modal__close-icon {
  position: absolute;
  top: 1rem;
  right: 1rem;
  transition: all 0.1s ease;
  cursor: pointer;
}
.modal__close-icon::before {
  color: #fff;
}
.modal__close-icon:hover {
  transform: scale(1.1);
}
.modal__close-icon:hover::before {
  font-weight: 700;
}
.modal__hero-image {
  filter: brightness(0.8);
}
.modal__heading {
  font-size: var(--fluid-heading--s);
  text-align: center;
}
.modal__heading--banner {
  font-size: var(--fluid-heading--xs);
  background: #2E2E2E;
  color: #fff;
  display: flex;
  justify-content: center;
  width: 100%;
  padding: 1rem;
}
.modal__heading--inside {
  position: absolute;
  bottom: 1rem;
  left: 50%;
  transform: translateX(-50%);
  color: #fff;
  text-shadow: 2px 2px 1rem #000;
}
.modal__text {
  text-align: center;
  color: #333;
}
.modal__close-button {
  background: #dbdbdb;
  border-radius: 0.2rem;
  width: 100% !important;
  display: flex;
  padding: 0.7rem;
  transition: all 0.1s ease;
  cursor: pointer;
  font-weight: 700;
  color: #333;
}
.modal__close-button:hover {
  background: #2E2E2E;
  color: #fff;
}
.hcs .brxe-popup-6542 .brx-popup-content {
  width: 95%;
  max-width: 1200px;
}
.modal--content .modal__text {
  text-align: left;
}
/*
///########################################################################
///------------------- 04 UI/UX
///########################################################################
*/
/*
///########################################################################
///------------------- 05 Elemente
///########################################################################
*/
.cards_wrapper.grid, .cards_wrapper.flex {
  align-items: stretch;
}
.cards_wrapper.grid .query_wrapper, .cards_wrapper.flex .query_wrapper {
  height: 100%;
}
.cards_wrapper.grid {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  justify-content: center;
  justify-items: center;
}
.cards_wrapper.grid .card {
  width: 100%;
  max-width: 450px;
}
.cards_wrapper.flex {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-self: center;
  width: fit-content;
}
.cards_wrapper.flex .card {
  flex: 1 1 300px;
  width: fit-content;
  max-width: 450px;
}
.cards_wrapper.flex .produkt-card {
  max-width: 400px;
}
.card .inner_wrapper {
  display: flex;
  padding: 2.5rem;
  gap: 1rem;
  justify-content: space-between;
}
.card.mdl {
  margin: 0;
}
a.card {
  transition: all 0.3s ease;
  animation: none !important;
}
a.card:hover {
  transform: scale(0.97);
}
.card {
  box-shadow: none;
  background: #fff;
  border-radius: 0.75rem;
  overflow: hidden;
  max-width: 450px;
  height: auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  /*
	///card watermark
	> div {
			position: relative;
			z-index: 1;
	}
	&::after{
		content:"";
		@include pseudo-after;
		background-image: url(/wp-content/uploads/card_bg-icon_white.svg);
		background-repeat: no-repeat;
		background-position: top right;
		background-size: auto 80%;
		opacity: 0.2;
		z-index: 0;	
	}
	*/
}
.card__image {
  max-height: 40vh;
  object-fit: cover;
}
.card__icon, .card__icon::before, .card svg.card__icon {
  width: 2rem;
  height: 2rem;
  font-size: 2rem;
  color: #2E2E2E;
  fill: #2E2E2E;
  display: block;
}
.card .heading-wrapper {
  margin-bottom: 2rem;
}
.card [class*="card__heading"] {
  line-height: 1.1;
  font-weight: 700;
  color: #2E2E2E;
}
.card__heading {
  font-size: var(--fluid-text--l);
}
.card__heading--s {
  font-size: var(--fluid-text--m);
  font-family: "Open Sans", "Satoshi", Arial, sans-serif;
}
.card__heading--before {
  font-size: var(--fluid-text--s);
  font-weight: 400;
  margin-bottom: 0;
  opacity: 0.8;
}
.card__text {
  font-size: var(--fluid-text--s);
  line-height: 1.5;
  color: #333;
}
.card__text--s {
  font-size: var(--fluid-text--s);
}
.card__link {
  color: #333;
  font-weight: 700;
  text-decoration: underline;
  font-size: var(--fluid-text--s);
  cursor: pointer;
  transition: all 0.3s ease;
}
.card__link:hover {
  color: #2E2E2E;
}
.card__link--disabled {
  user-select: none;
  /* Standard syntax */
}
.card--color {
  background-color: #2E2E2E;
}
.card--color .card__heading {
  color: #fff;
}
.card--color .card__text {
  color: #fff;
}
.card--centered [class*="card__"] {
  text-align: center;
  width: 100%;
  justify-content: center;
  display: flex;
}
.card--centered .inner_wrapper {
  align-items: center;
  justify-content: center;
}
@media (max-width: 1366px) {
  .card .inner_wrapper {
    padding: 2.5rem;
    gap: 2.5rem;
  }
}
@media (max-width: 768px) {
  .card .inner_wrapper {
    padding: 2rem;
    gap: 2rem;
  }
}
@media (max-width: 500px) {
  .card .inner_wrapper {
    padding: 2rem 1.5rem;
  }
}
.cover-card {
  position: relative;
  height: 40vh;
}
.cover-card .card__background, .cover-card .card__background-image, .cover-card .card__background-overlay {
  content: "";
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  margin: 0;
}
.cover-card .card__background-image {
  filter: brightness(50%);
}
.cover-card .card__background-overlay {
  mix-blend-mode: color;
  background: #2E2E2E;
}
.cover-card .card__heading, .cover-card .card__body, .cover-card .card__bg-image {
  transition: all 0.3s ease-in-out;
}
.cover-card .card__heading {
  transform: rotate(-90deg) translateX(-100%);
  transform-origin: top left;
  position: absolute;
  left: 2rem;
  top: 2rem;
  color: #fff;
}
.cover-card .card__body {
  position: absolute;
  bottom: 0;
  z-index: 9;
  color: #fff;
  transform: translateY(100%);
}
.cover-card:hover .card__heading, .cover-card:active .card__heading {
  transform: rotate(-90deg) translateX(-250%);
  opacity: 0;
}
.cover-card:hover .card__body, .cover-card:active .card__body {
  transform: translateY(0);
}
.cover-card:hover .card__bg-image, .cover-card:active .card__bg-image {
  filter: brightness(20%);
  transform: scale(1.1);
}
.review-card .image_wrapper {
  gap: 2rem 2rem;
  margin-bottom: 2rem;
}
.review-card .image_wrapper img {
  border-radius: 1rem;
  max-width: 30%;
}
.review-card .card__job {
  margin-top: 1rem;
  font-size: var(--fluid-text--s);
  font-weight: 700;
  color: #2E2E2E;
}
.review-card .card__job-link {
  font-size: var(--fluid-text--xs);
  text-decoration: underline;
}
.review-item__image {
  border-radius: 50rem;
  overflow: hidden;
}
.review-item__heading {
  font-size: var(--fluid-text--l);
}
.review-item__text {
  text-align: center;
}
.team-card {
  padding: 0;
}
.team-card .background-image_wrapper {
  height: 500px;
  max-height: 60vh;
}
.team-card .inner_wrapper {
  padding: 2rem;
}
.team-card .icon-box {
  gap: 0 0;
}
.image, .image img {
  border-radius: 1.25rem;
  overflow: hidden;
}
.image--no-radius, .image img--no-radius {
  border-radius: 0;
}
.col--background-image, .background-image {
  height: auto;
  min-height: min(55vw, 400px);
}
.image--heading {
  margin-bottom: 0.5rem;
  font-size: var(--fluid-text--l);
}
.image--caption, .image .bricks-image-caption {
  margin-top: 0.5rem;
  font-style: italic;
  font-size: var(--fluid-text--xs);
  pointer-events: none;
  background: none;
  color: #333;
}
.background-image {
  height: auto;
  min-height: min(55vw, 400px);
}
.btn, .hcs .frm_style_formidable-style.with_frm_style .frm_submit button {
  user-select: none;
  text-align: center;
  background-clip: border-box;
  display: inline-flex;
  position: relative;
  overflow: hidden;
  pointer-events: auto;
  cursor: pointer;
  z-index: 1;
  transition: all 0.3s ease;
  border: 2px solid #2E2E2E;
  border-radius: 5rem;
  box-shadow: none;
  background: #2E2E2E;
  text-decoration: none;
  text-transform: none;
  line-height: 1.5;
  font-weight: 700;
  font-size: var(--fluid-text--s);
  color: #fff;
  padding: 0.8rem 1.6rem;
  max-width: 350px;
  gap: 0.5rem;
}
.btn svg, .hcs .frm_style_formidable-style.with_frm_style .frm_submit button svg {
  width: var(--fluid-text-m);
  height: var(--fluid-text-m);
}
.btn svg polygon, .hcs .frm_style_formidable-style.with_frm_style .frm_submit button svg polygon {
  fill: #fff !important;
}
.btn:hover, .hcs .frm_style_formidable-style.with_frm_style .frm_submit button:hover {
  box-shadow: none;
  filter: brightness(1.2) opacity(0.9) drop-shadow(0 0.25rem 0.5rem rgba(0, 0, 0, 0.6));
}
.btn:active, .hcs .frm_style_formidable-style.with_frm_style .frm_submit button:active {
  top: 0.2rem;
}
.btn.btn--small, .hcs .frm_style_formidable-style.with_frm_style .frm_submit button.btn--small {
  font-size: var(--fluid-text--xs);
  padding: 0.4rem 1rem;
}
.btn.btn--small svg, .hcs .frm_style_formidable-style.with_frm_style .frm_submit button.btn--small svg {
  width: var(--fluid-text--s);
  height: var(--fluid-text--s);
}
.btn--secondary {
  color: #333;
  background: #dbdbdb;
  border-color: #dbdbdb;
}
.btn--black {
  color: #fff;
  background: #000;
  border-color: #000;
}
.btn--white {
  color: #333;
  background: #fff;
  border-color: #fff;
}
.btn--outline {
  background: transparent;
  color: #2E2E2E;
}
.btn--outline:hover {
  background: #2E2E2E;
  color: #fff;
}
.btn--outline.btn--black {
  color: #000;
}
.btn--outline.btn--black:hover {
  color: #fff;
  background: #000;
}
.btn--outline.btn--white {
  color: #fff;
}
.btn--outline.btn--white:hover {
  color: #333;
  background: #fff;
}
.hcs .frm_style_formidable-style.with_frm_style .frm_submit button {
  box-shadow: none;
  font-size: var(--fluid-text--s);
  padding: 0.4rem 1rem;
}
.hcs .frm_style_formidable-style.with_frm_style .frm_submit button:hover {
  transform: none;
  background: #2E2E2E;
  border-color: #2E2E2E;
  color: #fff;
}
.hcs .frm_style_formidable-style.with_frm_style .frm_submit button.frm_prev_page {
  filter: grayscale(1);
}
@media (max-width: 768px) {
  .btn, .hcs .frm_style_formidable-style.with_frm_style .frm_submit button {
    padding: 0.4rem 1rem;
    font-size: var(--fluid-text--xs);
  }
}
.icon, svg.icon {
  width: var(--fluid-text--l);
  height: var(--fluid-text--l);
  font-size: var(--fluid-text--l);
  color: #2E2E2E;
  fill: #2E2E2E;
}
.icon--white, svg.icon--white {
  color: #fff;
  fill: #fff;
}
.icon--2xl, svg.icon--2xl {
  width: var(--fluid-heading--l);
  height: var(--fluid-heading--l);
  font-size: var(--fluid-heading--l);
}
.icon--xl, svg.icon--xl {
  width: var(--fluid-heading--s);
  height: var(--fluid-heading--s);
  font-size: var(--fluid-heading--s);
}
.icon--l, svg.icon--l {
  width: var(--fluid-heading--xs);
  height: var(--fluid-heading--xs);
  font-size: var(--fluid-heading--xs);
}
.icon--s, svg.icon--s {
  width: var(--fluid-text--m);
  height: var(--fluid-text--m);
  font-size: var(--fluid-text--m);
}
.icon--xs, svg.icon--xs {
  width: var(--fluid-text--s);
  height: var(--fluid-text--s);
  font-size: var(--fluid-text--s);
}
.icon-list {
  gap: 1rem 2rem;
}
.icon-list li.has-link a {
  gap: 0.5rem 0.5rem;
}
.icon-list svg, .icon-list i, .icon-list i::before {
  font-size: var(--fluid-text--l);
  width: var(--fluid-text--l);
  height: var(--fluid-text--l);
  color: #2E2E2E;
  fill: #2E2E2E;
}
.icon-list li a, .icon-list span {
  font-size: var(--fluid-text--m);
}
.icon-list li a:hover span, .icon-list span:hover span {
  text-decoration: underline;
}
.icon-list--l svg, .icon-list--l i, .icon-list--l i::before {
  font-size: var(--fluid-heading--xs);
  width: var(--fluid-heading--xs);
  height: var(--fluid-heading--xs);
}
.icon-list--l li a, .icon-list--l span {
  font-size: var(--fluid-text--l);
}
.icon-list--s svg, .icon-list--s i, .icon-list--s i::before {
  font-size: var(--fluid-text--m);
  width: var(--fluid-text--m);
  height: var(--fluid-text--m);
}
.icon-list--s li a, .icon-list--s span {
  font-size: var(--fluid-text--s);
}
.icon-list--no-label {
  gap: 1rem 0.5rem;
}
.icon-list--no-label a span {
  display: none;
}
.icon-list--no-label li:hover {
  transform: scale(1.1);
}
.icon-list--buttons {
  gap: 0.5rem;
}
.icon-list--buttons li a {
  background: #2E2E2E;
  padding: 0.5rem 1rem;
}
.icon-list--buttons li a:hover {
  filter: opacity(0.9) brightness(1.2);
}
.icon-list--buttons svg, .icon-list--buttons i, .icon-list--buttons i::before {
  color: #fff;
  fill: #fff;
}
.icon-list--buttons span {
  color: #fff;
  text-decoration: none !important;
  font-weight: 500;
}
.icon-box_wrapper, .icon-boxes {
  gap: 2rem 1rem;
}
.icon-box {
  gap: 0.5rem 1rem;
}
.icon-box__icon {
  width: var(--fluid-text--l);
  height: var(--fluid-text--l);
  font-size: var(--fluid-text--l);
  fill: #2E2E2E;
}
.icon-box__link {
  font-weight: 400;
  font-style: normal;
}
.icon-box__link.bold {
  font-weight: 700;
}
.icon-box address {
  width: auto;
}
a.icon-box:hover {
  text-decoration: underline;
}
.icon-box--kontakt address {
  width: auto;
}
.icon-box--kontakt .icon-box__link.adresse {
  font-weight: 400;
}
/*
///########################################################################
///------------------- 06 Unterseiten
///########################################################################
*/
body {
  background: #fff;
}
.coming-soon_section.logo_section {
  min-height: 32vh;
  min-height: 32svh;
}
.coming-soon_section.logo_section img, .coming-soon_section.logo_section svg {
  width: 400px;
  max-height: 15vh;
  max-width: 70vw;
}
.coming-soon_section.image_section {
  position: relative;
  min-height: 32vh;
  min-height: 32svh;
}
.coming-soon_section.image_section .background_wrapper {
  overflow: hidden;
}
.coming-soon_section.image_section .background_wrapper, .coming-soon_section.image_section .background__image, .coming-soon_section.image_section .background__video, .coming-soon_section.image_section .background__image::after, .coming-soon_section.image_section .background__gradient, .coming-soon_section.image_section .background__raster {
  content: "";
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
}
.coming-soon_section.image_section .background__image {
  background-size: cover;
  background-position: bottom right;
  background-repeat: no-repeat;
  animation: zoom-out--key 15s cubic-bezier(0.33, 1, 0.68, 1) both;
  z-index: 1;
}
.coming-soon_section.image_section .background__video {
  z-index: 2;
}
.coming-soon_section.image_section .background__image::after {
  display: none;
  z-index: 2;
}
@supports (mix-blend-mode: hue) {
  .coming-soon_section.image_section .background__image::after {
    display: block;
    background-color: #2E2E2E;
    mix-blend-mode: color;
    z-index: 2;
  }
}
.coming-soon_section.image_section .background__gradient {
  display: block;
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.75) 10%, rgba(0, 0, 0, 0) 70%);
  z-index: 4;
}
.coming-soon_section.image_section .content_wrapper {
  position: relative;
  z-index: 10;
}
.coming-soon_section.image_section .content_wrapper .heading--coming-soon {
  color: #fff;
  font-size: var(--fluid-heading--m);
  text-align: center;
}
.coming-soon_section.kontakt_section {
  min-height: 32vh;
  min-height: 32svh;
}
.coming-soon_section.kontakt_section .cards_wrapper {
  gap: 1rem;
  width: 100%;
}
.coming-soon_section.kontakt_section .kontakt-card {
  gap: 1rem;
  justify-content: center;
  border: 1px dashed #C1C0C0;
  border-radius: 1rem;
  flex: 0 1 300px;
}
.coming-soon_section.kontakt_section .kontakt-card .inner_wrapper {
  justify-content: center;
}
.coming-soon_section.kontakt_section .kontakt-card i, .coming-soon_section.kontakt_section .kontakt-card i::before {
  font-size: 2rem;
  color: #2E2E2E;
}
.coming-soon_section.kontakt_section .kontakt-card .icon-box__heading, .coming-soon_section.kontakt_section .kontakt-card .icon-box__text {
  font-size: var(--fluid-text--m);
  font-weight: 700;
  margin-bottom: 0.6rem;
  text-align: center;
}
.coming-soon_section.kontakt_section .kontakt-card .icon-box__text {
  font-weight: 400;
}
/*
///########################################################################
///------------------- 07 Sonstiges
///########################################################################
*/
.logged-in .header__wrapper {
  margin-top: 2rem;
}
body.bricks-is-frontend :focus {
  outline: 0 dotted currentcolor;
}
button:focus-visible {
  outline: -webkit-focus-ring-color auto 0 !important;
}
@media (max-width: 768px) {
  .logged-in #wpadminbar {
    opacity: 0.05;
  }
}
.hero_section .background__slider, .hero_section .background__image, .hero_section .background__gradient, .hero_section .background__raster {
  animation: key--fade-in 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) 0.3s both;
}
.hero_section .heading--hero, .hero_section .heading--after--hero, .hero_section .text, .hero_section .button_wrapper {
  animation: key--hero-fade-in-bottom 0.9s cubic-bezier(0.39, 0.575, 0.565, 1) 0.3s both;
}
.hero_section .heading--after--hero {
  animation-delay: 0.4s;
}
.hero_section .text {
  animation-delay: 0.5s;
}
.hero_section .button_wrapper {
  animation-delay: 0.6s;
}
@keyframes key--hero-fade-in-bottom {
  0% {
    transform: translate3d(-75px, 0, 0);
    opacity: 0;
  }
  100% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
html.js [data-aos="hcs-aos"] .heading--section::after {
  opacity: 0;
}
html.js [data-aos="hcs-aos"].aos-animate .heading--section::after {
  animation: fade-in-left--key 1s cubic-bezier(0.39, 0.575, 0.565, 1) both;
  animation-delay: 0.6s;
}
html.js .stagger[data-aos="stagger"] [class*="mdl"]:not(.btn) {
  opacity: 0;
}
html.js .stagger.aos-animate [class*="mdl"]:not(.btn) {
  animation: stagger--auto--key 0.9s cubic-bezier(0.39, 0.575, 0.565, 1) both;
}
html.js .stagger.aos-animate [class*="mdl"]:nth-child(1):not(.btn) {
  animation-delay: 0.1s;
}
html.js .stagger.aos-animate [class*="mdl"]:nth-child(2):not(.btn) {
  animation-delay: 0.3s;
}
html.js .stagger.aos-animate [class*="mdl"]:nth-child(3):not(.btn) {
  animation-delay: 0.5s;
}
html.js .stagger.aos-animate [class*="mdl"]:nth-child(4):not(.btn) {
  animation-delay: 0.7s;
}
html.js .stagger.aos-animate [class*="mdl"]:nth-child(5):not(.btn) {
  animation-delay: 0.9s;
}
html.js .stagger.aos-animate [class*="mdl"]:nth-child(6):not(.btn) {
  animation-delay: 1.1s;
}
html.js .stagger.aos-animate [class*="mdl"]:nth-child(7):not(.btn) {
  animation-delay: 1.3s;
}
html.js .stagger.aos-animate [class*="mdl"]:nth-child(8):not(.btn) {
  animation-delay: 1.5s;
}
html.js .stagger.aos-animate [class*="mdl"]:nth-child(9):not(.btn) {
  animation-delay: 1.7s;
}
html.js .stagger.aos-animate [class*="mdl"]:nth-child(10):not(.btn) {
  animation-delay: 1.9s;
}
html.js .stagger.aos-animate [class*="mdl"]:nth-child(11):not(.btn) {
  animation-delay: 2.1s;
}
@keyframes stagger--auto--key {
  0% {
    transform: translate3d(0, 50px, 0);
    opacity: 0;
  }
  100% {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
body[data-aos-easing="ease-hcs"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-hcs"] {
  transition-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1);
}
.touch.start {
  animation: pulsate-bck 0.3s cubic-bezier(0.445, 0.05, 0.55, 0.95) both;
}
@keyframes pulsate-bck {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(0.9);
  }
  100% {
    transform: scale(1);
  }
}
.wartungsarbeiten_section {
  position: relative;
  z-index: 1;
}
.wartungsarbeiten_section::after {
  content: "";
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  background-image: linear-gradient(to bottom, black 0%, rgba(0, 0, 0, 0) 60%);
  z-index: -1;
}
.wartungsarbeiten_section .heading, .wartungsarbeiten_section .text {
  color: #fff;
}
.wartungsarbeiten_section .heading {
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.heicom-branding {
  background: #006d8a;
  background-image: linear-gradient(90deg, #06a3b5 0%, #00373e 100%);
  position: relative;
  overflow: clip;
}
.heicom-branding::after {
  content: "";
  background-image: url(/wp-content/uploads/heicom-icon.svg);
  background-repeat: no-repeat;
  background-size: auto 120%;
  background-position: center;
  position: absolute;
  z-index: 1;
  opacity: 0.1;
  top: -15%;
  bottom: -60%;
  left: 0%;
  right: 0%;
}
.heicom-branding .heading {
  font-weight: 700;
  color: #fff;
  text-align: center;
  background: transparent;
  border: 2px solid #fff;
  padding: 1rem 2rem;
  border-radius: 0.5rem;
  font-size: var(--fluid-text-l);
  width: auto;
}
.heicom-branding .logo {
  margin-bottom: 3rem;
}
.heicom-branding .logo img {
  width: 50vw;
  max-width: 350px;
  transition: all 0.3s ease;
}
.heicom-branding .logo img:hover, .heicom-branding .logo img:focus {
  transform: scale(0.95);
}
.heicom-branding .erecht-logo {
  width: 200px;
}
.noscript-style {
  padding: 2em;
  max-width: 100vw;
  text-align: center;
  color: #333;
  font-weight: 700;
  border: solid;
  border-color: #333;
  border-width: 0;
  background: #ffc800;
  position: fixed;
  width: 100%;
  left: 0;
  bottom: 0;
  z-index: 9999999;
  box-sizing: border-box;
}
.erecht_section h1, .erecht_section h2, .erecht_section h3, .erecht_section h4, .erecht_section h5, .erecht_section h6 {
  margin-bottom: 1rem;
}
.erecht_section h1, .erecht_section h2, .erecht_section h3 {
  margin-top: 3rem;
}
.erecht_section h1:first-of-type, .erecht_section h2:first-of-type, .erecht_section h3:first-of-type {
  margin-top: 0;
}
.erecht_section .cookie-informationen a._brlbs-btn-cookie-preference {
  margin: 2rem 0;
  text-decoration: none;
}
#BorlabsCookieBox .brlbs-cmpnt-container .brlbs-overflow-auto {
  overflow-y: scroll !important;
}
.image-source {
  border: 1px solid #888888;
  padding: 0.5rem;
  border-radius: 0.5rem;
}
.image-source__image {
  border-radius: 0.3rem;
  overflow: hidden;
  margin-bottom: 0.7rem;
}
.image-source__link {
  font-size: var(--fluid-text-xs);
  margin: 0.1rem 0;
}
.image-source__link span.thin {
  font-weight: 300;
}
#brx-content.post-password-required {
  height: 100vh;
  min-height: 100vh;
}
#brx-content.post-password-required .post-password-form {
  margin-top: 40vh;
}
/*
///########################################################################
///------------------- 08 Plugins
///########################################################################
*/
html.lenis {
  height: auto;
}
.lenis.lenis-smooth {
  scroll-behavior: auto;
}
.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}
.lenis.lenis-stopped {
  overflow: hidden;
}
.lenis.lenis-scrolling iframe {
  pointer-events: none;
}
