@charset "UTF-8";
/**
 * @license
 * MyFonts Webfont Build ID 3867246, 2020-12-16T11:57:38-0500
 *
 * The fonts listed in this notice are subject to the End User License
 * Agreement(s) entered into by the website owner. All other parties are
 * explicitly restricted from using the Licensed Webfonts(s).
 *
 * You may obtain a valid license at the URLs below.
 *
 * Webfont: Frutiger Pro 45 Light by Linotype
 * URL: https://www.myfonts.com/collections/linotype-foundry

 * Webfont: Frutiger Pro 55 Roman by Linotype
 * URL: https://www.myfonts.com/collections/linotype-foundry 

 * © 2026 MyFonts Inc. */
@font-face {
  font-family: "FrutigerLTCom";
  src: url("/css/fonts/FrutigerPro45Light/font.woff2") format("woff2"), url("/css/fonts/FrutigerPro45Light/font.woff") format("woff");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "FrutigerLTCom";
  src: url("/css/fonts/FrutigerPro55Roman/font.woff2") format("woff2"), url("/css/fonts/FrutigerPro55Roman/font.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
/*
@font-face {
  font-family: FrutigerLTCom;
  src: url(/css/fonts/FrutigerLTCom-Light.ttf);
  font-weight: 300;
  font-style: normal;
  font-display: swap
}

@font-face {
  font-family: FrutigerLTCom;
  src: url(/css/fonts/FrutigerLTCom-LightItalic.ttf);
  font-weight: 300;
  font-style: italic;
  font-display: swap
}

@font-face {
  font-family: FrutigerLTCom;
  src: url(/css/fonts/FrutigerLTCom-Roman.ttf);
  font-weight: 400;
  font-style: normal;
  font-display: swap
}

@font-face {
  font-family: FrutigerLTCom;
  src: url(/css/fonts/FrutigerLTCom-Italic.ttf);
  font-weight: 400;
  font-style: italic;
  font-display: swap
}

@font-face {
  font-family: FrutigerLTCom;
  src: url(/css/fonts/FrutigerLTCom-Bold.ttf);
  font-weight: 700;
  font-style: normal;
  font-display: swap
}

@font-face {
  font-family: FrutigerLTCom;
  src: url(/css/fonts/FrutigerLTCom-BoldItalic.ttf);
  font-weight: 700;
  font-style: italic;
  font-display: swap
}

 */
/***************************************************************
FRAMEWORK VARIABLES
****************************************************************/
/****************************************************************
Widths
****************************************************************/
/****************************************************************
Colors
****************************************************************/
/***************************************************************
MOBILE MIXINS
****************************************************************/
/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  height: 15px;
  width: 20px;
  display: block;
  float: left;
  cursor: pointer;
  background: red;
  transition-property: opacity, -webkit-filter;
  transition-property: opacity, filter;
  transition-property: opacity, filter, -webkit-filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible;
  padding: 0;
}

.hamburger:hover {
  opacity: 0.8;
}

.hamburger-box {
  width: 100%;
  height: 100%;
  display: inline-block;
  position: relative;
}

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px;
}

.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after {
  width: 100%;
  height: 2px;
  background-color: #1a1a1a;
  border-radius: 0;
  position: absolute;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  transition-duration: 0.15s;
  transition-timing-function: ease;
}

.hamburger-inner::before, .hamburger-inner::after {
  content: "";
  display: block;
}

.hamburger-inner::before {
  top: -7px;
}

.hamburger-inner::after {
  bottom: -6px;
}

/*
 * Collapse
 */
.hamburger--collapse .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.15s;
  transition-delay: 0.15s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--collapse .hamburger-inner::after {
  top: -14px;
  transition: top 0.3s 0.3s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
}

.hamburger--collapse .hamburger-inner::before {
  transition: top 0.12s 0.3s cubic-bezier(0.33333, 0.66667, 0.66667, 1), -webkit-transform 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: top 0.12s 0.3s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: top 0.12s 0.3s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--collapse.is-active .hamburger-inner {
  -webkit-transform: translate3d(0, -10px, 0) rotate(-45deg);
  transform: translate3d(0, -10px, 0) rotate(-45deg);
  transition-delay: 0.32s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--collapse.is-active .hamburger-inner::after {
  top: 0;
  opacity: 0;
  transition: top 0.3s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.27s linear;
}

.hamburger--collapse.is-active .hamburger-inner::before {
  top: 0;
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  transition: top 0.12s 0.18s cubic-bezier(0.33333, 0, 0.66667, 0.33333), -webkit-transform 0.15s 0.42s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: top 0.12s 0.18s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.15s 0.42s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: top 0.12s 0.18s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.15s 0.42s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.15s 0.42s cubic-bezier(0.215, 0.61, 0.355, 1);
}

body {
  margin: 0;
  padding: 0;
}

section {
  overflow-x: hidden;
  padding: 4rem 1.5rem;
}
@media (min-width: 600px) {
  section {
    padding: 4.5rem 1.5rem;
  }
}
@media (min-width: 900px) {
  section {
    padding: 6.5rem 1.5rem;
  }
}

article {
  max-width: 71.25rem;
  margin: 0 auto;
  padding: 0;
}
@media (min-width: 900px) {
  article {
    padding: 0;
  }
}
article.padding {
  padding: 0;
}
@media (max-width: 599px) {
  article.padding {
    padding: 0;
  }
}

header article {
  display: flex;
  align-items: center;
}
header article nav {
  display: flex;
  align-items: center;
  font-size: 1rem;
}
header article nav .navLinks {
  display: flex;
  align-items: center;
}
@media (max-width: 599px) {
  header article nav .navLinks {
    display: none;
  }
}
header article .hamburger {
  display: inline-block;
}
@media (min-width: 900px) {
  header article .hamburger {
    display: none;
  }
}

section article img {
  max-width: 100%;
}

*:focus, *:active {
  outline: none;
}

*:focus-visible {
  outline: 2px dashed #FF0002;
  text-decoration: none;
}

.overflowHidden {
  overflow: hidden;
}

.buttons {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}
@media (max-width: 599px) {
  .buttons .item {
    width: 100%;
  }
}

.arrowLink {
  font-size: 1rem;
  font-size: clamp(1rem, 1rem + 0vw, 1rem);
  line-height: 1.375rem;
  line-height: clamp(1rem, 1.7916666667rem + -1.1111111111vw, 1.375rem);
  letter-spacing: -0.04rem;
  display: flex;
  align-items: flex-start;
}
.arrowLink:hover {
  text-decoration: none;
  color: #FF0002;
}
.arrowLink::after {
  content: url("/img/arrow-right-red-cut.svg");
  padding-left: 1rem;
  transition: transform 0.4s ease; /* Adds a smooth transition */
}
.arrowLink:hover::after {
  transform: translateX(0.5rem); /* Moves the image 0.5rem to the right */
}

.button {
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1rem; /* 100% */
  letter-spacing: -0.04rem;
  padding: 1rem 2.2rem 1rem 4rem;
  display: flex;
  justify-content: right;
  align-items: center;
  transition: background 400ms ease-in-out;
  max-width: fit-content;
  text-decoration: none;
  color: #fff;
  background: #FF0002;
  background-image: url(/img/button-arrow-white.svg);
  background-repeat: no-repeat;
  background-position: left 1rem center;
}
@media (max-width: 599px) {
  .button {
    padding: 0.7rem 1.2rem 0.7rem 5rem;
    max-width: none;
    width: 100%;
  }
}
.button.download {
  background-image: url(/img/download-white.svg);
}
.button i {
  margin-right: 0.5rem;
}
.button:hover {
  background-position: left 2rem center;
  color: #fff;
}
.button:focus {
  text-decoration: none !important;
  color: #fff;
}
.button.btnDownloadTerms {
  background-color: transparent;
  background-image: url("/img/arrow-right-red.svg");
  color: black;
  text-decoration: underline;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.button.btnDownloadTerms:hover {
  text-decoration: underline;
}
.button.white {
  background-color: #fff;
  background-image: url(/img/button-arrow-red.svg);
  color: #FF0002;
  border: 1px solid #FF0002;
}
.button.white:hover, .button.white:active, .button.white:focus {
  text-decoration: none;
}
.button.whiteborder {
  border: 2px solid #fff;
  color: #fff;
  padding: 0.685rem 2.2rem 0.485rem 6rem;
}
.button.whiteborder:hover, .button.whiteborder:active, .button.whiteborder:focus {
  color: #fff;
  text-decoration: none;
}
.button.halfArrowed {
  background-color: #fff;
  background-image: url(/img/arrow-box-red-right.svg);
  color: #000;
  background-position: left 0rem center;
  padding-left: 3rem;
  max-height: 2rem;
}
@media (min-width: 1200px) {
  .button.halfArrowed {
    width: fit-content !important;
  }
}
.button.redborder {
  background-color: transparent;
  background-image: url(/img/button-arrow-red.svg);
  border: 2px solid #FF0002;
  color: #FF0002;
  padding: 0.685rem 2.2rem 0.485rem 6rem;
}
.button.redborder:hover, .button.redborder:active, .button.redborder:focus {
  text-decoration: none;
}
.button.centeredMargin {
  margin-left: auto;
  margin-right: auto;
}
.button.pinnedRight {
  margin-left: auto;
  margin-right: 0;
}
.button.small {
  padding: 0.5rem 0.8rem;
  font-size: 0.5rem;
  font-size: clamp(0.5rem, 0.1666666667rem + 0.8888888889vw, 0.8rem);
  line-height: 1rem;
  line-height: clamp(1rem, 0.7777777778rem + 0.5925925926vw, 1.2rem);
}

.button:hover {
  text-decoration: none;
}

a {
  color: #FF0002;
  text-decoration: none;
}
a:hover, a:focus {
  text-decoration: underline;
  color: #1a1a1a;
}

body.template h1, body.template h2, body.template h3, body.template h4, body.template h5, body.template .pretitle, body.template h6 {
  margin-top: 3rem;
}

.grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(13rem, 1fr));
  gap: 1.5rem;
}
.grid .item {
  aspect-ratio: 1/1;
  display: flex;
  align-items: center;
  justify-content: center;
}

.bgPrimaryColor {
  background-color: #FF0002;
  color: #fff;
}

.primaryColor {
  color: #FF0002;
}

.bgBlack {
  background-color: #1a1a1a;
  color: #fff;
}
.bgBlack * {
  color: #fff;
}

.bgGrey {
  background-color: #949899;
}

.bgLightGrey {
  background-color: #F5F5F5;
}

.bgSecondaryColor {
  background-color: #374043;
  color: #fff;
}

.white {
  color: #fff;
}

.black {
  color: #1a1a1a;
}

.noPaddingTop {
  padding-top: 0;
}

.noPaddingBottom {
  padding-bottom: 0;
}

.noPaddingV {
  padding-top: 0;
  padding-bottom: 0;
}

.textLessWidth:first-child {
  position: relative;
}

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

@media (min-width: 900px) {
  .imageOverFlow img {
    position: absolute;
    max-width: 480px;
  }
}

@media (max-width: 599px) {
  .desktop {
    display: none !important;
  }
}

@media (max-width: 599px) {
  .desktopTablet {
    display: none !important;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  .desktopTablet {
    display: none !important;
  }
}

@media (max-width: 599px) {
  .tablet {
    display: none !important;
  }
}
@media (min-width: 900px) {
  .tablet {
    display: none !important;
  }
}

@media (min-width: 600px) {
  .mobile:not(.tablet) {
    display: none !important;
  }
}

.spaceLeft {
  margin-left: 40%;
}
@media (max-width: 599px) {
  .spaceLeft {
    margin-left: 0;
  }
}

.spaceRight {
  margin-right: 40%;
}
@media (max-width: 599px) {
  .spaceRight {
    margin-right: 0;
  }
}

.mobileBlock {
  display: inline;
}
@media (max-width: 599px) {
  .mobileBlock {
    display: block;
  }
}

.desktopBlock {
  display: block;
}
@media (max-width: 599px) {
  .desktopBlock {
    display: inline;
  }
}

body.home h1 {
  font-size: 3rem;
  font-size: clamp(3rem, 1.3333333333rem + 4.4444444444vw, 4.5rem);
  line-height: 3rem;
  line-height: clamp(3rem, 0.7777777778rem + 5.9259259259vw, 5rem);
  margin-bottom: clamp(1rem, -0.1666666667rem + 4.4444444444vw, 1.5rem);
  font-style: normal;
  font-weight: 400;
  letter-spacing: -0.18rem;
  margin-bottom: 1.5rem;
}
@media (max-width: 599px) {
  body.home h1 {
    letter-spacing: -0.12rem;
    margin-bottom: 2rem;
  }
}
body.home section#CTARichTextImageBlockOne {
  gap: 5.5rem;
}
@media (max-width: 599px) {
  body.home section#CTARichTextImageBlockOne {
    gap: 3rem;
  }
}
body.home section#CTARichTextImageBlockOne div.teaser {
  font-size: 1.25rem;
  font-size: clamp(1.25rem, 0.8333333333rem + 1.1111111111vw, 1.625rem);
  line-height: 1.75rem;
  line-height: clamp(1.75rem, 1.3333333333rem + 1.1111111111vw, 2.125rem);
  font-style: normal;
  font-weight: 400;
  letter-spacing: -0.0325rem;
  color: #929191;
}
body.home section#CTARichTextImageBlockOne div.teaser:last-child {
  margin-bottom: 0;
}
body.home section#CTARichTextImageBlockOne img {
  aspect-ratio: 1;
}
body.home section.header {
  padding-top: 3rem;
  padding-bottom: 27.5rem;
}
@media (min-width: 600px) {
  body.home section.header {
    padding-bottom: 12rem;
    padding-top: 14.5rem;
  }
}
body.home section.header div.p {
  font-size: 1.25rem;
  font-size: clamp(1.25rem, 0.8333333333rem + 1.1111111111vw, 1.625rem);
  line-height: 1.75rem;
  line-height: clamp(1.75rem, 1.3333333333rem + 1.1111111111vw, 2.125rem);
  font-style: normal;
  font-weight: 400;
  letter-spacing: -0.025rem;
}
body.home section.header div.p:last-child {
  margin-bottom: 0;
}
body.home .teaser {
  font-size: 1.25rem;
  font-size: clamp(1.25rem, 0.8333333333rem + 1.1111111111vw, 1.625rem);
  line-height: 1.75rem;
  line-height: clamp(1.75rem, 1.3333333333rem + 1.1111111111vw, 2.125rem);
  margin-bottom: 2.5rem;
  letter-spacing: -0.0325rem;
  color: #929191;
}
@media (max-width: 599px) {
  body.home .teaser {
    letter-spacing: -0.025rem;
    max-width: 90%;
    margin-bottom: 2rem;
  }
}

h1 {
  font-size: 2.5rem;
  font-size: clamp(2.5rem, 0.4166666667rem + 5.5555555556vw, 4.375rem);
  line-height: 3rem;
  line-height: clamp(3rem, 0.9166666667rem + 5.5555555556vw, 4.875rem);
  margin-bottom: clamp(1rem, -0.1666666667rem + 4.4444444444vw, 1.5rem);
  font-style: normal;
  font-weight: 400;
  letter-spacing: -0.175rem;
}
@media (max-width: 599px) {
  h1 {
    letter-spacing: -0.12rem;
  }
}
h1 span {
  color: #FF0002;
}

h2 {
  font-size: 2.25rem;
  font-size: clamp(2.25rem, 0.8611111111rem + 3.7037037037vw, 3.5rem);
  line-height: 2.5rem;
  line-height: clamp(2.5rem, 0.8333333333rem + 4.4444444444vw, 4rem);
  letter-spacing: -0.14rem;
  font-style: normal;
  font-weight: 400;
  margin-bottom: 1.5rem;
}
@media (max-width: 599px) {
  h2 {
    letter-spacing: -0.09rem;
  }
}
h2 span {
  color: #FF0002;
}

h3, .h3 {
  font-size: 1.625rem;
  font-size: clamp(1.625rem, 0.9305555556rem + 1.8518518519vw, 2.25rem);
  line-height: 2rem;
  line-height: clamp(2rem, 0.8888888889rem + 2.962962963vw, 3rem);
  font-weight: 400;
  letter-spacing: -0.085rem;
}

h4, .h4 {
  font-size: 1.25rem;
  font-size: clamp(1.25rem, 0.9722222222rem + 0.7407407407vw, 1.5rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 0.6805555556rem + 1.8518518519vw, 2rem);
  font-weight: 400;
}

h5, .pretitle, .h5 {
  font-size: 1rem;
  font-size: clamp(1rem, 0.8611111111rem + 0.3703703704vw, 1.125rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 1.2361111111rem + 0.3703703704vw, 1.5rem);
  font-style: normal;
  font-weight: 400;
  letter-spacing: -0.0225rem;
}

h6 {
  font-size: 0.75rem;
  font-size: clamp(0.75rem, 0.6111111111rem + 0.3703703704vw, 0.875rem);
  line-height: 1rem;
  line-height: clamp(1rem, 1rem + 0vw, 1rem);
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: bold;
}

.pretitle {
  margin-bottom: 1.25rem;
  color: #929191;
}
@media (max-width: 599px) {
  .pretitle {
    margin-bottom: 0.75rem;
  }
}

body.home .teaser {
  font-size: 1.25rem;
  font-size: clamp(1.25rem, 0.2777777778rem + 2.5925925926vw, 2.125rem);
  line-height: 1.75rem;
  line-height: clamp(1.75rem, 0.7777777778rem + 2.5925925926vw, 2.625rem);
  margin-bottom: 2.5rem;
  letter-spacing: -0.04rem;
  color: #929191;
}
@media (max-width: 599px) {
  body.home .teaser {
    letter-spacing: -0.025rem;
    margin-bottom: 2rem;
  }
}

.teaser {
  font-size: 1.25rem;
  font-size: clamp(1.25rem, 1.25rem + 0vw, 1.25rem);
  line-height: 1.625rem;
  line-height: clamp(1.625rem, 1.2083333333rem + 1.1111111111vw, 2rem);
  font-weight: 300;
  color: #929191;
}

div.p {
  font-size: 1.25rem;
  font-size: clamp(1.25rem, 0.8333333333rem + 1.1111111111vw, 1.625rem);
  line-height: 1.75rem;
  line-height: clamp(1.75rem, 1.3333333333rem + 1.1111111111vw, 2.125rem);
  margin-bottom: clamp(2.5rem, 0.12rem + 2.35vw, 3rem);
  font-style: normal;
  font-weight: 300;
  color: #929191;
  letter-spacing: -0.0325rem;
}
div.p:last-child {
  margin-bottom: 0;
}
@media (max-width: 599px) {
  div.p {
    letter-spacing: -0.025rem;
  }
}

div.small {
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 0.9861111111rem + 0.3703703704vw, 1.25rem);
  line-height: 1.625rem;
  line-height: clamp(1.625rem, 1.2083333333rem + 1.1111111111vw, 2rem);
  margin-bottom: clamp(1.5rem, 0.06rem + 1.18vw, 2.5rem);
  font-weight: 300;
}
div.small b {
  font-weight: 400;
}
div.small:last-child {
  margin-bottom: 0;
}

div.verysmall {
  font-size: 0.6rem;
  font-size: clamp(0.6rem, 0.2944444444rem + 0.8148148148vw, 0.875rem);
  line-height: 0.9rem;
  line-height: clamp(0.9rem, 0.6777777778rem + 0.5925925926vw, 1.1rem);
  margin-bottom: clamp(0.5rem, 0.06rem + 1.18vw, 1rem);
}

caption, .caption {
  font-size: 0.875rem;
  font-size: clamp(0.875rem, 0.7361111111rem + 0.3703703704vw, 1rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 1.2361111111rem + 0.3703703704vw, 1.5rem);
}

.quote {
  font-size: clamp(1.375rem, 2vw, 1.625rem);
  line-height: clamp(2rem, 2.25vw, 2.5rem);
  font-size: 1.375rem;
  font-size: clamp(1.375rem, 1.0972222222rem + 0.7407407407vw, 1.625rem);
  line-height: 2rem;
  line-height: clamp(2rem, 1.4444444444rem + 1.4814814815vw, 2.5rem);
  font-style: italic;
}

p {
  margin-bottom: 1rem;
}
p:last-child {
  margin-bottom: 0;
}

section#ImageBlock {
  padding: 0;
}
section#ImageBlock article {
  margin: 0;
  max-width: none;
}
@media (max-width: 599px) {
  section#ImageBlock {
    min-height: 19rem;
  }
}

section#CTARichTextBlock .teaser {
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 0.9861111111rem + 0.3703703704vw, 1.25rem);
  line-height: 1.625rem;
  line-height: clamp(1.625rem, 1.2083333333rem + 1.1111111111vw, 2rem);
  font-weight: 300;
  color: #000;
  margin-bottom: 2.5rem;
}
@media (max-width: 599px) {
  section#CTARichTextBlock .teaser {
    margin-bottom: 1.5rem;
  }
}

code {
  color: #FF0002;
  font-size: unset;
  font-family: unset;
}

section#CTARichTextImageBlockOne .twocol, section#CTARichTextImageBlockTwo .twocol {
  gap: 5.5rem;
  align-items: center;
}
@media (max-width: 900px) {
  section#CTARichTextImageBlockOne .twocol, section#CTARichTextImageBlockTwo .twocol {
    gap: 3rem;
  }
}
section#CTARichTextImageBlockOne .teaser p, section#CTARichTextImageBlockTwo .teaser p {
  margin-bottom: 0;
}

.teaser {
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 0.9861111111rem + 0.3703703704vw, 1.25rem);
  line-height: 1.625rem;
  line-height: clamp(1.625rem, 1.2083333333rem + 1.1111111111vw, 2rem);
  color: black;
  margin-bottom: 0;
}

section#sliderCutRightBig img {
  aspect-ratio: 1;
}
section#sliderCutRightBig h2 {
  margin-bottom: 4rem;
}
@media (max-width: 899px) {
  section#sliderCutRightBig h2 {
    margin-bottom: 2rem;
  }
}
section#sliderCutRightBig .twocol {
  align-items: center;
}
section#sliderCutRightBig .twocol div:nth-child(2) {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
section#sliderCutRightBig .sliderBox {
  margin: 0 0;
}
section#sliderCutRightBig .swiper-button-next {
  top: 1rem;
}
section#sliderCutRightBig .swiper-button-prev {
  top: 1rem;
}
section#sliderCutRightBig .swiper-pagination {
  display: none;
}
@media (max-width: 599px) {
  section#sliderCutRightBig .swiper-pagination {
    display: flex;
    position: relative;
    bottom: auto;
    margin-top: 1.5rem;
    justify-content: center;
  }
}

.products section#CTARichTextBlock {
  background-color: #F5F5F5;
}

.grid.fourCol {
  grid-template-columns: 1fr 1fr 1fr 1fr;
}
@media (min-width: 600px) and (max-width: 899px) {
  .grid.fourCol {
    grid-template-columns: 1fr 1fr;
  }
}

section#CTARichTextImageBlockOne .mobile img {
  margin-bottom: 3rem;
}

.swiper-pagination {
  bottom: -50px;
}

.twocol {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
}
.twocol.fix {
  grid-template-columns: 1fr 1fr;
}
@media (min-width: 900px) {
  .twocol {
    grid-template-columns: 1fr 1fr;
  }
}
@media (min-width: 600px) {
  .twocol.portrait {
    grid-template-columns: 1fr 1fr;
  }
}
.twocol.center {
  align-items: center;
}
.twocol.vcenter {
  align-items: center;
}
.twocol.vtop {
  align-items: start;
}
.twocol.vbottom {
  align-items: end;
}
.twocol.twocol75 {
  grid-template-columns: 1fr;
}
@media (min-width: 900px) {
  .twocol.twocol75 {
    grid-template-columns: 0.7fr 0.5fr;
  }
}
@media (min-width: 600px) {
  .twocol.twocol75.portrait {
    grid-template-columns: 0.7fr 0.5fr;
  }
}
.twocol.twocol57 {
  grid-template-columns: 1fr;
}
@media (min-width: 900px) {
  .twocol.twocol57 {
    grid-template-columns: 0.5fr 0.7fr;
  }
}
@media (min-width: 600px) {
  .twocol.twocol57.portrait {
    grid-template-columns: 0.5fr 0.7fr;
  }
}
.twocol.twocol84 {
  grid-template-columns: 1fr;
}
@media (min-width: 900px) {
  .twocol.twocol84 {
    grid-template-columns: 0.8fr 0.4fr;
  }
}
@media (min-width: 600px) {
  .twocol.twocol84.portrait {
    grid-template-columns: 0.8fr 0.4fr;
  }
}
.twocol.twocol48 {
  grid-template-columns: 1fr;
}
@media (min-width: 900px) {
  .twocol.twocol48 {
    grid-template-columns: 0.4fr 0.8fr;
  }
}
@media (min-width: 600px) {
  .twocol.twocol48.portrait {
    grid-template-columns: 0.4fr 0.8fr;
  }
}
.twocol.twocol93 {
  grid-template-columns: 1fr;
}
@media (min-width: 900px) {
  .twocol.twocol93 {
    grid-template-columns: 0.9fr 0.3fr;
  }
}
@media (min-width: 600px) {
  .twocol.twocol93.portrait {
    grid-template-columns: 0.9fr 0.3fr;
  }
}
.twocol.twocol39 {
  grid-template-columns: 1fr;
}
@media (min-width: 900px) {
  .twocol.twocol39 {
    grid-template-columns: 0.3fr 0.9fr;
  }
}
@media (min-width: 600px) {
  .twocol.twocol39.portrait {
    grid-template-columns: 0.3fr 0.9fr;
  }
}
.twocol.twocol102 {
  grid-template-columns: 1fr;
}
@media (min-width: 900px) {
  .twocol.twocol102 {
    grid-template-columns: 1fr 0.2fr;
  }
}
@media (min-width: 600px) {
  .twocol.twocol102.portrait {
    grid-template-columns: 1fr 0.2fr;
  }
}
.twocol.twocol210 {
  grid-template-columns: 1fr;
}
@media (max-width: 900px) {
  .twocol.twocol210 {
    gap: 0 !important;
  }
}
@media (min-width: 900px) {
  .twocol.twocol210 {
    grid-template-columns: 0.2fr 1fr;
  }
}
@media (min-width: 600px) {
  .twocol.twocol210.portrait {
    grid-template-columns: 0.2fr 1fr;
  }
}

