:root {
  --WIH: 100vh;
  --font-size-default: 18px;
  --line-height-default: 1.4;
  --font-size-small: 14px;
  --line-height-small: 18px;
  --font-size-smaller: 12px;
  --line-height-smaller: 14px;
  --font-size-big: 30vw;
  --line-height-big: 30vw;
  --font-size-h1: 8vw;
  --line-height-h1: 1.1;
  --font-size-h4: 22px;
  --line-height-h4: 1.2;
  --font-size-h5: 20px;
  --line-height-h5: 1.2;
  --font-size-h6: 18px;
  --line-height-h6: 25px;
  --color-default: #000000;
  --color-primary: #114D96;
  --color-primary-dark: #223669;
  --color-primary-darker: #253143;
  --color-secondary: #99AEBB;
  --color-grey: #aaaaaa;
  --color-line: #dddddd;
  --color-bg: #fafafa;
  --color-red: #d43f3f;
  --color-yellow: #eec100;
  --color-green: #4e8132;
  --font-family-default: "Neue DIN", sans-serif;
  --font-family-wide: "Neue DIN wide", sans-serif;
  --font-family-headline: "Neue DIN", "Nunito Sans", sans-serif;
  --fast-out-slow-in: cubic-bezier(0.4, 0, 0.2, 1);
  --ease-out-back: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --p-big: 100px;
  --card-padding: 30px;
  --pt-intro: 140px;
}
@font-face {
  font-family: 'icomoon';
  src: url('/themes/custom/icons/icomoon.eot?bz90qe11');
  src: url('/themes/custom/icons/icomoon.eot?bz90qe11#iefix') format('embedded-opentype'), url('/themes/custom/icons/icomoon.woff2?bz90qe11') format('woff2'), url('/themes/custom/icons/icomoon.ttf?bz90qe11') format('truetype'), url('/themes/custom/icons/icomoon.woff?bz90qe11') format('woff'), url('/themes/custom/icons/icomoon.svg?bz90qe11#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
[class^="icon-"],
[class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icon-play:before {
  content: "\e91a";
}
.icon-close:before {
  content: "\e907";
}
.icon-filter:before {
  content: "\e917";
}
.icon-list:before {
  content: "\e918";
}
.icon-grid:before {
  content: "\e919";
}
.icon-upload:before {
  content: "\e916";
}
.icon-angle-right:before {
  content: "\e915";
}
.icon-arrow-down:before {
  content: "\e900";
}
.icon-arrow-left:before {
  content: "\e901";
}
.icon-arrow-right:before {
  content: "\e902";
}
.icon-projektphase:before {
  content: "\e903";
}
.icon-adresse:before {
  content: "\e904";
}
.icon-apply:before {
  content: "\e905";
}
.icon-check:before {
  content: "\e906";
}
.icon-close:before {
  content: "\e907";
}
.icon-angle-down:before {
  content: "\e908";
}
.icon-home:before {
  content: "\e909";
}
.icon-mail:before {
  content: "\e90a";
}
.icon-arrow-top-right:before {
  content: "\e90b";
}
.icon-plus:before {
  content: "\e90c";
}
.icon-solar:before {
  content: "\e90d";
}
.icon-sonnenfeld:before {
  content: "\e90e";
}
.icon-speicher:before {
  content: "\e90f";
}
.icon-tags:before {
  content: "\e910";
}
.icon-technologien:before {
  content: "\e911";
}
.icon-share:before {
  content: "\e912";
}
.icon-telefon:before {
  content: "\e913";
}
.icon-wind:before {
  content: "\e914";
}
.icon-speicher_neu:before {
  content: "\e91b";
}
.icon-linkedin:before {
  content: "\e91c";
}
.icon-angle-left:before {
  content: "\e91d";
}
@font-face {
  font-family: "Neue DIN";
  font-weight: 700;
  src: url('/themes/custom/fonts/NeueDIN-Bold.woff2') format('woff2');
  font-display: swap;
}
@font-face {
  font-family: "Neue DIN";
  font-weight: 300;
  src: url('/themes/custom/fonts/NeueDIN-Light.woff2') format('woff2');
  font-display: swap;
}
@font-face {
  font-family: "Neue DIN wide";
  font-weight: 400;
  src: url('/themes/custom/fonts/NeueDINSemiWide-Regular.woff2') format('woff2');
  font-display: swap;
}
@font-face {
  font-family: "Neue DIN wide";
  font-weight: 300;
  src: url('/themes/custom/fonts/NeueDINSemiWide-Light.woff2') format('woff2');
  font-display: swap;
}
.dialog-off-canvas-main-canvas {
  position: relative;
  overflow: hidden;
}
.section {
  position: relative;
  margin-left: 7vw;
  margin-right: 7vw;
}
#main > .section {
  padding: var(--pt-intro) 0 var(--p-big);
}
#main > iframe {
  height: 100vh;
  width: 100vw;
}
#header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.1);
  z-index: 1999;
  transition: box-shadow 0s, background 0.5s;
}
#header > .section {
  padding: 50px 0 20px 0;
  transition: padding 0.5s;
}
#header > .section #logo {
  width: 114px;
  height: 30px;
  transition: width 0.5s, height 0.5s, bottom 0.5s, margin-bottom 0.5s;
  z-index: 109;
  display: block;
}
#header > .section #menu-icon {
  display: block;
  position: fixed;
  top: 0;
  right: 0;
  background-color: #ffffff;
  width: 50px;
  height: 50px;
  z-index: 1019;
  cursor: pointer;
}
#header > .section #menu-icon .line {
  width: 24px;
  height: 2px;
  position: absolute;
  left: 13px;
  top: calc(50% - 8px);
  background-color: var(--color-primary);
  transition: transform 0.5s, background-color 0.5s, opacity 0.5s, top 0.5s, bottom 0.5s;
  border-radius: 2px;
}
#header > .section #menu-icon .line.second {
  top: calc(50% - 1px);
}
#header > .section #menu-icon .line.third {
  top: calc(50% + 7px);
}
#header > .section #menu-icon.is-active .line.first {
  transform: rotate(45deg);
  top: calc(50% - 1px);
}
#header > .section #menu-icon.is-active .line.second {
  opacity: 0;
}
#header > .section #menu-icon.is-active .line.third {
  transform: rotate(-45deg);
  top: calc(50% - 1px);
}
#header > .section .region-header {
  display: none;
}
#header > .section #navigation {
  height: 100vh;
  width: 100%;
  position: fixed;
  left: 100%;
  top: 0;
  background-color: var(--color-primary);
  z-index: 998;
  transition: transform 0.5s ease;
}
#header > .section #navigation .table {
  height: 100%;
  width: 100%;
  overflow-y: scroll;
}
#header > .section #navigation .table .table-cell {
  min-height: 100%;
  width: 100%;
  padding: 100px 7vw;
}
#header > .section #navigation .table .table-cell .image {
  display: none;
}
#header > .section #navigation .table .table-cell .content .main-menu {
  margin-bottom: 30px;
}
#header > .section #navigation .table .table-cell .content .main-menu ul.menu {
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 15px;
}
#header > .section #navigation .table .table-cell .content .main-menu ul.menu li {
  margin: 0;
  padding: 0;
  list-style: none;
  opacity: 0;
  transition: opacity 0s;
}
#header > .section #navigation .table .table-cell .content .main-menu ul.menu li a {
  font-family: var(--font-family-wide);
  color: #ffffff;
  text-transform: uppercase;
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
  position: relative;
  display: block;
  transition: transform 0.3s ease;
}
#header > .section #navigation .table .table-cell .content .main-menu ul.menu li a:before {
  content: '\e902';
  font-family: 'icomoon';
  color: #ffffff;
  position: absolute;
  right: calc(100% + 10px);
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
  font-size: 16px;
  transition: opacity 0.3s ease;
}
#header > .section #navigation .table .table-cell .content .main-menu ul.menu li a.is-active {
  transform: translateX(30px);
  text-decoration: underline;
}
#header > .section #navigation .table .table-cell .content .main-menu ul.menu li a.is-active::before {
  opacity: 1;
}
#header > .section #navigation .table .table-cell .content .button-wrapper {
  opacity: 0;
  transition: opacity 0s;
}
#header > .section #navigation .table .table-cell .content .wrapper {
  margin-top: 30px;
  padding-top: 30px;
  border-top: 1px solid rgba(255, 255, 255, 0.3);
  opacity: 0;
  transition: opacity 0s;
}
#header > .section #navigation .table .table-cell .content .lang {
  margin-bottom: 30px;
}
#header > .section #navigation .table .table-cell .content .lang .dropdown {
  text-transform: uppercase;
  font-family: var(--font-family-wide);
  color: #ffffff;
  display: flex;
  align-items: center;
  gap: 5px;
}
#header > .section #navigation .table .table-cell .content .lang .dropdown i {
  font-size: 10px;
  line-height: 10px;
}
#header > .section #navigation .table .table-cell .content .lang .dropdown-content {
  right: auto;
  left: 0;
  border-radius: 0;
  margin-right: 0;
  padding: 10px 16px;
}
#header > .section #navigation .table .table-cell .content .lang .dropdown-content::before {
  right: auto;
  left: 15px;
}
#header > .section #navigation .table .table-cell .content .lang .dropdown-content ul {
  margin: 0;
  padding: 0;
}
#header > .section #navigation .table .table-cell .content .lang .dropdown-content ul li {
  list-style: none;
  margin: 0;
  padding: 0;
}
#header > .section #navigation .table .table-cell .content .lang .dropdown-content ul li a {
  font-family: var(--font-family-wide);
  text-transform: uppercase;
  color: var(--color-secondary);
  font-weight: 400;
}
#header > .section #navigation .table .table-cell .content .lang .dropdown-content ul li a.is-active {
  color: var(--color-primary);
}
#header > .section #navigation .table .table-cell .content .contact .seperator {
  display: none;
}
#header > .section #navigation .table .table-cell .content .contact a {
  font-weight: 700;
  color: #ffffff;
  text-decoration: underline;
}
#header > .section #navigation .table .table-cell .content .contact .mail {
  margin-bottom: 5px;
}
#header > .section #navigation .table .table-cell .content .contact .mail a {
  text-decoration: underline;
}
#header .header-small-sizer {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  opacity: 0;
}
.submenu-open #header {
  background: #ffffff;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
}
html.menu-open #header > .section #navigation {
  transform: translateX(-100%);
}
html.menu-open #header > .section #navigation .table .table-cell .content.has-button .main-menu ul.menu li {
  opacity: 1;
  transition: opacity 0.3s ease 0.3s;
}
html.menu-open #header > .section #navigation .table .table-cell .content.has-button .main-menu ul.menu li:nth-of-type(2) {
  transition-delay: 0.4s;
}
html.menu-open #header > .section #navigation .table .table-cell .content.has-button .main-menu ul.menu li:nth-of-type(3) {
  transition-delay: 0.5s;
}
html.menu-open #header > .section #navigation .table .table-cell .content.has-button .main-menu ul.menu li:nth-of-type(4) {
  transition-delay: 0.6s;
}
html.menu-open #header > .section #navigation .table .table-cell .content.has-button .main-menu ul.menu li:nth-of-type(5) {
  transition-delay: 0.7s;
}
html.menu-open #header > .section #navigation .table .table-cell .content.has-button .main-menu ul.menu li:nth-of-type(6) {
  transition-delay: 0.8;
}
html.menu-open #header > .section #navigation .table .table-cell .content.has-button .main-menu ul.menu li:nth-of-type(7) {
  transition-delay: 0.9s;
}
html.menu-open #header > .section #navigation .table .table-cell .content.has-button .main-menu ul.menu li:nth-of-type(8) {
  transition-delay: 1;
}
html.menu-open #header > .section #navigation .table .table-cell .content.has-button .main-menu ul.menu li:nth-of-type(9) {
  transition-delay: 1.1s;
}
html.menu-open #header > .section #navigation .table .table-cell .content.has-button .button-wrapper {
  opacity: 1;
  transition: opacity 0.3s ease 1.2s;
}
html.menu-open #header > .section #navigation .table .table-cell .content.has-button .wrapper {
  opacity: 1;
  transition: opacity 0.3s ease 1.3s;
}
html.menu-open #header > .section #navigation .table .table-cell .content .main-menu ul.menu li {
  opacity: 1;
  transition: opacity 0.3s ease 0.3s;
}
html.menu-open #header > .section #navigation .table .table-cell .content .main-menu ul.menu li:nth-of-type(2) {
  transition-delay: 0.4s;
}
html.menu-open #header > .section #navigation .table .table-cell .content .main-menu ul.menu li:nth-of-type(3) {
  transition-delay: 0.5s;
}
html.menu-open #header > .section #navigation .table .table-cell .content .main-menu ul.menu li:nth-of-type(4) {
  transition-delay: 0.6s;
}
html.menu-open #header > .section #navigation .table .table-cell .content .main-menu ul.menu li:nth-of-type(5) {
  transition-delay: 0.7s;
}
html.menu-open #header > .section #navigation .table .table-cell .content .main-menu ul.menu li:nth-of-type(6) {
  transition-delay: 0.8s;
}
html.menu-open #header > .section #navigation .table .table-cell .content .main-menu ul.menu li:nth-of-type(7) {
  transition-delay: 0.9s;
}
html.menu-open #header > .section #navigation .table .table-cell .content .main-menu ul.menu li:nth-of-type(8) {
  transition-delay: 1s;
}
html.menu-open #header > .section #navigation .table .table-cell .content .main-menu ul.menu li:nth-of-type(9) {
  transition-delay: 1.1s;
}
html.menu-open #header > .section #navigation .table .table-cell .content .wrapper {
  opacity: 1;
  transition: opacity 0.3s ease 1.2s;
}
@media (hover: hover) {
  #header > .section #menu-icon:hover {
    background-color: var(--color-primary);
  }
  #header > .section #menu-icon:hover .line {
    background-color: #ffffff;
  }
  #header > .section .region-header a:hover {
    color: var(--color-secondary);
  }
  #header > .section #navigation .table .table-cell .content .main-menu ul.menu li a:hover {
    transform: translateX(30px);
    text-decoration: underline;
  }
  #header > .section #navigation .table .table-cell .content .main-menu ul.menu li a:hover::before {
    opacity: 1;
  }
  #header > .section #navigation .table .table-cell .content .lang .dropdown:hover {
    color: var(--color-secondary);
  }
  #header > .section #navigation .table .table-cell .content .lang .dropdown-content ul li a:hover {
    color: var(--color-primary);
  }
  #header > .section #navigation .table .table-cell .content .contact .mail a:hover,
  #header > .section #navigation .table .table-cell .content .contact .phone a:hover {
    color: var(--color-secondary);
  }
  #header > .section #navigation .table .table-cell .content .button-wrapper .button:hover {
    background: #ffffff !important;
    color: var(--color-primary) !important;
  }
  #header.header-white > .section .region-header a:hover {
    color: var(--color-secondary);
  }
}
#footer {
  z-index: 999;
  position: relative;
}
#footer .top {
  margin: 0 -7vw;
  padding: 50px 7vw;
  background: var(--color-primary);
  color: #ffffff;
}
#footer .top a {
  color: #ffffff;
}
#footer .top .titel {
  font-size: 28px;
  line-height: 1.2;
  font-family: var(--font-family-wide);
  font-weight: 300;
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  text-transform: uppercase;
}
#footer .top .titel strong {
  font-weight: 400;
}
#footer .top .adresse {
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}
#footer .top .adresse .text strong {
  color: #ffffff;
}
#footer .top .contact .seperator {
  display: none;
}
#footer .top .contact .mail a,
#footer .top .contact .phone a {
  text-decoration: underline;
}
#footer .top .domain a {
  text-decoration: underline;
}
#footer .top .newsletter .label {
  font-weight: 700;
  margin-bottom: 10px;
}
#footer .bot {
  padding: 30px 0;
}
#footer .bot .claim {
  font-weight: 700;
  color: var(--color-secondary);
  margin-bottom: 30px;
}
#footer .bot ul.menu {
  margin: 0;
  padding: 0;
}
#footer .bot ul.menu li {
  margin: 0;
  padding: 0;
  list-style: none;
}
#footer .bot ul.menu li a {
  color: var(--color-secondary);
}
#footer .bot ul.menu li a.is-active {
  color: var(--color-primary);
}
#footer .bot .linkedin {
  margin-top: 30px;
}
#footer .bot .linkedin a {
  display: block;
  font-size: 30px;
  line-height: 30px;
  color: var(--color-primary);
}
@media (hover: hover) {
  #footer .top .contact .mail a:hover,
  #footer .top .contact .phone a:hover {
    color: var(--color-secondary);
  }
  #footer .top .domain a:hover {
    color: var(--color-secondary);
  }
  #footer .bot ul.menu li a:hover {
    color: var(--color-primary);
  }
  #footer .bot .linkedin a:hover {
    color: var(--color-secondary);
  }
}
*,
*::after,
*::before {
  box-sizing: border-box;
}
::-moz-selection {
  background: var(--color-grey);
  color: #ffffff;
  -webkit-text-fill-color: #ffffff;
}
::selection {
  background: var(--color-grey);
  color: #ffffff;
  -webkit-text-fill-color: #ffffff;
}
.p-big {
  padding: var(--p-big) 0;
}
.pb-big {
  padding-bottom: var(--p-big);
}
.pt-big {
  padding-top: var(--p-big);
}
.clearfix:after {
  /*display: table;
    clear: both;
    content: "";*/
  display: none;
}
.visually-hidden {
  display: none;
}
html.menu-open,
html.noscrolling {
  overflow: hidden;
}
html {
  -webkit-text-size-adjust: none;
  -webkit-font-smoothing: antialiased;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
body {
  padding: 0 !important;
  margin: 0 !important;
  font-family: var(--font-family-default) !important;
  font-size: var(--font-size-default);
  line-height: var(--line-height-default);
  font-weight: 300;
  color: var(--color-default);
  text-align: left;
  position: relative;
  background: #ffffff;
}
b,
strong {
  font-weight: 700;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
  font-size: var(--font-size-default);
  line-height: var(--line-height-default);
  font-weight: 400;
  display: block;
}
.h1,
.h2,
.h3 {
  font-family: var(--font-family-wide);
  font-size: var(--font-size-h1);
  line-height: var(--line-height-h1);
  color: var(--color-primary);
  font-weight: 300;
  margin-bottom: 30px;
  text-transform: uppercase;
}
.h1.white,
.h2.white,
.h3.white {
  color: #ffffff;
}
.h1 i,
.h2 i,
.h3 i {
  font-size: calc(var(--font-size-h1) * 0.8);
  color: var(--color-secondary);
}
.h4 {
  font-family: var(--font-family-wide);
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
  font-weight: 400;
  margin-bottom: 30px;
  display: block;
  text-transform: uppercase;
  color: var(--color-primary);
}
.h5 {
  font-family: var(--font-family-headline);
  font-size: var(--font-size-h5);
  line-height: var(--line-height-h5);
  font-weight: 700;
  margin-bottom: 20px;
  text-transform: none;
  display: block;
}
.h6 {
  font-family: var(--font-family-headline);
  font-size: var(--font-size-h6);
  line-height: var(--line-height-h6);
  font-weight: 700;
  margin-bottom: 20px;
  text-transform: none;
  display: block;
}
.text h2,
.body h2 {
  font-family: var(--font-family-wide);
  font-size: var(--font-size-h1);
  line-height: var(--line-height-h1);
  color: var(--color-primary);
  font-weight: 300;
  margin-bottom: 30px;
  text-transform: uppercase;
}
.text h3,
.body h3 {
  font-family: var(--font-family-wide);
  font-size: var(--font-size-h1);
  line-height: var(--line-height-h1);
  color: var(--color-primary);
  font-weight: 300;
  margin-bottom: 30px;
  text-transform: uppercase;
}
.text h4,
.body h4 {
  font-family: var(--font-family-wide);
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
  font-weight: 400;
  margin-bottom: 30px;
  display: block;
  text-transform: uppercase;
  color: var(--color-primary);
}
.text h5,
.body h5 {
  font-family: var(--font-family-wide);
  font-size: var(--font-size-h5);
  line-height: var(--line-height-h5);
  font-weight: 400;
  margin-bottom: 30px;
  display: block;
  text-transform: uppercase;
  color: var(--color-primary);
}
.text h6,
.body h6 {
  margin-bottom: 30px;
  font-weight: 700;
}
.text p + h2,
.body p + h2 {
  margin-top: 40px;
}
.text p + h3,
.body p + h3 {
  margin-top: 40px;
}
.text p + h4,
.body p + h4 {
  margin-top: 40px;
}
.text a,
.body a {
  word-break: break-all;
  font-weight: 600;
  text-decoration: underline !important;
}
.text .h4-grey,
.body .h4-grey {
  font-family: var(--font-family-wide);
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
  color: var(--color-secondary);
  font-weight: 400;
}
.text .h5-blue,
.body .h5-blue {
  font-family: var(--font-family-wide);
  font-size: var(--font-size-h5);
  line-height: var(--line-height-h5);
  font-weight: 400;
  margin-bottom: 30px;
  display: block;
  text-transform: uppercase;
  color: var(--color-primary);
}
.text.white,
.body.white {
  color: #ffffff;
}
.text.white strong,
.body.white strong {
  color: #ffffff;
}
.text strong,
.body strong {
  color: var(--color-primary);
}
.text .button,
.body .button {
  width: 100%;
}
.untertitel {
  font-family: var(--font-family-wide);
  font-weight: 400;
}
.untertitel.white {
  color: #ffffff;
}
.color-grey {
  color: var(--color-grey);
}
.color-primary {
  color: var(--color-primary);
}
.color-secondary {
  color: var(--color-secondary);
}
.color-white {
  color: #ffffff;
}
p {
  margin: 0 0 30px 0;
}
p:last-child {
  margin-bottom: 0;
}
hr {
  border: 0;
  height: 1px;
  background: var(--color-line);
  margin: 30px 0;
}
.text *:last-child {
  margin-bottom: 0;
}
span.small {
  font-size: var(--font-size-small);
  line-height: var(--line-height-small);
}
article ul,
.ui-dialog ul {
  margin: 0 0 30px;
  padding: 0;
}
article ul li,
.ui-dialog ul li {
  list-style: none;
  padding: 0 0 15px 25px;
  position: relative;
}
article ul li:last-child,
.ui-dialog ul li:last-child {
  padding-bottom: 0 !important;
}
article ul li > *:last-child,
.ui-dialog ul li > *:last-child {
  margin-bottom: 0 !important;
}
article ul li:before,
.ui-dialog ul li:before {
  content: "";
  position: absolute;
  top: calc(((var(--font-size-default)* var(--line-height-default)) - 10px) * 0.5);
  left: 0px;
  z-index: 19;
  width: 10px;
  height: 10px;
  border-radius: 0px;
  background: var(--color-primary);
}
/*
article ul.checkmarks li,
.ui-dialog ul.checkmarks li {
    list-style: none;
    padding: 0 0 15px 35px;
    position: relative;
}

article ul.checkmarks li:before,
.ui-dialog ul.checkmarks li:before {
    font-family: 'icomoon' !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\e902";
    color: var(--color-secondary);
    display: block;
    font-size: 22px;
    position: absolute;
    top: 5px;
    left: 0;
    z-index: 19;
    width: auto;
    height: auto;
    background: none;
}

article ul.checkmarks li:after,
.ui-dialog ul.checkmarks li:after {
    font-family: 'icomoon' !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\e907";
    color: var(--color-primary);
    display: block;
    font-size: 18px;
    position: absolute;
    top: 4px;
    left: 6px;
    z-index: 19;
    width: auto;
    height: auto;
    background: none;
}
*/
/*
article ol,
.ui-dialog ol {
    margin: 0 0 30px;
    padding: 0;
    counter-reset: css-counter;
}

article ol li,
.ui-dialog ol li {
    list-style: none;
    padding: 0 0 15px 25px;
    position: relative;
    counter-increment: css-counter;
}

article ol li:last-child,
.ui-dialog ol li:last-child {
    padding-bottom: 0 !important;
}

article ol li>*:last-child,
.ui-dialog ol li>*:last-child {
    margin-bottom: 0 !important;
}

article ol li::before,
.ui-dialog ol li::before {
    content: counter(css-counter)+'.';
    position: absolute;
    top: 0;
    left: 0;
    color: var(--color-grey);
    font-weight: 700;
}
*/
/*
table {
    margin: 0 0 30px 0;
    border-collapse: collapse;
    width: 100%;
    word-break: normal;
    hyphens: auto;
    -webkit-hyphens: auto;

    tr {
        th {
            border: 1px solid var(--color-line);
            background: var(--color-line);
            vertical-align: top;
            padding: 5px 10px;
        }

        td {
            border: 1px solid var(--color-line);
            vertical-align: top;
            padding: 5px 10px;
        }
    }
}
*/
img {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  max-width: 100%;
  width: 100%;
  height: auto;
  border: 0;
  display: block;
  object-fit: cover;
}
img.resizetoparent {
  object-fit: cover;
}
img.lazyload {
  opacity: 0;
}
img.lazyload.lazyloaded,
img.lazyload.swiper-lazy-loaded {
  opacity: 1;
}
picture {
  display: block;
  position: relative;
}
/* --------------- Links & Buttons --------------- */
a,
a:link,
a:visited {
  color: var(--color-default);
  text-decoration: none;
  background-color: transparent;
  -webkit-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  display: inline;
  cursor: pointer;
}
a:hover,
a:link:hover,
a:visited:hover {
  color: var(--color-primary);
}
.body a {
  text-decoration: underline;
}
div.button,
a.button,
a.button:active,
a.button:focus,
a.button:link,
a.button:visited,
button.button,
button.button:active,
button.button:link,
button.button:visited,
input.form-submit,
input.form-submit:focus {
  font-family: var(--font-family-wide);
  font-weight: 400;
  font-style: inherit;
  color: #ffffff;
  font-size: var(--font-size-small);
  line-height: var(--line-height-small);
  background: var(--color-primary-dark);
  cursor: pointer;
  text-align: center;
  padding: 10px 18px;
  border: 0 !important;
  border-radius: 0;
  text-decoration: none;
  display: inline-block;
  -webkit-transition: background-color 0.5s, color 0.5s;
  -o-transition: background-color 0.5s, color 0.5s;
  transition: background-color 0.5s, color 0.5s;
  -webkit-appearance: none;
  opacity: 1 !important;
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 0;
  position: relative;
  overflow: hidden;
  z-index: 19;
  -webkit-tap-highlight-color: transparent;
}
div.button:hover,
a.button:hover,
a.button:active:hover,
a.button:focus:hover,
a.button:link:hover,
a.button:visited:hover,
button.button:hover,
button.button:active:hover,
button.button:link:hover,
button.button:visited:hover,
input.form-submit:hover,
input.form-submit:focus:hover,
div.button:active,
a.button:active,
a.button:active:active,
a.button:focus:active,
a.button:link:active,
a.button:visited:active,
button.button:active,
button.button:active:active,
button.button:link:active,
button.button:visited:active,
input.form-submit:active,
input.form-submit:focus:active {
  color: #ffffff !important;
  background: var(--color-primary-darker) !important;
}
div.button.light,
a.button.light,
a.button:active.light,
a.button:focus.light,
a.button:link.light,
a.button:visited.light,
button.button.light,
button.button:active.light,
button.button:link.light,
button.button:visited.light,
input.form-submit.light,
input.form-submit:focus.light {
  background: var(--color-primary) !important;
}
div.button.light:hover,
a.button.light:hover,
a.button:active.light:hover,
a.button:focus.light:hover,
a.button:link.light:hover,
a.button:visited.light:hover,
button.button.light:hover,
button.button:active.light:hover,
button.button:link.light:hover,
button.button:visited.light:hover,
input.form-submit.light:hover,
input.form-submit:focus.light:hover {
  background: var(--color-primary-dark) !important;
}
div.button.light.h-white:hover,
a.button.light.h-white:hover,
a.button:active.light.h-white:hover,
a.button:focus.light.h-white:hover,
a.button:link.light.h-white:hover,
a.button:visited.light.h-white:hover,
button.button.light.h-white:hover,
button.button:active.light.h-white:hover,
button.button:link.light.h-white:hover,
button.button:visited.light.h-white:hover,
input.form-submit.light.h-white:hover,
input.form-submit:focus.light.h-white:hover {
  background: #ffffff !important;
  color: var(--color-primary) !important;
}
div.button.white,
a.button.white,
a.button:active.white,
a.button:focus.white,
a.button:link.white,
a.button:visited.white,
button.button.white,
button.button:active.white,
button.button:link.white,
button.button:visited.white,
input.form-submit.white,
input.form-submit:focus.white {
  background-color: #ffffff !important;
  color: var(--color-primary) !important;
}
div.button.white:hover,
a.button.white:hover,
a.button:active.white:hover,
a.button:focus.white:hover,
a.button:link.white:hover,
a.button:visited.white:hover,
button.button.white:hover,
button.button:active.white:hover,
button.button:link.white:hover,
button.button:visited.white:hover,
input.form-submit.white:hover,
input.form-submit:focus.white:hover {
  background-color: var(--color-secondary) !important;
  color: #ffffff !important;
}
div.button.h-white:hover,
a.button.h-white:hover,
a.button:active.h-white:hover,
a.button:focus.h-white:hover,
a.button:link.h-white:hover,
a.button:visited.h-white:hover,
button.button.h-white:hover,
button.button:active.h-white:hover,
button.button:link.h-white:hover,
button.button:visited.h-white:hover,
input.form-submit.h-white:hover,
input.form-submit:focus.h-white:hover {
  background: #ffffff;
  color: var(--color-primary) !important;
}
/* ---------------- Edit link  ----------------- */
a.edit-link,
a.node-preview-backlink {
  font-family: inherit;
  font-weight: inherit;
  background: #333333;
  color: #fff !important;
  padding: 3px 8px;
  height: auto;
  font-size: 12px;
  line-height: 20px;
  border: none;
  border-radius: 0;
  position: absolute;
  top: 3px;
  left: 3px;
  z-index: 199;
  display: none;
}
a.edit-link.small,
a.node-preview-backlink.small {
  font-size: 10px;
  padding: 0 5px;
}
a.edit-link:hover,
a.node-preview-backlink:hover {
  text-decoration: none;
  background: #000000;
}
article > a.edit-link {
  position: fixed;
  top: -1px;
  z-index: 9999999;
  right: 35px;
  left: auto;
}
article.preview > a.edit-link {
  display: none;
}
/* ---------------- Preview  ----------------- */
.node-preview-container {
  position: fixed;
  top: 0;
  z-index: 9999999;
  padding: 0;
}
.node-preview-container form a.node-preview-backlink {
  position: fixed;
  top: -1px;
  z-index: 9999999;
  right: 35px;
  left: auto;
}
.node-preview-container form .form-item-view-mode,
.node-preview-container form .form-submit {
  display: none !important;
}
/* ---------------- Messages  ----------------- */
.messages__wrapper {
  padding: 0;
  margin: 0 0 50px 0;
  z-index: 99;
}
.messages__wrapper .messages {
  margin: 0 0 50px;
  padding: 20px 30px;
  text-align: left;
  position: relative;
  background: none;
  border: 1px solid var(--color-green);
  border-radius: 3px;
  color: var(--color-green);
}
.messages__wrapper .messages.warning {
  border-color: var(--color-yellow);
  color: var(--color-yellow);
}
.messages__wrapper .messages.error {
  border-color: var(--color-red);
  color: var(--color-red);
}
.messages__wrapper .messages p {
  margin: 0;
}
.messages__wrapper .messages a {
  text-decoration: underline;
}
.messages__wrapper .messages a.link {
  text-decoration: none;
}
.messages__wrapper .messages ul {
  margin: 0 !important;
  padding: 0 !important;
}
.messages__wrapper .messages ul li {
  padding: 5px 0 5px 20px !important;
  list-style: none;
  position: relative;
}
.messages__wrapper .messages ul li:before {
  content: "-";
  line-height: inherit;
  font-family: inherit;
  color: inherit;
  font-size: inherit;
  position: absolute;
  top: 0;
  left: 0;
}
/* --------------- Kint --------------- */
.kint {
  overflow: visible !important;
}
/* --------------- Toolbar --------------- */
.visually-hidden {
  display: none !important;
}
#toolbar-administration {
  position: relative;
  z-index: 999999;
  display: none;
}
#toolbar-administration a {
  display: block;
  color: #555555;
  font-weight: 400;
}
#toolbar-administration #admin-toolbar-search-tab {
  display: none !important;
}
/* --------------- Contextual links --------------- */
.contextual {
  display: none !important;
}
/* --------------- Loader --------------- */
.ajax-progress,
.ui-dialog .ajax-progress-throbber {
  background: none;
  height: 100%;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  margin: 0;
  z-index: 999999;
  text-indent: -999999px;
  opacity: 1 !important;
}
.ajax-progress:before {
  content: "";
  background: var(--color-primary);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0.7;
}
.ajax-progress:after {
  content: "";
  background: url("/themes/custom/images/ajax-loader.svg") center center no-repeat transparent;
  height: 100px;
  width: 100px;
  border-radius: 12px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -50px 0 0 -50px;
  z-index: 2;
  padding: 0 !important;
  opacity: 1 !important;
}
.ajax-progress .message,
.ajax-progress .throbber {
  display: none !important;
}
/* --------------- Moremedia Logo --------------- */
a.moremedia {
  width: 5px;
  height: 50px;
  padding: 6px;
  position: fixed;
  right: 2px;
  bottom: 2px;
  z-index: 9999;
  opacity: 0.5;
  box-sizing: content-box !important;
  mix-blend-mode: difference;
}
a.moremedia:hover {
  opacity: 1;
}
body.loaded a.moremedia {
  display: block !important;
}
#klaro .klaro {
  font-size: var(--font-size-small);
  line-height: var(--line-height-small);
}
#klaro .klaro a {
  color: var(--color-default);
  text-decoration: underline;
  transition: color 0.5s;
}
#klaro .klaro a:hover {
  color: var(--color-primary);
}
#klaro .cookie-modal .cookie-modal-notice {
  max-width: 600px;
  border-radius: 0;
  color: var(--color-default);
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.3);
  padding: min(7vw, 30px);
  max-height: 100%;
}
#klaro .cookie-modal .cookie-modal-notice .cn-body p {
  color: var(--color-default);
  margin-top: 0;
  font-size: var(--font-size-small);
}
#klaro .cookie-modal .cookie-modal-notice .cn-body p span .h5 {
  margin-bottom: 10px;
}
#klaro .cookie-modal .cookie-modal-notice .cn-body p .buttons {
  margin-top: 10px;
}
#klaro .cookie-modal .cookie-modal-notice .cn-body p .buttons a {
  font-weight: 700;
  margin: 0 5px 0 0;
}
#klaro .cookie-modal .cookie-modal-notice .cn-body .cn-ok {
  margin-top: 20px;
  flex-wrap: wrap;
  gap: 10px;
}
#klaro .cookie-modal .cookie-modal-notice .cn-body .cn-ok .cn-buttons {
  display: flex;
  gap: 10px;
}
#klaro .cookie-modal .cookie-modal-notice .cn-body .cn-ok .cn-buttons .cm-btn {
  background: var(--color-primary);
  border-radius: 0;
  padding: 7px 12px;
  font-size: var(--font-size-small);
  line-height: var(--line-height-small);
  font-weight: 700;
  margin: 0;
  transition: background-color 0.5s, color 0.5s;
}
#klaro .cookie-modal .cookie-modal-notice .cn-body .cn-ok .cn-buttons .cm-btn.cm-btn-success {
  order: -1;
}
#klaro .cookie-modal .cookie-modal-notice .cn-body .cn-ok .cn-buttons .cm-btn:hover {
  background: var(--color-secondary);
}
#klaro .cookie-modal .cookie-modal-notice .cn-body .cn-ok .cm-btn-lern-more {
  order: 9;
  background: none;
  padding: 0;
  color: var(--color-grey);
  text-decoration: underline;
  font-weight: 700;
  margin: 0;
  transition: color 0.5s;
}
#klaro .cookie-modal .cookie-modal-notice .cn-body .cn-ok .cm-btn-lern-more:hover {
  color: var(--color-default);
}
#klaro .cookie-modal .cm-modal {
  max-width: 600px;
  border-radius: 0;
  color: var(--color-default);
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.3);
  padding: min(7vw, 30px);
  max-height: 100%;
}
#klaro .cookie-modal .cm-modal .cm-header {
  padding: 0;
  border-bottom: 0;
}
#klaro .cookie-modal .cm-modal .cm-header button.hide {
  display: none !important;
}
#klaro .cookie-modal .cm-modal .cm-header h1 {
  display: none !important;
}
#klaro .cookie-modal .cm-modal .cm-header p {
  color: var(--color-default);
  margin-top: 0;
}
#klaro .cookie-modal .cm-modal .cm-header p span .h5 {
  margin-bottom: 10px;
}
#klaro .cookie-modal .cm-modal .cm-header p .buttons {
  margin-top: 10px;
}
#klaro .cookie-modal .cm-modal .cm-header p .buttons a {
  font-weight: 700;
  margin: 0 5px 0 0;
}
#klaro .cookie-modal .cm-modal .cm-body {
  padding: 20px 0 0 0;
  margin-top: 20px;
  border-top: 1px solid var(--color-line);
}
#klaro .cookie-modal .cm-modal .cm-body .cm-purposes .cm-purpose {
  color: var(--color-default);
  font-size: var(--font-size-small);
  line-height: var(--line-height-small);
  padding-left: 40px;
  min-height: 20px;
}
#klaro .cookie-modal .cm-modal .cm-body .cm-purposes .cm-purpose .cm-list-input {
  width: 30px;
  height: 20px;
  margin: 0;
}
#klaro .cookie-modal .cm-modal .cm-body .cm-purposes .cm-purpose .cm-list-label .cm-required {
  padding-left: 5px;
  color: var(--color-grey);
  font-size: var(--font-size-smaller);
}
#klaro .cookie-modal .cm-modal .cm-body .cm-purposes .cm-purpose .cm-list-label .cm-switch {
  height: 20px;
}
#klaro .cookie-modal .cm-modal .cm-body .cm-purposes .cm-purpose .cm-list-label .cm-switch .slider {
  width: 30px;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
  background: none;
}
#klaro .cookie-modal .cm-modal .cm-body .cm-purposes .cm-purpose .cm-list-label .cm-switch .slider:before {
  width: 10px;
  height: 10px;
}
#klaro .cookie-modal .cm-modal .cm-body .cm-purposes .cm-purpose .cm-list-input:checked + .cm-list-label .slider {
  background: var(--color-primary);
}
#klaro .cookie-modal .cm-modal .cm-body .cm-purposes .cm-purpose .cm-list-input:checked + .cm-list-label .slider:before {
  transform: translateX(10px);
}
#klaro .cookie-modal .cm-modal .cm-body .cm-purposes .cm-purpose .cm-list-input.required:checked + .cm-list-label .slider {
  opacity: 0.3;
}
#klaro .cookie-modal .cm-modal .cm-body .cm-purposes .cm-purpose .cm-services .cm-caret a span {
  display: none;
}
#klaro .cookie-modal .cm-modal .cm-body .cm-purposes .cm-purpose .cm-services .cm-content .cm-service {
  padding-left: 55px;
}
#klaro .cookie-modal .cm-modal .cm-body .cm-purposes .cm-purpose .cm-services .cm-content .cm-service .cm-list-label .cm-switch {
  left: 15px;
}
#klaro .cookie-modal .cm-modal .cm-body .cm-purposes .cm-purpose .cm-services .cm-content .cm-service .cm-list-description {
  padding-top: 0;
  color: var(--color-grey);
  font-size: var(--font-size-smaller);
  line-height: var(--line-height-smaller);
}
#klaro .cookie-modal .cm-modal .cm-body .cm-purposes .cm-purpose .cm-services .cm-content .cm-service .purposes {
  display: none;
}
#klaro .cookie-modal .cm-modal .cm-body .cm-purposes .cm-purpose.cm-toggle-all {
  display: none !important;
}
#klaro .cookie-modal .cm-modal .cm-footer {
  padding: 0;
  border-top: 0;
  margin-top: 20px;
}
#klaro .cookie-modal .cm-modal .cm-footer .cm-footer-buttons {
  justify-content: start;
}
#klaro .cookie-modal .cm-modal .cm-footer .cm-footer-buttons .cm-btn {
  background: var(--color-grey);
  border-radius: 0;
  padding: 7px 12px;
  font-size: var(--font-size-small);
  line-height: var(--line-height-small);
  font-weight: 700;
  margin: 0 10px 0 0;
  transition: background-color 0.5s, color 0.5s;
}
#klaro .cookie-modal .cm-modal .cm-footer .cm-footer-buttons .cm-btn:hover {
  background: var(--color-secondary);
}
#klaro .cookie-modal .cm-modal .cm-footer .cm-footer-buttons .cm-btn.cm-btn-accept {
  order: -2;
  background: var(--color-primary);
}
#klaro .cookie-modal .cm-modal .cm-footer .cm-footer-buttons .cm-btn.cm-btn-accept:hover {
  background: var(--color-secondary);
}
#klaro .cookie-modal .cm-modal .cm-footer .cm-footer-buttons .cm-btn.cm-btn-accept-all,
#klaro .cookie-modal .cm-modal .cm-footer .cm-footer-buttons .cm-btn.cn-decline {
  display: none;
}
#klaro .cookie-modal .cm-modal .cm-footer .cm-powered-by {
  display: none !important;
}
.klaro.cm-as-context-notice {
  padding: 0;
}
.klaro.cm-as-context-notice .context-notice {
  background: var(--color-bg);
  border: none;
  border-radius: 0;
  padding: 30px;
}
.klaro.cm-as-context-notice .context-notice p {
  font-size: var(--font-size-small);
  line-height: var(--line-height-small);
  font-weight: 700;
}
.klaro.cm-as-context-notice .context-notice p.cm-buttons {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-top: 20px;
}
.klaro.cm-as-context-notice .context-notice p.cm-buttons .cm-btn {
  background: var(--color-primary);
  border-radius: 0;
  padding: 7px 12px;
  font-size: var(--font-size-small);
  line-height: var(--line-height-small);
  font-weight: 700;
  margin: 0;
  transition: background-color 0.5s, color 0.5s;
}
.klaro.cm-as-context-notice .context-notice p.cm-buttons .cm-btn:hover {
  background: var(--color-secondary);
}
/* TOOLTIP */
.tooltip {
  position: relative;
  z-index: 9999999 !important;
}
span.tooltip-content {
  display: none;
}
.tooltip span.tooltip-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: none;
  display: block;
  text-align: center;
  color: #ffffff !important;
  text-transform: uppercase;
  font-size: var(--font-size-small);
  line-height: var(--line-height-smaller);
  font-weight: 700;
  font-size: 20px;
  padding-top: 30px;
  z-index: 99;
  cursor: pointer;
}
.tooltip span.tooltip-content:after {
  bottom: 100%;
  left: 50%;
  border: solid transparent;
  content: "";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-color: rgba(255, 255, 255, 0);
  border-bottom-color: #ffffff;
  border-width: 6px;
  margin-left: -6px;
}
.tooltip span.tooltip-content.left {
  left: 50%;
  margin-left: -20px;
  transform: none;
}
.tooltip span.tooltip-content.left:after {
  left: 20px;
}
.tooltip span.tooltip-content.right {
  left: auto !important;
  right: 50%;
  transform: none;
  margin-right: -20px;
}
.tooltip span.tooltip-content.right:after {
  left: auto;
  right: 20px;
  margin-left: 0;
  margin-right: -6px;
}
.no-touchevents .tooltip:hover span.tooltip-content {
  display: block;
}
/* DROPDOWN */
.dropdown-container {
  position: relative;
}
.dropdown-container a.dropdown {
  display: inline-block;
}
.dropdown-container .dropdown-content {
  z-index: 50;
  position: absolute;
  right: 50%;
  margin-right: -20px;
  top: 100%;
  background: #ffffff;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.3);
  padding: 12px 20px;
  margin-top: 20px;
  display: none;
  font-size: var(--font-size-small);
  line-height: var(--line-height-small);
  border-radius: 6px;
}
.dropdown-container .dropdown-content > a {
  position: relative;
  color: #000000;
  float: left;
  clear: left;
  width: 100%;
  white-space: nowrap;
  border-bottom: 1px solid var(--color-line);
  padding: 5px 0;
  opacity: 1 !important;
}
.dropdown-container .dropdown-content > a:hover {
  color: var(--color-primary);
}
.dropdown-container .dropdown-content > a:last-child {
  border-bottom: none;
}
.dropdown-container .dropdown-content::before {
  content: "";
  width: 10px;
  height: 10px;
  background: #ffffff;
  position: absolute;
  right: 15px;
  top: -5px;
  transform: rotate(45deg);
}
/* COPY TO CLIPBOARD */
.share-container a.copy-url {
  padding-right: 10px;
}
.share-container a.copy-url.success:after {
  content: '✔';
  position: absolute;
  top: 5px;
  right: 0;
}
/* PAGER */
nav.pager {
  text-align: center;
  margin-top: 0;
  padding-top: 60px;
}
nav.pager ul.pager__items {
  margin: 0 !important;
  padding: 0 !important;
  text-align: center;
}
nav.pager ul.pager__items li {
  margin: 0 5px !important;
  padding: 0 !important;
  list-style: none;
  display: inline-block;
  vertical-align: middle;
  font-size: var(--font-size-smaller);
  line-height: var(--line-height-smaller);
}
nav.pager ul.pager__items li:before {
  display: none !important;
}
nav.pager ul.pager__items li.pager__item.is-active a {
  color: var(--color-primary);
  font-weight: 700;
}
nav.pager ul.pager__items li.pager__item--previous {
  margin-right: 10px !important;
}
nav.pager ul.pager__items li.pager__item--previous a i {
  font-size: 14px;
  line-height: 20px;
  position: relative;
}
nav.pager ul.pager__items li.pager__item--previous a i:before {
  position: relative;
}
@keyframes linkArrowPulseLeft {
  0% {
    left: 0px;
  }
  50% {
    left: 3px;
  }
  100% {
    left: 0px;
  }
}
nav.pager ul.pager__items li.pager__item--previous a i:after {
  position: absolute;
  top: 50%;
  left: 0;
  width: 30px;
  height: 30px;
  background: var(--color-primary);
  border-radius: 50%;
  z-index: -1;
  margin-top: -15px;
}
nav.pager ul.pager__items li.pager__item--previous a:hover {
  color: var(--color-primary);
}
nav.pager ul.pager__items li.pager__item--previous.disable a i {
  color: var(--color-secondary);
}
nav.pager ul.pager__items li.pager__item--next {
  margin-left: 10px !important;
}
nav.pager ul.pager__items li.pager__item--next a i {
  font-size: 14px;
  line-height: 20px;
  position: relative;
  color: var(--color-primary);
}
nav.pager ul.pager__items li.pager__item--next a i:before {
  position: relative;
}
@keyframes linkArrowPulse {
  0% {
    left: 0px;
  }
  50% {
    left: -3px;
  }
  100% {
    left: 0px;
  }
}
nav.pager ul.pager__items li.pager__item--next a i:after {
  position: absolute;
  top: 50%;
  right: 0;
  width: 30px;
  height: 30px;
  background: var(--color-primary);
  border-radius: 50%;
  z-index: -1;
  margin-top: -15px;
}
nav.pager ul.pager__items li.pager__item--next a:hover {
  color: var(--color-primary);
}
nav.pager ul.pager__items li.pager__item--next.disable a i {
  color: var(--color-secondary);
}
/* --------------- SLIDE IN --------------- */
.slidein {
  opacity: 0;
  transition: opacity 1s;
}
.slidein.inview {
  opacity: 1;
}
.slidein.inview.delay-300 {
  transition-delay: 0.3s;
}
.slidein.inview.delay-500 {
  transition-delay: 0.5s;
}
.swiper-move .swiper-container .swiper-wrapper {
  animation: bilderSliderMove 1s 0s ease-out;
}
@keyframes bilderSliderMove {
  0% {
    left: 0;
  }
  50% {
    left: -50px;
  }
  100% {
    left: 0;
  }
}
/* --------------- PLAY BUTTON --------------- */
a.play {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -60px 0 0 -60px;
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background: none;
  display: block;
  text-align: center;
  color: #ffffff !important;
  text-transform: uppercase;
  font-size: var(--font-size-small);
  line-height: var(--line-height-smaller);
  font-weight: 700;
  font-size: 40px;
  padding-top: 40px;
  z-index: 99;
}
a.play i {
  margin-left: 5px;
}
a.play:before {
  content: "";
  position: absolute;
  top: 0%;
  left: 0%;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  opacity: 1;
  background: var(--color-primary);
  z-index: -1;
  transition: opacity 0.5s, background-color 0.5s;
}
a.play:after {
  content: "";
  position: absolute;
  top: 0%;
  left: 0%;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  opacity: 0.8;
  background: var(--color-primary);
  z-index: -2;
  animation: playButtonPulse 1s 0s ease-out infinite;
}
@keyframes playButtonPulse {
  0% {
    transform: scale(1);
    opacity: 0.8;
  }
  100% {
    transform: scale(1.3);
    opacity: 0;
  }
}
a.play:hover:before {
  background: var(--color-secondary);
  opacity: 1;
}
.hyphenate br {
  display: none;
}
.mobile-no-break br {
  display: none;
}
.swiper-container .swiper-navigation,
.swiper-nav-helper .swiper-navigation {
  display: flex;
  align-items: center;
  gap: 5px;
}
.swiper-container .swiper-navigation.white .prev,
.swiper-nav-helper .swiper-navigation.white .prev,
.swiper-container .swiper-navigation.white .next,
.swiper-nav-helper .swiper-navigation.white .next {
  color: #ffffff;
  border-color: #ffffff;
  background-color: transparent;
}
.swiper-container .swiper-navigation.white .swiper-pagination .swiper-pagination-bullet,
.swiper-nav-helper .swiper-navigation.white .swiper-pagination .swiper-pagination-bullet {
  background-color: #ffffff;
}
.swiper-container .swiper-navigation .prev,
.swiper-nav-helper .swiper-navigation .prev,
.swiper-container .swiper-navigation .next,
.swiper-nav-helper .swiper-navigation .next {
  flex: 0 0 40px;
  display: block;
  height: 40px;
  width: 40px;
  line-height: 40px;
  color: var(--color-primary);
  text-align: center;
  border: 1px solid var(--color-primary);
  background-color: #ffffff;
  transition: color 0.3s ease, background-color 0.3s ease;
}
.swiper-container .swiper-navigation .prev.swiper-button-disabled,
.swiper-nav-helper .swiper-navigation .prev.swiper-button-disabled,
.swiper-container .swiper-navigation .next.swiper-button-disabled,
.swiper-nav-helper .swiper-navigation .next.swiper-button-disabled {
  opacity: 0.3;
  pointer-events: none;
}
.swiper-container .swiper-pagination,
.swiper-nav-helper .swiper-pagination {
  position: relative;
  bottom: auto !important;
  left: auto !important;
  transform: none !important;
  margin-top: 0;
  display: flex;
  align-items: center;
  gap: 0;
  width: auto !important;
  padding-right: 15px;
  flex-grow: 1;
}
.swiper-container .swiper-pagination .swiper-pagination-bullet,
.swiper-nav-helper .swiper-pagination .swiper-pagination-bullet {
  width: auto;
  flex-grow: 1;
  height: 1px;
  border-radius: 0;
  margin: 0 !important;
  background-color: var(--color-primary);
  opacity: 0.7;
}
.swiper-container .swiper-pagination .swiper-pagination-bullet:only-child,
.swiper-nav-helper .swiper-pagination .swiper-pagination-bullet:only-child {
  display: block !important;
  height: 1px !important;
  opacity: 0.5 !important;
}
.swiper-container .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active,
.swiper-nav-helper .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  height: 3px;
  opacity: 1;
}
#main.page-404 {
  height: 100vh;
  height: var(--WIH);
  position: relative;
}
#main.page-404 .background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
#main.page-404 .background video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#main.page-404 .background::before {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  background: rgba(37, 49, 67, 0.5);
}
#main.page-404 .section {
  text-align: center;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