.threeCol, .threecol {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 600px) {
  .threeCol, .threecol {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

.fourcol, .cards.fourcol {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem;
}
@media (min-width: 600px) {
  .fourcol, .cards.fourcol {
    grid-template-columns: 1fr 1fr;
  }
}
@media (min-width: 900px) {
  .fourcol, .cards.fourcol {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}

.newslist a {
  color: #1a1a1a;
}
.newslist a:hover {
  text-decoration: none;
}
.newslist .item {
  display: grid;
  grid-template-columns: 200px 1fr;
  background: #efefef;
  margin-bottom: 1rem;
  gap: 1rem;
}
.newslist .item .txt {
  padding: 0.5rem;
}
.newslist .item .txt h3 {
  font-size: 1.5rem;
  margin-bottom: 0.5rem;
}
.newslist .item .txt p {
  font-size: 1rem;
}
.newslist .item img {
  max-width: 100%;
}

.newsdetail img, .newsdetail video {
  max-width: 100%;
}
.newsdetail > div {
  margin-bottom: 5rem;
}
.newsdetail .gallery {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(364px, 1fr));
  flex-wrap: wrap;
  gap: 1rem;
}
.newsdetail .gallery .thumbnail img {
  width: 100%;
}

.youtube {
  margin-top: 0;
}

.videoWrapper {
  position: relative;
  height: 100%;
  min-height: 540px;
  width: 100%;
  height: auto;
}
@media (min-width: 1200px) {
  .videoWrapper {
    min-height: 720px;
  }
}
@media (max-width: 599px) {
  .videoWrapper {
    margin-bottom: 2rem;
    min-height: 345px;
  }
}

.embedWrapper > * {
  margin-left: auto;
  margin-right: auto;
}

.videoWrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#sliderCutRight .slider.swiper,
#sliderCutRightBig .slider.swiper,
#events .slider.swiper {
  overflow: visible;
}

#sliderCutRight .swiper-button-next,
#sliderCutRight .swiper-button-prev {
  top: -6rem;
}

.sliderBox {
  position: relative;
}

.swiper-pagination-bullet {
  background: #000;
  opacity: 0.3;
}
.swiper-pagination-bullet.swiper-pagination-bullet-active {
  opacity: 1;
}

.slider.swiper ~ .swiper-pagination {
  display: none;
}

#textGridInfo .swiper-button-prev,
#textGridInfo .swiper-button-next,
#textGridNumbered .swiper-button-prev,
#textGridNumbered .swiper-button-next {
  display: none;
}

.mobile.swiper ~ .swiper-button-prev,
.mobile.swiper ~ .swiper-button-next,
.mobile.swiper ~ .swiper-pagination {
  display: none !important;
}

@media (max-width: 599px) {
  #sliderCutRight .swiper-button-prev,
  #sliderCutRight .swiper-button-next,
  #sliderCutRightBig .swiper-button-prev,
  #sliderCutRightBig .swiper-button-next,
  #events .swiper-button-prev,
  #events .swiper-button-next {
    display: none;
  }
}
.swiper-button-next,
.swiper-button-prev {
  z-index: 8;
  width: 4rem;
  height: 4rem;
  top: -5rem;
}
.swiper-button-next.swiper-button-disabled::after,
.swiper-button-prev.swiper-button-disabled::after {
  opacity: 0.5;
}
.swiper-button-next::after,
.swiper-button-prev::after {
  content: "";
  font-size: 0;
}

.swiper-button-next {
  right: 3rem;
}
.swiper-button-next::after {
  content: url("/img/arrow-right.svg");
  opacity: 1;
}

.swiper-button-prev {
  left: auto;
  right: 7rem;
}
.swiper-button-prev::after {
  content: url("/img/arrow-left.svg");
  opacity: 1;
}

.swiper-button-next.swiper-button-lock,
.swiper-button-prev.swiper-button-lock {
  display: none !important;
}

.dark .swiper-button-prev::after {
  content: url("/img/arrow-left-white.svg");
}
.dark .swiper-button-next::after {
  content: url("/img/arrow-right-white.svg");
}

.gap4 {
  gap: 4rem;
}
@media (max-width: 599px) {
  .gap4 {
    gap: 3rem;
  }
}

.gap3 {
  gap: 3rem;
}

.gap10 {
  gap: 10rem;
}
@media (max-width: 599px) {
  .gap10 {
    gap: 3rem;
  }
}

header article {
  display: flex;
}
header article #logo {
  display: block;
  margin-right: 2rem;
}

nav {
  line-height: 1rem;
  font-size: 0.6rem;
  font-size: clamp(0.6rem, 0.1555555556rem + 1.1851851852vw, 1rem);
  line-height: 0.6rem;
  line-height: clamp(0.6rem, 0.1555555556rem + 1.1851851852vw, 1rem);
}
nav a {
  color: #1a1a1a;
}
nav a:hover {
  text-decoration: none;
  color: #FF0002;
}
nav ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
}
nav > ul > li.sub > a {
  background: url(/img/arrow-down-black-icon.svg) right center no-repeat;
  background-size: 1.5rem auto;
  padding-right: 1.5rem;
  white-space: nowrap;
}
@media (min-width: 600px) and (max-width: 899px) {
  nav > ul > li.sub > a {
    background: url(/img/arrow-right.svg) right center no-repeat;
    background-size: 1.5rem auto;
    padding-right: 1.5rem;
    white-space: nowrap;
  }
}
nav > ul > li.sub > a:hover {
  background-image: url(/img/arrow-down-red.svg);
}
@media (min-width: 600px) and (max-width: 899px) {
  nav > ul > li.sub > a:hover {
    background-image: url(/img/arrow-right-red2.svg);
    background-size: 1.5rem auto;
    padding-right: 1.5rem;
    white-space: nowrap;
  }
}
@media (max-width: 599px) {
  nav > ul > li.sub > a:hover {
    background-image: url(/img/arrow-right-red2.svg);
  }
}
@media (max-width: 599px) {
  nav > ul > li.sub > a {
    background-image: url(/img/arrow-right.svg);
  }
}
nav > ul > li.sub.active > a {
  background-image: url(/img/arrow-down-red.svg);
}
@media (min-width: 600px) and (max-width: 899px) {
  nav > ul > li.sub.active > a {
    background-image: url(/img/arrow-right-red2.svg);
  }
}
@media (max-width: 599px) {
  nav > ul > li.sub.active > a {
    background-image: url(/img/arrow-right-red2.svg);
  }
}
nav > ul > li a {
  display: block;
  text-decoration: none;
}
nav > ul li {
  padding: 0 1rem;
}
nav > ul li ul {
  flex-direction: column;
}
nav > ul li ul li {
  padding: 0;
  font-size: 1.25rem;
  line-height: 2rem;
}
nav > ul li a {
  margin: 0;
}
nav > ul li .subnav {
  height: auto;
  background: #F5F5F5;
  padding: 0 1.5rem;
  width: 100%;
  max-height: 0;
  overflow: hidden;
  transform: translateY(0);
  transition: max-height 0.6s ease-in-out, opacity 0.6s ease-in-out 0.05s, transform 0.5s ease-in-out;
}
nav > ul li .subnav .subnavgrid ul {
  opacity: 0;
  transition: opacity 0.6s ease-in-out 0.05s, transform 0.5s ease-in-out;
}
nav > ul li.sub.open .subnav {
  max-height: 1000px; /* beliebig hoch wählen, sollte höher als der Inhalt sein */
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto; /* erlaubt Interaktion */
}
nav > ul li.sub.open .subnav .subnavgrid ul {
  opacity: 1;
}

@media (min-width: 900px) {
  .mainnav {
    height: 100%;
  }
  .mainnav ul {
    height: 100%;
  }
  .mainnav ul li a {
    height: 100%;
    display: flex;
    align-items: center;
    white-space: nowrap;
  }
}

.subnav {
  width: 100%;
  position: absolute;
  left: 0;
  z-index: 11;
}
@media (max-width: 900px) {
  .subnav {
    position: static;
  }
}

.subnavgrid {
  display: flex;
  gap: 2.5rem;
  margin: 2.5rem auto;
  max-width: 71.25rem;
  align-items: flex-start;
}
.subnavgrid > ul {
  flex: 0 0 auto;
}
.subnavgrid > .productCategoryNav {
  flex: 1 1 auto;
  min-width: 0;
}
.subnavgrid > .quicklinks {
  flex: 0 0 auto;
  margin-left: auto;
}

.productCategoryNav {
  display: none;
}
@media (min-width: 900px) {
  .productCategoryNav.show {
    display: block;
  }
}
.productCategoryNav ul li a {
  font-size: 1.125rem;
  color: #929191;
}

.mainnav ul li .quicklinks {
  display: flex;
  gap: 1.5rem;
}
@media (max-width: 900px) {
  .mainnav ul li .quicklinks {
    display: none;
  }
}
.mainnav ul li .quicklinks img {
  width: 12.5rem;
  height: 12.5rem;
  display: block;
  margin-bottom: 1rem;
}
.mainnav ul li .quicklinks a {
  height: auto;
  background-color: #F5F5F5;
  width: 12.5rem !important;
  display: block;
  line-height: 1.125rem;
  display: flex;
  white-space: normal;
}

body.karriere .mainnav ul li .quicklinks a, body.ausbildung .mainnav ul li .quicklinks a, body.studierende .mainnav ul li .quicklinks a, body.career .mainnav ul li .quicklinks a, body.education .mainnav ul li .quicklinks a, body.career .mainnav ul li .quicklinks a {
  background-color: #222;
  color: #fff;
}
body.karriere #overlayContainerMenu .subnav, body.ausbildung #overlayContainerMenu .subnav, body.studierende #overlayContainerMenu .subnav, body.career #overlayContainerMenu .subnav, body.education #overlayContainerMenu .subnav, body.career #overlayContainerMenu .subnav {
  background: #374043;
}

#overlayContainerMenu {
  z-index: 10;
  width: 100%;
  height: auto;
  background-color: black;
  position: fixed;
  top: 112px;
  left: 0;
  bottom: 0;
  right: 0;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s ease-in-out 0.05s;
}
#overlayContainerMenu.show {
  opacity: 0.5;
}
#overlayContainerMenu #subnav {
  height: auto;
  background: #F5F5F5;
  padding: 0 1.5rem;
  width: 100%;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transform: translateY(0);
  box-shadow: inset 0px 5px 10px -7px rgba(0, 0, 0, 0.2), 0px 5px 10px -7px rgba(0, 0, 0, 0.4);
  transition: max-height 0.6s ease-in-out, opacity 0.6s ease-in-out 0.05s, transform 0.5s ease-in-out;
}
#overlayContainerMenu #subnav.show {
  max-height: 1000px; /* beliebig hoch wählen, sollte höher als der Inhalt sein */
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto; /* erlaubt Interaktion */
}

nav#language {
  transition: 0.8s ease-in-out;
  z-index: 1;
  position: relative;
}
nav#language ul.showlang {
  list-style: none;
  margin: 0;
  padding: 0;
}
nav#language ul.showlang > li {
  padding: 1rem 0;
}
nav#language ul.showlang li:hover ul.lang {
  opacity: 1;
  left: -1rem;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}
nav#language ul.lang {
  border: 1px solid #dbdbdb;
  background: #fff;
  position: absolute;
  z-index: 1;
  top: 3rem;
  left: -9999px;
  margin: 0;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  opacity: 0;
  z-index: 999;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}
nav#language ul.lang li {
  display: block;
  padding: 0.3rem 3rem 0.3rem 1rem;
}
nav#language ul.lang li a {
  color: #333;
}
nav#language ul.lang li a:hover {
  text-decoration: none;
  color: #005eb8;
}
nav#language ul.lang li.active {
  color: #005eb8;
  background: #f7f7f7;
}

header article #navblock nav .mobileExtraNav {
  display: none;
}
@media (max-width: 900px) {
  header article #navblock nav.mainnav ul {
    margin-bottom: 3rem;
  }
  header article #navblock nav .mobileExtraNav {
    display: block;
  }
  header article #navblock nav .mobileExtraNav ul li {
    padding: 0;
  }
  header article #navblock nav .mobileExtraNav ul li a {
    font-size: 1rem;
  }
}

@media (min-width: 900px) {
  .mainnav ul li:first-child ul li:first-child {
    background: url(/img/arrow-right.svg) right center no-repeat;
    background-size: 1.5rem auto;
    padding-right: 1.5rem;
  }
}

@media (min-width: 900px) {
  body.karriere .mainnav ul li:first-child ul li:first-child, body.ausbildung .mainnav ul li:first-child ul li:first-child, body.studierende .mainnav ul li:first-child ul li:first-child, body.education .mainnav ul li:first-child ul li:first-child, body.career .mainnav ul li:first-child ul li:first-child {
    background-image: url(/img/arrow-right-white-new.svg);
  }
}

.productCategoryNav ul li {
  background: none !important;
}

@media (max-width: 1200px) and (min-width: 900px) {
  nav {
    font-size: 0.7rem;
    font-size: clamp(0.7rem, 0.3666666667rem + 0.8888888889vw, 1rem);
    line-height: 0.7rem;
    line-height: clamp(0.7rem, 0.3666666667rem + 0.8888888889vw, 1rem);
  }
  nav > ul > li {
    padding: 0 clamp(0.5rem, 0.1666666667rem + 0.8888888889vw, 1rem);
  }
  nav > ul > li a {
    white-space: nowrap;
  }
  nav > ul > li.sub > a {
    background-size: clamp(1rem, 0.3333333333rem + 1.7777777778vw, 1.5rem) auto;
    padding-right: clamp(1rem, 0.3333333333rem + 1.7777777778vw, 1.5rem);
  }
  .mainnav ul li a {
    font-size: clamp(0.7rem, 0.2333333333rem + 1.2444444444vw, 1rem);
  }
  header article #rightnav .icons {
    gap: clamp(0.5rem, 0.1666666667rem + 0.8888888889vw, 1rem);
  }
  header article #rightnav .onlineshop .onlineshop-text {
    font-size: clamp(0.7rem, 0.2333333333rem + 1.2444444444vw, 1rem);
    white-space: nowrap;
  }
  header article #logo {
    margin-right: clamp(1.5rem, 0.5rem + 2.6666666667vw, 3rem);
  }
  header {
    padding: 0 clamp(1rem, 0.3333333333rem + 1.7777777778vw, 1.5rem);
  }
}
header article #logo {
  margin-right: clamp(1.5rem, 0.5rem + 2.6666666667vw, 3rem);
}

header {
  padding: 0 clamp(1rem, 0.3333333333rem + 1.7777777778vw, 1.5rem);
}

header article #topnav nav.topnav {
  font-size: clamp(0.65rem, 0.3rem + 0.8vw, 0.75rem);
}
header article #topnav nav.topnav ul {
  gap: clamp(0.3rem, 0.15rem + 0.5vw, 0.5rem);
}
header article #topnav nav.topnav ul li a {
  white-space: nowrap;
  font-size: clamp(0.65rem, 0.3rem + 0.8vw, 0.75rem);
  padding: 0.3rem clamp(0.4rem, 0.2rem + 0.5vw, 0.6rem);
}

@media (max-width: 1000px) {
  header article #topnav {
    display: none;
  }
}
@media (max-width: 1100px) and (min-width: 900px) {
  header article #rightnav .icons {
    gap: 0.4rem;
  }
  header article #rightnav .onlineshop .onlineshop-text {
    display: none;
  }
  header article #logo {
    margin-right: 1rem !important;
  }
  header {
    padding: 0 0.8rem !important;
  }
}
body.home section.header {
  background: #F6F6F6;
  padding-top: 12rem;
  overflow-x: visible;
  background-position: left bottom;
  background-size: 50% auto;
  background-repeat: no-repeat;
}
@media (min-width: 600px) and (max-width: 899px) {
  body.home section.header {
    background-position: -350px bottom;
    background-size: 100% auto;
  }
}
@media (max-width: 599px) {
  body.home section.header {
    padding-left: 0;
    padding-right: 0;
    padding-top: 2rem;
    padding-bottom: 25rem;
    background-position: -100px bottom;
    background-size: contain;
    background-image: url("") !important;
    padding-bottom: 0;
  }
}
@media (max-width: 599px) {
  body.home section.header h1, body.home section.header h1:before, body.home section.header h1:after, body.home section.header .p {
    padding-right: 1.5rem;
    padding-left: 1.5rem;
  }
}
@media (min-width: 600px) {
  body.home section#sliderCutRight h2 {
    max-width: 70%;
  }
}
body.home section#sliderCutRight .sliderBox {
  margin-bottom: 0;
}
body.home section#sliderCutRight .sliderBox .item .trackLink img {
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
body.home section#sliderCutRight .sliderBox .item:hover .trackLink img,
body.home section#sliderCutRight .sliderBox .item:focus-within .trackLink img {
  transform: scale(1.07);
}

body.karriere, body.ausbildung, body.studierende, body.education, body.career {
  background: #000;
}
body.karriere header, body.ausbildung header, body.studierende header, body.education header, body.career header {
  background: #000;
}
body.karriere header #topnav nav.topnav ul li a, body.ausbildung header #topnav nav.topnav ul li a, body.studierende header #topnav nav.topnav ul li a, body.education header #topnav nav.topnav ul li a, body.career header #topnav nav.topnav ul li a {
  color: #fff;
  background: rgba(255, 255, 255, 0.15);
}
body.karriere header #topnav nav.topnav ul li a:hover, body.ausbildung header #topnav nav.topnav ul li a:hover, body.studierende header #topnav nav.topnav ul li a:hover, body.education header #topnav nav.topnav ul li a:hover, body.career header #topnav nav.topnav ul li a:hover {
  background: rgba(255, 255, 255, 0.3);
  color: #fff;
}
body.karriere header #leftnav nav > ul > li > a, body.ausbildung header #leftnav nav > ul > li > a, body.studierende header #leftnav nav > ul > li > a, body.education header #leftnav nav > ul > li > a, body.career header #leftnav nav > ul > li > a {
  color: #fff;
}
body.karriere header #leftnav nav > ul > li.sub > a, body.ausbildung header #leftnav nav > ul > li.sub > a, body.studierende header #leftnav nav > ul > li.sub > a, body.education header #leftnav nav > ul > li.sub > a, body.career header #leftnav nav > ul > li.sub > a {
  background-image: url(/img/arrow-down-white-icon.svg);
}
@media (max-width: 900px) {
  body.karriere header #leftnav nav > ul > li.sub > a, body.ausbildung header #leftnav nav > ul > li.sub > a, body.studierende header #leftnav nav > ul > li.sub > a, body.education header #leftnav nav > ul > li.sub > a, body.career header #leftnav nav > ul > li.sub > a {
    background-image: url(/img/arrow-right-white-new.svg);
  }
}
body.karriere header #leftnav nav > ul > li.active > a, body.ausbildung header #leftnav nav > ul > li.active > a, body.studierende header #leftnav nav > ul > li.active > a, body.education header #leftnav nav > ul > li.active > a, body.career header #leftnav nav > ul > li.active > a {
  color: #FF0002;
}
body.karriere header #leftnav nav > ul > li.sub.active > a, body.ausbildung header #leftnav nav > ul > li.sub.active > a, body.studierende header #leftnav nav > ul > li.sub.active > a, body.education header #leftnav nav > ul > li.sub.active > a, body.career header #leftnav nav > ul > li.sub.active > a {
  background-image: url(/img/arrow-down-red.svg);
}
@media (max-width: 900px) {
  body.karriere header #leftnav nav > ul > li.sub.active > a, body.ausbildung header #leftnav nav > ul > li.sub.active > a, body.studierende header #leftnav nav > ul > li.sub.active > a, body.education header #leftnav nav > ul > li.sub.active > a, body.career header #leftnav nav > ul > li.sub.active > a {
    background-image: url(/img/arrow-right-red2.svg);
  }
}
body.karriere header .onlineshop, body.ausbildung header .onlineshop, body.studierende header .onlineshop, body.education header .onlineshop, body.career header .onlineshop {
  color: #fff;
}
body.karriere header #rightnav, body.ausbildung header #rightnav, body.studierende header #rightnav, body.education header #rightnav, body.career header #rightnav {
  background: #000;
}
body.karriere section.headerDark, body.ausbildung section.headerDark, body.studierende section.headerDark, body.education section.headerDark, body.career section.headerDark {
  display: flex;
  align-items: flex-end;
  min-height: 45rem;
}
@media (max-width: 599px) {
  body.karriere section.headerDark, body.ausbildung section.headerDark, body.studierende section.headerDark, body.education section.headerDark, body.career section.headerDark {
    min-height: 32rem;
    background-size: cover;
    background-position: right;
  }
  body.karriere section.headerDark article, body.ausbildung section.headerDark article, body.studierende section.headerDark article, body.education section.headerDark article, body.career section.headerDark article {
    margin-left: 0;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  body.karriere section.headerDark, body.ausbildung section.headerDark, body.studierende section.headerDark, body.education section.headerDark, body.career section.headerDark {
    background-size: 100% auto;
    min-height: 36rem;
  }
}
@media (min-width: 1400px) {
  body.karriere section.headerDark, body.ausbildung section.headerDark, body.studierende section.headerDark, body.education section.headerDark, body.career section.headerDark {
    background-size: auto 100%;
  }
}
body.karriere section.headerDark .twocol, body.ausbildung section.headerDark .twocol, body.studierende section.headerDark .twocol, body.education section.headerDark .twocol, body.career section.headerDark .twocol {
  grid-template-columns: 5fr 7fr;
}
@media (max-width: 599px) {
  body.karriere section.headerDark .twocol, body.ausbildung section.headerDark .twocol, body.studierende section.headerDark .twocol, body.education section.headerDark .twocol, body.career section.headerDark .twocol {
    grid-template-columns: 1fr;
  }
}
body.karriere section.headerDark h1, body.ausbildung section.headerDark h1, body.studierende section.headerDark h1, body.education section.headerDark h1, body.career section.headerDark h1 {
  color: #fff;
}
body.karriere section.headerDark h1 span, body.ausbildung section.headerDark h1 span, body.studierende section.headerDark h1 span, body.education section.headerDark h1 span, body.career section.headerDark h1 span {
  color: #FF0002;
}
body.karriere section.headerDark article, body.ausbildung section.headerDark article, body.studierende section.headerDark article, body.education section.headerDark article, body.career section.headerDark article {
  justify-content: flex-end;
}

section.header2 {
  padding-top: 12rem;
  position: relative;
  height: 34rem;
  background-color: #F5F5F5;
  display: flex;
  align-items: flex-end;
}
section.header2 article {
  width: 100%;
}
section.header2 .twocol {
  gap: 10rem;
}
section.header2 h1 {
  margin-bottom: 1rem;
}
@media (max-width: 599px) {
  section.header2 .twocol {
    gap: 0;
  }
}

body.missing section.header h1, section.newsletter section.header h1 {
  padding: 0;
}
body.missing section.header h2, body.missing section.header h3, section.newsletter section.header h2, section.newsletter section.header h3 {
  color: #1a1a1a;
}
body.missing section.header .button, section.newsletter section.header .button {
  margin: 3rem auto 0 auto;
  border: 0;
}

section.newsletter {
  background: #F5F5F5;
}
section.newsletter .button {
  margin: 0;
  margin-top: 2rem;
  border: 0;
}
section.newsletter .form-control {
  background-color: transparent;
  border: none;
  border-bottom: 1px solid #1a1a1a;
  border-radius: 0;
  padding-left: 6px;
  color: #1a1a1a;
  font-style: normal;
  font-weight: 400;
  font-size: 1.1875rem;
  font-size: clamp(1.1875rem, 1.0130813953rem + 0.4651162791vw, 1.3125rem);
  line-height: 1.6875rem;
  line-height: clamp(1.6875rem, 1.3386627907rem + 0.9302325581vw, 1.9375rem);
  font-size: 21px;
  line-height: 31px;
  margin-bottom: 3rem;
}
section.newsletter label {
  max-width: 96%;
}
section.newsletter input[type=checkbox] {
  vertical-align: top;
  margin-top: 5px;
}
section.newsletter .group {
  margin-bottom: 1rem;
}
section.newsletter .newsletterBox {
  margin-top: 5rem;
}
section.newsletter .newsletterBox .checkbox {
  display: flex;
  align-items: flex-start;
  position: relative;
}
section.newsletter .newsletterBox .checkbox label {
  margin-left: 1.5rem;
}
section.newsletter .newsletterBox input[type=checkbox]:before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  border: 2px solid #1a1a1a;
  border-radius: 3px;
  position: absolute;
  background: #F5F5F5;
}
section.newsletter .newsletterBox input[type=checkbox]:checked:after {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  background: #1a1a1a;
  border: 2px solid #1a1a1a;
  position: absolute;
  border-radius: 1px;
  left: 4px;
  top: 9px;
}

section#branchenloesungen .features .item h4 {
  font-size: 1.5rem;
  font-size: clamp(1.5rem, 1.2222222222rem + 0.7407407407vw, 1.75rem);
  line-height: 1.875rem;
  line-height: clamp(1.875rem, 1.5972222222rem + 0.7407407407vw, 2.125rem);
  font-style: normal;
  font-weight: 400;
  letter-spacing: -0.07rem;
}
section#branchenloesungen .features .item div.p {
  font-size: 1rem;
  font-size: 1rem;
  font-size: clamp(1rem, 0.8611111111rem + 0.3703703704vw, 1.125rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 1.2361111111rem + 0.3703703704vw, 1.5rem);
  font-style: normal;
  font-weight: 400;
  letter-spacing: -0.0225rem;
}

section#leistungsumfang .features .item h4 {
  font-size: 1.5rem;
  font-size: clamp(1.5rem, 1.2222222222rem + 0.7407407407vw, 1.75rem);
  line-height: 1.875rem;
  line-height: clamp(1.875rem, 1.5972222222rem + 0.7407407407vw, 2.125rem);
  font-style: normal;
  font-weight: 400;
  letter-spacing: -0.07rem;
}
section#leistungsumfang .features .item div.p {
  font-size: 1rem;
  font-size: 1rem;
  font-size: clamp(1rem, 0.8611111111rem + 0.3703703704vw, 1.125rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 1.2361111111rem + 0.3703703704vw, 1.5rem);
  font-style: normal;
  font-weight: 400;
  letter-spacing: -0.0225rem;
}