#main.page-404 .section .h1 {
  color: #fff;
}
#main.page-404 .section .h4 {
  color: #fff;
  text-transform: none;
}
#main.page-404 .section .text {
  color: #fff;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
#main.page-404 .section .button-wrapper {
  display: flex;
  justify-content: center;
  margin-top: 50px;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
@media (hover: hover) {
  .swiper-container .swiper-navigation .prev,
  .swiper-nav-helper .swiper-navigation .prev,
  .swiper-container .swiper-navigation .next,
  .swiper-nav-helper .swiper-navigation .next {
    cursor: pointer;
  }
  .swiper-container .swiper-navigation .prev:hover,
  .swiper-nav-helper .swiper-navigation .prev:hover,
  .swiper-container .swiper-navigation .next:hover,
  .swiper-nav-helper .swiper-navigation .next:hover {
    background-color: var(--color-primary);
    color: #ffffff;
  }
  .swiper-container .swiper-navigation.white .prev:hover,
  .swiper-nav-helper .swiper-navigation.white .prev:hover,
  .swiper-container .swiper-navigation.white .next:hover,
  .swiper-nav-helper .swiper-navigation.white .next:hover {
    background-color: #ffffff;
    color: var(--color-primary);
  }
}
.content-card a {
  display: block;
}
.content-card a .content-card__image {
  position: relative;
  aspect-ratio: 1000/600;
  overflow: hidden;
}
.content-card a .content-card__image picture img {
  transition: transform 0.5s ease;
}
.content-card a .content-card__image .content-card__image-label {
  top: 20px;
  right: 20px;
  background-color: var(--color-secondary);
  color: #ffffff;
  font-weight: 700;
  padding: 8px 16px;
  z-index: 10;
  position: absolute;
  font-size: var(--font-size-smaller);
  line-height: var(--line-height-smaller);
}
.content-card a .content-card__content {
  margin-top: 15px;
}
.content-card a .content-card__content .content-card__label {
  font-size: var(--font-size-small);
  line-height: var(--line-height-small);
  color: var(--color-secondary);
  font-weight: 700;
  margin-bottom: 5px;
}
.content-card a .content-card__content .content-card__title {
  font-weight: 700;
  color: var(--color-primary);
}
.content-card a .content-card__content .content-card__bar {
  display: flex;
  align-items: center;
  gap: 5px;
  margin-top: 20px;
}
.content-card a .content-card__content .content-card__bar .content-card__bar-icon {
  color: var(--color-secondary);
  transition: color 0.3s ease;
}
.content-card a .content-card__content .content-card__bar .content-card__bar-inner {
  flex-grow: 1;
  height: 2px;
  width: auto;
  background-color: var(--color-secondary);
  transition: background-color 0.3s ease;
}
@media (hover: hover) {
  .content-card a:hover .content-card__image picture img {
    transform: scale(1.05);
  }
  .content-card a:hover .content-card__content .content-card__bar .content-card__bar-icon {
    color: var(--color-primary);
  }
  .content-card a:hover .content-card__content .content-card__bar .content-card__bar-inner {
    background-color: var(--color-primary);
  }
}
.category-card {
  height: auto !important;
}
.category-card a {
  display: block;
  height: 100%;
}
.category-card .category-card__content {
  height: 100%;
  display: flex;
  flex-direction: column;
  padding: 20px;
  background-color: #ffffff;
  margin: 0;
}
.category-card .category-card__content .category-card__icon {
  height: 40px;
  width: 40px;
  margin-bottom: 20px;
}
.category-card .category-card__content .category-card__title {
  color: var(--color-primary);
  font-family: var(--font-family-wide);
  font-weight: 400;
  margin-bottom: 30px;
  text-transform: uppercase;
  font-size: var(--font-size-h5);
  line-height: var(--line-height-h5);
}
.category-card .category-card__content .category-card__ui-icon {
  display: block;
  height: 30px;
  width: 30px;
  line-height: 28px;
  text-align: center;
  font-size: 18px;
  color: var(--color-secondary);
  border: 1px solid var(--color-secondary);
  margin-top: auto;
  transition: color 0.3s ease, background-color 0.3s ease;
}
@media (hover: hover) {
  .category-card a:hover .category-card__content .category-card__ui-icon {
    background: var(--color-secondary);
    color: #ffffff;
  }
}
.profile-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 30px;
  outline: 1px solid var(--color-secondary);
  position: relative;
  border: none !important;
}
.profile-card .line {
  background-color: var(--color-primary);
  position: absolute;
}
.profile-card .line.line-left {
  left: -2px;
  top: -2px;
  z-index: 10;
  width: 3px;
}
.profile-card .line.line-right {
  right: -2px;
  top: -2px;
  z-index: 10;
  width: 3px;
}
.profile-card .line.line-bottom-left {
  height: 3px;
  bottom: -2px;
  left: -2px;
  z-index: 10;
}
.profile-card .line.line-bottom-right {
  height: 3px;
  bottom: -2px;
  right: -2px;
  z-index: 10;
}
.profile-card.profile-card--mitarbeiterstory {
  padding: 0;
  display: block;
}
.profile-card.profile-card--mitarbeiterstory .profile-card__content {
  padding: 30px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.profile-card .profile-card__image {
  height: 70px;
  width: 70px;
  overflow: hidden;
  border-radius: 50%;
  margin-bottom: 30px;
}
.profile-card .profile-card__name {
  font-family: var(--font-family-wide);
  text-transform: uppercase;
  font-weight: 400;
  color: var(--color-primary);
  font-size: var(--font-size-h5);
  line-height: var(--line-height-h5);
  margin-bottom: 10px;
  transition: color 0.3s ease;
}
.profile-card .profile-card__position {
  margin-bottom: 30px;
}
.profile-card .profile-card__mail {
  margin-bottom: 20px;
}
.profile-card .profile-card__mail a {
  text-decoration: underline;
}
.profile-card .profile-card__ui-icon {
  display: block;
  height: 30px;
  width: 30px;
  border: 1px solid var(--color-secondary);
  line-height: 28px;
  font-size: 16px;
  text-align: center;
  color: var(--color-secondary);
  margin-top: auto;
  transition: color 0.3s ease, background-color 0.3s ease;
}
.profile-card .profile-card__label {
  margin-top: auto;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.profile-card .profile-card__label .tag {
  font-size: var(--font-size-small);
  line-height: var(--line-height-small);
  font-weight: 700;
  color: var(--color-secondary);
  padding: 5px 10px;
  border: 1px solid var(--color-secondary);
  display: inline-block;
}
.profile-card .profile-card__label .tag[data-label="Vertrieb"] {
  order: 999;
}
@media (hover: hover) {
  .profile-card a.profile-card__name:hover {
    color: var(--color-secondary);
  }
  .profile-card .profile-card__arrow:hover .profile-card__ui-icon {
    background-color: var(--color-secondary);
    color: #ffffff;
  }
  .profile-card.profile-card--mitarbeiterstory .profile-card__content:hover .profile-card__name {
    color: var(--color-secondary);
  }
  .profile-card.profile-card--mitarbeiterstory .profile-card__content:hover .profile-card__ui-icon {
    background-color: var(--color-secondary);
    color: #ffffff;
  }
}
#cta {
  padding: 100px 0;
  background-color: var(--color-primary-dark);
}
#cta .untertitel {
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
  margin-bottom: 10px;
}
#cta .h1 {
  transition: color 0.3s ease;
}
#cta .icon-arrow-top-right {
  display: block;
  height: 100px;
  width: 100px;
  border: 2px solid var(--color-secondary);
  line-height: 100px;
  font-size: 36px;
  color: var(--color-secondary);
  margin-top: 30px;
  text-align: center;
  transition: border 0.3s ease, color 0.3s ease;
}
@media (hover: hover) {
  #cta a:hover {
    /*
                .icon-arrow-top-right {
                    color: var(--color-primary);
                    color: #ffffff;
                    border-color: var(--color-primary);
                    border-color: #ffffff;
                }
                */
  }
  #cta a:hover .h1 {
    color: var(--color-secondary);
  }
}
.content-space-left {
  padding: 30px 7vw 30px;
  margin-right: -7vw;
  margin-left: -7vw;
}
.banner-container .content {
  background-color: #ffffff;
  padding: 30px;
}
body {
  opacity: 1;
}