section#werkhalle {
  background-image: url(/img/main-trennbild.webp);
  height: 31.5rem;
  background-size: cover;
}
@media (max-width: 900px) {
  section#werkhalle {
    height: 27rem;
  }
}
@media (max-width: 599px) {
  section#werkhalle {
    background-image: url(/img/main-trennbild-mobile.webp);
  }
}

section#calc {
  background-image: url(/img/pcon-planner.webp);
  background-size: auto 100%;
}
section#calc .twocol {
  gap: 7.5rem;
}
@media (max-width: 599px) {
  section#calc {
    gap: 3rem;
    background-image: url(/img/pcon-planner-mobile.webp);
    background-size: 100% auto;
  }
  section#calc article {
    padding-top: 16rem;
  }
}

section#pdf .twocol {
  gap: 5.5rem;
}

section#regalinspektion article:first-child {
  margin-bottom: 5.5rem;
}
@media (max-width: 599px) {
  section#regalinspektion article:first-child .twocol div:nth-child(1) {
    grid-row: 2/2;
  }
  section#regalinspektion article:first-child .twocol div:nth-child(2) {
    grid-row: 1/1;
  }
}

section.extrah2 h2:nth-child(2) {
  margin-bottom: 0;
}
section.extrah2 h2:nth-child(3) {
  font-weight: 400;
}

section#metaclip .twocol {
  gap: 3rem;
}
@media (min-width: 1200px) {
  section#metaclip .twocol {
    gap: 5.5rem;
  }
}

section#lagertechnik2 article:first-child {
  margin-bottom: 5.5rem;
}
@media (max-width: 599px) {
  section#lagertechnik2 article:first-child {
    margin-bottom: 1rem;
  }
  section#lagertechnik2 .twocol {
    display: grid;
  }
  section#lagertechnik2 .twocol div:nth-child(1) {
    grid-row: 2/2;
    margin-bottom: 2rem;
  }
  section#lagertechnik2 .twocol div:nth-child(2) {
    grid-row: 1/1;
  }
}

section#referenzen .twocol {
  display: grid;
}
section#referenzen .twocol div:nth-child(1) {
  grid-row: 2/2;
}
section#referenzen .twocol div:nth-child(2) {
  grid-row: 1/1;
}

section#referenzgallerie {
  overflow-x: hidden;
}
section#referenzgallerie h2 {
  padding-right: 10rem;
}

section#leistungsumfang .small {
  margin-bottom: 4rem;
}
section#leistungsumfang .features .p {
  color: #1a1a1a;
}

@media (max-width: 900px) {
  section#sicherheit .cards {
    grid-template-columns: 1fr 1fr;
  }
}

section#preissicherheit {
  background-image: url(/img/preissicherheit.webp);
}
@media (min-width: 600px) and (max-width: 899px) {
  section#preissicherheit {
    background-position: -350px top;
  }
}
@media (max-width: 599px) {
  section#preissicherheit {
    background-image: url(/img/preissicherheit-mobile.webp);
  }
  section#preissicherheit article {
    padding-top: 17rem;
  }
}

section#vertrieb3 {
  background-image: url(/img/mont-vertriebsteam-2024.webp);
  background-size: 100% auto;
  background-position: bottom;
}
section#vertrieb3 article {
  padding-bottom: 8rem;
}
section#vertrieb3 article .button {
  margin-top: 15rem;
}
@media (max-width: 599px) {
  section#vertrieb3 {
    background-image: url(/img/mont-vertriebsteam-2024-mobile.webp);
    background-size: 100% auto;
  }
  section#vertrieb3 article .button {
    margin: 0 auto 7rem auto;
  }
}

section#vertrieb {
  padding: 0;
}
section#vertrieb img {
  width: 100%;
}

section#zertifiziert {
  background: #F5F5F5;
}
@media (max-width: 599px) {
  section#zertifiziert .twocol {
    gap: 3rem;
  }
  section#zertifiziert .twocol > div:first-child {
    grid-row: 2;
    grid-column: 1;
  }
  section#zertifiziert .twocol > div:nth-child(2) {
    grid-row: 1;
    grid-column: 1;
  }
}

@media (min-width: 600px) and (max-width: 899px) {
  section#metaclip .twocol75 {
    grid-template-columns: 1fr 1fr;
  }
}

section#vertrieb2 {
  background-image: url(/img/map.webp);
  background-size: 77rem auto;
  background-position: center bottom;
}
section#vertrieb2 .topcol {
  width: 85%;
}
section#vertrieb2 article {
  margin-bottom: 10rem;
}
@media (max-width: 599px) {
  section#vertrieb2 article {
    margin-bottom: 0;
    padding-bottom: 3rem;
  }
}
@media (max-width: 1200px) {
  section#vertrieb2 article {
    margin-bottom: 25rem;
  }
}
@media (min-width: 1200px) {
  section#vertrieb2 {
    padding-bottom: 25rem;
  }
}
@media (max-width: 599px) {
  section#vertrieb2 {
    background-image: url(/img/map-mobile.webp);
    background-position: center bottom;
    background-size: 100% auto;
  }
  section#vertrieb2 article {
    padding-bottom: 15rem;
  }
  section#vertrieb2 .topcol {
    width: 100%;
  }
}

section#vertrieb3 article {
  margin-bottom: 30%;
}
@media (max-width: 599px) {
  section#vertrieb3 article {
    margin-bottom: 5rem;
  }
}

section#systemslider {
  overflow-x: hidden;
}
section#systemslider.referenzen .item {
  padding: 0;
}
@media (max-width: 599px) {
  section#systemslider .sliderBox {
    margin-bottom: 0;
  }
}

section#meilensteine {
  overflow-x: hidden;
}
section#meilensteine .slider .item h3 {
  font-size: 3rem;
  font-size: clamp(3rem, 1.8888888889rem + 2.962962963vw, 4rem);
  line-height: 3.5rem;
  line-height: clamp(3.5rem, 2.3888888889rem + 2.962962963vw, 4.5rem);
}
section#meilensteine .slider .item .small {
  font-size: 1rem;
  font-size: clamp(1rem, 1rem + 0vw, 1rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 1.375rem + 0vw, 1.375rem);
  font-weight: 300;
  margin-bottom: 1.25rem;
  font-style: normal;
  color: #1a1a1a;
}
section#meilensteine .slider .item .small b {
  font-weight: 300;
}
section#meilensteine .slider .item img {
  width: 8rem;
}
@media (min-width: 600px) {
  section#meilensteine article .topcol .p, section#meilensteine article .topcol .small {
    margin-right: 10rem;
  }
}

section.hr {
  padding-top: 0;
  padding-bottom: 0;
}
section.hr article {
  border-top: 1px solid #fff;
}

section#team {
  overflow-x: hidden;
}

section.legal h1, section.legal h2 {
  letter-spacing: 0;
}
section.legal h2 {
  margin-top: 2rem;
}

body:not(header) section.header {
  align-items: center;
  background: #F5F5F5;
  overflow-x: visible;
  background-position: left top;
  background-size: cover;
  background-repeat: no-repeat;
  padding-top: 5.5rem;
  padding-bottom: 5.5rem;
  min-height: unset;
}
body:not(header) section.header .mobile.top {
  padding-bottom: 4rem;
}
@media (min-width: 600px) and (max-width: 899px) {
  body:not(header) section.header {
    background-size: 100% auto;
  }
}
@media (max-width: 599px) {
  body:not(header) section.header {
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
    padding-bottom: 25rem;
    background-size: contain;
    background-image: url("") !important;
    padding-bottom: 0;
  }
}
body:not(header) section.header .p {
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 0.5694444444rem + 1.4814814815vw, 1.625rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 0.5416666667rem + 2.2222222222vw, 2.125rem);
  letter-spacing: -0.0325rem;
}
body:not(header) section.header.productDetail {
  background-size: 46% auto;
  background-position: left center;
}
@media (max-width: 599px) {
  body:not(header) section.header.productDetail {
    padding-bottom: 4rem;
  }
}
body:not(header) section.header.productDetail .prdctItmBtnCtnr {
  display: flex;
  gap: 0.75rem;
}
@media (max-width: 599px) {
  body:not(header) section.header.productDetail .prdctItmBtnCtnr {
    padding-right: 1.5rem;
    padding-left: 1.5rem;
    flex-direction: column;
  }
}
body:not(header) section.header.productDetail h1 {
  margin-bottom: 2.5rem;
}
body:not(header) section.header.productDetail .headerImageDetailPage {
  max-width: 70%;
}
@media (max-width: 599px) {
  body:not(header) section.header.productDetail {
    padding-top: 2rem;
    background-position: top;
    background-size: contain;
    height: unset;
  }
}
@media (max-width: 599px) {
  body:not(header) section.header h1, body:not(header) section.header h1:before, body:not(header) section.header h1:after, body:not(header) section.header .p {
    padding-right: 1.5rem;
    padding-left: 1.5rem;
  }
  body:not(header) section.header h1.top, body:not(header) section.header h1:before.top, body:not(header) section.header h1:after.top, body:not(header) section.header .p.top {
    padding-bottom: 2rem;
  }
}
@media (max-width: 599px) {
  body:not(header) section.header .button, body:not(header) section.header a.button {
    margin-right: 1.5rem;
    margin-left: 1.5rem;
    width: auto !important;
  }
}

@media (min-width: 600px) {
  section#sliderCutRight h2 {
    max-width: 70%;
  }
}
@media (min-width: 600px) {
  section#sliderCutRight .topcol.hasTeaser .teaser {
    margin-bottom: 7rem !important;
  }
}
section#sliderCutRight .topcol.ctaAfterSlider {
  margin-top: 2rem;
}
@media (min-width: 600px) {
  section#sliderCutRight .topcol.ctaAfterSlider {
    margin-top: 3rem;
  }
}

section#SolutionsBlock .teaser {
  margin-bottom: 3rem;
}
@media (min-width: 600px) {
  section#SolutionsBlock .teaser {
    margin-bottom: 4rem;
  }
}

body.solutions section#RichTextImageBlock.light:not(:first-of-type) {
  position: relative;
}
body.solutions section#RichTextImageBlock.light:not(:first-of-type)::before {
  content: "";
  display: block;
  width: 100%;
  max-width: 71.25rem;
  margin: 0 auto;
  border-top: 1px solid #E8E8E8;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
body.solutions section#RichTextImageBlock .twocol,
body.solutions section#CTARichTextImageBlockOne .twocol,
body.solutions section#CTARichTextImageBlockTwo .twocol {
  align-items: start;
}
@media (max-width: 599px) {
  body.solutions section#RichTextImageBlock img,
  body.solutions section#CTARichTextImageBlockOne img,
  body.solutions section#CTARichTextImageBlockTwo img {
    margin-bottom: 2rem;
  }
}
@media (min-width: 600px) {
  body.solutions section#textGridInfo .threeCol {
    grid-template-columns: 1fr 1fr;
  }
}

section#accordionInfo article .topcol h3 {
  font-size: 1.5rem;
  font-size: clamp(1.5rem, 1.2222222222rem + 0.7407407407vw, 1.75rem);
  line-height: 1.75rem;
  line-height: clamp(1.75rem, 1.4722222222rem + 0.7407407407vw, 2rem);
}

@media (min-width: 600px) {
  body.solutions:not([class*="solutions "]) h3 {
    padding-right: 3rem;
  }
}

.about section#sliderCutRight h2 {
  max-width: 100%;
}

.schulungen-regalsicherheit .swiper-wrapper, .haendlertraining .swiper-wrapper {
  margin-left: 0;
}
.schulungen-regalsicherheit #sliderCutRight h2, .haendlertraining #sliderCutRight h2 {
  margin-bottom: 4rem !important;
}
@media (max-width: 599px) {
  .schulungen-regalsicherheit #sliderCutRight h2, .haendlertraining #sliderCutRight h2 {
    margin-bottom: 1.5rem !important;
  }
}

.products.sicherheitsausstattung section#sliderCutRight {
  background-color: #F5F5F5;
}
.products.sicherheitsausstattung section#sliderCutRight .item {
  aspect-ratio: 1;
}
.products.sicherheitsausstattung section#CTARichTextBlock {
  background-color: white;
}

section#TwoColumnRichTextBlockOne .topcol .pretitle {
  margin-bottom: 1rem;
}
@media (max-width: 599px) {
  section#TwoColumnRichTextBlockOne .topcol .pretitle {
    margin-bottom: 0.75rem;
  }
}
section#TwoColumnRichTextBlockOne .topcol h3 {
  font-size: 1.75rem;
  font-size: clamp(1.75rem, 1.3333333333rem + 1.1111111111vw, 2.125rem);
  line-height: 2.125rem;
  line-height: clamp(2.125rem, 1.5694444444rem + 1.4814814815vw, 2.625rem);
  font-style: normal;
  font-weight: 400;
  letter-spacing: -0.085rem;
  margin-bottom: 1.5rem;
}
@media (max-width: 599px) {
  section#TwoColumnRichTextBlockOne .topcol h3 {
    margin-bottom: 1rem;
  }
}
section#TwoColumnRichTextBlockOne .topcol .teaser {
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 0.9861111111rem + 0.3703703704vw, 1.25rem);
  line-height: 1.625rem;
  line-height: clamp(1.625rem, 1.2083333333rem + 1.1111111111vw, 2rem);
  color: #929191;
  margin-bottom: 4rem;
}
@media (max-width: 599px) {
  section#TwoColumnRichTextBlockOne .topcol .teaser {
    margin-bottom: 3rem;
  }
}
section#TwoColumnRichTextBlockOne > article > h3 {
  font-size: 1.75rem;
  font-size: clamp(1.75rem, 1.3333333333rem + 1.1111111111vw, 2.125rem);
  line-height: 2.125rem;
  line-height: clamp(2.125rem, 1.5694444444rem + 1.4814814815vw, 2.625rem);
  font-style: normal;
  font-weight: 400;
  letter-spacing: -0.085rem;
  margin-bottom: 4rem;
}
@media (max-width: 599px) {
  section#TwoColumnRichTextBlockOne > article > h3 {
    margin-bottom: 3rem;
  }
}
section#TwoColumnRichTextBlockOne img {
  margin-bottom: 1.5rem;
}
@media (max-width: 599px) {
  section#TwoColumnRichTextBlockOne img {
    margin-bottom: 1rem;
  }
}
section#TwoColumnRichTextBlockOne .small h4 {
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 0.9861111111rem + 0.3703703704vw, 1.25rem);
  line-height: 1.625rem;
  line-height: clamp(1.625rem, 1.2083333333rem + 1.1111111111vw, 2rem);
  font-weight: 600;
  margin-bottom: 1rem;
}
section#TwoColumnRichTextBlockOne .small p {
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 0.9861111111rem + 0.3703703704vw, 1.25rem);
  line-height: 1.625rem;
  line-height: clamp(1.625rem, 1.2083333333rem + 1.1111111111vw, 2rem);
  color: #000;
  font-weight: 300;
}
section#TwoColumnRichTextBlockOne .small ul {
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 0.9861111111rem + 0.3703703704vw, 1.25rem);
  line-height: 1.625rem;
  line-height: clamp(1.625rem, 1.2083333333rem + 1.1111111111vw, 2rem);
  color: #000;
  font-weight: 300;
  padding-left: 1.25rem;
  margin-bottom: 1.5rem;
}
section#TwoColumnRichTextBlockOne .small ul li {
  margin-bottom: 0.5rem;
  list-style-type: disc;
}
section#TwoColumnRichTextBlockOne .twocol div:not(.small) {
  background-color: white;
  padding: 2rem;
}
@media (max-width: 599px) {
  section#TwoColumnRichTextBlockOne .twocol div:not(.small) {
    padding: 1.5rem;
  }
}

section#sliderCutRight.light .swiper-slide.item {
  background: #F5F5F5;
}
section#sliderCutRight h2 {
  margin-bottom: 4rem;
}
@media (max-width: 599px) {
  section#sliderCutRight h2 {
    margin-bottom: 3rem;
  }
}
section#sliderCutRight .teaser {
  margin-bottom: 4rem;
}
@media (max-width: 599px) {
  section#sliderCutRight .teaser {
    margin-bottom: 3rem;
  }
}

.about #sliderCutRight .productGrid .serviceImage, .services #sliderCutRight .productGrid .serviceImage {
  aspect-ratio: unset;
}

.about #CTARichTextImageBlockOne .teaser p {
  margin-bottom: 2.5rem;
}
@media (max-width: 599px) {
  .about #CTARichTextImageBlockOne .teaser p {
    margin-bottom: 2rem;
  }
}

section#RichTextImageBlock .twocol {
  gap: 5.5rem;
}
@media (max-width: 599px) {
  section#RichTextImageBlock .twocol {
    gap: 3rem;
  }
}
section#RichTextImageBlock .mobile img, section#RichTextImageBlock .tablet img {
  margin-bottom: 3rem;
}

section#ImageBlock:not(.heroImage) {
  min-height: 12rem;
  background-size: cover;
}
@media (min-width: 600px) {
  section#ImageBlock:not(.heroImage) {
    min-height: 30rem;
    background-position: center;
    background-size: cover;
  }
}
section#ImageBlock.heroImage {
  padding: 0;
}
section#ImageBlock.heroImage article {
  margin: 0;
  max-width: none;
}
section#ImageBlock.heroImage .topcol a {
  display: block;
  cursor: zoom-in;
  line-height: 0;
}
section#ImageBlock.heroImage .topcol img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
}

section#CTARichTextImageBlockOne a[data-fancybox],
section#CTARichTextImageBlockTwo a[data-fancybox],
section#RichTextImageBlock a[data-fancybox] {
  display: block;
  cursor: zoom-in;
  line-height: 0;
}

/***************************************************************
Fancybox - Single Image Overrides
****************************************************************/
.fancybox-slide--image {
  padding: 4rem;
}
@media (max-width: 599px) {
  .fancybox-slide--image {
    padding: 2.5rem 1.5rem;
  }
}

.fancybox-close-small {
  right: 0;
  top: 0;
  width: 40px;
  height: 40px;
  padding: 8px;
  opacity: 1;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 4px;
  color: #fff;
}
.fancybox-close-small:hover {
  background: rgba(0, 0, 0, 0.7);
}

/***************************************************************
Event Banner / Störer
****************************************************************/
.event-banner {
  display: block;
  width: 100%;
  text-decoration: none;
  transition: opacity 0.2s ease, box-shadow 0.3s ease;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
.event-banner:hover, .event-banner:focus, .event-banner:active {
  text-decoration: none;
  opacity: 0.95;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25);
}
.event-banner__content {
  width: 100%;
  max-width: 71.25rem;
  margin: 0 auto;
  padding: 1rem 1.5rem 0.95rem;
  text-align: center;
}
.event-banner__text {
  font-size: 0.9375rem;
  font-size: clamp(0.9375rem, 0.7291666667rem + 0.5555555556vw, 1.125rem);
  line-height: 1.25rem;
  line-height: clamp(1.25rem, 0.9722222222rem + 0.7407407407vw, 1.5rem);
  font-weight: 400;
  letter-spacing: 0.01em;
  text-decoration: none !important;
  display: inline-block;
  padding-left: 2.5rem;
  background-repeat: no-repeat;
  background-position: left 0 center;
  background-size: 1rem auto;
  transition: background-position 0.4s ease;
}
.event-banner:hover .event-banner__text {
  background-position: left 1rem center;
}
.event-banner--red {
  background: #FF0002;
}
.event-banner--red .event-banner__text {
  color: #fff;
  background-image: url("/img/button-arrow-white.svg");
}
.event-banner--dark {
  background: #1a1a1a;
}
.event-banner--dark .event-banner__text {
  color: #fff;
  background-image: url("/img/button-arrow-white.svg");
}
.event-banner--light {
  background: #F5F5F5;
}
.event-banner--light .event-banner__text {
  color: #1a1a1a;
  background-image: url("/img/button-arrow-red.svg");
}
.event-banner--marquee {
  overflow: hidden;
}
.event-banner--marquee .event-banner__content {
  display: flex;
  align-items: center;
  width: max-content;
  animation: marquee 20s linear infinite;
  padding: 1rem 0 0.95rem;
  max-width: none;
}
.event-banner--marquee .event-banner__text {
  flex-shrink: 0;
  white-space: nowrap;
  padding-left: 2.5rem;
  padding-right: 3rem;
  margin-right: 3rem;
  border-right: 1px solid rgba(255, 255, 255, 0.4);
}
.event-banner--marquee:hover .event-banner__content {
  animation-play-state: paused;
}
.event-banner--marquee.event-banner--light .event-banner__text {
  border-right-color: rgba(0, 0, 0, 0.2);
}

@keyframes marquee {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
body {
  color: #1a1a1a;
  background: #fff;
  font-family: FrutigerLTCom, Arial, Helvetica, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overscroll-behavior: none;
}

header {
  position: fixed;
  width: 100%;
  z-index: 11;
  background-color: #fff;
  border-bottom: 1px solid #fff;
  top: 0;
  height: 9rem;
  padding: 0 1.5rem;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
@media (max-width: 900px) {
  header {
    padding: 0 1.5rem;
    height: 3.75rem !important;
  }
}
header article {
  height: 100%;
  display: flex;
  margin: 0 auto;
  align-items: center;
  justify-content: space-between;
}
header article nav a {
  color: #1a1a1a;
}
header article nav a:hover {
  color: #FF0002;
}
header article nav li.active > a {
  color: #FF0002;
}
header article #hamburger {
  z-index: 100;
  margin-left: 1rem;
}
header article #logo {
  font-size: 1.625rem;
  line-height: 1.75rem;
  height: 40px;
  color: #1a1a1a;
  position: relative;
  z-index: 100;
  margin-right: 3rem;
}
@media (max-width: 900px) {
  header article #logo {
    height: 30px !important;
  }
}
header article #logo a {
  text-decoration: none;
  display: block;
  height: 100%;
}
header article #logo a .logoText {
  position: relative;
  top: 3px;
}
header article #logo a img {
  height: 100%;
}
header article #topnav {
  position: absolute;
  top: 0.625rem;
  left: 0;
  right: 0;
  width: 100%;
  max-width: 71.25rem;
  margin: 0 auto;
  display: flex;
  justify-content: flex-end;
}
@media (max-width: 900px) {
  header article #topnav {
    display: none;
  }
}
header article #topnav nav.topnav {
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1rem;
}
header article #topnav nav.topnav ul {
  margin-left: auto;
  display: flex;
  gap: 0.5rem;
}
header article #topnav nav.topnav ul li {
  border-right: none;
  padding: 0;
}
header article #topnav nav.topnav ul li a {
  display: inline-block;
  padding: 0.25rem 0.5rem;
  background: #f0f0f0;
  border: none;
  border-radius: 3px;
  color: #555;
  transition: all 150ms ease;
}
header article #topnav nav.topnav ul li a:hover {
  background: #e0e0e0;
  color: #333;
  text-decoration: none;
}
header article #rightnav, header article #leftnav {
  display: flex;
  align-items: center;
}
header article #rightnav a:hover, header article #leftnav a:hover {
  text-decoration: none;
}
header article #rightnav div.top, header article #leftnav div.top {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
}
header article #rightnav div.main, header article #leftnav div.main {
  display: flex;
  gap: 2rem;
}
header article #rightnav div.main .onlineshop, header article #leftnav div.main .onlineshop {
  background: #FF0002;
  color: #fff;
  padding: 0.5rem 1rem;
  border-radius: 4px;
  font-size: 1rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1rem;
  letter-spacing: -0.02rem;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
header article #rightnav div.main .onlineshop:hover, header article #leftnav div.main .onlineshop:hover {
  text-decoration: none;
  background: #BD000B;
  color: #fff;
}
@media (max-width: 900px) {
  header article #rightnav div.main .onlineshop, header article #leftnav div.main .onlineshop {
    font-size: 1.25rem;
    margin-bottom: 1.5rem;
    padding: 0.75rem 1.25rem;
  }
}
header article #rightnav nav.main, header article #leftnav nav.main {
  color: #1a1a1a;
  font-feature-settings: "clig" off, "liga" off;
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1rem; /* 100% */
  letter-spacing: -0.02rem;
}
@media (max-width: 900px) {
  header article #rightnav nav.main, header article #leftnav nav.main {
    font-size: 1.5rem;
  }
  header article #rightnav nav.main ul li, header article #leftnav nav.main ul li {
    margin-bottom: 1rem !important;
  }
}
header article #rightnav nav.main ul li, header article #leftnav nav.main ul li {
  padding: 0;
  padding-bottom: 0.75rem;
  margin: 0 0.75rem;
}
header article #rightnav nav.main ul li:last-child, header article #leftnav nav.main ul li:last-child {
  margin-right: 0;
}
header article #rightnav nav.main a, header article #leftnav nav.main a {
  margin-right: 0;
}
header article #rightnav nav.top, header article #leftnav nav.top {
  color: #697E85;
  font-feature-settings: "clig" off, "liga" off;
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 400;
  line-height: 0.75rem;
  letter-spacing: -0.02rem;
}
@media (max-width: 900px) {
  header article #rightnav nav.top, header article #leftnav nav.top {
    font-size: 1.25rem;
  }
  header article #rightnav nav.top ul li, header article #leftnav nav.top ul li {
    margin-bottom: 0.5rem !important;
  }
}
header article #rightnav nav.top ul li, header article #leftnav nav.top ul li {
  padding: 0;
  margin: 0;
}
@media (min-width: 900px) {
  header article #rightnav nav.top ul li, header article #leftnav nav.top ul li {
    border-right: 1px solid #1a1a1a;
  }
}
header article #rightnav nav.top ul li:last-child, header article #leftnav nav.top ul li:last-child {
  border-right: none;
}
header article #rightnav nav.top ul li:last-child a, header article #leftnav nav.top ul li:last-child a {
  padding-right: 0;
}
header article #rightnav nav.top ul li a, header article #leftnav nav.top ul li a {
  padding: 0 0.75rem;
  margin: 0;
  color: #1a1a1a;
}
header article #rightnav nav.top ul li a:hover, header article #rightnav nav.top ul li a:focus, header article #leftnav nav.top ul li a:hover, header article #leftnav nav.top ul li a:focus {
  color: #FF0002;
}
@media (max-width: 900px) {
  header article #rightnav nav.top ul li a, header article #leftnav nav.top ul li a {
    padding: 0;
    margin-bottom: 1rem;
  }
}
header article #rightnav nav.top ul li.active a, header article #leftnav nav.top ul li.active a {
  color: #FF0002;
}
@media (max-width: 900px) {
  header article #rightnav nav.top ul, header article #leftnav nav.top ul {
    margin-bottom: 1rem;
  }
}
header article #leftnav {
  flex-direction: row;
  justify-content: center;
  align-items: center;
  height: 100%;
}
header article #leftnav #navblock {
  height: 100%;
}
header article #rightnav .btn {
  padding: 0 0.5rem;
}
header article #rightnav .icons {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-top: 1px;
}
header article #rightnav .icons a, header article #rightnav .icons span {
  cursor: pointer;
}
@media (max-width: 900px) {
  header article #rightnav .icons a, header article #rightnav .icons span {
    width: 1rem;
    height: 1rem;
  }
}
header article #rightnav .icons a img, header article #rightnav .icons span img {
  width: 16px;
  height: auto;
}
@media (max-width: 900px) {
  header article #rightnav .icons a img, header article #rightnav .icons span img {
    vertical-align: top;
  }
}
header article #rightnav .icons a.tabletdown, header article #rightnav .icons span.tabletdown {
  display: none;
}
@media (max-width: 900px) {
  header article #rightnav .icons a.tabletdown, header article #rightnav .icons span.tabletdown {
    display: block;
  }
}

a.onlineshop {
  margin-right: 0.5rem;
  white-space: nowrap;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  background: #FF0002;
  color: #fff;
  padding: 0.5rem 1rem;
  border-radius: 4px;
  font-weight: 500;
  transition: background 400ms ease-in-out;
}
@media (max-width: 900px) {
  a.onlineshop {
    background: transparent;
    padding: 0;
    color: #1a1a1a;
    width: auto;
    height: auto;
  }
}
a.onlineshop:hover {
  text-decoration: none;
}
a.onlineshop .onlineshop-icon {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  display: block;
  filter: brightness(0) invert(1);
}
@media (max-width: 900px) {
  a.onlineshop .onlineshop-icon {
    filter: none;
    width: 16px;
    height: 16px;
    vertical-align: top;
  }
}
@media (max-width: 1100px) {
  a.onlineshop .onlineshop-text {
    display: none;
  }
}

@keyframes disappearUp {
  0% {
    opacity: 0;
    transform: translateY(0);
  }
  50% {
    opacity: 1;
    transform: translateY(-60px);
  }
  100% {
    opacity: 0;
    transform: translateY(-120px);
  }
}
body.blog h1 {
  padding-top: 0;
}

body.home h1 {
  padding-top: 60px; /* Increase padding to allow space for animation */
}
@media (min-width: 600px) and (max-width: 899px) {
  body.home .fullWidthSlider .swiper-button-prev {
    bottom: 14%;
    top: unset !important;
    right: 3rem;
  }
  body.home .fullWidthSlider .swiper-button-prev::after {
    content: "";
    display: inline-block;
    width: 2rem;
    height: 2rem;
    background-image: url(/img/arrow-left.svg);
    background-size: contain;
    background-repeat: no-repeat;
    opacity: 1;
    vertical-align: middle;
  }
  body.home .fullWidthSlider .swiper-button-next {
    bottom: 14%;
    top: unset !important;
    right: 0;
  }
  body.home .fullWidthSlider .swiper-button-next::after {
    content: "";
    display: inline-block;
    width: 2rem;
    height: 2rem;
    background-image: url(/img/arrow-right.svg);
    background-size: contain;
    background-repeat: no-repeat;
    opacity: 1;
    vertical-align: middle;
  }
}
@media (max-width: 599px) {
  body.home .fullWidthSlider .swiper-button-prev {
    top: unset !important;
    bottom: -6rem;
    right: 3rem;
  }
  body.home .fullWidthSlider .swiper-button-prev::after {
    content: "";
    display: inline-block;
    width: 2rem;
    height: 2rem;
    background-image: url(/img/arrow-left.svg);
    background-size: contain;
    background-repeat: no-repeat;
    opacity: 1;
    vertical-align: middle;
  }
  body.home .fullWidthSlider .swiper-button-next {
    top: unset !important;
    bottom: -6rem;
    right: 0rem;
  }
  body.home .fullWidthSlider .swiper-button-next::after {
    content: "";
    display: inline-block;
    width: 2rem;
    height: 2rem;
    background-image: url(/img/arrow-right.svg);
    background-size: contain;
    background-repeat: no-repeat;
    opacity: 1;
    vertical-align: middle;
  }
}

h1 {
  position: relative;
  overflow: visible; /* Ensure the animation is visible */
}
@media (max-width: 599px) {
  h1 {
    padding-top: 60px;
  }
}

body.home h1::before, body.home h1::after {
  content: attr(data-text);
  position: absolute;
  left: 0;
  right: 0;
  color: inherit;
  animation: disappearUp 2s ease-in-out forwards;
}
body.home h1::before {
  top: 60px;
  animation-delay: 0.2s;
}
body.home h1::after {
  top: 60px;
  animation-delay: 1.2s;
}

main {
  margin-top: 9rem;
}
@media (max-width: 900px) {
  main {
    margin-top: 3.75rem;
  }
}

section {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center top;
}
@media (max-width: 599px) {
  section {
    background-size: 100% auto;
  }
}

@media (max-width: 599px) {
  .blog section.header, .lagerloesungen section.header, .lagersysteme section.header {
    padding-top: 55%;
  }
}

section.header {
  background-color: #F5F5F5;
  background-repeat: no-repeat;
  min-height: 40rem;
  position: relative;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: left center;
  display: flex;
}
section.header .background-image {
  position: absolute;
  top: 0;
  left: 0;
  right: 55%;
  bottom: 0;
  background-image: url("dein-bild.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  height: 100%;
}
@media (max-width: 599px) {
  section.header .background-image {
    right: 0;
    bottom: auto;
    height: 50%;
  }
}
section.header.noheight {
  height: auto;
}
section.header .twocol {
  gap: 3rem;
}
@media (max-width: 599px) {
  section.header {
    background-size: 100% auto;
    min-height: 0;
    padding-top: 15rem;
  }
  section.header .twocol {
    gap: 3rem;
  }
}
section.header div.p {
  font-weight: 400;
}
@media (max-width: 900px) {
  section.header {
    background-position: -500px top;
  }
}
@media (max-width: 599px) {
  section.header {
    background-position: center top;
  }
}
@media (min-width: 600px) {
  section.header .twocol {
    grid-template-columns: 1fr 1fr;
  }
}
section.header article {
  display: flex;
  height: 100%;
  flex-direction: column;
  justify-content: center;
  padding-top: 0;
}
section.header h2, section.header h3 {
  color: #fff;
}

section.bgLightGrey + section.bgLightGrey {
  padding-top: 0;
}

section.grey {
  background: #F5F5F5;
  color: black;
}
.bgRedGradient {
  background: #FF0002;
}

.bgGreyGradient {
  background: url("/img/hero.webp");
  background-size: cover, cover;
}

section.dark {
  color: #fff;
}
section.dark .pretitle, section.dark .p {
  color: #fff;
}
section.dark a {
  color: #fff;
}
section.dark .slider .item, section.dark .slider2 .item, section.dark .sliderfull .item {
  background: #fff;
}
section.dark .slider .item h3, section.dark .slider .item .small, section.dark .slider .item div.p, section.dark .slider2 .item h3, section.dark .slider2 .item .small, section.dark .slider2 .item div.p, section.dark .sliderfull .item h3, section.dark .sliderfull .item .small, section.dark .sliderfull .item div.p {
  color: #1a1a1a;
}

.item.dark {
  color: #fff;
}
.item.dark h3 {
  color: #fff;
}

article.fullWidthSlider, .mobileSlider {
  max-width: none;
}
article.fullWidthSlider .sliderBox, .mobileSlider .sliderBox {
  margin-left: -1.5rem;
  margin-right: -1.5rem;
}
@media (max-width: 599px) {
  article.fullWidthSlider .sliderBox, .mobileSlider .sliderBox {
    margin-left: -1.25rem;
    margin-right: -1.25rem;
  }
}

.sliderBox {
  margin: 3.5rem 0;
}
@media (max-width: 900px) {
  .sliderBox {
    margin-right: -1.5rem;
  }
}
@media (max-width: 599px) {
  .sliderBox {
    margin: 1.5rem 0;
    margin-right: -1.5rem;
  }
}

.slider .item, .slider2 .item {
  background: linear-gradient(136deg, #BD000B 0%, #FF0002 100%);
  display: flex;
  padding: 2rem;
  flex-direction: column;
  align-items: flex-start;
  background: var(--white, #FFF);
}
@media (max-width: 599px) {
  .slider .item, .slider2 .item {
    padding: 1rem;
  }
}
.slider .item.nopadding, .slider2 .item.nopadding {
  padding: 0;
}
.slider .item img, .slider2 .item img {
  margin-bottom: 2rem;
}
.slider .item h3, .slider2 .item h3 {
  margin-bottom: 0.75rem;
  font-size: 1.625rem;
  font-size: clamp(1.625rem, 0.9305555556rem + 1.8518518519vw, 2.25rem);
  line-height: 2rem;
  line-height: clamp(2rem, 1.1666666667rem + 2.2222222222vw, 2.75rem);
  font-style: normal;
  font-weight: 400;
  letter-spacing: -0.09rem;
}
.slider .item .small, .slider2 .item .small {
  margin-bottom: 2rem;
  font-size: 1rem;
  font-style: normal;
  font-weight: 300;
  line-height: 1.375rem; /* 125% */
  color: #929191;
}
.slider .item .small:last-child, .slider2 .item .small:last-child {
  margin-bottom: 0;
}
.slider .item .button, .slider2 .item .button {
  margin-top: auto;
  max-width: none;
  width: 100%;
}
.slider.imageslider .item, .slider2.imageslider .item {
  padding: 0;
  overflow: hidden;
}
.slider.imageslider .item .iteminner, .slider2.imageslider .item .iteminner {
  padding: 1.5rem;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 15rem;
  background-size: cover;
}
.slider.imageslider .item .iteminner > *:last-child, .slider2.imageslider .item .iteminner > *:last-child {
  margin-bottom: 0;
}
.slider.imageslider .item img, .slider2.imageslider .item img {
  margin-bottom: 0;
}

.sliderfull .item {
  background: linear-gradient(136deg, #BD000B 0%, #FF0002 100%);
  display: flex;
  padding: 2rem;
  flex-direction: column;
  align-items: flex-start;
  border-radius: 0.75rem;
  background: var(--white, #FFF);
  box-shadow: 4px 4px 16px 0px rgba(0, 0, 0, 0.25);
}
.sliderfull .item img {
  padding-bottom: 2rem;
}
.sliderfull .item h3 {
  margin-bottom: 0.75rem;
  font-size: 1.625rem;
  font-size: clamp(1.625rem, 0.9305555556rem + 1.8518518519vw, 2.25rem);
  line-height: 2rem;
  line-height: clamp(2rem, 1.7222222222rem + 0.7407407407vw, 2.25rem);
  font-style: normal;
  font-weight: 700;
  letter-spacing: -0.09rem;
}
.sliderfull .item .small {
  margin-bottom: 2rem;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 700;
  line-height: 1.5rem;
}
.sliderfull .item .small:last-child {
  margin-bottom: 0;
}
.sliderfull .item .button {
  margin-top: auto;
  max-width: none;
  width: 100%;
}

.slider.sliderFullImages .item {
  padding: 0;
}
.slider.sliderFullImages .item a {
  display: block;
  height: 100%;
  width: 100%;
}
.slider.sliderFullImages .item a img {
  object-fit: cover;
  margin-bottom: 0;
  max-width: none;
  height: 100%;
  width: 100%;
  display: block;
  min-width: 270px;
  min-height: 270px;
}

.swiper-wrapper {
  display: flex !important;
}

.swiper-slide {
  height: auto !important;
}

#sectionHeaderButtons {
  position: fixed;
  right: 0;
  top: 12rem;
  width: 4rem;
  height: 13rem;
  z-index: 100;
}
#sectionHeaderButtons:hover {
  width: 11rem;
}
@media (max-width: 599px) {
  #sectionHeaderButtons {
    top: 6rem;
  }
}
#sectionHeaderButtons a.sideButton {
  display: flex;
  flex-wrap: nowrap;
  white-space: nowrap;
  height: 4rem;
  width: 4rem;
  max-width: none;
  margin-bottom: 0.2rem;
  justify-content: flex-start;
  padding: 1rem 1.12rem;
  background: #FF0002;
  position: absolute;
  right: 1rem;
}
#sectionHeaderButtons a.sideButton:nth-child(2) {
  top: 4.3rem;
}
#sectionHeaderButtons a.sideButton:nth-child(3) {
  top: 8.6rem;
}
#sectionHeaderButtons a.sideButton img {
  margin-right: 1.5rem;
}
@media (max-width: 900px) {
  #sectionHeaderButtons a.sideButton {
    width: 3.125rem;
    height: 3.125rem;
    padding: 1rem;
  }
  #sectionHeaderButtons a.sideButton img {
    height: 1.5rem;
  }
  #sectionHeaderButtons a.sideButton:nth-child(2) {
    top: 3.325rem;
  }
  #sectionHeaderButtons a.sideButton:nth-child(3) {
    top: 6.65rem;
  }
}

.sideButtons {
  position: fixed;
  right: 1rem;
  top: 16rem;
  display: flex;
  flex-direction: column;
  z-index: 10;
}
@media (max-width: 900px) {
  .sideButtons {
    display: none;
  }
}

a.sideButton {
  display: flex;
  flex-wrap: nowrap;
  white-space: nowrap;
  height: 2.5rem;
  width: 2.5rem;
  max-width: none;
  margin-bottom: 0.2rem;
  justify-content: flex-start;
  padding: 0;
  background: #FF0002;
}
a.sideButton img {
  width: 2.5rem;
  height: 2.5rem;
}
a.sideButton img {
  margin-right: 0.5rem;
}

.features {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}
@media (min-width: 900px) {
  .features.threecol {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.features .item {
  background: #fff;
  padding: 2.5rem;
}
@media (max-width: 599px) {
  .features .item {
    padding: 1.5rem;
  }
}
.features .item h3 {
  font-size: 3rem;
  font-size: clamp(3rem, 1.8888888889rem + 2.962962963vw, 4rem);
  line-height: 3.25rem;
  line-height: clamp(3.25rem, 1.8611111111rem + 3.7037037037vw, 4.5rem);
  font-style: normal;
  font-weight: 400;
  letter-spacing: -0.16rem;
  color: #FF0002;
  margin-bottom: 1rem;
}
@media (max-width: 599px) {
  .features .item h3 {
    margin-bottom: 0.5rem;
  }
}
.features .item h4 {
  font-size: 0.9375rem;
  font-size: clamp(0.9375rem, 0.5902777778rem + 0.9259259259vw, 1.25rem);
  line-height: 1.2rem;
  line-height: clamp(1.2rem, 0.8666666667rem + 0.8888888889vw, 1.5rem);
  font-style: normal;
  font-weight: 400;
  letter-spacing: -0.0225rem;
}
.features .item div.p {
  font-size: 1rem;
  font-size: 0.9375rem;
  font-size: clamp(0.9375rem, 0.8680555556rem + 0.1851851852vw, 1rem);
  line-height: 1rem;
  line-height: clamp(1rem, 0.7222222222rem + 0.7407407407vw, 1.25rem);
  font-style: normal;
  font-weight: 400;
}
.features .item img {
  margin-bottom: 1.5rem;
}

@media (max-width: 599px) {
  .features2 {
    grid-template-columns: 1fr;
  }
}
.features2 .item {
  display: flex;
  gap: 1rem;
  align-items: center;
}
.features2 .item img {
  margin-bottom: 0;
}

.youtube {
  margin-top: 3rem;
}
@media (max-width: 599px) {
  .youtube {
    margin-top: 0.5rem;
  }
}

.items .youtube {
  margin-top: 0;
}
@media (max-width: 599px) {
  .items .youtube {
    margin-top: 0;
  }
}

@media (min-width: 1200px) {
  .topcol .cards {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}

.cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}
.cards.twocol {
  grid-template-columns: 1fr;
}
@media (min-width: 1200px) {
  .cards.twocol {
    grid-template-columns: 1fr 1fr;
  }
}
.cards .item {
  background: #F5F5F5;
  padding: 1.5rem;
}
.cards .item img {
  margin-bottom: 1.5rem;
}
.cards .item .small {
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.375rem; /* 122.222% */
  letter-spacing: -0.0225rem;
}
@media (max-width: 599px) {
  .cards .item {
    padding: 1rem;
  }
  .cards .item .small {
    font-size: 0.9375rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.125rem;
    letter-spacing: -0.01875rem;
  }
}

.lagersysteme-detail {
  gap: 3rem;
}
.lagersysteme-detail .small {
  margin-bottom: 4rem;
}

.lagersysteme-detail .buttons .item {
  flex: 1;
}
.lagersysteme-detail .buttons .item a {
  width: 100%;
  max-width: none;
  white-space: nowrap;
}

footer {
  padding: 7.5rem 1.5rem;
  overflow: hidden;
  background: #E8E8E8;
}
@media (max-width: 599px) {
  footer {
    padding: 2.5rem 1.5rem;
  }
}
footer .footerbox .right p {
  margin-bottom: 0;
}
footer .flxdCntnr {
  margin-bottom: 6rem;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
@media (max-width: 599px) {
  footer .flxdCntnr {
    margin-bottom: 2rem;
  }
}
footer .flxdCntnr .upArrwFttr {
  max-width: 2rem;
}
@media (max-width: 599px) {
  footer .flxdCntnr .upArrwFttr {
    display: none;
  }
}
@media (max-width: 599px) {
  footer .flxdCntnr .logo {
    max-width: 70%;
  }
}
footer .footerLink {
  color: #222222;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1rem; /* 100% */
  letter-spacing: -0.02rem;
  padding-right: 2.25rem;
}
footer .footerLink:hover {
  color: #FF0002;
  text-decoration: none;
}
footer article .h {
  font-size: 1.25rem;
  line-height: 1.25rem; /* 100% */
  letter-spacing: -0.025rem;
  font-weight: bold;
  margin-bottom: 0.5rem;
}
footer article nav ul {
  font-size: 1rem;
  font-style: normal;
  font-weight: 300;
  line-height: 1rem; /* 100% */
  letter-spacing: -0.02rem;
}
footer article nav ul li:first-child {
  padding-left: 0;
}
footer article nav ul li a {
  color: #1a1a1a;
}
footer article .social {
  margin-bottom: 2rem;
  margin-top: 2rem;
}
footer article .social a {
  margin-right: 1rem;
}
footer article .social a img {
  width: 2rem;
  height: 2rem;
}
@media (max-width: 599px) {
  footer article .social {
    margin-top: 0;
  }
}
footer article .threeCol {
  grid-template-columns: 1fr;
}
@media (min-width: 600px) {
  footer article .threeCol {
    grid-template-columns: 1.5fr 1fr 1fr;
  }
}
footer article .threeCol > div:nth-child(3) {
  text-align: right;
}
footer article p {
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5rem; /* 150% */
  letter-spacing: -0.02rem;
}
footer article p.two {
  margin-bottom: 2rem;
}
footer article .footerbox {
  display: flex;
  justify-content: space-between;
}
@media (max-width: 599px) {
  footer article .footerbox {
    display: block;
  }
}
footer article .footerbox .left {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 300;
  line-height: 0.875rem; /* 100% */
  letter-spacing: -0.0175rem;
  color: #1a1a1a;
}
@media (max-width: 599px) {
  footer article .footerbox .left {
    display: grid;
  }
  footer article .footerbox .left div:nth-child(1) {
    grid-row: 2/2;
    margin-bottom: 2rem;
  }
  footer article .footerbox .left div:nth-child(2) {
    grid-row: 1/1;
  }
}
footer article .footerbox .left .logo {
  margin-bottom: 2.75rem;
}
footer article .footerbox .right {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media (min-width: 1200px) {
  footer article .footerbox .right {
    width: 50%;
  }
}
footer article .footerbox .right div.mobile {
  margin-top: 2rem;
}
footer article .footerbox.three-columns {
  display: flex;
  justify-content: space-between;
}
footer article .footerbox.three-columns .col {
  flex: 1;
}
footer article .footerbox.three-columns .col-links {
  font-size: 0.875rem;
  font-weight: 300;
  line-height: 0.875rem;
  letter-spacing: -0.0175rem;
  color: #1a1a1a;
}
footer article .footerbox.three-columns .col-links .footerLegalLinks {
  display: flex;
  flex-wrap: wrap;
  column-gap: 1.125rem;
  row-gap: 0.5rem;
  justify-content: flex-start;
  align-items: flex-start;
}
footer article .footerbox.three-columns .col-links .footerLegalLinks .footerLink {
  padding-right: 0;
  flex: 0 0 auto;
  width: fit-content;
  max-width: 100%;
}
footer article .footerbox.three-columns p {
  margin-bottom: 0;
}
@media (max-width: 1200px) {
  footer article .footerbox.three-columns {
    gap: 1.5rem;
  }
}
@media (max-width: 599px) {
  footer article .footerbox.three-columns {
    display: block;
  }
  footer article .footerbox.three-columns .col {
    margin-bottom: 1.5rem;
  }
  footer article .footerbox.three-columns .col:last-child {
    margin-bottom: 0;
  }
  footer article .footerbox.three-columns .col-links {
    display: grid;
    justify-items: start;
  }
  footer article .footerbox.three-columns .col-links div:nth-child(1) {
    grid-row: 2/2;
  }
  footer article .footerbox.three-columns .col-links div:nth-child(2) {
    grid-row: 1/1;
  }
  footer article .footerbox.three-columns div.mobile {
    margin-top: 1rem;
  }
}
@media (max-width: 599px) {
  footer article .threeCol > div:first-child {
    border-top: 1px solid #1a1a1a;
    padding-top: 2.5rem;
    grid-column: 1/span 2;
    grid-row: 2;
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  footer article .threeCol > div:first-child > div:nth-child(2) {
    text-align: right;
  }
  footer article .threeCol > div:nth-child(2) {
    grid-column: 1;
    grid-row: 1;
  }
  footer article .threeCol > div:nth-child(3) {
    grid-column: 2;
    grid-row: 1;
  }
}

@media (max-width: 900px) {
  header article #navblock {
    display: block;
    position: fixed;
    top: 60px;
    left: 100vw;
    width: 100vw;
    bottom: 0;
    overflow-y: auto;
    background: #F5F5F5;
    z-index: 102;
    transition: left 0.5s ease-in-out;
    text-align: left;
    padding: 3rem 1.5rem 0 1.5rem;
  }
  header article #navblock nav.mainnav {
    display: block;
  }
  header article #navblock > div {
    display: grid;
    align-items: flex-start;
  }
  header article #navblock div.top {
    display: block;
    grid-column: 1;
    grid-row: 2;
  }
  header article #navblock div.main {
    display: block;
  }
  header article #navblock div.main nav.main ul li {
    margin-left: 0;
  }
}
@media (max-width: 900px) and (max-width: 599px) {
  header article #navblock div.main nav.main ul li {
    margin-bottom: 1rem;
  }
}
@media (max-width: 900px) {
  header article #navblock hr {
    opacity: 1;
    margin-bottom: 2rem;
    margin-top: 0;
  }
  header article #navblock.open {
    left: 0;
  }
  header article #navblock nav ul {
    flex-direction: column;
  }
  header article #navblock nav ul li {
    padding: 0.5rem 0;
    font-size: 1.75rem;
    line-height: 2.125rem;
  }
  header article #navblock nav ul li a:focus {
    text-decoration: none !important;
  }
  header article #navblock nav ul li.active, header article #navblock nav ul li:hover, header article #navblock nav ul li:focus, header article #navblock nav ul li:active {
    border: none !important;
  }
  header article #navblock nav ul li.active > a {
    color: #FF0002;
  }
  header article #navblock nav ul li ul li {
    font-size: 1.25rem;
    line-height: 1.5rem;
    padding: 0;
    margin-bottom: 1rem;
  }
}

body.agb h1, body.datenschutz h1, body.impressum h1 {
  margin-bottom: 4rem;
}
body.agb h2, body.datenschutz h2, body.impressum h2 {
  font-size: 1.25rem;
  font-size: clamp(1.25rem, 0.9722222222rem + 0.7407407407vw, 1.5rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 1.2361111111rem + 0.3703703704vw, 1.5rem);
}
body.agb h3, body.datenschutz h3, body.impressum h3 {
  font-size: 0.875rem;
  font-size: clamp(0.875rem, 0.4583333333rem + 1.1111111111vw, 1.25rem);
  line-height: 1rem;
  line-height: clamp(1rem, 0.7222222222rem + 0.7407407407vw, 1.25rem);
}
body.agb h4, body.datenschutz h4, body.impressum h4 {
  font-size: 0.875rem;
  font-size: clamp(0.875rem, 0.7361111111rem + 0.3703703704vw, 1rem);
  line-height: 1rem;
  line-height: clamp(1rem, 1rem + 0vw, 1rem);
}

.genericModal .selector .button.grey {
  cursor: pointer;
}
.genericModal h2 {
  font-style: normal;
  margin-top: 2rem;
}
@media (min-width: 900px) {
  .genericModal h2 {
    margin-top: 0;
  }
}
.genericModal h3 {
  margin-top: 3rem;
  margin-bottom: 2rem;
}
.genericModal #boxError, .genericModal #boxSuccess, .genericModal #boxError2, .genericModal #boxSuccess2, .genericModal #boxError3, .genericModal #boxSuccess3 {
  display: none;
}
@media (max-width: 599px) {
  .genericModal #boxError, .genericModal #boxSuccess, .genericModal #boxError2, .genericModal #boxSuccess2, .genericModal #boxError3, .genericModal #boxSuccess3 {
    margin-top: 2rem;
  }
}
.genericModal .textheader {
  font-style: normal;
  font-weight: 400;
  font-size: 1.1875rem;
  font-size: clamp(1.1875rem, 1.0486111111rem + 0.3703703704vw, 1.3125rem);
  line-height: 1.6875rem;
  line-height: clamp(1.6875rem, 1.4097222222rem + 0.7407407407vw, 1.9375rem);
  color: #FFFFFF;
  letter-spacing: 0.8px;
}
.genericModal .twocol, .genericModal .twoc {
  margin: 4rem 1.5rem;
  margin-bottom: 2rem;
}
@media (min-width: 900px) {
  .genericModal .twocol, .genericModal .twoc {
    margin: 7.5rem 6rem;
    margin-bottom: 4rem;
  }
}
.genericModal .modal-content {
  background: #F5F5F5;
  border-radius: 0;
}
.genericModal .modal-dialog {
  max-width: 1040px;
}
.genericModal .vertical-alignment-helper {
  pointer-events: none;
}
.genericModal .buttonContainer {
  display: flex;
  gap: 1.5rem;
  flex-wrap: nowrap;
}
@media (max-width: 599px) {
  .genericModal .buttonContainer {
    flex-wrap: wrap;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  .genericModal .buttonContainer {
    flex-wrap: wrap;
  }
}
.genericModal .modal-header {
  border-bottom: none;
  padding: 3rem 6rem;
  border-radius: 0;
}
@media (max-width: 599px) {
  .genericModal .modal-header {
    padding: 5rem 1.5rem 1rem 1.5rem;
  }
  .genericModal .modal-header .button {
    text-align: center;
  }
}
.genericModal .modal-header .btn-close {
  height: 2rem;
  width: 2rem;
  background: url("/img/close.svg");
  background-size: cover;
  opacity: 1;
  z-index: 10;
}
@media (max-width: 599px) {
  .genericModal .modal-header .btn-close {
    top: 1.5rem;
    right: 1.5rem;
    position: absolute;
  }
}
.genericModal .modalStoerer {
  transform: scale(1, 1) rotate(-0.05turn);
  -webkit-filter: drop-shadow(0px 0px 16px rgba(0, 0, 0, 0.5));
  filter: drop-shadow(0px 0px 16px rgba(0, 0, 0, 0.5));
}
.genericModal .iconModalMobile {
  max-width: 120px;
  position: absolute;
  right: 12px;
  top: 100px;
  transform: scale(1, 1) rotate(0.05turn);
}
@media (max-width: 320px) {
  .genericModal .iconModalMobile {
    max-width: 120px;
  }
}
.genericModal .modal-body {
  padding: 0;
}
.genericModal .modal-body article {
  margin: 4rem 1.5rem;
  margin-top: 0;
}
@media (min-width: 900px) {
  .genericModal .modal-body article {
    margin: 7.5rem 6rem;
    margin-top: 0;
  }
}
.genericModal .modal-body article .form-control {
  background-color: transparent;
  border: none;
  border-bottom: 1px solid #1a1a1a;
  border-radius: 0;
  padding-left: 6px;
  color: #1a1a1a;
  font-style: normal;
  font-weight: 400;
  font-size: 1.1875rem;
  font-size: clamp(1.1875rem, 1.0486111111rem + 0.3703703704vw, 1.3125rem);
  line-height: 1.6875rem;
  line-height: clamp(1.6875rem, 1.4097222222rem + 0.7407407407vw, 1.9375rem);
  font-size: 21px;
  line-height: 31px;
  margin-bottom: 2rem;
}
@media (max-width: 599px) {
  .genericModal .modal-body article .form-control::placeholder {
    font-size: 16px;
  }
}
.genericModal .modal-body article .row.top {
  padding-left: 12px;
  padding-right: 12px;
}
.genericModal .modal-body article select {
  background-color: transparent;
  border: none;
  border-bottom: 1px solid #fff;
  border-radius: 0;
  color: #fff;
  font-style: normal;
  font-weight: 400;
  font-size: 1.1875rem;
  font-size: clamp(1.1875rem, 1.0486111111rem + 0.3703703704vw, 1.3125rem);
  line-height: 1.6875rem;
  line-height: clamp(1.6875rem, 1.4097222222rem + 0.7407407407vw, 1.9375rem);
  margin-bottom: 2rem;
  letter-spacing: 0.8px;
  width: 100%;
  padding: 0.375rem 0.75rem;
  padding-left: 6px;
}
.genericModal .modal-body article select option {
  color: #1a1a1a;
}
.genericModal .modal-body article label {
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 30px;
}
.genericModal .modal-body article label[for=gdpr], .genericModal .modal-body article label[for=mobilegdpr] {
  opacity: 1;
  font-style: normal;
  font-weight: 400;
  margin: 3rem 0;
  margin-bottom: 2rem;
  display: flex;
  align-items: flex-start;
  max-width: 700px;
  font-size: 0.9375rem;
  font-size: clamp(0.9375rem, 0.7986111111rem + 0.3703703704vw, 1.0625rem);
  line-height: 1.25rem;
  line-height: clamp(1.25rem, 1.0416666667rem + 0.5555555556vw, 1.4375rem);
  letter-spacing: 0.8px;
}
.genericModal .modal-body article label[for=gdpr] input, .genericModal .modal-body article label[for=mobilegdpr] input {
  width: fit-content;
  margin: 0;
}
.genericModal .modal-body article label[for=gdpr] span, .genericModal .modal-body article label[for=mobilegdpr] span {
  margin-left: 2rem;
  color: #1a1a1a;
}
@media (max-width: 599px) {
  .genericModal .modal-body article label[for=gdpr] span, .genericModal .modal-body article label[for=mobilegdpr] span {
    margin-left: 1.5rem;
  }
}
.genericModal .modal-body article label[for=gdpr] span .linkPrivacy, .genericModal .modal-body article label[for=mobilegdpr] span .linkPrivacy {
  color: #1a1a1a;
  text-decoration: underline;
}
.genericModal .modal-body article label[for=gdpr] {
  position: relative;
}
.genericModal .modal-body article input[type=checkbox] {
  margin-right: 0.5rem;
}
.genericModal .modal-body article .inputradiocontainer {
  position: relative;
}
.genericModal .modal-body article .inputradiocontainer input[type=checkbox]:before {
  content: "";
  display: inline-block;
  width: 13px;
  height: 13px;
  background: transparent;
  border: 2px solid #1a1a1a;
  border-radius: 3px;
  position: absolute;
  bottom: 5px;
}
.genericModal .modal-body article .inputradiocontainer #contact_phone:checked:after {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  background: #1a1a1a;
  border: 2px solid #1a1a1a;
  position: absolute;
  border-radius: 1px;
  left: 4px;
  bottom: 9px;
}
.genericModal .modal-body article .inputradiocontainer #contact_mail:checked:after {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  background: #1a1a1a;
  border: 2px solid #1a1a1a;
  position: absolute;
  border-radius: 1px;
  left: 4px;
  bottom: 9px;
}
.genericModal .modal-body article .inputradiocontainer #contact_sms:checked:after {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  background: #1a1a1a;
  border: 2px solid #1a1a1a;
  position: absolute;
  border-radius: 1px;
  left: 4px;
  bottom: 9px;
}
.genericModal .modal-body article .inputradiocontainer #contact_phone, .genericModal .modal-body article .inputradiocontainer #contact_sms, .genericModal .modal-body article .inputradiocontainer #contact_mail {
  margin-right: 1rem;
}
.genericModal .modal-body article #gdpr:before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  border: 2px solid #1a1a1a;
  border-radius: 3px;
  position: absolute;
  background: #F5F5F5;
}
.genericModal .modal-body article #gdpr:checked:after {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  background: #1a1a1a;
  border: 2px solid #1a1a1a;
  position: absolute;
  border-radius: 1px;
  left: 4px;
  top: 4px;
}
.genericModal .modal-body article label[for=contact_phone], .genericModal .modal-body article label[for=contact_mail], .genericModal .modal-body article label[for=contact_sms] {
  color: #1a1a1a;
  font-size: 0.9375rem;
  font-size: clamp(0.9375rem, 0.7986111111rem + 0.3703703704vw, 1.0625rem);
  line-height: 1.25rem;
  line-height: clamp(1.25rem, 1.0416666667rem + 0.5555555556vw, 1.4375rem);
  margin-right: 0.75rem;
  position: relative;
  letter-spacing: 0.8px;
}
.genericModal .modal-body article .labelText {
  color: #1a1a1a;
  font-size: 19px;
  line-height: 29px;
  margin-bottom: 1rem;
  font-size: 1.0625rem;
  font-size: clamp(1.0625rem, 0.9236111111rem + 0.3703703704vw, 1.1875rem);
  line-height: 1.4375rem;
  line-height: clamp(1.4375rem, 1.0208333333rem + 1.1111111111vw, 1.8125rem);
  letter-spacing: 0.8px;
}
.genericModal .modal-body article select:focus-visible {
  background-color: transparent;
  border: none;
  border-bottom: 1px solid #1a1a1a;
  border-radius: 0;
}
.genericModal .modal-body article ::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #929191;
  opacity: 1; /* Firefox */
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 30px;
}
.genericModal .modal-body article :-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #1a1a1a;
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 30px;
}
.genericModal .modal-body article ::-ms-input-placeholder { /* Microsoft Edge */
  color: #1a1a1a;
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 30px;
}
.genericModal .modal-body article a {
  color: #FF0002;
}
.genericModal .modal-body article .button {
  border: 0 !important;
}

.form-control:focus {
  box-shadow: none;
}

article#teamlist, article#joblist {
  margin-top: 4rem;
}

article#teamlist .acc_item {
  padding: 0;
}

.accordion .acc_item {
  border-top: 1px solid #DFDEE4;
  padding: 0 2rem;
}
@media (max-width: 599px) {
  .accordion .acc_item {
    padding: 0 1rem;
  }
}
.accordion .acc_item h3 {
  font-size: 1.625rem;
  font-size: clamp(1.625rem, 0.9305555556rem + 1.8518518519vw, 2.25rem);
  line-height: 1.625rem;
  line-height: clamp(1.625rem, 0.9305555556rem + 1.8518518519vw, 2.25rem);
  font-style: normal;
  letter-spacing: -0.09rem;
  padding-top: 1.5rem;
  padding-top: clamp(1.5rem, 0.3888888889rem + 2.962962963vw, 2.5rem);
  padding-bottom: 1.5rem;
  padding-bottom: clamp(1.5rem, 0.3888888889rem + 2.962962963vw, 2.5rem);
  margin: 0;
  background: url(/img/arrow-down-white-icon.svg) center right no-repeat;
  cursor: pointer;
}
@media (max-width: 599px) {
  .accordion .acc_item h3 {
    background-size: 2rem 2rem;
  }
}
@media (max-width: 900px) {
  .accordion .acc_item h3 {
    font-weight: 400;
  }
}
.accordion .acc_item .small {
  margin-bottom: 2rem;
}
.accordion .acc_item .h3 {
  font-size: 1.625rem;
  font-size: clamp(1.625rem, 0.9305555556rem + 1.8518518519vw, 2.25rem);
  line-height: 1.625rem;
  line-height: clamp(1.625rem, 0.9305555556rem + 1.8518518519vw, 2.25rem);
  font-style: normal;
  font-weight: 700;
  letter-spacing: -0.09rem;
}
.accordion .acc_item .team_items {
  max-height: 0;
  transition: max-height 0.5s ease-in-out;
  overflow: hidden;
}
.accordion .acc_item .team_items .accgrid {
  padding-bottom: 3rem;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 3.25rem;
}
@media (min-width: 600px) and (max-width: 899px) {
  .accordion .acc_item .team_items .accgrid {
    grid-template-columns: 1fr 1fr;
  }
}
.accordion .acc_item .team_items .textSmall {
  font-size: 1rem;
  font-size: clamp(1rem, 0.7222222222rem + 0.7407407407vw, 1.25rem);
  line-height: 1.5rem;
  line-height: clamp(1.5rem, 0.9444444444rem + 1.4814814815vw, 2rem);
  font-style: normal;
  font-weight: 400;
}
.accordion .acc_item .team_items .item {
  background: #fff;
  color: #1a1a1a;
  font-size: 1rem;
  line-height: 1.25rem;
}
@media (max-width: 599px) {
  .accordion .acc_item .team_items .item {
    padding: 0;
  }
}
.accordion .acc_item .team_items .item img.person {
  margin-bottom: 1.25rem;
}
.accordion .acc_item .team_items .item a {
  color: #1a1a1a;
}
.accordion .acc_item .team_items .item div {
  margin-bottom: 0.75rem;
}
.accordion .acc_item .team_items .item div.flexcenter {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  font-weight: 300;
  color: #929191;
}
.accordion .acc_item .team_items .item div.flexcenter img {
  margin-bottom: 0;
}
.accordion .acc_item.open {
  background: #fff;
  color: #1a1a1a;
}
.accordion .acc_item.open h3 {
  background-image: url(/img/arrow-up-white-icon.svg);
}
.accordion .acc_item.open .team_items {
  max-height: 1800px;
}
.accordion .slider {
  margin-bottom: 2rem;
}

#teamlist .accgrid {
  padding-bottom: 3rem;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 3.25rem;
}
@media (min-width: 600px) and (max-width: 899px) {
  #teamlist .accgrid {
    grid-template-columns: 1fr 1fr;
  }
}
#teamlist .accgrid .item {
  background: #fff;
  color: #1a1a1a;
  font-size: 1rem;
  line-height: 1.25rem;
}
@media (max-width: 599px) {
  #teamlist .accgrid .item {
    padding: 0;
  }
}
#teamlist .accgrid .item img.person {
  margin-bottom: 1.25rem;
  max-width: 100%;
}
#teamlist .accgrid .item a {
  color: #1a1a1a;
}
#teamlist .accgrid .item a:hover {
  text-decoration: none;
}
#teamlist .accgrid .item div {
  margin-bottom: 0.75rem;
}
#teamlist .accgrid .item div.flexcenter {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  font-weight: 300;
  color: #929191;
}
#teamlist .accgrid .item div.flexcenter img {
  margin-bottom: 0;
}
#teamlist .slider .item {
  background: #fff;
  color: #1a1a1a;
  font-size: 1rem;
  line-height: 1.25rem;
}
@media (max-width: 599px) {
  #teamlist .slider .item {
    padding: 0;
  }
}
#teamlist .slider .item img.person {
  margin-bottom: 1.25rem;
  max-width: 100%;
}
#teamlist .slider .item a {
  color: #1a1a1a;
}
#teamlist .slider .item div {
  margin-bottom: 0.75rem;
}
#teamlist .slider .item div.flexcenter {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  font-weight: 300;
  color: #929191;
}
#teamlist .slider .item div.flexcenter img {
  margin-bottom: 0;
}

.center {
  text-align: center;
}

b, strong {
  font-weight: bold;
}

.buttons.regalinspektion, .buttons.regalpruefung {
  gap: 0;
}
.buttons.regalinspektion .button, .buttons.regalpruefung .button {
  border: 2px solid #fff;
  cursor: pointer;
  background-color: #fff;
  color: #FF0002;
  background-image: url(/img/button-arrow-red.svg);
}
.buttons.regalinspektion .button.active, .buttons.regalpruefung .button.active {
  background-color: #FF0002;
  color: #fff;
  background-image: url(/img/button-arrow-white.svg);
}
.buttons.regalinspektion .button:first-child, .buttons.regalpruefung .button:first-child {
  border-right: none;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.buttons.regalinspektion .button:nth-child(2), .buttons.regalpruefung .button:nth-child(2) {
  border-left: none;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

#kontaktform2 h2 {
  font-size: 2rem;
  font-size: clamp(2rem, 0.8888888889rem + 2.962962963vw, 3rem);
  line-height: 2.25rem;
  line-height: clamp(2.25rem, 0.8611111111rem + 3.7037037037vw, 3.5rem);
}
#kontaktform2 ul {
  margin-top: 1rem;
}

section#jobs-positions article#joblist {
  margin-top: 0;
}
section#jobs-positions #joblist .accordion {
  border-bottom: 1px solid #DFDEE4;
}
section#jobs-positions #joblist .accordion .acc_item {
  padding: 0 2rem;
}
section#jobs-positions #joblist .accordion .acc_item .acc_item_head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  cursor: pointer;
  padding-top: clamp(1.5rem, 0.3888888889rem + 2.962962963vw, 2.5rem);
  padding-bottom: 0;
}
section#jobs-positions #joblist .accordion .acc_item .acc_item_head h3 {
  margin: 0;
  padding-top: 0;
  padding-bottom: 1rem;
  background: none;
  color: #1a1a1a;
  flex: 1;
  cursor: pointer;
}
section#jobs-positions #joblist .accordion .acc_item .acc_item_head .job-accordion-toggle {
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  margin-top: 0.25rem;
  background: url(/img/arrow-down-black-icon.svg) center center no-repeat;
  background-size: 2rem 2rem;
}
section#jobs-positions #joblist .accordion .acc_item > h4 {
  margin: 0;
  padding: 0 0 clamp(1rem, 0.5rem + 1vw, 1.5rem);
  font-weight: 700;
  font-size: 1.25rem;
  line-height: 1.25rem;
  color: #1a1a1a;
  cursor: pointer;
}
section#jobs-positions #joblist .accordion .acc_item .team_items {
  margin-top: 0;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.5s ease-in-out;
}
section#jobs-positions #joblist .accordion .acc_item .team_items .job-desc-headline {
  font-size: 1.5rem;
  font-size: clamp(1.5rem, 0.9444444444rem + 1.4814814815vw, 2rem);
  font-weight: 400;
  margin: 0 0 1rem;
  letter-spacing: -0.06rem;
}
section#jobs-positions #joblist .accordion .acc_item .team_items .job-description {
  margin-bottom: 1.5rem;
}
section#jobs-positions #joblist .accordion .acc_item .team_items .job-description p:last-child {
  margin-bottom: 0;
}
section#jobs-positions #joblist .accordion .acc_item .team_items .job-apply-wrap {
  margin: 1.5rem 0 0;
}
section#jobs-positions #joblist .accordion .acc_item .team_items .job-apply-wrap .button {
  display: inline-flex;
  white-space: nowrap;
}
section#jobs-positions #joblist .accordion .acc_item .team_items .job-download-card {
  background: #F5F5F5;
  padding: 2rem;
  margin-top: 0.5rem;
  display: flex;
  align-items: flex-start;
  gap: 2rem;
}
@media (max-width: 599px) {
  section#jobs-positions #joblist .accordion .acc_item .team_items .job-download-card {
    padding: 1.25rem;
    flex-direction: column;
    gap: 1.25rem;
  }
}
section#jobs-positions #joblist .accordion .acc_item .team_items .job-download-card.no-image {
  display: block;
}
section#jobs-positions #joblist .accordion .acc_item .team_items .job-download-card .job-download-image {
  flex: 0 0 auto;
  width: 12rem;
  max-width: 30%;
  display: block;
}
@media (max-width: 599px) {
  section#jobs-positions #joblist .accordion .acc_item .team_items .job-download-card .job-download-image {
    width: 8rem;
    max-width: 60%;
  }
}
section#jobs-positions #joblist .accordion .acc_item .team_items .job-download-card .job-download-image img {
  width: 100%;
  height: auto;
  display: block;
}
section#jobs-positions #joblist .accordion .acc_item .team_items .job-download-card .job-download-content {
  flex: 1 1 auto;
  min-width: 0;
}
section#jobs-positions #joblist .accordion .acc_item .team_items .job-download-card .job-download-headline {
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 0.8472222222rem + 0.7407407407vw, 1.375rem);
  font-weight: 400;
  margin: 0 0 0.5rem;
  letter-spacing: -0.03rem;
}
section#jobs-positions #joblist .accordion .acc_item .team_items .job-download-card .job-download-text {
  margin-bottom: 1.25rem;
}
section#jobs-positions #joblist .accordion .acc_item .team_items .job-download-card .job-download-link-wrap {
  margin: 0;
}
section#jobs-positions #joblist .accordion .acc_item .team_items .job-download-card .job-download-link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: #1a1a1a;
  text-decoration: underline;
  font-size: 1rem;
  line-height: 1.5rem;
}
section#jobs-positions #joblist .accordion .acc_item .team_items .job-download-card .job-download-link:hover {
  color: #FF0002;
  text-decoration: underline;
}
section#jobs-positions #joblist .accordion .acc_item .team_items .job-download-card .job-download-link .job-download-link-icon {
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
}
section#jobs-positions #joblist .accordion .acc_item.open {
  padding-bottom: 2rem;
}
section#jobs-positions #joblist .accordion .acc_item.open .job-accordion-toggle {
  background-image: url(/img/arrow-up-black-flat.svg);
}
section#jobs-positions #joblist .accordion .acc_item.open .team_items {
  max-height: 4000px;
}
section#jobs-positions #joblist h3.noMarginBottom {
  margin-bottom: 0;
}

#joblist .bottomText {
  font-size: 1.25rem;
  font-style: normal;
  line-height: 1.75rem;
  padding-top: 2rem;
}

#grund, #veranstaltung {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: url("/img/arrow-down-grey-icon.svg");
  background-repeat: no-repeat, repeat !important;
  background-position: right 0.7em top 50%, 0 0 !important;
  background-size: 2rem auto, 100% !important;
  border: none;
  border-bottom: 1px solid #1a1a1a;
  border-radius: 0px;
  padding: 0em 0em 0.5rem 0.35em;
  margin-bottom: 1rem;
  color: #1a1a1a;
}

.twocol210 .pretitle {
  margin-top: 0.6rem;
}
@media (max-width: 599px) {
  .twocol210 .pretitle {
    margin-top: 0;
  }
}
.twocol210 .p {
  font-weight: 400;
}

.blog h1 span {
  color: #FF0002;
}
.blog #blogposts h2 {
  margin-bottom: 4rem;
}
@media (max-width: 599px) {
  .blog #blogposts h2 {
    margin-bottom: 3rem;
  }
}
.blog .articlelist {
  grid-template-columns: 1fr 1fr 1fr;
  display: grid;
  gap: 1.5rem;
  row-gap: 3rem;
}
@media (min-width: 600px) and (max-width: 899px) {
  .blog .articlelist {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 599px) {
  .blog .articlelist {
    grid-template-columns: 1fr;
  }
}
.blog .articlelist .item:hover {
  text-decoration: none;
}
.blog .articlelist img {
  margin-bottom: 1.5rem;
}
.blog .articlelist .mainImage {
  width: 100%;
}
.blog .articlelist h3 {
  font-size: 1.125rem;
  line-height: 1.5rem; /* 133.333% */
  font-style: normal;
  font-weight: 400;
  letter-spacing: -0.0225rem;
  color: #000000;
  margin-bottom: 0.6rem;
  text-decoration: none;
}
.blog .articlelist h3:hover {
  text-decoration: none;
}
.blog .articlelist .small {
  color: #000000;
  font-size: 1rem;
  font-style: normal;
  font-weight: 300;
  line-height: 1.375rem;
}
.blog .articlelist .arrowRight {
  margin-bottom: 0;
  margin-left: 1rem;
}
.blog .articlelist a:hover {
  color: #FF0002;
}

#back {
  padding-top: 1.6rem;
  padding-bottom: 1.6rem;
}
@media (min-width: 600px) and (max-width: 899px) {
  #back .twocol {
    grid-template-columns: 1fr 1fr;
  }
}
#back .twocol div:nth-child(1) {
  display: flex;
  flex-direction: row;
  gap: 1.5rem;
  align-items: center;
  justify-content: start;
}
#back .twocol div:nth-child(1) a {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: #FF0002;
}
#back .twocol div:nth-child(2) {
  display: flex;
  flex-direction: row;
  gap: 1rem;
  align-items: center;
  justify-content: start;
}
@media (min-width: 600px) {
  #back .twocol div:nth-child(2) {
    justify-content: end;
  }
}
#back .twocol div:nth-child(2) .p {
  margin-bottom: 0;
}
#back .twocol div:nth-child(2) a {
  max-width: 2rem;
  max-height: 2rem;
}
#back .twocol div:nth-child(2) a img {
  width: 100%;
  margin: 0;
}
#back a {
  color: #000000;
}
#back a:hover {
  text-decoration: none;
}
#back .p {
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1rem;
  letter-spacing: -0.04rem;
  color: #000000;
}

.headerblog {
  background-color: #F5F5F5;
  background-repeat: no-repeat;
  background-size: auto 100%;
}
@media (min-width: 1200px) {
  .headerblog {
    height: 40rem;
  }
}
.headerblog .twocol57 {
  gap: 4rem;
  align-items: center;
}

.backArrow {
  margin-right: 0.5rem;
}

.related {
  border-top: 1px solid lightgrey;
  padding-top: 6rem;
}
.related h2 {
  margin-bottom: 4rem;
}
@media (max-width: 599px) {
  .related h2 {
    margin-bottom: 3rem;
  }
}

.post .newsdetail .twocol {
  gap: 5.5rem;
}
@media (max-width: 599px) {
  .post .newsdetail .twocol {
    gap: 3rem;
  }
}
.post .newsdetail .cite p {
  font-size: 2rem;
  font-size: clamp(2rem, 1.4444444444rem + 1.4814814815vw, 2.5rem);
  line-height: 2.5rem;
  line-height: clamp(2.5rem, 1.9444444444rem + 1.4814814815vw, 3rem);
  font-style: normal;
  font-weight: 400;
  letter-spacing: -0.14rem;
  color: #929191;
  margin-bottom: 1.5rem;
}
.post .newsdetail p, .post .newsdetail ul {
  font-size: 1.25rem;
  font-size: clamp(1.25rem, 1.25rem + 0vw, 1.25rem);
  line-height: 1.75rem;
  line-height: clamp(1.75rem, 1.4722222222rem + 0.7407407407vw, 2rem);
  margin-bottom: clamp(1.5rem, 0.06rem + 1.18vw, 2.5rem);
  font-weight: 300;
  color: #1a1a1a;
}
.post .newsdetail .author {
  font-size: 1.25rem;
  font-style: italic;
  font-weight: 300;
  line-height: 2rem; /* 160% */
  color: #929191;
}
.post .newsdetail .slider .item {
  padding: 0;
}

.g-recaptcha {
  margin-bottom: 2rem;
}

.mainNavEntry {
  padding-bottom: 2rem;
}

.red {
  color: #FF0002;
}

#footerLinks .items.grid.threecol .item {
  display: flex;
  flex-direction: column;
  aspect-ratio: unset;
  align-items: flex-start;
  justify-content: flex-start;
}
#footerLinks .items.grid.threecol .item .p {
  margin-bottom: 0.6rem;
}
#footerLinks .items.grid.threecol .item .small {
  font-size: 0.875rem;
  font-size: clamp(0.875rem, 0.7361111111rem + 0.3703703704vw, 1rem);
  line-height: 1.25rem;
  line-height: clamp(1.25rem, 1.1111111111rem + 0.3703703704vw, 1.375rem);
  color: #000;
  margin-bottom: 1rem;
}
@media (min-width: 1200px) {
  #footerLinks .items.grid.threecol .item .small {
    margin-bottom: 1.5rem;
  }
}
@media (min-width: 1200px) {
  #footerLinks .items.grid.threecol .item {
    column-gap: 3rem;
  }
}

@media (min-width: 1200px) {
  .sliderBox .fullWidthSlider .twocol {
    gap: 6rem;
  }
}

.languageContainer {
  background-color: #F5F5F5;
  width: 100%;
  max-width: unset;
  height: 0;
  position: fixed;
  z-index: 100;
  left: 0;
  overflow: hidden;
  transition: height 0.5s ease, padding-top 0.5s ease;
  padding-top: 112px;
  display: block;
  padding: 0 1.5rem;
}
@media (min-width: 900px) {
  .languageContainer {
    padding: 0 5rem;
  }
}
@media (min-width: 1200px) {
  .languageContainer {
    padding: 0 5rem;
  }
}
.languageContainer .buttonContainer {
  width: 100%;
  position: relative;
  height: 2rem;
  max-width: 71.25rem;
  margin: 0 auto;
  margin-top: 3rem;
  margin-bottom: 2rem;
}
@media (max-width: 599px) {
  .languageContainer .buttonContainer {
    margin-top: 1rem;
    margin-bottom: 2rem;
  }
}
.languageContainer.active {
  height: 100vh;
  overflow: visible;
}
@media (max-width: 599px) {
  .languageContainer.active {
    padding-top: 1rem;
  }
}
.languageContainer .languageSelector {
  grid-template-columns: 1fr 1fr;
  row-gap: 2rem;
  max-width: 71.25rem;
  margin: 0 auto;
  opacity: 0;
  transform: translateY(-20px);
  transition: opacity 0.5s ease, transform 0.5s ease;
  display: grid;
  width: 100%;
}
@media (min-width: 900px) {
  .languageContainer .languageSelector {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (max-width: 599px) {
  .languageContainer .languageSelector {
    padding-top: 0;
  }
}
.languageContainer .languageSelector.active {
  opacity: 1;
  transform: translateY(0);
}
.languageContainer .languageSelector div {
  transition: opacity 0.5s ease;
}
.languageContainer .languageSelector a {
  color: #000;
}
.languageContainer .languageSelector a:hover {
  text-decoration: none;
  color: #FF0002;
}
.languageContainer .languageSelector a.active {
  color: #FF0002;
}

.globeButton:focus {
  box-shadow: none;
}

.productGrid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 1.5rem;
}
@media (min-width: 600px) and (max-width: 899px) {
  .productGrid {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 599px) {
  .productGrid {
    grid-template-columns: 1fr;
  }
}
.productGrid .item {
  background: #F5F5F5;
  padding: 2rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.productGrid .item .button {
  background-color: #F5F5F5;
}
.productGrid .item a.serviceImage {
  display: block;
  aspect-ratio: 1/1;
  overflow: hidden;
}
.productGrid .item a.serviceImage img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.productGrid h3 {
  font-size: 1.5rem;
  font-size: clamp(1.5rem, 1.2222222222rem + 0.7407407407vw, 1.75rem);
  line-height: 1.875rem;
  line-height: clamp(1.875rem, 1.5972222222rem + 0.7407407407vw, 2.125rem);
}
@media (max-width: 599px) {
  .productGrid h3 {
    letter-spacing: -0.06rem;
  }
}

section#productCategoryIcons {
  padding: 3rem 1.5rem;
  background: #F5F5F5;
}
@media (max-width: 599px) {
  section#productCategoryIcons {
    padding: 1.5rem;
    padding-top: 0;
  }
}
section#productCategoryIcons .sliderBox {
  margin-top: 0;
  margin-bottom: 0;
}
@media (max-width: 599px) {
  section#productCategoryIcons .sliderBox {
    margin-right: -1.5rem;
  }
}
section#productCategoryIcons .swiper-wrapper {
  align-items: flex-start;
}
@media (max-width: 599px) {
  section#productCategoryIcons .categoryImage svg {
    max-height: 2rem;
  }
}
section#productCategoryIcons .productIcons.mobile:nth-of-type(7) div.active {
  color: #FF0002;
}
section#productCategoryIcons .productIcons.mobile:nth-of-type(7) div.active svg path {
  stroke: #FF0002;
}
section#productCategoryIcons .productIcons.mobile:nth-of-type(7) div.active svg rect {
  stroke: #FF0002;
  fill: none;
}
section#productCategoryIcons .categoryName {
  max-width: 140px;
  width: 100%;
  text-align: center;
  word-break: break-word;
}
section#productCategoryIcons .productIcons.mobile {
  display: flex;
  justify-content: center;
}
section#productCategoryIcons .productIcons.mobile div.active {
  color: #FF0002;
}
section#productCategoryIcons .productIcons.mobile div.active svg path {
  fill: #FF0002 !important;
}
section#productCategoryIcons .productIcons.mobile div.active svg rect {
  fill: #FF0002;
}
section#productCategoryIcons .productIcons.mobile div.active svg path {
  fill: #FF0002 !important;
}
section#productCategoryIcons .productIcons.mobile div.active svg circle, section#productCategoryIcons .productIcons.mobile div.active svg ellipse, section#productCategoryIcons .productIcons.mobile div.active svg polygon, section#productCategoryIcons .productIcons.mobile div.active svg polyline {
  fill: #FF0002 !important;
}
section#productCategoryIcons .productIcons.mobile div.active svg [class^=st], section#productCategoryIcons .productIcons.mobile div.active svg [class*=" st"], section#productCategoryIcons .productIcons.mobile div.active svg .st0, section#productCategoryIcons .productIcons.mobile div.active svg .st1, section#productCategoryIcons .productIcons.mobile div.active svg .st2, section#productCategoryIcons .productIcons.mobile div.active svg .st3 {
  fill: #FF0002 !important;
  stroke: #FF0002 !important;
}
section#productCategoryIcons .productIcons.mobile div.active svg [style*="fill:"] {
  fill: #FF0002 !important;
}
section#productCategoryIcons .productIcons.mobile a {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  color: #000;
  justify-content: center;
}
section#productCategoryIcons .productIcons.mobile a:hover {
  text-decoration: none;
}
section#productCategoryIcons .productIcons.mobile a div {
  text-align: center;
}
section#productCategoryIcons .items {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  justify-content: center;
}
section#productCategoryIcons .items .item a {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  color: #1a1a1a;
  font-size: 0.9rem;
}
section#productCategoryIcons .items .item a svg {
  height: 2.5rem;
}
section#productCategoryIcons .items .item a:hover {
  color: #FF0002;
  text-decoration: none;
}
section#productCategoryIcons .items .item a:hover svg path {
  fill: #FF0002 !important;
}
section#productCategoryIcons .items .item a:hover svg rect {
  fill: #FF0002;
}
section#productCategoryIcons .items .item a:hover svg circle, section#productCategoryIcons .items .item a:hover svg ellipse, section#productCategoryIcons .items .item a:hover svg polygon, section#productCategoryIcons .items .item a:hover svg polyline {
  fill: #FF0002;
}
section#productCategoryIcons .items .item a:hover svg [class^=st], section#productCategoryIcons .items .item a:hover svg [class*=" st"], section#productCategoryIcons .items .item a:hover svg .st0, section#productCategoryIcons .items .item a:hover svg .st1, section#productCategoryIcons .items .item a:hover svg .st2, section#productCategoryIcons .items .item a:hover svg .st3 {
  fill: #FF0002 !important;
  stroke: #FF0002 !important;
}
section#productCategoryIcons .items .item a:hover svg [style*="fill:"] {
  fill: #FF0002 !important;
}
section#productCategoryIcons .items .item a:hover img[src$=".svg"] {
  filter: invert(15%) sepia(97%) saturate(7463%) hue-rotate(1deg) brightness(99%) contrast(118%);
}
section#productCategoryIcons .items .item:nth-child(7) a:hover svg rect {
  fill: none;
}
section#productCategoryIcons .items .item:nth-child(7).active svg rect {
  fill: none;
}
section#productCategoryIcons .items .item.active a {
  color: #FF0002;
}
section#productCategoryIcons .items .item.active svg path {
  fill: #FF0002 !important;
}
section#productCategoryIcons .items .item.active svg rect-fill-override > rect, section#productCategoryIcons .items .item.active svg .rect-stroke-override > rect, section#productCategoryIcons .items .item.active svg .path-stroke-override > path {
  fill: #FF0002;
}
section#productCategoryIcons .items .item.active svg [class^=st], section#productCategoryIcons .items .item.active svg [class*=" st"], section#productCategoryIcons .items .item.active svg .st0, section#productCategoryIcons .items .item.active svg .st1, section#productCategoryIcons .items .item.active svg .st2, section#productCategoryIcons .items .item.active svg .st3 {
  fill: #FF0002 !important;
  stroke: #FF0002 !important;
}
section#productCategoryIcons .items .item.active svg circle, section#productCategoryIcons .items .item.active svg ellipse, section#productCategoryIcons .items .item.active svg polygon, section#productCategoryIcons .items .item.active svg polyline {
  fill: #FF0002;
}
section#productCategoryIcons .items .item.active svg [style*="fill:"] {
  fill: #FF0002 !important;
}
section#productCategoryIcons .items .item.active svg rect {
  fill: #FF0002;
}
section#productCategoryIcons .items .item.active a img[src$=".svg"] {
  filter: invert(15%) sepia(97%) saturate(7463%) hue-rotate(1deg) brightness(99%) contrast(118%);
}
@media (min-width: 600px) {
  section#productCategoryIcons .sliderBox .swiper-button-prev,
  section#productCategoryIcons .sliderBox .swiper-button-next,
  section#productCategoryIcons .sliderBox .swiper-pagination {
    display: none !important;
  }
}

.productInfo.items.grid.threeCol.infoText b {
  font-size: 1rem;
  font-size: clamp(1rem, 0.8611111111rem + 0.3703703704vw, 1.125rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 1.2361111111rem + 0.3703703704vw, 1.5rem);
  margin-bottom: 0.75rem;
  font-weight: 400;
  letter-spacing: -0.0225rem;
}

section#productCategoryInfo .topcol {
  margin-bottom: 4rem;
}
@media (max-width: 599px) {
  section#productCategoryInfo .topcol {
    margin-bottom: 3rem;
  }
}
section#productCategoryInfo .p {
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 0.9861111111rem + 0.3703703704vw, 1.25rem);
  line-height: 1.625rem;
  line-height: clamp(1.625rem, 1.2083333333rem + 1.1111111111vw, 2rem);
  color: #000;
}
section#productCategoryInfo .items.productGrid .item {
  gap: 0;
}
section#productCategoryInfo .items.productGrid .item .productImg {
  padding-bottom: 1.5rem;
}

.items.productInfo {
  display: grid;
}
@media (min-width: 900px) {
  .items.productInfo.twoCol {
    grid-template-columns: 1fr 1fr;
  }
}
.items.productInfo .item {
  margin-bottom: 1.5rem;
}
.items.productInfo .item p {
  margin: 0;
  color: #929191;
  overflow-wrap: break-word;
  word-break: break-word;
  hyphens: auto;
}

article.productInfo {
  margin-bottom: 3rem;
}

.slider.productImageGallery .item {
  display: flex;
  justify-content: center;
}
.slider.productImageGallery .item img {
  margin-bottom: 0;
}

section#accordionInfoheader .img {
  max-height: 20rem;
  overflow: hidden;
}
section#accordionInfoheader .p {
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 0.9861111111rem + 0.3703703704vw, 1.25rem);
  line-height: 1.625rem;
  line-height: clamp(1.625rem, 1.2083333333rem + 1.1111111111vw, 2rem);
  color: #000;
}

section#productCatalog .p {
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 0.9861111111rem + 0.3703703704vw, 1.25rem);
  line-height: 1.625rem;
  line-height: clamp(1.625rem, 1.2083333333rem + 1.1111111111vw, 2rem);
  color: #000;
}

#productinfoheader p {
  overflow-wrap: break-word;
  word-break: break-word;
  hyphens: auto;
}
#productinfoheader .p {
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 0.9861111111rem + 0.3703703704vw, 1.25rem);
  line-height: 1.625rem;
  line-height: clamp(1.625rem, 1.2083333333rem + 1.1111111111vw, 2rem);
  font-weight: 300;
  color: #000;
}

section#accordionInfo article .topcol {
  border-bottom: 1px solid #E8E8E8;
}
section#accordionInfo article .topcol .accordionItems {
  /* Hide bullets for li elements that only contain nested ul */
  /* Or more broadly, hide bullets for any li containing ul */
  /* Ensure nested ul maintains proper styling */
}
section#accordionInfo article .topcol .accordionItems .bullet li:has(> ul):not(:has(text)) {
  list-style-type: none;
}
section#accordionInfo article .topcol .accordionItems .bullet li:has(ul) {
  list-style-type: none;
}
section#accordionInfo article .topcol .accordionItems .bullet ul ul {
  margin-top: 0;
  margin-bottom: 0;
}
section#accordionInfo article .topcol .accordionItems .item {
  border-bottom: 1px solid #E8E8E8;
}
section#accordionInfo article .topcol .accordionItems .small {
  display: none;
}
section#accordionInfo article .topcol h3 {
  background: url(/img/arrow-down-black-flat.svg) no-repeat center right;
  cursor: pointer;
  padding-bottom: 2.5rem;
  padding-top: 2.5rem;
  padding-right: 4rem;
  font-size: 1.5rem;
  font-size: clamp(1.5rem, 1.2777777778rem + 0.5925925926vw, 1.7rem);
  line-height: 1.7rem;
  line-height: clamp(1.7rem, 1.3666666667rem + 0.8888888889vw, 2rem);
  letter-spacing: -0.085rem;
}
@media (max-width: 599px) {
  section#accordionInfo article .topcol h3 {
    background-size: 16px 16px;
    padding-right: 1rem;
  }
}
section#accordionInfo article .topcol h3.active {
  background: url(/img/arrow-up-black-flat.svg) no-repeat center right;
}
@media (max-width: 599px) {
  section#accordionInfo article .topcol h3.active {
    background-size: 16px 16px;
    padding-right: 1rem;
  }
}
section#accordionInfo article .topcol h3:not(:first-of-type) {
  margin-top: 1.75rem;
}
@media (max-width: 599px) {
  section#accordionInfo article .topcol h3:not(:first-of-type) {
    margin-bottom: 1.25rem;
  }
}
section#accordionInfo article .topcol .productInfo {
  margin-bottom: 1rem;
}
@media (min-width: 600px) and (max-width: 899px) {
  section#accordionInfo article .topcol .productInfo {
    grid-template-columns: 1fr 1fr;
  }
}
section#accordionInfo article .topcol .small {
  margin-bottom: 2.5rem;
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 0.9861111111rem + 0.3703703704vw, 1.25rem);
  line-height: 1.625rem;
  line-height: clamp(1.625rem, 1.2083333333rem + 1.1111111111vw, 2rem);
}
@media (max-width: 599px) {
  section#accordionInfo article .topcol .small {
    margin-bottom: 1.5rem;
  }
}
section#accordionInfo article .topcol .teaser {
  margin-bottom: 3rem;
}
@media (max-width: 599px) {
  section#accordionInfo article .topcol .teaser {
    margin-bottom: 2rem;
  }
}
section#accordionInfo article .topcol .closed {
  display: none;
}

article.references .img {
  display: block;
  aspect-ratio: 3/2;
}
article.references .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
article.references .small {
  overflow-wrap: break-word;
  word-break: break-word;
}

.referenceslider .item {
  aspect-ratio: 1/1;
  padding: 0;
}
.referenceslider .item a {
  display: block;
  height: 100%;
  width: 100%;
}
.referenceslider .item a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.referenceproductslider .item {
  background: #F5F5F5;
}
.referenceproductslider .item a {
  display: block;
  aspect-ratio: 1/1;
  overflow: hidden;
  margin-bottom: 1rem;
}
.referenceproductslider .item a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

section.referenceheader {
  min-height: 0;
  height: 30rem;
  background-size: auto 100%;
  background-position: top -30rem;
}

@media (max-width: 599px) {
  body.locations main section:nth-of-type(even) .twocol > div:first-child {
    order: 2;
  }
  body.locations main section:nth-of-type(even) .twocol > div:last-child {
    order: 1;
  }
}

.card {
  border: none;
}
.card a {
  color: #929191;
}

.dealerlist {
  max-height: 600px;
}

#clearSearch {
  background: #F5F5F5;
}

#resultsCount {
  padding: 0 0.5rem;
}

#dealerSearchForm input {
  background: #F5F5F5;
  border: none;
}
#dealerSearchForm #locateButton {
  background: #F5F5F5;
  border: none;
  padding: 0.5rem 0.75rem;
  color: #1a1a1a;
  transition: all 0.3s ease;
}
#dealerSearchForm #locateButton:hover {
  background: gainsboro;
  color: #1a1a1a;
}
#dealerSearchForm #locateButton:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
#dealerSearchForm #locateButton svg, #dealerSearchForm #locateButton img {
  transition: all 0.3s ease;
}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
#dealerList .card {
  background: #F5F5F5;
  cursor: pointer;
}
#dealerList .card.dealer-highlight {
  background-color: #e8e8e8;
}

.mb4 {
  margin-bottom: 4rem;
}
@media (max-width: 599px) {
  .mb4 {
    margin-bottom: 2rem;
  }
}

section#CardList {
  position: relative;
  border-bottom: none;
  padding-bottom: 0;
}
section#CardList h2 {
  margin-bottom: 3rem;
}
@media (min-width: 900px) {
  section#CardList h2 {
    margin-bottom: 4rem;
  }
}

section#CardList::after {
  content: "";
  display: block;
  margin: 0 auto;
  width: 100%;
  max-width: 71.25rem;
  border-bottom: 1px solid #E8E8E8;
  margin-top: 6.5rem;
}
@media (min-width: 600px) and (max-width: 899px) {
  section#CardList::after {
    margin-top: 4.5rem;
  }
}
@media (max-width: 599px) {
  section#CardList::after {
    margin-top: 4rem;
  }
}

.clickAbleCard {
  position: relative;
}
.clickAbleCard:hover .iteminner img, .clickAbleCard:focus-within .iteminner img {
  transform: scale(1.07);
}
.clickAbleCard .iteminner {
  overflow: hidden;
  position: relative;
}
.clickAbleCard .iteminner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 0.3) 50%, rgba(0, 0, 0, 0.6) 100%);
  z-index: 1;
  pointer-events: none;
}
.clickAbleCard .iteminner img {
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  display: block;
  aspect-ratio: 1;
  object-fit: cover;
  width: 100%;
}
.clickAbleCard .iteminner .button {
  position: absolute;
  bottom: 2rem;
  left: 2rem;
  background-color: transparent;
  color: white;
  height: 2rem;
  padding-top: 0;
  padding-bottom: 0;
  z-index: 2;
}
@media (max-width: 599px) {
  .clickAbleCard .iteminner .button {
    bottom: 1rem;
    left: 1rem;
    padding: 0.7rem 1.2rem 0.7rem 3rem;
    max-width: 90%;
    justify-content: flex-start;
  }
}

@media (max-width: 599px) {
  .sliderMobile,
  article > .swiper.mobile {
    margin-right: -1.5rem;
  }
}

.EventSliderModul .slider {
  margin-top: 3.5rem;
}

body.products #sliderCutRight .button.halfArrowed {
  margin-top: auto;
}
body.products #sliderCutRight .teaser {
  margin-bottom: 4rem;
}
@media (max-width: 599px) {
  body.products #sliderCutRight .teaser {
    margin-bottom: 3rem;
  }
}

section.productDetail {
  height: 31.5rem;
  background-size: 50% auto;
}
section.productDetail h1 {
  margin-bottom: 0;
}

section#ImageBlockBackground {
  background-position: center;
  height: 19rem;
}
@media (min-width: 600px) {
  section#ImageBlockBackground {
    height: 30rem;
  }
}

section#accordionInfo h2 {
  margin-bottom: 2.5rem;
}
@media (min-width: 1200px) {
  section#accordionInfo h2 {
    margin-bottom: 3rem;
  }
}
section#accordionInfo .grid .item {
  display: flex;
  flex-direction: column;
  align-content: flex-start;
  align-items: flex-start;
  justify-content: flex-start;
  aspect-ratio: unset;
  padding: 2rem;
  background-color: #F5F5F5;
}
section#accordionInfo .grid .item img {
  margin-bottom: 1.5rem;
}
section#accordionInfo .grid .item .p {
  font-size: 1rem;
  font-size: clamp(1rem, 0.8611111111rem + 0.3703703704vw, 1.125rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 1.2361111111rem + 0.3703703704vw, 1.5rem);
  color: black;
  font-weight: 400;
  margin-bottom: 0.75rem;
  letter-spacing: -0.0225rem;
}
section#accordionInfo .grid .item .small {
  color: #929191;
  letter-spacing: -0.0225rem;
  line-height: 1.375;
}

#textGridInfo .sliderBox .p {
  color: black;
}
#textGridInfo.ordered .teaser {
  margin-bottom: 4rem;
}
@media (max-width: 599px) {
  #textGridInfo.ordered .teaser {
    margin-bottom: 3rem;
  }
}
#textGridInfo.ordered .infoText {
  margin-bottom: 0;
}
#textGridInfo h2 {
  margin-bottom: 4rem;
}
@media (max-width: 599px) {
  #textGridInfo h2 {
    margin-bottom: 2rem;
  }
}
#textGridInfo .grid .item {
  display: flex;
  flex-direction: column;
  align-content: flex-start;
  align-items: flex-start;
  justify-content: flex-start;
  aspect-ratio: unset;
  padding: 2rem;
  background-color: #fff;
}
#textGridInfo .grid .item img {
  margin-bottom: 1.5rem;
}
#textGridInfo .grid .item .p {
  font-size: 1rem;
  font-size: clamp(1rem, 0.8611111111rem + 0.3703703704vw, 1.125rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 1.2361111111rem + 0.3703703704vw, 1.5rem);
  color: black;
  font-weight: 400;
  margin-bottom: 0.75rem;
  letter-spacing: -0.0225rem;
}
#textGridInfo .grid .item .small {
  color: #929191;
  letter-spacing: -0.0225rem;
  line-height: 1.375;
}
#textGridInfo .grid {
  margin-bottom: 4rem;
}
@media (max-width: 599px) {
  #textGridInfo .grid {
    margin-bottom: 3rem;
  }
}
#textGridInfo h3 {
  margin-bottom: 1.5rem;
}
@media (max-width: 599px) {
  #textGridInfo h3 {
    margin-bottom: 1rem;
  }
}
#textGridInfo .teaser {
  margin-bottom: 0;
}
#textGridInfo .moduleFootnote {
  max-width: 71.25rem;
  margin: 0 auto;
  padding-top: 2rem;
}
#textGridInfo .moduleFootnote p {
  color: black;
  font-size: 0.875rem;
  line-height: 1.375;
  margin: 0;
}

.play-button {
  max-width: 6rem;
  max-height: 6rem;
  width: 100%;
}
@media (max-width: 599px) {
  .play-button {
    max-width: 3rem;
  }
}

.sliderBox {
  margin-bottom: 0;
}

.headerImageContainer {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-size: cover;
  backdrop-filter: none;
  max-width: 45vw;
  height: 100%;
  width: 100%;
  background-repeat: no-repeat;
  background-position: left center;
}
@media (max-width: 1580px) {
  .headerImageContainer {
    background-position: right;
  }
}

section#textAccordionInfo h2 {
  margin-bottom: 4rem;
}
@media (max-width: 599px) {
  section#textAccordionInfo h2 {
    margin-bottom: 3rem;
  }
}
section#textAccordionInfo article .topcol h3 {
  background: url(/img/arrow-up-black-down.svg) no-repeat center right;
  cursor: pointer;
}
section#textAccordionInfo article .topcol .closed {
  display: none;
}

#textGridNumbered .grid .item {
  display: flex;
  flex-direction: column;
  align-content: flex-start;
  align-items: flex-start;
  justify-content: flex-start;
  aspect-ratio: unset;
  padding: 2rem;
  background-color: #F5F5F5;
}
#textGridNumbered .grid .item .p {
  font-size: 1rem;
  font-size: clamp(1rem, 0.8611111111rem + 0.3703703704vw, 1.125rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 1.2361111111rem + 0.3703703704vw, 1.5rem);
  color: black;
  font-weight: 400;
  margin-bottom: 0.75rem;
  letter-spacing: -0.0225rem;
}

#textGridNumbered .teaser {
  margin-bottom: 4rem;
}
@media (max-width: 599px) {
  #textGridNumbered .teaser {
    margin-bottom: 3.5rem;
  }
}
#textGridNumbered .sliderBox .swiper-slide {
  background: #F5F5F5;
}

.mb3 {
  margin-bottom: 3rem;
}
@media (max-width: 599px) {
  .mb3 {
    margin-bottom: 1rem;
  }
}

@media (max-width: 900px) {
  .mainnav .subnav {
    position: fixed;
    top: 60px;
    right: 0;
    width: 100vw;
    max-width: 100vw;
    height: 100dvh;
    background: #F5F5F5;
    z-index: 1100;
    transform: translateX(100%);
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    display: block;
    overflow-y: auto;
    padding: 2em 1.2em 1em 1.2em;
    pointer-events: none;
  }
  .mainnav .subnav.active {
    transform: translateX(0);
    pointer-events: auto;
  }
  .mainnav .subnav .subnav-title {
    font-size: 1.75rem;
    margin-top: 0.1rem;
    margin-left: 2rem;
    display: block;
  }
  .mainnav .subnav .back-btn {
    position: absolute;
    left: 1.5rem;
    top: 2rem;
    z-index: 1200;
    cursor: pointer;
    padding: 0;
    line-height: 1;
    display: flex;
  }
  .mainnav .subnav .back-btn img {
    width: 2rem;
    height: 2rem;
  }
  header {
    z-index: 1201;
  }
}
@media (min-width: 1200px) {
  .mainnav .subnav .back-btn, .mainnav .subnav .subnav-title {
    display: none;
  }
}

.tabs .tab-header {
  padding-top: 4rem;
  padding-bottom: 4rem;
}
@media (max-width: 599px) {
  .tabs .tab-header {
    padding-top: 2rem;
    padding-bottom: 1rem;
  }
}

.tab-headers {
  display: flex;
  margin-bottom: 1em;
  justify-content: center;
  background-color: #F5F5F5;
}

.tab-header {
  background: none;
  border: none;
  outline: none;
  padding: 1em 1.5em;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 0.5em;
  font-size: 1em;
  border-bottom: 2px solid transparent;
  transition: border-color 0.2s;
  flex-direction: column;
  color: black;
}

.tab-header:hover span {
  color: #FF0002;
}
.tab-header:hover svg path {
  fill: #FF0002 !important;
}
.tab-header:hover svg .st0, .tab-header:hover svg .st1, .tab-header:hover svg .st2, .tab-header:hover svg .st3 {
  fill: #FF0002 !important;
  stroke: #FF0002 !important;
}
.tab-header:hover svg rect,
.tab-header:hover svg circle,
.tab-header:hover svg ellipse,
.tab-header:hover svg polygon,
.tab-header:hover svg polyline {
  fill: #FF0002 !important;
  stroke: #FF0002 !important;
}
.tab-header:hover svg [style*="fill:"] {
  fill: #FF0002 !important;
}
.tab-header:hover svg [style*="stroke:"] {
  stroke: #FF0002 !important;
}
.tab-header:hover img[src$=".svg"] {
  filter: invert(15%) sepia(97%) saturate(7463%) hue-rotate(1deg) brightness(99%) contrast(118%);
}

.tab-header.active span {
  color: #FF0002;
}
.tab-header.active svg path {
  fill: #FF0002 !important;
}
.tab-header.active svg .st0, .tab-header.active svg .st1, .tab-header.active svg .st2, .tab-header.active svg .st3 {
  fill: #FF0002 !important;
  stroke: #FF0002 !important;
}
.tab-header.active svg rect,
.tab-header.active svg circle,
.tab-header.active svg ellipse,
.tab-header.active svg polygon,
.tab-header.active svg polyline {
  fill: #FF0002 !important;
  stroke: #FF0002 !important;
}
.tab-header.active svg [style*="fill:"] {
  fill: #FF0002 !important;
}
.tab-header.active svg [style*="stroke:"] {
  stroke: #FF0002 !important;
}
.tab-header.active img[src$=".svg"] {
  filter: invert(15%) sepia(97%) saturate(7463%) hue-rotate(1deg) brightness(99%) contrast(118%);
}

.svg-recolor:hover svg path, .svg-recolor.active svg path {
  fill: #FF0002 !important;
}
.svg-recolor:hover svg .st0, .svg-recolor:hover svg .st1, .svg-recolor:hover svg .st2, .svg-recolor:hover svg .st3, .svg-recolor.active svg .st0, .svg-recolor.active svg .st1, .svg-recolor.active svg .st2, .svg-recolor.active svg .st3 {
  fill: #FF0002 !important;
  stroke: #FF0002 !important;
}
.svg-recolor:hover svg rect, .svg-recolor:hover svg circle, .svg-recolor:hover svg ellipse, .svg-recolor:hover svg polygon, .svg-recolor:hover svg polyline, .svg-recolor.active svg rect, .svg-recolor.active svg circle, .svg-recolor.active svg ellipse, .svg-recolor.active svg polygon, .svg-recolor.active svg polyline {
  fill: #FF0002 !important;
  stroke: #FF0002 !important;
}
.svg-recolor:hover svg [style*="fill:"], .svg-recolor.active svg [style*="fill:"] {
  fill: #FF0002 !important;
}
.svg-recolor:hover svg [style*="stroke:"], .svg-recolor.active svg [style*="stroke:"] {
  stroke: #FF0002 !important;
}

.svg-recolor-img:hover img[src$=".svg"], .svg-recolor-img.active img[src$=".svg"] {
  filter: invert(15%) sepia(97%) saturate(7463%) hue-rotate(1deg) brightness(99%) contrast(118%);
}

.tab-bodies {
  width: 100%;
}

.tab-body {
  display: none;
  padding: 0;
}

.tab-body.active {
  display: block;
}

.tab-header img {
  width: 24px;
  height: 24px;
}

.services.expert-opinion-page section.header {
  background: linear-gradient(to top, #e9e9e9 0%, #f5f5f5 100%) !important;
}

#CTARichTextImageBlockTwo .p {
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 0.9861111111rem + 0.3703703704vw, 1.25rem);
  line-height: 1.625rem;
  line-height: clamp(1.625rem, 1.2083333333rem + 1.1111111111vw, 2rem);
  font-weight: 300;
}

.events #events .teaser {
  margin-bottom: 12rem;
}
@media (max-width: 599px) {
  .events #events .teaser {
    margin-bottom: 4rem;
  }
}
@media (min-width: 600px) and (max-width: 899px) {
  .events #events .teaser {
    margin-bottom: 6rem;
  }
}
.events .mobile.headerArea {
  padding-bottom: 4rem;
}
.events .mobile.headerArea .teaser {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.events .mobile.headerArea .button {
  margin-right: 1.5rem;
  margin-left: 1.5rem;
  width: unset;
}
.events #events.light .item.swiper-slide {
  background: #F5F5F5;
}

@media (min-width: 600px) {
  .about .header, .about .productSubPage, .references .header, .references .productSubPage, .news .header, .news .productSubPage, .products .header, .products .productSubPage {
    min-height: 31.25rem;
  }
}

@media (max-width: 599px) {
  .productSubPage {
    padding-bottom: 4rem !important;
  }
}

@media (min-width: 600px) {
  .about #sliderCutRight .teaser {
    max-width: 80%;
  }
}

.about.historie #sliderCutRight .swiper-slide.item, .about.historie-at #sliderCutRight .swiper-slide.item, .about.history #sliderCutRight .swiper-slide.item, .about.historie-ch #sliderCutRight .swiper-slide.item, .about.historie-cz #sliderCutRight .swiper-slide.item, .about.toertenelem #sliderCutRight .swiper-slide.item, .about.historia #sliderCutRight .swiper-slide.item {
  background-color: #F5F5F5;
}

.references .teaser {
  margin-bottom: 2rem;
}
.references .header .mobile, .references .header .tablet {
  padding-bottom: 4rem;
}
.references .header img {
  margin-bottom: 0;
}
.references article.references .twocol {
  align-items: center;
  gap: 5.5rem;
}
@media (max-width: 599px) {
  .references article.references .twocol {
    gap: 3rem;
  }
}
@media (max-width: 900px) {
  .references section img,
  .references main img,
  .references .content img {
    margin-bottom: 3rem;
  }
}

#RichTextImageBlock .twocol, #CTARichTextImageBlockOne .twocol {
  align-items: center;
}

.references .twocol:not(.twocol210) {
  align-items: center;
}
.references #textGridInfo .item {
  background-color: #F5F5F5;
}
.references .sliderBox .sliderFullImages .item a {
  aspect-ratio: 1;
}

section#RichTextBlock.dark {
  padding-bottom: 0;
}
section#RichTextBlock.dark:after {
  content: "";
  display: block;
  margin: 0 auto;
  width: 100%;
  max-width: 71.25rem;
  border-bottom: 1px solid #E8E8E8;
  margin-top: 6.5rem;
}
@media (min-width: 600px) and (max-width: 899px) {
  section#RichTextBlock.dark:after {
    margin-top: 4.5rem;
  }
}
@media (max-width: 599px) {
  section#RichTextBlock.dark:after {
    margin-top: 4rem;
  }
}
section#RichTextBlock.dark p {
  color: #fff;
}

section#textGridInfo.dark .teaser {
  color: #fff;
}
section#textGridInfo.dark .items.grid.fourCol .item {
  padding-top: 0;
  padding-left: 0;
  border-top-right-radius: 4rem;
}
section#textGridInfo.dark .items.grid.fourCol .item .p, section#textGridInfo.dark .items.grid.fourCol .item .small {
  padding-left: 2rem;
}
section#textGridInfo.dark .items.grid.fourCol .item .small {
  font-weight: 300;
  color: black;
  font-size: 0.875rem;
  font-size: clamp(0.875rem, 0.7361111111rem + 0.3703703704vw, 1rem);
  line-height: 1.25rem;
  line-height: clamp(1.25rem, 1.1111111111rem + 0.3703703704vw, 1.375rem);
}
section#textGridInfo.dark .items.grid.fourCol .item .small p {
  padding-left: 2rem;
  background-image: url("/img/arrow-red-whitebg.svg");
  background-position: left top;
  background-repeat: no-repeat;
}

.about.ausbildung section#sliderCutRight.Zertifikate, .about.education section#sliderCutRight.Zertifikate {
  background-image: url("/img/background-zertifikate.webp");
  background-size: cover;
}
@media (max-width: 599px) {
  .about.ausbildung section#sliderCutRight.Zertifikate, .about.education section#sliderCutRight.Zertifikate {
    background-image: unset;
  }
}
.about.ausbildung section#sliderCutRight.Zertifikate.dark:not(.quotes) .swiper-wrapper, .about.education section#sliderCutRight.Zertifikate.dark:not(.quotes) .swiper-wrapper {
  margin-left: 0;
}
.about.ausbildung section#sliderCutRight.Zertifikate.dark:not(.quotes) h2, .about.education section#sliderCutRight.Zertifikate.dark:not(.quotes) h2 {
  color: #fff;
}
.about.ausbildung section#sliderCutRight.Zertifikate.dark:not(.quotes) .sliderBox .item, .about.education section#sliderCutRight.Zertifikate.dark:not(.quotes) .sliderBox .item {
  background-color: transparent;
  max-height: 370px;
}

section#DarkAccordion h2, section#DarkAccordion .p, section#DarkAccordion .teaser {
  color: #fff;
}
section#DarkAccordion h3, section#DarkAccordion h4 {
  margin-bottom: 0.75rem;
}
section#DarkAccordion .teaser {
  margin-bottom: 4rem;
}
section#DarkAccordion .textContainer, section#DarkAccordion .tabTextSmall {
  padding-right: 1rem !important;
}
section#DarkAccordion .button {
  margin-right: 1rem !important;
  width: unset !important;
}
section#DarkAccordion .tab-container {
  display: flex;
}
section#DarkAccordion .tab-list {
  background: #000;
  color: #fff;
  width: 50%;
  display: flex;
  flex-direction: column;
  padding: 0;
  border-right: 1px solid #222;
}
section#DarkAccordion .tab {
  background: none;
  border: none;
  color: #fff;
  padding: 2rem 2rem;
  text-align: left;
  font-size: 1rem;
  font-size: clamp(1rem, 0.7777777778rem + 0.5925925926vw, 1.2rem);
  line-height: 1.5rem;
  cursor: pointer;
  outline: none;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  transition: background 0.2s;
  hyphens: auto;
  overflow-wrap: break-word;
  word-break: break-word;
}
section#DarkAccordion .tab .icon {
  font-size: 1.5rem;
  margin-left: 1rem;
}
section#DarkAccordion .tab:not(.active):hover {
  background: #111;
}
section#DarkAccordion .tab.active {
  background: #fff;
  color: #000;
  font-weight: bold;
}
section#DarkAccordion .tab-content {
  width: 50%;
  flex: 1;
  background: #fff;
  padding: 0 0 4rem 4rem;
  overflow-y: auto;
}
section#DarkAccordion .tab-content .teaser {
  color: #000;
  font-weight: 300;
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 0.9861111111rem + 0.3703703704vw, 1.25rem);
  line-height: 1.875rem;
}
section#DarkAccordion .tab-content .textContainer {
  padding-right: 4rem;
}
section#DarkAccordion .tab-panel {
  display: none;
}
section#DarkAccordion .tab-panel.active {
  display: block;
}
section#DarkAccordion .tab-image {
  max-width: 100%;
  height: auto;
  margin-bottom: 2rem;
}
section#DarkAccordion .apply-btn {
  margin-top: 2rem;
  background: #f00;
  color: #fff;
  border: none;
  padding: 1rem 2rem;
  font-size: 1.1rem;
  font-size: clamp(1.1rem, 0.9888888889rem + 0.2962962963vw, 1.2rem);
  border-radius: 0.3rem;
  cursor: pointer;
  transition: background 0.2s;
}
section#DarkAccordion .apply-btn:hover {
  background: #c00;
}
section#DarkAccordion .tabTextSmall {
  margin-bottom: 2rem;
}
section#DarkAccordion .tabTextSmall p {
  padding-left: 2rem;
  background: url("/img/arrow-red-whitebg.svg") left top no-repeat;
  font-size: 1rem;
  font-size: clamp(1rem, 1rem + 0vw, 1rem);
  line-height: 1.375rem;
  letter-spacing: -0.0225rem;
  color: #000;
  margin-bottom: 0.5rem;
}
section#DarkAccordion .tab-block {
  display: none;
}
@media (max-width: 599px) {
  section#DarkAccordion {
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }
  section#DarkAccordion .pretitle, section#DarkAccordion h2, section#DarkAccordion .teaser {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  section#DarkAccordion .teaser {
    margin-bottom: 3rem;
  }
  section#DarkAccordion .textContainer .teaser {
    color: #000;
  }
  section#DarkAccordion .textContainer, section#DarkAccordion .tabTextSmall {
    padding-right: 0 !important;
  }
  section#DarkAccordion .button {
    margin-right: 0 !important;
    width: 100% !important;
  }
  section#DarkAccordion .tabTextSmall p {
    padding-left: 1.5rem;
    background-size: 1rem auto;
    font-size: 1rem;
    font-size: clamp(1rem, 1rem + 0vw, 1rem);
    line-height: 1.4rem;
  }
  section#DarkAccordion .tab-container {
    flex-direction: column;
    display: block;
  }
  section#DarkAccordion .tab-container img {
    margin-bottom: 2rem;
  }
  section#DarkAccordion .tab-list, section#DarkAccordion .tab-content {
    display: none;
  }
  section#DarkAccordion .tab-block {
    display: block;
    border-bottom: 1px solid #222;
    background: #fff;
  }
  section#DarkAccordion .tab {
    width: 100%;
    background: #000;
    color: #fff;
    padding: 1.5rem 1rem;
    font-size: 1.1rem;
    font-size: clamp(1.1rem, 0.9888888889rem + 0.2962962963vw, 1.2rem);
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    border: none;
    border-radius: 0;
    cursor: pointer;
    outline: none;
    transition: background 0.2s;
    font-weight: normal;
    text-align: left;
  }
  section#DarkAccordion .tab .icon {
    font-size: 1.5rem;
    margin-left: 1rem;
  }
  section#DarkAccordion .tab.active,
  section#DarkAccordion .tab-block.active .tab {
    background: #fff;
    color: #000;
    font-weight: bold;
  }
  section#DarkAccordion .tab-panel {
    display: none;
    background: #fff;
    padding: 1rem 1rem 2rem 1rem;
  }
  section#DarkAccordion .tab-block.active .tab-panel {
    display: block;
  }
}

.ausbildung section#videoFullScreen h2, .karriere section#videoFullScreen h2, .studierende section#videoFullScreen h2, .education section#videoFullScreen h2, .career section#videoFullScreen h2 {
  color: #fff;
}
.ausbildung section#sliderCutRight:not(.quotes) .item, .karriere section#sliderCutRight:not(.quotes) .item, .studierende section#sliderCutRight:not(.quotes) .item, .education section#sliderCutRight:not(.quotes) .item, .career section#sliderCutRight:not(.quotes) .item {
  aspect-ratio: 1;
}

section.dark {
  background: #000;
}
section.dark h2, section.dark h3, section.dark h4, section.dark h5, section.dark h6, section.dark .teaser, section.dark .p, section.dark .pretitle {
  color: #fff;
}

#sliderCutRight.quotes h2, #sliderCutRight.quotes .pretitle {
  color: #fff;
}
#sliderCutRight.quotes img {
  margin-bottom: 0;
  margin-top: auto;
}
#sliderCutRight.quotes .p {
  font-size: 0.875rem;
  font-size: clamp(0.875rem, 0.7361111111rem + 0.3703703704vw, 1rem);
  line-height: 1.25rem;
  line-height: clamp(1.25rem, 1.1111111111rem + 0.3703703704vw, 1.375rem);
  font-weight: 300;
  margin-bottom: 1rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  color: #929191;
}
#sliderCutRight.quotes .p.quoteLine {
  font-size: 1rem;
  font-size: clamp(1rem, 0.8611111111rem + 0.3703703704vw, 1.125rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 1.2361111111rem + 0.3703703704vw, 1.5rem);
  letter-spacing: -0.0225rem;
  color: black;
  margin-bottom: 0;
}
#sliderCutRight.quotes .pquoteSubline {
  font-size: 0.875rem;
  font-size: clamp(0.875rem, 0.7361111111rem + 0.3703703704vw, 1rem);
  line-height: 1.25rem;
  line-height: clamp(1.1375rem, 1.375rem + -0.3333333333vw, 1.25rem);
  color: black;
}
#sliderCutRight.quotes .swiper-button-next::after {
  content: url(/img/arrow-right-white-new.svg);
}
#sliderCutRight.quotes .swiper-button-prev::after {
  content: url(/img/arrow-left-white-new.svg);
}
#sliderCutRight.quotes .item.swiper-slide {
  padding-bottom: 0;
  padding-left: 0;
  padding-right: 0;
  border-bottom-left-radius: 8rem;
  background-color: #fff;
}

#sliderCutRight.galerie {
  background-image: unset !important;
  padding-bottom: 0;
}
@media (min-width: 600px) {
  #sliderCutRight.galerie h2 {
    max-width: 70% !important;
    color: #fff;
  }
}
#sliderCutRight.galerie .swiper-button-next::after {
  content: url(/img/arrow-right-white-new.svg);
}
#sliderCutRight.galerie .swiper-button-prev::after {
  content: url(/img/arrow-left-white-new.svg);
}
#sliderCutRight.galerie:after {
  content: "";
  display: block;
  margin: 0 auto;
  width: 100%;
  max-width: 71.25rem;
  border-bottom: 1px solid #E8E8E8;
  margin-top: 6.5rem;
}
@media (min-width: 600px) and (max-width: 899px) {
  #sliderCutRight.galerie:after {
    margin-top: 4.5rem;
  }
}
@media (max-width: 599px) {
  #sliderCutRight.galerie:after {
    margin-top: 4rem;
  }
}

.about #CardList img {
  opacity: 0.6;
}
.about #textGridInfo .sliderBox .item {
  padding-top: 0;
  padding-left: 0;
  border-top-right-radius: 4rem;
}
.about #textGridInfo .sliderBox .item .p, .about #textGridInfo .sliderBox .item .small {
  padding-left: 2rem;
}
.about #textGridInfo .sliderBox .item .small {
  font-weight: 300;
  color: black;
  font-size: 0.875rem;
  font-size: clamp(0.875rem, 0.7361111111rem + 0.3703703704vw, 1rem);
  line-height: 1.25rem;
  line-height: clamp(1.25rem, 1.1111111111rem + 0.3703703704vw, 1.375rem);
}
.about #textGridInfo .sliderBox .item .small p {
  padding-left: 2rem;
  background-image: url("/img/arrow-red-whitebg.svg");
  background-position: left top;
  background-repeat: no-repeat;
  margin-bottom: 1rem;
}

.about.karriere #textGridInfo, about.career #textGridInfo {
  padding-bottom: 0;
}
.about.karriere #textGridInfo:after, about.career #textGridInfo:after {
  content: "";
  display: block;
  margin: 0 auto;
  width: 100%;
  max-width: 71.25rem;
  border-bottom: 1px solid #E8E8E8;
  margin-top: 6.5rem;
}
@media (min-width: 600px) and (max-width: 899px) {
  .about.karriere #textGridInfo:after, about.career #textGridInfo:after {
    margin-top: 4.5rem;
  }
}
@media (max-width: 599px) {
  .about.karriere #textGridInfo:after, about.career #textGridInfo:after {
    margin-top: 4rem;
  }
}
.about.karriere #sliderCutRight, about.career #sliderCutRight {
  padding-bottom: 0;
  padding-top: 0;
}
.about.karriere #sliderCutRight .swiper-button-next::after, about.career #sliderCutRight .swiper-button-next::after {
  content: url(/img/arrow-right-white-new.svg);
}
.about.karriere #sliderCutRight .swiper-button-prev::after, about.career #sliderCutRight .swiper-button-prev::after {
  content: url(/img/arrow-left-white-new.svg);
}
.about.karriere #sliderCutRight:before, about.career #sliderCutRight:before {
  content: "";
  display: block;
  margin: 0 auto;
  width: 100%;
  max-width: 71.25rem;
  border-bottom: 1px solid #E8E8E8;
  margin-bottom: 6.5rem;
}
@media (min-width: 600px) and (max-width: 899px) {
  .about.karriere #sliderCutRight:before, about.career #sliderCutRight:before {
    margin-bottom: 4.5rem;
  }
}
@media (max-width: 599px) {
  .about.karriere #sliderCutRight:before, about.career #sliderCutRight:before {
    margin-bottom: 4rem;
  }
}
.about.karriere #sliderCutRight:after, about.career #sliderCutRight:after {
  content: "";
  display: block;
  margin: 0 auto;
  width: 100%;
  max-width: 71.25rem;
  border-bottom: 1px solid #E8E8E8;
  margin-top: 6.5rem;
}
@media (min-width: 600px) and (max-width: 899px) {
  .about.karriere #sliderCutRight:after, about.career #sliderCutRight:after {
    margin-top: 4.5rem;
  }
}
@media (max-width: 599px) {
  .about.karriere #sliderCutRight:after, about.career #sliderCutRight:after {
    margin-top: 4rem;
  }
}

h2 p {
  margin-bottom: 0;
}

.contacts #CardList .fourcol {
  grid-template-columns: 1fr 1fr 1fr !important;
}
.contacts #CTARichTextImageBlockOne .teaser p:last-of-type {
  margin-bottom: 2rem;
}

.ausbildung .hamburger-inner,
.ausbildung .hamburger-inner:before,
.ausbildung .hamburger-inner:after, .karriere .hamburger-inner,
.karriere .hamburger-inner:before,
.karriere .hamburger-inner:after, .studierende .hamburger-inner,
.studierende .hamburger-inner:before,
.studierende .hamburger-inner:after, .education .hamburger-inner,
.education .hamburger-inner:before,
.education .hamburger-inner:after, .career .hamburger-inner,
.career .hamburger-inner:before,
.career .hamburger-inner:after {
  background-color: #fff;
}
.ausbildung #navblock, .karriere #navblock, .studierende #navblock, .education #navblock, .career #navblock {
  background-color: black;
}
.ausbildung .subnav, .karriere .subnav, .studierende .subnav, .education .subnav, .career .subnav {
  background-color: #222;
}
.ausbildung nav a, .ausbildung .subnav-title, .karriere nav a, .karriere .subnav-title, .studierende nav a, .studierende .subnav-title, .education nav a, .education .subnav-title, .career nav a, .career .subnav-title {
  color: #fff;
}

.p {
  hyphens: auto;
  overflow-wrap: break-word;
  word-break: break-word;
}

.home .swiper-pagination {
  bottom: -50px;
}

@media (max-width: 599px) {
  .button.halfArrowed {
    justify-content: flex-start;
  }
}

.beratung #CTARichTextImageBlockOne .teaser p:first-of-type {
  margin-bottom: 1rem;
}

.tabs.mobile .item.swiper-slide {
  display: flex;
  justify-content: center;
}

.news h1 strong {
  font-weight: 400;
}
.news h2:not(.headLine) {
  margin-bottom: 4rem;
}
@media (max-width: 599px) {
  .news h2:not(.headLine) {
    margin-bottom: 3rem;
  }
}
.news .contactPerson {
  padding-bottom: 2rem;
  border-bottom: 1px solid #F5F5F5;
  margin-bottom: 4rem;
}
.news .contactPerson .item {
  display: flex;
  gap: 1rem;
  align-items: center;
}
.news .contactPerson .item img {
  max-width: 5rem;
}
.news #eventOverview {
  padding-top: 0;
}

.blogLink {
  display: none; /* Default: hidden, JS will show */
}

.blogLink.filtered-out {
  display: none !important; /* Always hide filtered-out */
}

.blogLink {
  display: none;
  opacity: 0;
  transition: opacity 1s;
}

.blogLink.show {
  display: flex !important;
  opacity: 1;
}

/* Fix for blog links in slider - make them visible */
.slider .blogLink {
  display: flex !important;
  opacity: 1;
}

.blogItem {
  row-gap: 3rem;
  padding-top: 0;
}
.blogItem .item {
  display: flex;
  aspect-ratio: unset;
  flex-direction: column;
  text-decoration: none;
}
.blogItem .blogLink.show {
  opacity: 1;
}
.blogItem .blogLink {
  transition: opacity 0.5s ease-in-out;
  text-decoration: none !important;
  display: flex;
  flex-direction: column;
  background-color: #F5F5F5;
}
.blogItem .blogText {
  background-color: #F5F5F5;
  padding: 1rem;
  padding-bottom: 2rem;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.blogItem .textSmall {
  color: #929191;
  text-decoration: none !important;
  display: -webkit-box;
  -webkit-line-clamp: 4; /* Number of lines to show */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 300px; /* Optional */
  font-size: 0.875rem;
  font-size: clamp(0.875rem, 0.7361111111rem + 0.3703703704vw, 1rem);
  line-height: 1.25rem;
  line-height: clamp(1.25rem, 1.1111111111rem + 0.3703703704vw, 1.375rem);
  margin-bottom: 2rem;
}
.blogItem .button {
  border: none;
  margin-top: auto;
  background-color: transparent;
}
.blogItem h3 {
  font-size: 1.5rem;
  line-height: 2rem;
  font-style: normal;
  font-weight: 400;
  letter-spacing: -0.0225rem;
  color: #000000;
  margin-bottom: 0.6rem;
  text-decoration: none !important;
}
.blogItem h3 strong, .blogItem h3 p {
  font-weight: 400;
  text-decoration: none !important;
}
.blogItem .blogImageContainer {
  background-size: 100% auto;
  background-position: center;
  background-repeat: no-repeat;
  margin-left: 1rem;
  margin-right: 1rem;
  background-color: #F5F5F5;
  margin-top: 1rem;
  aspect-ratio: 1;
}
@media (min-width: 600px) {
  .blogItem .blogImageContainer {
    height: 15rem;
    width: 90%;
  }
}

#headerNews {
  height: 35rem;
}
@media (max-width: 599px) {
  #headerNews {
    height: 15rem;
  }
}

#introNews .contactPerson img {
  margin-bottom: 1rem;
}
#introNews .teaser {
  font-size: 2.125rem;
  font-style: normal;
  font-weight: 400;
  line-height: 2.625rem; /* 123.529% */
  letter-spacing: -0.085rem;
  color: #929191;
}

#mainContent {
  background-color: #F5F5F5;
}
#mainContent p, #mainContent li {
  color: black;
  font-size: 1.125rem;
  font-size: clamp(1.125rem, 1.125rem + 0vw, 1.125rem);
  line-height: 1.625rem;
  line-height: clamp(1.625rem, 1.2083333333rem + 1.1111111111vw, 2rem);
}
#mainContent p {
  margin-bottom: 2rem;
}

.events .header .teaser {
  margin-bottom: 2rem;
}

.eventDetail .teaser {
  margin-bottom: 2rem;
}

.dealer-contact.phone a:hover, .dealer-contact.email a:hover {
  text-decoration: none !important;
  color: #FF0002;
}

.products #sliderCutRight h2 {
  max-width: none;
  margin-bottom: 1.5rem;
}

.productCatalog .sliderBox {
  margin-top: 0;
}

.products .productImageGallery .sliderBox {
  margin-top: 3.5rem;
}
.products .productImageGallery .sliderBox .productimages div {
  aspect-ratio: 1;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.services #sliderCutRight h2 {
  margin-bottom: 1.5rem;
}
.services #CTARichTextImageBlockTwo .p {
  color: #000;
}
@media (min-width: 600px) {
  #textGridInfo .sliderBox {
    margin-top: 0;
  }
}

@media (min-width: 600px) {
  .stahlbau-und-systembuehnen #sliderCutRight h2 {
    max-width: 70%;
  }
}

.breadcrumb-separator {
  margin-left: 8px;
  background-image: url("/img/arrow-left.svg");
  width: 1rem;
  height: 1rem;
  background-size: cover;
}

.breadcrumb .breadcrumb-separator:first-child {
  margin-left: 0;
  margin-right: 8px;
}

.breadcrumb {
  font-size: 1rem;
  line-height: 1rem;
  letter-spacing: -0.02rem;
  margin-bottom: 0;
}
@media (max-width: 599px) {
  .breadcrumb {
    row-gap: 0.5rem;
  }
}
.breadcrumb a {
  margin-right: 0.5rem;
  display: flex;
  align-items: center;
}

.smallestSection {
  background-color: white;
  width: 100%;
}
.smallestSection.fixed {
  position: fixed;
  top: 3.5rem;
  z-index: 9;
  box-shadow: rgba(0, 0, 0, 0.3) 0px 8px 15px -7px;
  border-bottom: 1px solid rgb(221, 221, 221);
}

.ausbildung .smallestSection, .karriere .smallestSection, .studierende .smallestSection, body.education .smallestSection, body.career .smallestSection {
  background-color: black;
}
.ausbildung .breadcrumb-separator, .karriere .breadcrumb-separator, .studierende .breadcrumb-separator, body.education .breadcrumb-separator, body.career .breadcrumb-separator {
  background-image: url("/img/arrow-left-white-new.svg");
}

#breadcrumbSection {
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}
@media (max-width: 900px) {
  #breadcrumbSection {
    display: none;
  }
}

.VideoContainer {
  display: none;
  gap: 1rem;
}
.VideoContainer .videoWrapper {
  padding-top: 0;
}

#headerTerms {
  padding-bottom: 0;
}
#headerTerms h1 {
  text-align: left;
}
@media (min-width: 600px) {
  #headerTerms h1 {
    max-width: 80%;
  }
}

#termsContent {
  padding-top: 0;
}
#termsContent .p {
  margin-bottom: 1rem;
}
#termsContent h2 {
  margin-bottom: 1.5rem;
  margin-top: 3rem;
}

#headerPrivacyPolicy h1 {
  margin-bottom: 4rem;
}
#headerPrivacyPolicy p {
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 300;
  line-height: 2rem;
  line-height: 1.625rem;
  line-height: clamp(1.625rem, 1.2083333333rem + 1.1111111111vw, 2rem);
}

.modal {
  z-index: 5000;
}

.selects {
  display: flex;
  gap: 2rem;
  margin-bottom: 1.5rem;
  /* Label-Stil */
  /* Input-Stil */
  /* Fokus-Effekt */
  /* Platzhalter-Stil */
}
.selects .col {
  flex: 1;
}
.selects .mb-3 label {
  display: block;
  font-size: 1rem;
  color: #222;
  margin-bottom: 0.5rem;
  font-weight: 500;
  letter-spacing: 0.01em;
}
.selects input[type=date],
.selects input[type=time] {
  width: 100%;
  padding: 0.5rem 0.75rem;
  font-size: 1rem;
  border: none;
  border-bottom: 2px solid #aaa;
  background: #F5F5F5;
  color: #222;
  border-radius: 4px 4px 0 0;
  transition: border-color 0.2s, background 0.2s;
  outline: none;
  box-sizing: border-box;
}
.selects input[type=date]:focus,
.selects input[type=time]:focus {
  border-bottom: 2px solid #e30613; /* Rot wie der "Absenden"-Button */
  background: #fff;
}
.selects input[type=date]::placeholder,
.selects input[type=time]::placeholder {
  color: #bbb;
  font-style: italic;
}

.buttonsMain .item {
  display: flex;
  flex-direction: row;
  gap: 1rem;
}
.buttonsMain .button .p {
  color: #fff !important;
}
.buttonsMain .white .p {
  color: #FF0002 !important;
}
.buttonsMain .p {
  font-size: 1rem !important;
  line-height: 1rem !important;
  letter-spacing: -0.04rem !important;
  color: black !important;
  cursor: pointer;
}

.swiper {
  touch-action: pan-y;
}

.swiper-wrapper {
  touch-action: pan-y;
}

@media (max-width: 599px) {
  .genericModal .modal-header .btn-close {
    height: 1rem;
    width: 1rem;
  }
}

.sideButton.btn1 {
  background-image: url("/img/sidebar-shop.svg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.sideButton.btn1:hover {
  background-image: url("/img/sidebar-shop-black.svg");
  background-position: center;
  background-repeat: no-repeat;
}

.sideButton.btn2 {
  background-image: url("/img/sidebar-calc.svg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.sideButton.btn2:hover {
  background-image: url("/img/sidebar-calc-black.svg");
  background-position: center;
  background-repeat: no-repeat;
}

.sideButton.btn3 {
  background-image: url("/img/phone_v2.svg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.sideButton.btn3:hover {
  background-image: url("/img/phone_black.svg");
  background-position: center;
  background-repeat: no-repeat;
}

.sideButton.btn4 {
  background-image: url("/img/clipboard.svg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.sideButton.btn4:hover {
  background-image: url("/img/clipboard_black.svg");
  background-position: center;
  background-repeat: no-repeat;
}

.products .sliderFullImages .swiper-slide a {
  aspect-ratio: 1;
}

.productCategoryInfo .productGrid .item img {
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.productCategoryInfo .productGrid .item:hover img {
  transform: scale(1.07);
}

#textGridInfo .small {
  font-size: 1rem;
  font-size: clamp(1rem, 0.8611111111rem + 0.3703703704vw, 1.125rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 1.2361111111rem + 0.3703703704vw, 1.5rem);
  letter-spacing: -0.0225rem;
}

.regalinspektion #textGridInfo h2 {
  margin-bottom: 1.5rem;
}

.textSmall {
  font-size: 1.25rem !important;
  line-height: 2rem !important;
  color: black !important;
  font-weight: 300 !important;
}
@media (max-width: 599px) {
  .textSmall {
    font-size: 1.125rem;
    line-height: 1.625rem;
  }
}

.productInfo .infoText p {
  font-size: 1rem;
  font-size: clamp(1rem, 0.8611111111rem + 0.3703703704vw, 1.125rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 1.2361111111rem + 0.3703703704vw, 1.5rem);
  font-weight: 400;
  letter-spacing: -0.0225rem;
}

.services #CTARichTextImageBlockOne .teaser,
.fachhandel #CTARichTextImageBlockOne .teaser {
  margin-bottom: 3rem;
}
@media (max-width: 599px) {
  .services #CTARichTextImageBlockOne .teaser,
  .fachhandel #CTARichTextImageBlockOne .teaser {
    margin-bottom: 2rem;
  }
}

:root {
  --scroll-padding: 3.5rem; /* Default value */
}

html {
  overflow-x: hidden;
  scroll-padding-top: var(--scroll-padding);
}

/* Fallback for elements with IDs */
[id] {
  scroll-margin-top: var(--scroll-padding);
}

@media (max-width: 600px) {
  :root {
    --scroll-padding: 5.5rem;
  }
}
.locations .references a {
  font-size: 18px;
}
.locations .references a:hover {
  text-decoration: none;
}

section.refenrencesContainer {
  transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
}

section.refenrencesContainer.hidden {
  display: none;
}

section.refenrencesContainer.show {
  opacity: 1;
  transform: translateY(0);
}

.haendlertraining #sliderCutRight .teaser {
  margin-bottom: 10rem;
}

.expert-opinion-page #leftnav #logo {
  margin-right: 0;
}
.expert-opinion-page #leftnav img {
  display: none;
}
.expert-opinion-page .flxdCntnr .logo {
  display: none;
}

#blogFilter {
  margin-top: 0;
  margin-bottom: 2rem;
  display: flex;
  align-items: flex-start;
  flex-direction: column;
}
#blogFilter #blog-category {
  min-width: 250px;
  background-color: #F5F5F5;
  border: none;
  padding: 1.25rem;
  background-image: url("/img/arrow-down-black-flat.svg");
  background-repeat: no-repeat;
  background-position: right 1.25rem center;
  background-size: 20px 12px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
#blogFilter #blog-category:focus-visible {
  outline: none;
}

.blogLink.filtered-out {
  display: none !important;
}

#blogFilterContainer {
  padding-top: 0;
  padding-bottom: 0;
}

#contactFilter {
  margin-top: 0;
  margin-bottom: 2rem;
  display: flex;
  align-items: flex-start;
  flex-direction: column;
}
#contactFilter #country-filter {
  color: #000;
  min-width: 250px;
  background-color: #F5F5F5;
  border: none;
  padding: 1.25rem;
  background-image: url("/img/arrow-down-black-flat.svg");
  background-repeat: no-repeat;
  background-position: right 1.25rem center;
  background-size: 20px 12px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
#contactFilter #country-filter:focus-visible {
  outline: none;
}

.references {
  padding-top: 0;
}

.references #RichTextBlock.light {
  padding-bottom: 0;
}

.filter-message {
  padding: 1rem;
  margin-bottom: 1rem;
}

#referencesFilter {
  margin-top: 0;
  margin-bottom: 0;
  display: flex;
  align-items: flex-start;
  flex-direction: row;
  flex-wrap: wrap;
}
#referencesFilter #location-filter, #referencesFilter #industry-filter {
  color: #000;
  min-width: 250px;
  background-color: #F5F5F5;
  border: none;
  padding: 1.25rem;
  background-image: url("/img/arrow-down-black-flat.svg");
  background-repeat: no-repeat;
  background-position: right 1.25rem center;
  background-size: 20px 12px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
#referencesFilter #location-filter:focus-visible, #referencesFilter #industry-filter:focus-visible {
  outline: none;
}

#teamlist .flexcenter {
  display: flex;
  gap: 0.5rem;
  margin-bottom: 0.5rem;
}
#teamlist .person, #teamlist .positionContact {
  margin-bottom: 0.5rem;
}

.accgrid.desktop .contact-item {
  margin-bottom: 2rem;
}
.accgrid.desktop .contact-item:last-child {
  margin-bottom: 0;
}

.slider.mobile .contact-item {
  margin-bottom: 1.5rem;
  padding: 0 0.5rem;
}
.slider.mobile .contact-item:last-child {
  margin-bottom: 0;
}

.swiper,
.swiper-wrapper,
.swiper-slide {
  touch-action: pan-y;
}

.swiper * {
  touch-action: pan-y;
}

.flexedcenter {
  display: flex;
  flex-direction: column;
  align-items: center;
}

@-moz-document url-prefix() {
  @supports (-moz-appearance: none) {
    br {
      margin-bottom: 0.5rem;
    }
  }
}
#Oxomi {
  padding-top: 1rem;
}

.sci-shadow {
  box-shadow: none;
}

/***************************************************************
REELS BLOCK - YouTube Shorts / Video Reels Grid
****************************************************************/
section#Reels {
  --reel-max-height: calc(100vh - 3.75rem);
  --reel-max-height: calc(100dvh - 3.75rem);
  padding: 4rem 1.5rem;
}
@media (min-width: 900px) {
  section#Reels {
    --reel-max-height: calc(100vh - 9rem);
    --reel-max-height: calc(100dvh - 9rem);
  }
}
@media (min-width: 600px) {
  section#Reels {
    padding: 4.5rem 1.5rem;
  }
}
@media (min-width: 1200px) {
  section#Reels {
    padding: 6.5rem 1.5rem;
  }
}
section#Reels article {
  max-width: 71.25rem;
  margin: 0 auto;
}
section#Reels h2 {
  text-align: center;
  margin-bottom: 2rem;
}
@media (min-width: 600px) {
  section#Reels h2 {
    margin-bottom: 3rem;
  }
}
section#Reels .reels-carousel {
  position: relative;
  padding: 0 4rem;
}
@media (max-width: 599px) {
  section#Reels .reels-carousel {
    padding: 0;
  }
}
section#Reels .reels-carousel.swiper {
  overflow: hidden;
}
section#Reels .reels-carousel .swiper-slide {
  padding: 0 0.75rem;
  transition: opacity 0.3s ease, transform 0.3s ease;
  opacity: 0.4;
  transform: scale(0.9);
}
section#Reels .reels-carousel .swiper-slide.swiper-slide-active {
  opacity: 1;
  transform: scale(1);
}
@media (max-width: 599px) {
  section#Reels .reels-carousel .swiper-slide {
    padding: 0 0.5rem;
  }
}
section#Reels .reels-carousel .swiper-button-prev,
section#Reels .reels-carousel .swiper-button-next {
  position: absolute;
  top: 40%;
  transform: translateY(-50%);
  z-index: 10;
  background: #FF0002;
  border: none;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  cursor: pointer;
  font-size: 0;
  line-height: 0;
  transition: background 0.3s ease, transform 0.3s ease;
}
section#Reels .reels-carousel .swiper-button-prev::after,
section#Reels .reels-carousel .swiper-button-next::after {
  content: "";
  display: block;
  width: 0.6rem;
  height: 0.6rem;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  font-size: 0;
}
section#Reels .reels-carousel .swiper-button-prev:hover,
section#Reels .reels-carousel .swiper-button-next:hover {
  background: #cc0002;
  transform: translateY(-50%) scale(1.1);
}
section#Reels .reels-carousel .swiper-button-prev.swiper-button-disabled,
section#Reels .reels-carousel .swiper-button-next.swiper-button-disabled {
  opacity: 0.4;
  cursor: default;
}
section#Reels .reels-carousel .swiper-button-prev.swiper-button-disabled:hover,
section#Reels .reels-carousel .swiper-button-next.swiper-button-disabled:hover {
  transform: translateY(-50%);
  background: #FF0002;
}
section#Reels .reels-carousel .swiper-button-prev {
  left: 0;
}
section#Reels .reels-carousel .swiper-button-prev::after {
  transform: translate(-32%, -50%) rotate(-135deg);
}
section#Reels .reels-carousel .swiper-button-next {
  right: 0;
}
section#Reels .reels-carousel .swiper-button-next::after {
  transform: translate(-68%, -50%) rotate(45deg);
}
section#Reels .reels-carousel .swiper-pagination {
  display: flex !important;
  justify-content: center;
  align-items: center;
  gap: 0.75rem;
  margin-top: 1.5rem;
  padding: 0;
  position: relative;
  bottom: auto;
}
section#Reels .reels-carousel .swiper-pagination .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.2);
  opacity: 1;
  transition: background 0.3s ease, transform 0.3s ease;
}
section#Reels .reels-carousel .swiper-pagination .swiper-pagination-bullet:hover {
  background: rgba(0, 0, 0, 0.4);
}
section#Reels .reels-carousel .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #FF0002;
  transform: scale(1.2);
}
section#Reels .reel-item {
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
section#Reels .reel-video-wrapper {
  position: relative;
  width: 100%;
  max-width: calc(var(--reel-max-height) * 9 / 16);
  margin: 0 auto;
  aspect-ratio: 9/16;
  background: #1a1a1a;
  overflow: hidden;
}
section#Reels .reel-preview {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
section#Reels .reel-preview.playing {
  cursor: default;
}
section#Reels .reel-preview .reel-poster {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 110%;
  height: 110%;
  object-fit: cover;
  object-position: center center;
}
section#Reels .reel-preview .reel-poster-placeholder {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #1a1a1a 0%, #333 100%);
}
section#Reels .reel-preview .play-button {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: rgba(0, 0, 0, 0.6);
  border: none;
  border-radius: 50% !important;
  width: 4rem;
  height: 4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background 0.3s ease, transform 0.3s ease;
}
section#Reels .reel-preview .play-button img {
  width: 1.5rem;
  height: 1.5rem;
  margin-left: 0.25rem;
}
section#Reels .reel-preview .play-button:hover {
  background: #FF0002;
  transform: translate(-50%, -50%) scale(1.1);
}
section#Reels .reel-preview.playing .play-button {
  display: none;
}
section#Reels .reel-preview iframe, section#Reels .reel-preview video {
  border-radius: 0;
}
section#Reels .reel-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
section#Reels .reel-content {
  padding: 1rem;
  background: #fff;
  max-width: calc(var(--reel-max-height) * 9 / 16);
  margin: 0 auto;
  width: 100%;
}
@media (min-width: 600px) {
  section#Reels .reel-content {
    padding: 1.25rem;
  }
}
section#Reels .reel-content:empty {
  display: none;
}
section#Reels .reel-title {
  font-size: 1rem;
  font-size: clamp(1rem, 0.8611111111rem + 0.3703703704vw, 1.125rem);
  line-height: 1.375rem;
  line-height: clamp(1.375rem, 1.2361111111rem + 0.3703703704vw, 1.5rem);
  font-weight: 600;
  color: #1a1a1a;
  margin: 0 0 0.5rem 0;
}
section#Reels .reel-description {
  font-size: 0.875rem;
  font-size: clamp(0.875rem, 0.7361111111rem + 0.3703703704vw, 1rem);
  line-height: 1.25rem;
  line-height: clamp(1.25rem, 1.1111111111rem + 0.3703703704vw, 1.375rem);
  color: #929191;
  margin: 0;
}
section#Reels.grey {
  background: #F5F5F5;
}
section#Reels.grey .reel-content {
  background: #fff;
}
section#Reels.dark {
  background: #000;
}
section#Reels.dark h2 {
  color: #fff;
}
section#Reels.dark .reel-content {
  background: #374043;
}
section#Reels.dark .reel-title {
  color: #fff;
}
section#Reels.dark .reel-description {
  color: #bbc1c8;
}

/***************************************************************
EMBEDDED VIDEO BLOCK - Slider for multiple videos
****************************************************************/
section.embededVideo .sliderBox,
section.embededVideo .embedded-video-single {
  max-width: 71.25rem;
  margin: 0 auto;
}
section.embededVideo .topcol h2 {
  margin-bottom: 4rem;
}
@media (max-width: 899px) {
  section.embededVideo .topcol h2 {
    margin-bottom: 2rem;
  }
}
section.embededVideo .topcol.no-teaser h2 {
  margin-bottom: 2rem;
}
@media (max-width: 899px) {
  section.embededVideo .topcol.no-teaser h2 {
    margin-bottom: 1rem;
  }
}
section.embededVideo .topcol .teaser {
  margin-bottom: 4rem;
}
@media (max-width: 899px) {
  section.embededVideo .topcol .teaser {
    margin-bottom: 2rem;
  }
}
section.embededVideo .topcol .teaser p {
  margin-bottom: 0;
}
section.embededVideo .embedded-video-carousel {
  position: relative;
}
section.embededVideo .embedded-video-carousel.swiper {
  overflow: hidden;
}
section.embededVideo .embedded-video-media {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  background: #1a1a1a;
  overflow: hidden;
  cursor: pointer;
}
section.embededVideo .embedded-video-media.playing {
  cursor: default;
}
section.embededVideo .embedded-video-media img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  margin: 0;
}
section.embededVideo .embedded-video-media iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
section.embededVideo .embedded-video-media .play-button {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: rgba(0, 0, 0, 0.6);
  border: none;
  border-radius: 50% !important;
  width: 4rem;
  height: 4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background 0.3s ease, transform 0.3s ease;
}
section.embededVideo .embedded-video-media .play-button img {
  position: static;
  width: 1.5rem;
  height: 1.5rem;
  margin-left: 0.25rem;
  object-fit: contain;
}
section.embededVideo .embedded-video-media .play-button:hover {
  background: #FF0002;
  transform: translate(-50%, -50%) scale(1.1);
}
section.embededVideo .embedded-video-media.playing .play-button {
  display: none;
}
section.embededVideo .embedded-video-media.portrait {
  aspect-ratio: 9/16;
  max-width: 31.640625%;
  margin-left: auto;
  margin-right: auto;
}
section.embededVideo .embedded-video-description {
  font-size: 0.875rem;
  font-size: clamp(0.875rem, 0.7361111111rem + 0.3703703704vw, 1rem);
  line-height: 1.25rem;
  line-height: clamp(1.25rem, 1.1111111111rem + 0.3703703704vw, 1.375rem);
  margin: 1rem 0 0 0;
  text-align: center;
}
section.embededVideo .sliderBox .swiper-button-prev,
section.embededVideo .sliderBox .swiper-button-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  background: #FF0002;
  border: none;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  cursor: pointer;
  font-size: 0;
  line-height: 0;
  transition: background 0.3s ease, transform 0.3s ease;
}
section.embededVideo .sliderBox .swiper-button-prev::after,
section.embededVideo .sliderBox .swiper-button-next::after {
  content: "";
  display: block;
  width: 0.6rem;
  height: 0.6rem;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  font-size: 0;
}
section.embededVideo .sliderBox .swiper-button-prev:hover,
section.embededVideo .sliderBox .swiper-button-next:hover {
  transform: translateY(-50%);
  background: #FF0002;
}
@media (max-width: 599px) {
  section.embededVideo .sliderBox .swiper-button-prev,
  section.embededVideo .sliderBox .swiper-button-next {
    display: none;
  }
}
section.embededVideo .sliderBox .swiper-button-prev {
  left: 1rem;
}
section.embededVideo .sliderBox .swiper-button-prev::after {
  transform: translate(-32%, -50%) rotate(-135deg);
}
section.embededVideo .sliderBox .swiper-button-next {
  right: 1rem;
}
section.embededVideo .sliderBox .swiper-button-next::after {
  transform: translate(-68%, -50%) rotate(45deg);
}
section.embededVideo .sliderBox .swiper-pagination {
  display: flex !important;
  justify-content: center;
  align-items: center;
  gap: 0.75rem;
  margin-top: 1.5rem;
  padding: 0 0 0.25rem;
  position: relative;
  bottom: auto;
}
section.embededVideo .sliderBox .swiper-pagination .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.2);
  opacity: 1;
  transition: background 0.3s ease, transform 0.3s ease;
}
section.embededVideo .sliderBox .swiper-pagination .swiper-pagination-bullet:hover {
  background: rgba(0, 0, 0, 0.4);
}
section.embededVideo .sliderBox .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #FF0002;
  transform: scale(1.2);
}
section.embededVideo.dark .embedded-video-description {
  color: #fff;
}
section.embededVideo.dark .sliderBox .swiper-pagination .swiper-pagination-bullet {
  background: rgba(255, 255, 255, 0.3);
}
section.embededVideo.dark .sliderBox .swiper-pagination .swiper-pagination-bullet:hover {
  background: rgba(255, 255, 255, 0.5);
}
section.embededVideo.dark .sliderBox .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #FF0002;
}

/*******************************************************************
* CTA Fullsize Image Box (CTAFullSizeImageBoxBlock)
*******************************************************************/
section#CTAFullSizeImageBoxBlock.fullSizeImageBox {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
section#CTAFullSizeImageBoxBlock.fullSizeImageBox article {
  display: flex;
  align-items: center;
  min-height: 32rem;
}
@media (max-width: 599px) {
  section#CTAFullSizeImageBoxBlock.fullSizeImageBox article {
    min-height: 26rem;
  }
}
section#CTAFullSizeImageBoxBlock.fullSizeImageBox .boxContent {
  max-width: 45%;
}
@media (max-width: 900px) {
  section#CTAFullSizeImageBoxBlock.fullSizeImageBox .boxContent {
    max-width: 60%;
  }
}
@media (max-width: 599px) {
  section#CTAFullSizeImageBoxBlock.fullSizeImageBox .boxContent {
    max-width: 100%;
  }
}
section#CTAFullSizeImageBoxBlock.fullSizeImageBox .boxContent h2 {
  margin-bottom: 2.5rem;
}
@media (max-width: 599px) {
  section#CTAFullSizeImageBoxBlock.fullSizeImageBox .boxContent h2 {
    margin-bottom: 2rem;
  }
}
section#CTAFullSizeImageBoxBlock.fullSizeImageBox .boxContent .button {
  margin-bottom: 0;
}
section#CTAFullSizeImageBoxBlock.fullSizeImageBox.textright article {
  justify-content: flex-end;
}
section#CTAFullSizeImageBoxBlock.fullSizeImageBox.dark h2 {
  color: #fff;
}

/*******************************************************************
* 3D Model Module (ThreeDModel)
*******************************************************************/
section.threeDModel div.teaser {
  font-size: 1.25rem;
  font-size: clamp(1.25rem, 0.8333333333rem + 1.1111111111vw, 1.625rem);
  line-height: 1.75rem;
  line-height: clamp(1.75rem, 1.3333333333rem + 1.1111111111vw, 2.125rem);
  font-style: normal;
  font-weight: 400;
  letter-spacing: -0.0325rem;
  color: #929191;
}
section.threeDModel .threeDModelFrame {
  width: 100%;
}
section.threeDModel .threeDModelFrame iframe {
  display: block;
  width: 100%;
  aspect-ratio: 16/9;
  border: 0;
}
@media (max-width: 599px) {
  section.threeDModel .threeDModelFrame iframe {
    aspect-ratio: 3/4;
  }
}
section.threeDModel.grey {
  background: #F5F5F5;
}
section.threeDModel.dark {
  background: #000;
}
section.threeDModel.dark h2, section.threeDModel.dark h3, section.threeDModel.dark .pretitle {
  color: #fff;
}

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