/**
 * variable from pdf
 */
/**
 * fonts
 */
@font-face {
  font-family: "Univers Next W02_n3";
  src: url("/fonts/6e7cea9c-37df-4ef0-8d1e-04e7a328573b.eot?#iefix") format("eot");
}
@font-face {
  font-family: "Univers Next W02";
  src: url("/fonts/6e7cea9c-37df-4ef0-8d1e-04e7a328573b.eot?#iefix");
  src: url("/fonts/6e7cea9c-37df-4ef0-8d1e-04e7a328573b.eot?#iefix") format("eot"), url("/fonts/a4449fb7-050c-487e-bea1-63931396e02c.woff2") format("woff2"), url("/fonts/875712e3-9c93-4f0b-a46a-a278e69a71f6.woff") format("woff"), url("/fonts/501b78b4-b6c7-488b-878d-adf70ecccafd.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: "Univers Next W02_n4";
  src: url("/fonts/d3ea24cf-053f-4c3c-a477-e24ebb3ec10a.eot?#iefix") format("eot");
}
@font-face {
  font-family: "Univers Next W02";
  src: url("/fonts/d3ea24cf-053f-4c3c-a477-e24ebb3ec10a.eot?#iefix");
  src: url("/fonts/d3ea24cf-053f-4c3c-a477-e24ebb3ec10a.eot?#iefix") format("eot"), url("/fonts/8024ca6c-5f24-464f-9926-226b9dd42771.woff2") format("woff2"), url("/fonts/1be76d23-dd4b-4c22-8d4b-7c75c54740cc.woff") format("woff"), url("/fonts/1eb97322-45a5-4c34-b30f-eeb363c1ef40.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "Univers Next W02_n5";
  src: url("/fonts/4f1b0c34-1c71-42cf-813e-7927e52b538c.eot?#iefix") format("eot");
}
@font-face {
  font-family: "Univers Next W02";
  src: url("/fonts/4f1b0c34-1c71-42cf-813e-7927e52b538c.eot?#iefix");
  src: url("/fonts/4f1b0c34-1c71-42cf-813e-7927e52b538c.eot?#iefix") format("eot"), url("/fonts/eec77ac3-1c4d-42cf-8eb6-aa54b353a00f.woff2") format("woff2"), url("/fonts/7a425d6a-3af8-404b-a08e-eaf011616185.woff") format("woff"), url("/fonts/e7b4c9b0-9a8b-46ad-a01f-d116e7fb23cd.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "Univers Next W02_n6";
  src: url("/fonts/3d4372d2-fbf8-4376-887c-a4247fe7475f.eot?#iefix") format("eot");
}
@font-face {
  font-family: "Univers Next W02";
  src: url("/fonts/3d4372d2-fbf8-4376-887c-a4247fe7475f.eot?#iefix");
  src: url("/fonts/3d4372d2-fbf8-4376-887c-a4247fe7475f.eot?#iefix") format("eot"), url("/fonts/086dc2f3-0872-4cae-aa0f-f66b64139049.woff2") format("woff2"), url("/fonts/5726bf63-b50c-4eb5-8615-36daaa1b3f99.woff") format("woff"), url("/fonts/f4f44dd1-4235-4aaf-86d0-2b58f230cdaf.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: GiraIcons;
  font-display: swap;
  src: url("/fonts/GiraIcons-200221.woff") format("woff"), url("/fonts/GiraIcons-200221.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
}
/**
 * general tags
 */
body, img, table, p, table, tr, td, div, p, h1, h2, h3, h4, h5, h6, span, a, form {
  margin: 0;
  padding: 0;
  border: 0;
}

html {
  -webkit-font-smoothing: antialiased;
}

body {
  /*  position: relative; */
  padding-top: 68px;
}

body,
input,
select,
textarea {
  font-family: "Univers Next W02", verdana;
}

html[lang=ru] body,
html[lang=ru] input,
html[lang=ru] select,
html[lang=ru] textarea {
  font-family: "Univers Next W02", verdana;
}

body {
  background-color: #121212;
  font-size: 16px;
  line-height: 24px;
  font-weight: 400;
  color: #d8d8d8;
}

h1, .h1 {
  font-size: 36px;
  line-height: 40px;
  font-weight: 300;
  color: white;
}

h2 {
  font-size: 32px;
  line-height: 36px;
  font-weight: 300;
  color: white;
}

h3,
.cms-row-light .cms-text-large {
  font-size: 28px;
  line-height: 32px;
  font-weight: 300;
}

h3.cms-small {
  font-size: 24px;
  line-height: 28px;
}

h4 {
  font-size: 16px;
  line-height: 24px;
  font-weight: 400;
  color: white;
}

p {
  margin-bottom: 1em;
}

/**
 * links
 */
a.cms-a-teaser span.cms-a-rsaquo,
a {
  text-decoration: underline;
  color: white;
}

a.cms-a-teaser {
  text-decoration: none;
  color: inherit;
}

a.cms-a-teaser:hover span.cms-a-rsaquo,
a:hover {
  color: rgba(255, 255, 255, 0.9);
}

a.cms-a-teaser:hover {
  color: inherit;
}

a.cms-a-light {
  color: black;
  text-decoration: none;
  border-bottom: 1px black solid;
}

a.cms-a-light:hover {
  color: rgba(0, 0, 0, 0.8);
  border-bottom: 1px rgba(0, 0, 0, 0.8) solid;
}

a.cms-a-forward,
a.cms-a-up,
a.cms-a-down,
a.rsaquo,
span.cms-a-rsaquo,
a.cms-a-rsaquo {
  position: relative;
  padding-left: 16px;
  border-bottom: none !important;
}

a.cms-a-forward:before,
a.cms-a-forward:before,
a.cms-a-up:before,
a.cms-a-down:before,
a.rsaquo:before,
span.cms-a-rsaquo:before,
a.cms-a-rsaquo:before {
  position: absolute;
  top: 5px;
  left: 0px;
  background: none;
  content: "H";
  font-size: 12px;
  line-height: 12px;
  font-family: GiraIcons;
}

a.cms-a-forward:before {
  content: "{";
  top: 50%;
  transform: translateY(-50%);
  font-size: 18px;
  line-height: 18px;
}

a.cms-a-up:before {
  top: 5px;
  left: -5px;
  transform: rotate(90deg);
}

a.cms-a-down:before {
  top: 10px;
  left: -5px;
}

a.rsaquo:before,
span.cms-a-rsaquo:before,
a.cms-a-rsaquo:before {
  transform: rotate(-90deg);
}

.cms-teaser-topdown a {
  color: rgba(255, 255, 255, 0.6);
}

.cms-teaser-topdown a.cms-a-on {
  font-weight: normal;
  color: #fff;
}

.cms-teaser-card a.cms-a-rsaquo {
  background: url(/images/v4/rsaquo-8c8c8c.svg) no-repeat 0px 4px;
}

a.cms-a-more {
  padding-right: 36px;
  text-decoration: none;
  background: url(/images/v4/pfeil-rechts-w.svg) no-repeat right 0px center;
}

a.cms-a-download {
  padding-left: 25px;
  background: url(/images/v4/icon-download-ffffff.svg) no-repeat left center;
}

a.cms-a-download:hover {
  background-image: url(/images/v4/icon-download-d8d8d8.svg);
}

a.cms-a-info {
  padding-left: 25px;
  background: url(/images/v4/icon-info-ffffff.svg) no-repeat left center;
}

a.cms-a-info:hover {
  background-image: url(/images/v4/icon-info-d8d8d8.svg);
}

a.cms-a-copy {
  padding-left: 25px;
  background: url(/images/v4/icon-copy-ffffff.svg) no-repeat left center;
}

a.cms-a-copy:hover {
  background-image: url(/images/v4/icon-copy-d8d8d8.svg);
}

a.cms-a-locale {
  padding-left: 25px;
  background: url(/images/v4/icon-globe.svg) no-repeat left center;
  background-size: 16px 16px;
}

a.cms-a-on {
  font-weight: 600;
}

.cms-navsub-row a.cms-a-gray {
  color: #999;
}

table td.cms-tcol-buttons {
  padding-top: 0px;
  padding-bottom: 0px;
  vertical-align: middle;
}

td.cms-tcol-buttons a img {
  height: 32px;
  width: auto;
  max-width: unset;
}

td.cms-tcol-buttons a {
  text-decoration: none !important;
  border-bottom: none;
  margin-right: 10px;
}

td.cms-tcol-buttons a:hover {
  text-decoration: none !important;
  border-bottom: none;
}

td.cms-tcol-buttons a:last-child {
  margin-right: 0px;
}

/**
 * classes
 */
.cms-cursor-pointer {
  cursor: pointer;
}

.cms-text-white-primary {
  color: white;
}

.cms-text-white-secondary {
  color: rgba(255, 255, 255, 0.6);
}

.cms-bg-less {
  background-color: #f1f1f1;
}

.cms-bg-less2 {
  background-color: #1a1a1a;
}

.cms-text-large {
  font-size: 24px;
  line-height: 36px;
  font-weight: 300;
}

.cms-text-hyphens {
  webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
}

ul.cms-ul-dashed {
  list-style: none;
  margin: 16px 0 0px 0;
  margin-bottom: 0px;
  padding: 0;
  padding-bottom: 0px;
}

ul.cms-ul-dashed li {
  margin: 0;
  padding: 7px 0;
  border-top: 1px dashed #ccc;
}

ul.cms-ul-hook {
  margin: 0;
  padding: 0;
  list-style: none;
}

ul.cms-ul-hook li {
  background: url(/images/v4/bullet-hook.svg) 0px 12px no-repeat;
  padding: 7px 0px 7px 21px;
  border-top: 1px #c8c8c8 solid;
  border-bottom: none;
}

#cms-element-wrap ul.hyphen {
  list-style: none;
  margin: 0 0 1em 0;
  padding: 0;
}

#cms-element-wrap ul.hyphen li {
  padding-left: 11px;
  text-indent: -5px;
}

#cms-element-wrap ul.hyphen li:before {
  content: "-";
  position: relative;
  left: -5px;
}

.cms-row-tecdata {
  margin-left: 0px;
  margin-right: 0px;
  padding: 7px 0px 7px 0px;
  border-top: 1px #c8c8c8 dashed;
}

.cms-row-tecdata.cms-row-tecdata-continue {
  padding: 0 0 7px 0;
  border-top: none;
}

.cms-row-tecdata > div:first-child {
  padding-left: 0px;
}

.cms-row-tecdata > div:last-child {
  padding-right: 0px;
}

.cms-text-gray {
  color: rgba(255, 255, 255, 0.6);
}

.cms-cusros-pointer {
  cursor: pointer;
}

.cms-ruler-top-dashed {
  margin-top: 10px !important;
  border-top: 1px dashed rgba(255, 255, 255, 0.6);
  padding-top: 10px !important;
  padding-bottom: 0px !important;
  margin-bottom: 0px !important;
}

.cms-row-download hr {
  margin-top: 0px;
  margin-bottom: 0px;
  border-top: 1px solid rgba(255, 255, 255, 0.6);
}

div.cms-color-select {
  margin: 0 2px;
  padding: 3px;
  border: 1px transparent solid;
  border-radius: 50%;
}

div.cms-color-select.cms-color-selected {
  border: 1px black solid;
}

div.cms-color-select > div {
  width: 15px;
  height: 15px;
  border-radius: 50%;
}

.cms-teaser-kombi img.cms-img-w100,
.cms-img-w100 {
  max-width: unset;
  width: 100%;
  height: auto;
}

/**
 * grid
 */
#cms-content {
  position: relative;
  z-index: 2;
  background-color: #121212;
}

.container-fluid {
  padding-left: 14px;
  padding-right: 14px;
}

/**
 * elements
 */
#cms-element-banner {
  position: fixed;
  top: 0px;
  width: 100%;
  height: 108px;
  z-index: 40;
  transition: top 0.5s ease;
}

#cms-element-switch {
  height: 40px;
  background-color: #2a2a2a;
  padding-top: 0px;
  padding-bottom: 0px;
  color: #a0a0a0;
  font-size: 14px;
}

#cms-element-switch a {
  position: relative;
  color: #fff;
  font-size: 14px;
  line-height: 40px;
  text-decoration: none;
  padding-right: 20px;
  display: inline-block;
}

#cms-element-switch div:last-child > a {
  padding-right: 0px;
}

#cms-element-header {
  height: 68px;
  padding-top: 0px;
  padding-bottom: 0px;
  z-index: 40;
  background-color: rgba(0, 0, 0, 0.9);
}

#cms-element-header-logo {
  padding-right: 43px;
  transform: translate(0, -1px);
}

#cms-element-header-nav a,
#cms-element-header-but a {
  position: relative;
  font-size: 14px;
  text-decoration: none;
  color: #fff;
  height: 68px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-left: 16px;
  padding-right: 16px;
  line-height: 16px;
}

#cms-nav-form-search.cms-navsub-on::after,
#cms-element-switch a.cms-navsub-on::after,
#cms-element-header-nav a.cms-navsub-on::after,
#cms-element-header-but a.cms-navsub-on::after {
  position: absolute;
  display: block;
  top: 100%;
  left: 50%;
  transform: translate(-6px, -12px);
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 6px solid white;
  border-top: 6px solid transparent;
  width: 0px;
  height: 0px;
  content: "";
}

#cms-element-switch a.cms-navsub-on::after {
  left: 60px;
}

#cms-element-switch a[data-id=cms-navsub-languages].cms-navsub-on::after {
  left: unset;
  right: 20px;
}

#cms-element-switch a[data-id=cms-navsub-2].cms-navsub-on::after {
  transform: translate(14px, -1px);
}

#cms-element-switch a[data-id=cms-navsub-switch] {
  padding-left: 6px;
}

#cms-nav-form-search.cms-navsub-on::after {
  transform: translate(0px, 2px);
}

#cms-nav-form-search input[name=term] {
  height: 40px;
  width: 100%;
}

#cms-btn-search-close {
  right: 10px;
  top: 9px;
}

.cms-element {
  padding-top: 35px;
  padding-bottom: 35px;
}

.cms-element-wrap-small .container-fluid {
  max-width: 960px;
  margin-left: 0 auto;
}

.cms-element-wrap-medium.swiper-container,
.cms-element-wrap-medium .container-fluid {
  max-width: 1180px;
  margin-left: 0 auto;
}

.cms-element-headline {
  padding-bottom: 0px;
  text-align: center;
}

.cms-element-footer {
  background-color: #000000;
  color: rgba(255, 255, 255, 0.6);
  font-size: 14px;
}

.cms-teaser-subnav a,
.cms-element-footer a {
  display: block;
  color: rgba(255, 255, 255, 0.6);
  font-size: 14px;
  text-decoration: none;
}

.cms-teaser-card {
  background-color: white;
}

#cms-element-wrap.cms-element-wrap-active {
  position: fixed;
  top: 0px;
  left: 0px;
  right: 0px;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

#cms-element-wrap.cms-element-wrap-active #cms-element-clip {
  position: absolute;
  top: 0px;
  left: 0px;
  right: 0px;
  bottom: 0px;
}

#cms-element-wrap.cms-element-wrap-opacity #cms-element-clip {
  opacity: 0.3;
}

#cms-element-footer-tiles {
  background-color: #121212;
  padding-top: 0px;
  padding-bottom: 0px;
}

#cms-element-footer-tiles .container-fluid {
  padding-left: 0px;
  padding-right: 0px;
}

#cms-element-footer-tiles .row {
  margin: 0px;
}

#cms-element-footer-tiles .row > div {
  padding: 0px;
}

#cms-element-footer-tiles .row > div a {
  font-size: 14px;
  color: rgba(255, 255, 255, 0.6);
  text-decoration: none;
}

#cms-element-footer-tiles .cms-teaser-footer-tile {
  background-color: #262626;
  padding-left: 14px;
  padding-top: 23px;
  padding-bottom: 23px;
  margin: 1px;
}

#cms-element-footer-legend {
  background-color: #121212;
  font-size: 14px;
  color: rgba(255, 255, 255, 0.6);
}

#cms-element-footer-legend a {
  text-decoration: none;
  font-size: 14px;
  color: rgba(255, 255, 255, 0.6);
}

#cms-element-toolbar {
  height: 50px;
  position: fixed;
  width: 100%;
  padding-top: 0px;
  padding-bottom: 0px;
  bottom: 0px;
  left: 0px;
  z-index: 40;
  background-color: rgba(0, 0, 0, 0.9);
}

#cms-element-toolbar-breadcrumb {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-right: 20px;
}

.cms-teaser-breadcrumb {
  white-space: nowrap;
  overflow: hidden;
  border-top: 1px rgba(255, 255, 255, 0.6) solid;
  border-bottom: 1px rgba(255, 255, 255, 0.6) solid;
  margin: 10px 0px 25px;
  padding: 7px 0px;
}

#cms-element-toolbar-breadcrumb a {
  color: #999;
  font-size: 12px;
  line-height: 18px;
  font-weight: 400;
  text-decoration: none;
}

.cms-teaser-breadcrumb a {
  position: relative;
  color: #999;
  font-size: 12px;
  line-height: 18px;
  font-weight: 400;
  text-decoration: none;
  padding-left: 14px;
  padding-right: 10px;
}

.cms-teaser-breadcrumb a::before {
  position: absolute;
  top: 5px;
  left: 0px;
  width: 8px;
  height: 8px;
  font-size: 8px;
  line-height: 8px;
  font-family: GiraIcons;
  content: "H";
  transform: rotate(-90deg);
}

#cms-element-toolbar-socialmedia a {
  color: rgba(255, 255, 255, 0.6);
  font-size: 14px;
  font-weight: 400;
  text-decoration: none;
}

#cms-element-toolbar-breadcrumb .cms-icon {
  color: #999;
  font-size: 8px;
  line-height: 18px;
  font-weight: 400;
  margin: 0 10px 0 6px;
}

#cms-element-toolbar-socialmedia {
  min-width: 198px;
}

#cms-element-toolbar-socialmedia .cms-icon {
  color: #999;
  font-size: 20px;
}

#cms-element-toolbar-socialmedia a > svg {
  width: 24px;
  height: auto;
  display: inline-block;
}

div.cms-element-accordionon + div > .cms-element {
  padding-top: 0px;
  padding-bottom: 0px;
}

/**
 * teaser
 */
/***
.cms-teaser + .cms-teaser {
  padding-top: 0px;
  margin-top: 0px;
}
*/
.cms-teaser {
  padding-top: 25px;
  padding-bottom: 25px;
}

.cms-teaser p {
  margin-bottom: 1em;
}

.cms-teaser .cms-teaser-text > p:last-child {
  margin-bottom: 0;
}

.cms-teaser-ruler {
  padding-top: 0px;
  padding-bottom: 0px;
}

.cms-teaser-headline,
.cms-teaser-kombi {
  padding-top: 25px;
  padding-bottom: 25px;
}

.cms-teaser-card {
  padding-top: 0px;
  padding-bottom: 0px;
  margin-top: 25px;
  margin-bottom: 25px;
}

.cms-teaser > a:not(:last-child) > .cms-swiper-fade,
.cms-teaser > a:not(:last-child) > .cms-swiper-slide,
.cms-teaser > a:not(:last-child) > .cms-teaser-image,
.cms-teaser > .cms-swiper-fade:not(:last-child),
.cms-teaser > .cms-swiper-slide:not(:last-child),
.cms-teaser > .cms-teaser-image:not(:last-child) {
  margin-bottom: 24px;
}

.cms-teaser-card .cms-teaser-image {
  margin-bottom: 16px;
}

.cms-teaser-text p:not(:last-child) {
  margin-bottom: 1em;
}

.swiper-slide .cms-teaser-kombi {
  padding-top: 0px;
}

.gsearch-suggest a,
.cms-teaser-card a,
.cms-teaser-kombi a {
  text-decoration: none;
  border-bottom: 1px white solid;
}

.gsearch-suggest a:hover,
.cms-teaser-card a:hover,
.cms-teaser-kombi a:hover {
  border-bottom: 1px rgba(255, 255, 255, 0.9) solid;
}

.cms-teaser-light a {
  text-decoration: none;
  color: black;
  border-bottom: 1px black solid;
}

.cms-teaser-light a:hover {
  text-decoration: none;
  color: rgba(0, 0, 0, 0.9);
  border-bottom: 1px rgba(0, 0, 0, 0.9) solid;
}

a.cms-nodecoration,
.cms-teaser-download a,
a.cms-nodecoration:hover,
.cms-teaser-download:hover a {
  text-decoration: none;
  border-bottom: none;
}

.cms-teaser-kombi img {
  max-width: 100%;
  height: auto;
}

.cms-teaser-card img {
  width: 100%;
  height: auto;
}

.cms-teaser-tecdata h3,
.cms-teaser-card h2,
.cms-teaser-kombi h2:not(:last-child),
.cms-teaser-kombi h3:not(:last-child),
.cms-teaser-kombi h4:not(:last-child) {
  margin-bottom: 20px;
}

.cms-teaser-card h2,
.cms-teaser-card h3,
.cms-teaser-card h4,
.cms-teaser-card {
  font-size: 14px;
  line-height: 20px;
  font-weight: 400;
}

.cms-teaser-image {
  position: relative;
}

.col-sm-3 .cms-teaser-image-jammer,
.col-sm-4 .cms-teaser-image-jammer,
.col-sm-6 .cms-teaser-image-jammer,
.cms-teaser-image-jammer {
  position: absolute;
  right: 0px;
  top: 0px;
  display: inline-block;
  background-color: #999;
  color: #fff;
  font-size: 22px;
  line-height: 22px;
  font-weight: 300;
  padding: 8px 24px;
}

.cms-teaser-tecdata hr:first-child,
.cms-teaser-headline hr:first-child,
.cms-teaser-kombi hr:first-child {
  margin-top: 0px;
  margin-bottom: 50px;
  border-top: 1px rgba(255, 255, 255, 0.6) solid;
}

.cms-teaser-kombi hr:last-child {
  margin-top: 50px;
  margin-bottom: 0px;
  border-top: 1px rgba(255, 255, 255, 0.6) solid;
}

.cms-teaser-kombi hr:first-child:last-child {
  margin-top: 0px;
  margin-bottom: 0px;
}

.cms-teaser-kombi > *:last-child {
  margin-bottom: 0px;
}

.cms-teaser-card-sync {
  height: calc(100% - 50px);
}

.cms-teaser-card {
  padding-bottom: 16px;
  font-size: 14px;
  line-height: 20px;
  font-weight: 400;
}

.cms-teaser-card h2,
.cms-teaser-card h3,
.cms-teaser-card h4,
.cms-teaser-card p {
  padding-left: 20px;
  padding-right: 20px;
  font-size: 16px;
  line-height: 20px;
}

.cms-teaser-card h2:not(:last-child),
.cms-teaser-card h3:not(:last-child),
.cms-teaser-card h4:not(:last-child) {
  margin-bottom: 10px;
}

.cms-teaser-card h2,
.cms-teaser-card h3,
.cms-teaser-card h4 {
  color: black;
}

a > .cms-teaser-card > h3,
.cms-teaser-card a,
.cms-teaser-card p {
  color: rgba(0, 0, 0, 0.6);
}

.cms-teaser-product-teaser,
.cms-teaser-product-variant {
  position: relative;
  margin-left: 14px;
  margin-right: 14px;
}

/*
.swiper-slide .cms-teaser-kombi {
  margin-left: 14px;
  margin-right: 14px;
}
*/
.cms-teaser-product-teaser img {
  width: 100%;
  height: auto;
}

.cms-teaser-image-product {
  position: relative;
}

.col-md-4 .cms-teaser-image-product,
.col-sm-4 .cms-teaser-image-product {
  width: 292px;
  height: 292px;
  padding-top: 0px;
}

.col-sm-3 .cms-teaser-image-product,
.col-md-3 .cms-teaser-image-product {
  width: 216px;
  height: 216px;
  padding-top: 0px;
}

.cms-teaser-image-product img,
.cms-teaser-product-variant img {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-right: -50%;
  transform: translate(-50%, -50%);
}

.cms-teaser-product-image,
.cms-teaser-image-product {
  background-color: #f5f5f5;
}

.cms-teaser-product-image,
.cms-teaser-image-product {
  padding-top: 53.33333%;
}

.col-sm-6 .cms-teaser-image-product,
.col-md-6 .cms-teaser-image-product {
  padding-top: 67.5675675676%;
}

.cms-teaser-product-text {
  padding-top: 10px;
}

.cms-teaser-border {
  border: 1px solid #707070;
  padding: 15px 20px;
  margin-bottom: 20px;
}

.cms-teaser-border:hover {
  border-color: #fff;
}

a:last-child > .cms-teaser-border {
  margin-bottom: 0px;
}

.cms-a-teaser-border {
  text-decoration: none;
}

.cms-a-teaser-border:hover {
  text-decoration: none;
}

.cms-a-teaser-border p {
  color: rgba(255, 255, 255, 0.6);
}

.cms-teaser-topdown,
.cms-teaser-search-theme,
.cms-teaser-faq-theme {
  padding: 20px 15px;
}

.cms-teaser-search-theme p {
  color: rgba(255, 255, 255, 0.6);
  cursor: pointer;
  display: inline-block;
}

.cms-teaser-faq-theme a {
  color: rgba(255, 255, 255, 0.6);
  text-decoration: none;
}

.cms-teaser-search-theme p.on,
.cms-teaser-faq-theme a.cms-a-on {
  color: #fff;
}

span.cms-pagination {
  display: inline-block;
  width: 48px;
  height: 48px;
  line-height: 48px;
  text-align: center;
  border-radius: 24px;
  background-color: rgba(255, 255, 255, 0.07);
  border: rgba(255, 255, 255, 0.07);
  font-size: 14px;
}

.cms-teaser-pagination a,
a.cms-a-pagination {
  display: inline-block;
  width: 30px;
  height: 30px;
  line-height: 30px;
  text-align: center;
  border-radius: 15px;
  border: 1px #707070 solid;
  margin: 0 4px;
  font-size: 14px;
  text-decoration: none;
}

.cms-teaser-pagination a.cms-a-on {
  color: #121212;
  background-color: #d8d8d8;
}

a.cms-a-pagination .cms-icon,
.cms-teaser-pagination a .cms-icon {
  font-size: 10px;
}

a.cms-a-pagination .cms-icon-chevron_l::before,
.cms-teaser-pagination a .cms-icon-chevron_l::before {
  left: -2px;
  top: 3.5px;
}

a.cms-a-pagination .cms-icon-chevron_r::before,
.cms-teaser-pagination a .cms-icon-chevron_r::before {
  left: 2px;
  top: 3.5px;
}

a.cms-a-pagination .cms-icon-chevron_d::before,
.cms-teaser-pagination a .cms-icon-chevron_d::before {
  top: 0.5px;
}

a.cms-a-pagination .cms-icon-chevron_u::before,
.cms-teaser-pagination a .cms-icon-chevron_u::before {
  top: 3.5px;
}

.cms-teaser-pagination.search-pager a.cms-a-on {
  cursor: default;
}

.cms-teaser-pagination.search-pager a.cms-a-on:hover {
  color: #121212 !important;
}

.cms-teaser-light {
  background-color: #fff;
  color: #121212;
  padding: 25px 25px;
}

.cms-teaser-buttons {
  padding: 15px 0px;
  text-align: center;
}
.cms-teaser-buttons.no-padding {
  padding: 0;
}

.cms-teaser-buttons .btn {
  width: 100%;
  margin: 10px 0px;
  text-decoration: none;
}

.cms-teaser-cross {
  padding-top: 10px;
  padding-bottom: 10px;
}

.cms-teaser-rawhtml h1,
.cms-teaser-rawhtml h2,
.cms-teaser-rawhtml h3 {
  margin-bottom: 1em;
  padding-bottom: 0em;
}

.cms-teaser-topdown a {
  display: block;
  margin: 5px 0;
  text-decoration: none;
}

.cms-teaser-download {
  position: relative;
}

.cms-teaser-download p.cms-teaser-download-image {
  min-height: 140px;
  position: relative;
}

.cms-teaser-download p:first-child img {
  display: block;
  position: absolute;
  left: 0px;
  bottom: 0px;
}

.cms-row-light {
  margin-top: 13px;
  margin-bottom: 13px;
}

.cms-element-light .cms-row-light {
  background-color: #fff;
  color: #121212;
  margin-left: 0;
  margin-right: 0;
  padding: 25px;
  position: relative;
}

.cms-element-light .cms-row-light-vruler {
  padding-top: 35px;
  padding-bottom: 35px;
}

.cms-element-light .cms-row-light-vruler .cms-teaser {
  padding-top: 0px;
  padding-bottom: 0px;
}

.cms-element-light .cms-row-light-vruler > div:first-child {
  padding-bottom: 35px;
}

.cms-teaser-kombi-light {
  padding-top: 0px;
  padding-bottom: 20px;
  margin-top: 12px;
  margin-bottom: 12px;
  background-color: #fff;
  height: calc(100% - 24px);
}

.cms-teaser-kombi-light .cms-teaser-image {
  margin-bottom: 24px;
}

.cms-teaser-kombi-light h3 {
  color: #000;
  font-size: 24px;
  line-height: 28px;
  font-weight: 400;
  padding: 0px 20px 0px 20px;
}

.cms-teaser-kombi-light .cms-teaser-text {
  color: #666;
  font-size: 16px;
  line-height: 24px;
  font-weight: 400;
  padding: 0px 20px 0px 20px;
}

.cms-teaser-accordionon {
  border-top: 1px rgba(255, 255, 255, 0.6) solid;
  background: url(/images/v4/arrow-down.svg) no-repeat right center;
  cursor: pointer;
}

div[aria-expanded=true] > .cms-teaser-accordionon {
  background: url(/images/v4/arrow-up.svg) no-repeat right center;
}

/**
 * atom
 */
hr.cms-atom-hr {
  border-top: 1px rgba(255, 255, 255, 0.6) solid;
}

div.cms-teaser-kombi hr.cms-hr-dashed,
hr.cms-hr-dashed {
  margin-top: 10px;
  border-top: 1px rgba(255, 255, 255, 0.6) dashed;
  padding-top: 10px;
  padding-bottom: 0;
  margin-bottom: 0;
}

#cms-indicator {
  position: fixed;
  top: 50%;
  left: 50%;
  margin-right: -50%;
  transform: translate(-50%, -50%);
  display: block;
}

#cms-overlay {
  position: fixed;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  z-index: 998;
  opacity: 0.6;
  background-color: #121212;
}

.cms-iframe {
  position: fixed;
  background-color: #fff;
  top: 50%;
  left: 50%;
  margin-right: -50%;
  transform: translate(-50%, -50%);
  border: 0;
  overflow: none;
  z-index: 999;
  width: 600px;
  max-width: 90%;
  height: 490px;
}

#cms-iframe-tocgrant {
  width: 600px;
  height: 490px;
}

#cms-btn-scrollspy {
  position: fixed;
  right: 10px;
  top: 50vh;
  transform: translateY(-50%);
  z-index: 10;
  color: white;
}

.cms-element-footer h3 {
  padding-bottom: 20px;
}

#cms-background {
  position: fixed;
  top: 0px;
  right: 0px;
  width: 100vw;
  height: 2231px;
  pointer-events: none;
  background-image: url(/images/v4/bg.png);
  background-repeat: no-repeat;
  background-position: right top;
}

#cms-content #cms-background {
  position: absolute;
}

.cms-element-ruler {
  padding-top: 0px;
  padding-bottom: 0px;
}

.cms-teaser-ruler hr,
.cms-element-ruler hr {
  margin-top: 0px;
  margin-bottom: 0px;
  border-top: 1px rgba(255, 255, 255, 0.6) solid;
}

.cms-teaser-ruler hr {
  margin-top: 25px;
  margin-bottom: 25px;
}

.col-teaser-socialmedia a {
  display: inline-block;
  margin-left: 10px;
}

#cms-element-footer-socialmedia {
  padding-top: 15px;
  padding-bottom: 15px;
}

a.cms-vimeo,
a.cms-youtube {
  overflow: hidden;
  text-decoration: none;
  border-bottom: none;
  margin-bottom: 24px;
}

div.cms-vimeo,
div.cms-youtube {
  margin-bottom: 24px;
}

a.cms-vimeo img,
a.cms-youtube img {
  object-fit: cover;
}

a.cms-vimeo .cms-vimeoplay,
a.cms-youtube .cms-youtubeplay {
  background: url("/images/v4/play-button3-48x48px.svg") no-repeat 0 0;
  cursor: pointer;
  position: absolute;
  left: 12px;
  bottom: 12px;
  width: 48px;
  height: 48px;
}

a.cms-vimeo:hover,
a.cms-youtube:hover {
  border-bottom: none;
}

a.cms-vimeo:hover .cms-vimeoplay,
a.cms-youtube:hover .cms-youtubeplay {
  background: url("/images/v4/play-button4-48x48px.svg") no-repeat 0 0;
}

.row.cms-nav-subrow {
  margin: 0px;
}

.cms-border {
  border: 1px solid #d2d2d2;
  padding: 15px 20px;
  margin-bottom: 20px;
}

.cms-teaser-search-theme .cms-icon-x,
.cms-teaser-faq-theme .cms-icon-x {
  font-size: 12px;
  margin-left: 10px;
}

.cms-dot-count {
  font-size: 14px;
  background-color: #87b400;
  border-radius: 10px;
  padding: 2px 5px 0px;
}

/**
 * navsub
 */
#cms-navsub {
  display: none;
  position: fixed;
  width: 930px;
  z-index: 30;
  top: calc(68px + 40px);
  left: calc((100% - 930px) / 2);
  background-color: #fff;
  transition: top 0.5s ease;
}

#cms-navsub.cms-navsub-languages,
#cms-navsub.cms-navsub-mygira {
  left: unset;
  right: 5%;
  width: 90%;
}

#cms-navsub.cms-navsub-languages {
  top: 40px;
  z-index: 41;
}

#cms-navsub.cms-navsub-switch {
  left: calc(max(30px, (100% - 1120px) / 2) + 131px);
  top: 40px;
  width: auto;
  z-index: 41;
}

body[data-locale^=en] #cms-navsub.cms-navsub-switch {
  left: calc(max(30px, (100% - 1120px) / 2) + 148px);
}

body[data-locale^=es] #cms-navsub.cms-navsub-switch {
  left: calc(max(30px, (100% - 1120px) / 2) + 191px);
}

body[data-locale^=fr] #cms-navsub.cms-navsub-switch {
  left: calc(max(30px, (100% - 1120px) / 2) + 172px);
}

body[data-locale^=it] #cms-navsub.cms-navsub-switch {
  left: calc(max(30px, (100% - 1120px) / 2) + 181px);
}

body[data-locale^=nl] #cms-navsub.cms-navsub-switch {
  left: calc(max(30px, (100% - 1120px) / 2) + 139px);
}

body[data-locale^=pl] #cms-navsub.cms-navsub-switch {
  left: calc(max(30px, (100% - 1120px) / 2) + 174px);
}

body[data-locale^=ru] #cms-navsub.cms-navsub-switch {
  left: calc(max(30px, (100% - 1120px) / 2) + 215px);
}

#cms-navsub.cms-navsub-sac {
  --cms-navsub-sac-width: 320px;
  --cms-navsub-sac-left: 16px;
  right: unset;
  left: var(--cms-navsub-sac-left);
  width: var(--cms-navsub-sac-width);
}

#cms-navsub-globe {
  cursor: pointer;
  padding-right: 10px;
  height: 20px;
}

@media (max-width: 1200px) {
  #cms-navsub.cms-navsub-mygira {
    right: 30px;
  }
}
.cms-navsub-row > .col-4,
.cms-navsub-row > .col-12 {
  padding: 30px;
}

.cms-navsub-row a {
  font-size: 14px;
  line-height: 1.15;
  border-radius: 20px;
  width: 100%;
  padding: 12px 20px;
  color: #000;
  letter-spacing: 0.35px;
  text-decoration: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.cms-navsub-row a:hover {
  background: rgba(0, 0, 0, 0.05);
}

.cms-navsub-row .cms-icon {
  margin-right: 10px;
  margin-left: 0px;
  opacity: 0;
  transition: all 0.2s;
}

.cms-navsub-row a:hover .cms-icon {
  margin-right: 0px;
  margin-left: 10px;
  opacity: 1;
}

.cms-navsub-languages .cms-navsub-row > .col-12,
.cms-navsub-switch .cms-navsub-row > .col-12 {
  padding: 24px 10px;
}

.cms-navsub-languages .cms-navsub-row a,
.cms-navsub-switch .cms-navsub-row a {
  font-size: 14px;
  line-height: 48px;
  border-radius: 0px;
  padding: 0px 114px 0px 30px;
}

.cms-navsub-languages .cms-navsub-row a.cms-a-on,
.cms-navsub-switch .cms-navsub-row a.cms-a-on {
  font-weight: normal;
  background: url(/images/v4/icon-check-000000.svg) no-repeat right 30px center;
}

.cms-navsub-languages .cms-navsub-row a:hover,
.cms-navsub-switch .cms-navsub-row a:hover {
  background-color: rgba(0, 0, 0, 0.05);
}

.cms-navsub-row .cms-navsub-teaser {
  background-color: #f2f2f2;
}

.cms-navsub-row .cms-navsub-teaser a {
  padding: 12px 0 8px 0;
  border-radius: 0;
}

.cms-navsub-row .cms-navsub-teaser a:hover {
  background: inherit;
}

.cms-navsub-row .cms-navsub-teaser a div h4 {
  font-size: 14px;
  line-height: 20px;
  color: #191919;
  font-weight: 430;
}

.cms-navsub-row .cms-navsub-teaser a div p {
  font-size: 14px;
  line-height: 20px;
  color: #666666;
  font-weight: 400;
}

.cms-navsub-row .cms-navsub-teaser a div {
  color: #161616;
}

.cms-navsub-row .cms-navsub-teaser a div span {
  font-size: 16px;
}

.cms-navsub-row .cms-navsub-teaser a div svg {
  width: 24px;
  height: 24px;
}

/**
 * collapse
 */
.cms-element-collapse {
  padding-bottom: 0px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.6);
  margin: 0px 35px 35px;
  padding-top: 0px;
}

/**
 * download
 */
.cms-element-download {
  padding-bottom: 0px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.6);
  margin: 0 35px 35px;
}

.cms-row-download-category {
  border-top: 1px solid rgba(255, 255, 255, 0.6);
}

.cms-teaser-download-category {
  padding-top: 25px;
  padding-bottom: 25px;
  cursor: pointer;
  background: url(/images/v4/arrow-down.svg) no-repeat right center;
}

.cms-row-download[aria-expanded=true] .cms-teaser-download-category {
  background: url(/images/v4/arrow-up.svg) no-repeat right center;
}

.cms-row-order {
  background: url(/images/v4/arrow-down.svg) no-repeat right 10px center;
}

.cms-row-order[aria-expanded=true] {
  background: url(/images/v4/arrow-up.svg) no-repeat right 10px center;
}

.cms-row-download {
  margin-left: 0px;
  margin-right: 0px;
}

.cms-row-download > div {
  padding-left: 0px;
  padding-right: 0px;
}

.cms-row-download .row {
  padding-top: 25px;
  padding-bottom: 25px;
}

.cms-row-download .row > div:nth-child(3) p:not(:first-child) {
  margin-top: 10px;
  border-top: 1px dashed rgba(255, 255, 255, 0.6);
  padding-top: 10px;
}

.cms-row-download hr {
  margin-top: 0px;
  margin-bottom: 0px;
  border-top: 1px solid rgba(255, 255, 255, 0.6);
}

.cms-row-attachment div:nth-child(3) p:not(:first-child) {
  margin-top: 10px;
  border-top: 1px dashed rgba(255, 255, 255, 0.6);
  padding-top: 10px;
}

.cms-row-attachment hr {
  margin-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.6);
  margin-bottom: 20px;
}

/* faq top 5 */
.cms-teaser-faqtop5-question {
  border-top: 1px solid rgba(255, 255, 255, 0.6);
  padding: 25px 35px 25px 0px;
  cursor: pointer;
  background: url(/images/v4/arrow-down.svg) no-repeat right center;
}

.cms-row-faqtop5[aria-expanded=true] .cms-teaser-faqtop5-question {
  background: url(/images/v4/arrow-up.svg) no-repeat right center;
}

/**
 * plyr
 */
:root {
  --plyr-color-main: #4c4c4c;
}

.plyr__control--overlaid {
  padding: 15.33px;
  transform: translate(-50%, -50%) scale(1.1);
}

.plyr--video.plyr--stopped .plyr__controls {
  opacity: 0;
  pointer-events: none;
  transform: translateY(100%);
}

/**
 * swiper
 */
.swiper-pagination-bullet {
  position: relative;
  width: 13px;
  height: 11px;
  border-radius: 0px;
  -webkit-transition: height 0.25s, width 0.25s;
  transition: height 0.25s, width 0.25s;
  cursor: pointer;
  opacity: 1;
  background-color: transparent;
}

.swiper-pagination-bullet::before {
  position: absolute;
  left: 3px;
  bottom: 3px;
  width: 5px;
  height: 5px;
  border-radius: 5px;
  background-color: #fff;
  content: "";
}

.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 21px;
}

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 6px;
}

.swiper-pagination-bullet-active {
  height: 21px;
  background-color: transparent;
}

.swiper-pagination-bullet.swiper-pagination-bullet-active::before {
  height: 15px;
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 99;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: 1px solid #fff;
  background: transparent;
  color: #fff;
  outline: 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  /*margin-top: 34px;  half of fixed head banner */
}

.swiper-button-prev {
  left: 20px;
}

.swiper-button-next {
  right: 20px;
}

/* swiper hero */
#cms-element-swiper-hero {
  position: relative;
  top: 0px;
  left: 0px;
  width: 100%;
  height: calc(50vh - 68px);
  z-index: 1;
}

#cms-element-swiper-hero .swiper-button-prev,
#cms-element-swiper-hero .swiper-button-next {
  transform: none;
}

#cms-element-swiper-hero .swiper-slide > img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

#cms-element-swiper-hero .swiper-slide > div {
  display: inline-block;
  position: absolute;
  text-align: center;
  bottom: 0px;
  left: 0;
  right: 0;
  padding-top: 90px;
  padding-bottom: 87px;
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3) 40%, transparent);
}

#cms-element-swiper-hero .swiper-slide > div > h2 {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}

#cms-element-swiper-hero .swiper-slide > div > a {
  font-size: 16px;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.85);
  text-decoration: underline;
  display: inline-block;
  margin-top: 37px;
}

#cms-swiper-down {
  position: absolute;
  left: 50%;
  margin-left: -12px;
  bottom: 26px;
  z-index: 10;
  width: 24px;
  height: 24px;
  cursor: pointer;
  -webkit-animation: hero-arrow 0.7s ease-in-out infinite alternate;
  animation: cms-animation-hero-arrow 0.7s ease-in-out infinite alternate;
}

#cms-element-swiper-hero .cms-slide-video video {
  object-fit: cover;
  height: 100%;
  width: 100%;
  margin: 0;
  padding: 0;
}

#cms-element-swiper-hero .cms-slide-video .cms-slide-video-button {
  width: 48px;
  height: 48px;
  position: absolute;
  cursor: pointer;
  padding: 0;
  background-image: none;
  left: 50%;
  top: 50%;
  margin-left: -24px;
  margin-top: -24px;
  bottom: unset;
}

#cms-element-swiper-hero .cms-slide-video .cms-slide-video-button-play {
  position: absolute;
  left: 12px;
  top: 12px;
  width: 24px;
  height: 24px;
}

#cms-element-swiper-hero .cms-slide-video .cms-slide-video-button-process {
  top: 0;
  left: 0;
  width: 48px;
  height: 48px;
}

#cms-element-swiper-hero .cms-slide-video .cms-slide-video-button-process > path:first-child {
  stroke: rgba(255, 255, 255, 0.4);
  stroke-width: 1px;
}

#cms-element-swiper-hero .cms-slide-video .cms-slide-video-button-process > path:last-child {
  stroke: #fff;
  stroke-width: 4px;
  stroke-dasharray: 0, 300;
}

@keyframes cms-animation-hero-arrow {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
  }
}
#cms-element-swiper-hero.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 0px;
}

#cms-teaser-hero-mobile {
  max-width: 610px;
  margin-left: auto;
  margin-right: auto;
}

#cms-teaser-hero-mobile h2.h1 {
  font-size: 36px;
  line-height: 40px;
  font-weight: 300;
}

/* swiper variantes */
.cms-element-swiper-variants {
  padding-bottom: 59px;
}

.cms-element-swiper-variants .swiper-slide {
  max-width: 920px;
}

/* swiper download */
.cms-element-swiper-partnerprogramm,
.cms-element-swiper-presse,
.cms-element-swiper-download {
  padding-bottom: 25px;
  margin-bottom: 30px;
}

.cms-swiper-kombi {
  padding-bottom: 35px;
  margin-bottom: 30px;
}

.cms-swiper-kombi.swiper-container-horizontal > .swiper-pagination-bullets,
.cms-element-swiper-light3.swiper-container-horizontal > .swiper-pagination-bullets,
.cms-element-swiper-column3.swiper-container-horizontal > .swiper-pagination-bullets,
.cms-element-swiper-presse.swiper-container-horizontal > .swiper-pagination-bullets,
.cms-element-swiper-partnerprogramm.swiper-container-horizontal > .swiper-pagination-bullets,
.cms-element-swiper-download.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 0px;
}

.cms-element-swiper-partnerprogramm .swiper-button-prev,
.cms-element-swiper-partnerprogramm .swiper-button-next,
.cms-element-swiper-presse .swiper-button-prev,
.cms-element-swiper-presse .swiper-button-next,
.cms-element-swiper-download .swiper-button-prev,
.cms-element-swiper-download .swiper-button-next {
  top: unset;
  transform: unset;
  border: unset;
  width: unset;
  height: unset;
  bottom: 4px;
  z-index: 50;
}

.cms-element-swiper-partnerprogramm .swiper-button-prev,
.cms-element-swiper-presse .swiper-button-prev,
.cms-element-swiper-download .swiper-button-prev {
  left: 0px;
}

.cms-element-swiper-partnerprogramm .swiper-button-next,
.cms-element-swiper-presse .swiper-button-next,
.cms-element-swiper-download .swiper-button-next {
  right: 0px;
}

/* swiper elbridge */
.cms-element-swiper-elbridge {
  max-width: 900px;
  margin: -10px auto;
  padding: 0 0 37px;
}

.cms-element-swiper-elbridge.cms-no-swipe {
  padding: 0;
  margin: -10px auto;
  /* emulate teaser padding (25 + 25) width 25 + 35 - 10 */
}

.cms-element-swiper-elbridge .swiper-pagination {
  bottom: 0px;
}

/* swiper column3 */
.cms-element-swiper-light3.swiper-container,
.cms-element-swiper-column3.swiper-container {
  padding-top: 0px;
  padding-bottom: 31px;
  margin-top: -10px;
  margin-bottom: -10px;
}

.cms-element-swiper-column3 .swiper-button-prev,
.cms-element-swiper-column3 .swiper-button-next {
  position: absolute;
  top: unset;
  transform: unset;
  bottom: 0px;
}
.cms-element-swiper-column3 .swiper-button-prev {
  left: 0px;
}
.cms-element-swiper-column3 .swiper-button-next {
  right: 20px;
}

.cms-element-swiper-light3.swiper-container .swiper-slide {
  height: auto;
}

.cms-element-swiper-light3.swiper-container .cms-teaser-text {
  min-height: 96px;
}

.cms-element-swiper-light3.swiper-container .cms-teaser-text p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  overflow: hidden;
}

/**
 * Hamburger
 */
#cms-btn-hamburger .cms-icon-menu {
  transform: translateY(4px);
}

#cms-element-header-log0 {
  position: relative;
}

#cms-element-hamburger-wrap {
  display: none;
  position: fixed;
  top: 0px;
  left: 0px;
  width: calc(100vw - 48px);
  min-height: 100dvh;
  overflow-x: hidden;
  z-index: 50;
}

#cms-element-hamburger-clip {
  background-color: #ffffff;
  position: absolute;
  top: 0px;
  width: calc(2 * (100vw - 48px));
  /* left: calc(-2 * (100vw - 48px)); */
  transform: translateX(calc(-2 * (100vw - 48px)));
  overflow: hidden;
}

.cms-element-hamburger-clip-transition {
  /* transition: left 0.4s; */
  transition: transform 0.4s;
}

#cms-element-hamburger-clip.cms-element-hamburger-idx0 {
  /* left: 0px; */
  transform: translateX(0);
}

#cms-element-hamburger-clip.cms-element-hamburger-idx1 {
  /* left: calc(-1 * (100vw - 48px)); */
  transform: translateX(calc(-1 * (100vw - 48px)));
}

.cms-teaser-hamburger {
  float: left;
  width: calc(100vw - 48px);
  min-height: 100dvh;
}

.cms-hamburger-head {
  padding-left: 20px;
  padding-right: 20px;
  height: 68px;
  border-bottom: 1px solid #dbdbdb;
}

.cms-hamburger-zielgruppe {
  padding-left: 20px;
  padding-right: 20px;
  height: 48px;
  border-bottom: 1px solid #dbdbdb;
}

body .cms-teaser-hamburger .cms-hamburger-zielgruppe a {
  color: #999;
  margin-right: 20px;
  display: inline-block;
  line-height: 46px;
}

body .cms-teaser-hamburger .cms-hamburger-zielgruppe a.cms-a-extern {
  background: url(/images/v4/icon-link-extern-999999.svg) no-repeat right center/24px 24px;
  padding-right: 26px;
}

body .cms-teaser-hamburger .cms-hamburger-zielgruppe div:last-child a {
  margin-right: 0px;
}

body .cms-teaser-hamburger .cms-hamburger-zielgruppe a.cms-a-on {
  color: #000;
  font-weight: 400;
  border-bottom: 1px solid #121212;
}

.cms-hamburger-row {
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 12px;
  padding-bottom: 12px;
}

.cms-teaser-hamburger a:not([data-id]) {
  font-size: 16px;
  line-height: 24px;
  color: #000;
  text-decoration: none;
}

.cms-teaser-hamburger .cms-hamburger-row-toppanel a:not([data-id]) {
  line-height: 22px;
  font-size: 14px;
}

.cms-teaser-hamburger a[data-id] {
  font-size: 14px;
  line-height: 1.15;
  color: #121212;
  text-decoration: none;
}

.cms-teaser-hamburger .cms-icon {
  font-size: 14px;
}

.cms-hamburger-row-country-head {
  border: 1px solid #dbdbdb;
  color: #121212;
  padding: 12px 20px;
  margin: 20px;
  cursor: pointer;
}

.cms-hamburger-row-country-head > div:last-child {
  border-left: 1px solid #a0a0a0;
  padding-left: 20px;
}

.cms-hamburger-row-country-head > div:last-child .cms-icon {
  font-size: 14px;
}

#cms-hamburger-languages {
  width: 100%;
  background: linear-gradient(to bottom, #dbdbdb 0px, #dbdbdb 1px, #f2f2f2 2px, #f2f2f2 48px, white 49px);
  bottom: 0px;
  padding-top: 48px;
  position: absolute;
  transition: bottom 0.5s ease;
}

#cms-hamburger-languages a {
  font-size: 14px;
}

.cms-hamburger-row-bggray {
  background-color: #f2f2f2;
}

/**
 * Scrollspy
 */
#cms-scrollspy {
  z-index: 30;
}

#cms-scrollspy:hover {
  position: fixed;
  width: 225px;
  height: 100vh;
  background-color: #121212;
  right: 0px;
  top: 0px;
}

#cms-scrollspy > div {
  display: block;
  position: fixed;
  right: 5px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 30;
}

#cms-scrollspy-mobile {
  position: absolute;
  top: 0px;
  right: 0px;
  padding-right: 25px;
  background-color: #121212;
  min-height: 100vh;
  z-index: 20;
  padding-top: 68px;
  width: 80%;
  display: flex;
  align-items: center;
}

#cms-scrollspy-mobile > div {
  width: 100%;
}

#cms-scrollspy-mobile a,
#cms-scrollspy a {
  display: block;
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  position: relative;
  text-decoration: none;
  display: block;
  visibility: hidden;
  font-size: 12px;
}

#cms-scrollspy a {
  line-height: 25px;
  padding-right: 25px;
  overflow: hidden;
  text-overflow: ellipsis;
  width: 205px;
  white-space: nowrap;
}

#cms-scrollspy-mobile a,
#cms-scrollspy:hover a {
  visibility: visible;
  color: white;
}

#cms-scrollspy a.active {
  padding-right: 10px;
}

@media (min-width: 1320px) {
  #cms-scrollspy a.active {
    font-size: 12px;
    visibility: visible;
    color: white;
  }
}
#cms-scrollspy-mobile a {
  margin-top: 12px;
  margin-bottom: 12px;
  font-size: 28px;
  line-height: 32px;
  font-weight: 330;
}

#cms-scrollspy:hover a.active {
  font-size: 16px;
  font-weight: 400;
}

#cms-scrollspy a.active {
  padding-right: 35px;
}

#cms-scrollspy-mobile a.active {
  padding-right: 10px;
  font-weight: 400;
}

#cms-scrollspy-mobile a::before,
#cms-scrollspy a::before {
  position: absolute;
  top: 50%;
  transform: translate(0%, -50%);
  right: -15px;
  display: block;
  width: 5px;
  height: 5px;
  border-radius: 2.5px;
  -webkit-transition: height 0.2s, width 0.2s;
  transition: height 0.2s, width 0.2s;
  background-color: white;
  cursor: pointer;
  opacity: 1;
  content: "";
  visibility: visible;
}

#cms-scrollspy a::before {
  right: 10px;
}

#cms-scrollspy-mobile a.active::before,
#cms-scrollspy a.active::before {
  width: 15px;
}

/**
 * bootstrap
 */
.popover {
  border: 1px white solid;
  border-radius: 0;
  background-color: #121212;
  color: white;
}

.cms-popover-theme-1.popover {
  background-color: white;
}

.popover-body {
  color: #d8d8d8;
}

.cms-popover-theme-1.popover .popover-body {
  color: #121212;
}

.bs-popover-bottom > .arrow::before {
  border-bottom-color: #d8d8d8;
}

.bs-popover-bottom > .arrow::after {
  border-bottom-color: #121212;
  top: 2px;
}

.btn {
  font-size: 14px;
  line-height: 46px;
  height: 48px;
  border-radius: 24px;
  padding-left: 30px;
  padding-right: 30px;
  padding-top: 0px;
  padding-bottom: 0px;
  border: none;
  text-decoration: none;
  box-shadow: 0px 1px 5px rgba(0, 0, 0, 0.2), 0px 3px 1px rgba(0, 0, 0, 0.12), 0px 2px 2px rgba(0, 0, 0, 0.14) !important;
  white-space: nowrap;
}

.btn-mini {
  font-size: 12px !important;
  line-height: 24px;
  height: 26px;
  border-radius: 14px;
  padding-left: 14px;
  padding-right: 14px;
  margin-right: 4px;
  margin-bottom: 8px;
  cursor: pointer;
}

.btn-primary {
  border: 1px solid white !important;
  background-color: white;
  color: black !important;
}

.btn-primary.btn-mini {
  color: #666 !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
  background-color: #e7e7e7 !important;
  color: black !important;
  box-shadow: none !important;
}

.btn-primary.btn-mini:hover,
.btn-primary.btn-mini:focus,
.btn-primary.btn-mini:active {
  border: 1px solid white !important;
  color: #666 !important;
}

.btn-secondary {
  border: 1px solid #707070 !important;
  background-color: transparent !important;
  color: white !important;
  box-shadow: none !important;
}

.btn-secondary:hover,
.btn-secondary:focus,
.btn-secondary:active {
  border: 1px solid #a0a0a0 !important;
  background-color: transparent !important;
  color: white !important;
  box-shadow: none !important;
}

.btn-icon {
  width: 100%;
  background-repeat: no-repeat;
  background-position: 30px center;
  background-size: auto 36px;
  text-align: left;
  text-decoration: none;
}

.btn-icon-auto {
  background-repeat: no-repeat;
  background-position: 20px center;
  padding: 0 20px 0 55px;
  text-align: center;
  text-decoration: none;
}

.btn-icon-left {
  padding-left: 80px;
}

.btn-icon-left-auto {
  width: auto;
  padding-left: 80px;
}

.btn-icon-internet {
  background-image: url(/images/v4/btn-internet-d8d8d8.svg);
}

.btn-icon-download {
  background-image: url(/images/v4/btn-download-d8d8d8.svg);
}

.btn-icon-training {
  background-image: url(/images/v4/btn-training-d8d8d8.svg);
}

.btn-icon-media {
  background-image: url(/images/v4/btn-media-d8d8d8.svg);
}

.btn-icon-configurator {
  background-image: url(/images/v4/btn-configurator-d8d8d8.svg);
}

.btn-icon-faq {
  background-image: url(/images/v4/btn-faq-d8d8d8.svg);
}

.btn-icon-installation {
  background-image: url(/images/v4/btn-installation-d8d8d8.svg);
}

.btn-icon-bs {
  background-image: url(/images/v4/btn-bs-d8d8d8.svg);
}

.btn-icon-appshop {
  background-image: url(/images/v4/btn-appshop-d8d8d8.svg);
}

.btn-icon-document {
  background-image: url(/images/v4/btn-document-d8d8d8.svg);
  background-size: auto 28px;
}

.btn-icon-back {
  background-image: url(/images/v4/icon-back-d8d8d8.svg);
}

.btn-icon-retour {
  background-image: url(/images/v4/icon-retour-d8d8d8.svg);
}

.btn-icon-reklamation {
  background-image: url(/images/v4/icon-reklamation-d8d8d8.svg);
}

.btn-icon-copy {
  background-image: url(/images/v4/btn-copy-d8d8d8.svg);
}

/*
.btn-icon-internet.btn-primary { background-image: url(/images/v4/btn-internet-121212.svg); }
.btn-icon-download.btn-primary { background-image: url(/images/v4/btn-download-121212.svg); }
.btn-icon-training.brn-primary { background-image: url(/images/v4/btn-training-121212.svg); }
.btn-icon-media.btn-primary { background-image: url(/images/v4/btn-media-121212.svg); }
*/
.cms-teaser-light .btn-primary {
  color: white !important;
  background-color: black;
}

.cms-teaser-light .btn-primary:hover {
  color: white !important;
  background-color: rgba(0, 0, 0, 0.9) !important;
}

.cms-teaser-light .btn-primary:focus,
.cms-teaser-light .btn-primary:active {
  color: white !important;
  background-color: rgba(0, 0, 0, 0.85) !important;
  box-shadow: none !important;
}

.cms-row-light .btn-primary {
  color: black !important;
  background-color: white !important;
  box-shadow: none !important;
  border: 1px solid #999 !important;
}

.cms-row-light .btn-primary:hover,
.cms-row-light .btn-primary:focus,
.cms-row-light .btn-primary:active {
  border: 1px solid #000 !important;
}

.cms-teaser-light .btn-secondary {
  color: black !important;
  background-color: transparent !important;
  border: 1px solid #999 !important;
  box-shadow: none !important;
  text-decoration: none;
}

.cms-teaser-light .btn-secondary:focus,
.cms-teaser-light .btn-secondary:active,
.cms-teaser-light .btn-secondary:hover {
  border: 1px solid #000 !important;
}

.cms-element-buttons .btn {
  min-width: 250px;
  margin-top: 10px;
  margin-bottom: 10px;
  text-decoration: none;
}

.modal-content {
  background-color: #121212;
  border-color: #d8d8d8;
  border-radius: 0;
}

.modal-header {
  border-bottom: none;
}

.modal-footer {
  border-top: none;
}

.modal-content button.close,
.modal-content button.close span:hover {
  opacity: 1 !important;
  text-shadow: none !important;
  color: #fff !important;
}

.table-dark {
  background-color: transparent;
}

.table-dark th,
.table-dark thead th,
.table-dark td {
  border-color: rgba(255, 255, 255, 0.6);
}

.embed-responsive-450by169::before {
  padding-top: 37.5555555556%;
}

.embed-responsive-444by300::before {
  padding-top: 67.5675675676%;
}

.embed-responsive-3by2::before {
  padding-top: 66.66666%;
}

.embed-responsive-9by5::before {
  padding-top: 55.555555%;
}

.object-fit-cover {
  object-fit: cover;
}

.tooltip-inner {
  color: #121212;
  background-color: #fff;
}

.bs-tooltip-auto[x-placement^=top] .arrow::before, .bs-tooltip-top .arrow::before {
  border-top-color: #fff;
}

.bs-tooltip-auto[x-placement^=left] .arrow::before, .bs-tooltip-left .arrow::before {
  border-left-color: #fff;
}

.bs-tooltip-auto[x-placement^=right] .arrow::before, .bs-tooltip-right .arrow::before {
  border-right-color: #fff;
}

.bs-tooltip-auto[x-placement^=bottom] .arrow::before, .bs-tooltip-bottom .arrow::before {
  border-bottom-color: #fff;
}

.cms-tooltip-dark .tooltip-inner {
  color: #fff;
  background-color: #000;
}

.cms-tooltip-dark .bs-tooltip-auto[x-placement^=top] .arrow::before, .cms-tooltip-dark .bs-tooltip-top .arrow::before {
  border-top-color: #000;
}

.cms-tooltip-dark .bs-tooltip-auto[x-placement^=left] .arrow::before, .cms-tooltip-dark .bs-tooltip-left .arrow::before {
  border-left-color: #000;
}

.cms-tooltip-dark .bs-tooltip-auto[x-placement^=right] .arrow::before, .cms-tooltip-dark .bs-tooltip-right .arrow::before {
  border-right-color: #000;
}

.cms-tooltip-dark .bs-tooltip-auto[x-placement^=bottom] .arrow::before, .cms-tooltip-dark .bs-tooltip-bottom .arrow::before {
  border-bottom-color: #000;
}

/**
 * Formulare
*/
/* theme white border black background on black page*/
.cms-form-theme-0 .custom-select,
.cms-form-theme-0 .form-control,
.cms-form-theme-0 .custom-file-label,
.cms-form-theme-0 .form-control:hover,
.cms-form-theme-0 .custom-select:hover,
.cms-form-theme-0 .form-control:focus,
.cms-form-theme-0 .custom-select:focus {
  background-color: transparent;
  border-color: white;
  color: #fff;
  box-shadow: none;
}
.cms-form-theme-0 .form-control::placeholder {
  color: rgba(255, 255, 255, 0.6);
}
.cms-form-theme-0 .form-control + span.cms-icon {
  color: #fff;
}
.cms-form-theme-0 .custom-select {
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23ffffff' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px !important;
}
.cms-form-theme-0 .custom-select option {
  color: #fff;
  background-color: #121212;
}
.cms-form-theme-0 .custom-select[data-chosen] {
  color: rgba(255, 255, 255, 0.6);
}
.cms-form-theme-0 .custom-select[data-chosen]:not([data-chosen=""]),
.cms-form-theme-0 .custom-select[data-chosen]:not([data-chosen=""]) + .ui-selectmenu-button.ui-button {
  color: #fff;
}

/* theme white border white background on black page*/
form .custom-select,
form .form-control,
form .custom-file-label,
form .custom-select:hover,
form .form-control:hover,
form .custom-select:focus,
form .form-control:focus,
.cms-form-theme-1 .custom-select,
.cms-form-theme-1 .form-control,
.cms-form-theme-1 .custom-file-label,
.cms-form-theme-1 .custom-select:hover,
.cms-form-theme-1 .form-control:hover,
.cms-form-theme-1 .custom-select:focus,
.cms-form-theme-1 .form-control:focus {
  background-color: #fff;
  border-color: #fff;
  color: #121212;
}
form .form-control::placeholder,
.cms-form-theme-1 .form-control::placeholder {
  color: rgba(0, 0, 0, 0.5);
}
form .custom-select,
.cms-form-theme-1 .custom-select {
  background: #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23000' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px !important;
}
form .form-control + span.cms-icon,
.cms-form-theme-1 .form-control + span.cms-icon {
  color: #000;
}
form .custom-select[data-chosen],
.cms-form-theme-1 .custom-select[data-chosen] {
  color: rgba(0, 0, 0, 0.4);
}
form .custom-select[data-chosen]:not([data-chosen=""]),
form .custom-select[data-chosen]:not([data-chosen=""]) + .ui-selectmenu-button.ui-button,
.cms-form-theme-1 .custom-select[data-chosen]:not([data-chosen=""]),
.cms-form-theme-1 .custom-select[data-chosen]:not([data-chosen=""]) + .ui-selectmenu-button.ui-button {
  color: #121212;
}

/* theme black border white background on white page*/
.cms-form-theme-2 .custom-select,
.cms-form-theme-2 .form-control,
.cms-form-theme-2 .custom-file-label,
.cms-form-theme-2 .custom-select:hover,
.cms-form-theme-2 .form-control:hover,
.cms-form-theme-2 .custom-select:focus,
.cms-form-theme-2 .form-control:focus {
  background-color: #fff;
  border-color: #121212;
  color: #121212;
}
.cms-form-theme-2 .form-control::placeholder {
  color: rgba(0, 0, 0, 0.5);
}
.cms-form-theme-2 .custom-select {
  background: #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23000' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px !important;
}
.cms-form-theme-2 .form-control + span.cms-icon {
  color: #000;
}
.cms-form-theme-2 .custom-select[data-chosen] {
  color: rgba(0, 0, 0, 0.4);
}
.cms-form-theme-2 .custom-select[data-chosen]:not([data-chosen=""]),
.cms-form-theme-2 .custom-select[data-chosen]:not([data-chosen=""]) + .ui-selectmenu-button.ui-button {
  color: #121212;
}
.cms-form-theme-2 .btn {
  box-shadow: none !important;
}
.cms-form-theme-2 .btn-primary {
  border-color: #999 !important;
}
.cms-form-theme-2 .btn:hover {
  border-color: #000 !important;
}

.cms-teaser-light .custom-radio .custom-control-input ~ .custom-control-label::before, .cms-teaser-light .custom-checkbox .custom-control-input ~ .custom-control-label::before {
  background-color: transparent !important;
  border-color: #333 !important;
}

.cms-teaser-light .custom-radio:hover .custom-control-input ~ .custom-control-label::before, .cms-teaser-light .custom-checkbox:hover .custom-control-input ~ .custom-control-label::before {
  border-color: #000 !important;
}

.cms-teaser-light .custom-radio .custom-control-input:checked ~ .custom-control-label::after, .cms-teaser-light .custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-color: #333 !important;
  background-image: none;
  border-radius: 20px;
  width: 16px;
  height: 16px;
  left: 4px;
  top: 4px;
}

.cms-teaser-light .custom-radio:hover .custom-control-input:checked ~ .custom-control-label::after, .cms-teaser-light .custom-checkbox:hover .custom-control-input:checked ~ .custom-control-label::after {
  background-color: #000 !important;
}

.custom-control-label::before,
.custom-file-label,
.custom-select {
  transition: none;
}

.cms-form-row .chosen-container,
.cms-form-row input,
.cms-form-row select,
.cms-form-row .custom-file,
.cms-form-row select + .ui-selectmenu-button.ui-button {
  margin-top: 10px;
  margin-bottom: 10px;
}

.custom-file-label,
.custom-file-label::after,
.custom-select,
.form-control {
  height: 46px;
  padding: 0 10px;
  border-radius: 0px;
  font-size: 14px;
  line-height: 20px;
}

.custom-select {
  padding: 0 12px;
}

textarea.form-control {
  padding: 10px 15px;
}

form .custom-file {
  height: 46px;
}

form .custom-file-label {
  background-color: transparent;
  line-height: 44px;
  color: #fff;
}

form .custom-file-label::after {
  background-color: white;
  color: #121212;
  height: 44px;
  line-height: 44px;
}

.form-control[data-arrow] + span.cms-icon {
  position: absolute;
  top: 50%;
  right: 5px;
  transform: translateY(-50%);
  opacity: 0;
  transition: right 0.2s, opacity 0.2s;
}

.form-control[data-arrow].cms-not-empty:focus + span.cms-icon {
  right: 20px;
  opacity: 1;
}

.custom-slider p {
  margin-top: 6px;
  margin-bottom: 0;
}
.custom-slider input {
  margin-left: 1rem;
  margin-right: 1rem;
  -webkit-appearance: none;
  width: 100%;
  height: 15px;
  background: #ffffff;
  background: rgba(255, 255, 255, 0.6);
  outline: none;
}
.custom-slider input::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: white;
  cursor: pointer;
}
.custom-slider input::-moz-range-thumb {
  width: 25px;
  height: 25px;
  border-radius: 50%;
  border: #fff 1px solid;
  background: #000000;
  cursor: pointer;
}
.custom-slider input::-ms-thumb {
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: #000000;
  cursor: pointer;
}

.ads-campaign {
  padding-bottom: 20px;
}
.ads-campaign p {
  margin: 0;
}
.ads-campaign .ad-headline {
  margin-top: 10px;
  margin-bottom: 10px;
}
.ads-campaign .ad-headline.google {
  margin-top: 2px;
}
.ads-campaign img {
  max-height: 250px;
}
.ads-campaign .ad-campaign-active {
  color: green;
}
.ads-campaign .ad-campaign-ended {
  color: yellow;
}
.ads-campaign .ad-campaign-inactive {
  color: red;
}

.ad-hr {
  padding-bottom: 20px;
}

#ads-map {
  height: 500px;
}

.ads-radio {
  padding-bottom: 20px;
}
.ads-radio .custom-radio {
  margin-top: 15px;
}

form[data-type=brochures] .form-control[data-bestellnr],
form[data-type=brochures] .form-control[readonly] {
  width: 46px;
  margin-right: 10px;
}

form[data-type=brochures] .form-control[readonly] {
  background-color: rgba(255, 255, 255, 0.5);
}

form[data-type=brochures] .form-control[data-bestellnr] + label,
form[data-type=brochures] .form-control[readonly] + label {
  margin-bottom: 0px;
}

.form-control:focus,
.form-control.is-valid:focus,
.was-validated .form-control:valid:focus {
  box-shadow: none !important;
  border-color: inherit;
}

.was-validated .form-control:valid,
.was-validated .form-control:valid:focus {
  border-color: inherit;
  padding-right: inherit;
  background-image: none;
}

.was-validated .custom-select:valid,
.was-validated .custom-select:valid:focus {
  border-color: inherit;
  padding-right: inherit;
}

.form-control.is-invalid,
.custom-select.is-invalid,
.was-validated .form-control:invalid,
.was-validated .custom-select:invalid,
.custom-select.is-invalid + .ui-selectmenu-button.ui-button,
.was-validated .custom-select:invalid + .ui-selectmenu-button.ui-button {
  border-color: #dc3545 !important;
}

.custom-control {
  padding-left: 34px;
}

.custom-control-label {
  position: static;
}

.custom-control-input {
  position: absolute;
  z-index: 2;
  opacity: 0;
  top: 3px;
  left: 3px;
  transform: scale(1.5);
}

.custom-control-input.is-valid ~ .custom-control-label,
.was-validated .custom-control-input:valid ~ .custom-control-label {
  color: inherit;
}

.custom-radio .custom-control-input ~ .custom-control-label:before,
.custom-checkbox .custom-control-input ~ .custom-control-label:before {
  position: absolute;
  background-color: transparent !important;
  border-radius: 0;
  box-shadow: none !important;
  position: absolute;
  content: "";
  height: 24px;
  width: 24px;
  top: 0;
  left: 0;
}

.custom-radio .custom-control-input ~ .custom-control-label:before {
  border-radius: 12px;
}

.custom-radio .custom-control-input ~ .custom-control-label:before,
.custom-checkbox .custom-control-input ~ .custom-control-label:before {
  border-color: rgba(255, 255, 255, 0.4) !important;
}

.custom-radio .custom-control-input.is-invalid ~ .custom-control-label:before,
.custom-checkbox .custom-control-input.is-invalid ~ .custom-control-label:before,
.was-validated .custom-radio .custom-control-input:invalid ~ .custom-control-label:before,
.was-validated .custom-checkbox .custom-control-input:invalid ~ .custom-control-label:before {
  border-color: #dc3545 !important;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  position: absolute;
  top: 2px;
  left: 4px;
  background: none;
  content: "I";
  font-family: GiraIcons;
}

.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
  position: absolute;
  top: 6px;
  left: 6px;
  background-color: #fff;
  border-radius: 6px;
  width: 12px;
  height: 12px;
}

.cms-form-theme-0.cms-form-theme-brochure .form-control {
  margin-right: 10px;
  width: 36px;
  height: 24px;
  padding: 0 5px;
  border-color: rgba(255, 255, 255, 0.4) !important;
}

.cms-form-theme-0.cms-form-theme-brochure .form-control[readonly] {
  border-color: rgba(255, 255, 255, 0.2) !important;
}

.cms-input-download {
  background: url(/images/v4/btn-download-121212.svg) no-repeat right 10px center/auto 18px;
}

.cms-input-remove {
  background: url(/images/v4/btn-remove-121212.svg) no-repeat right 10px center/auto 18px;
}

.custom-radio .custom-control-input:disabled ~ .custom-control-label:before,
.custom-checkbox .custom-control-input:disabled ~ .custom-control-label:before {
  border-color: #333 !important;
}

.custom-control-input:disabled ~ .custom-control-label {
  color: #d8d8d8;
}

/**
 * icons
 */
.cms-icon {
  font-family: GiraIcons;
  font-size: 16px;
  line-height: 1.15;
  display: inline-block;
  position: relative;
}

.cms-icon-partnerprogramm {
  height: 74px;
  width: auto;
}

.cms-icon-arrow_r::before {
  position: relative;
  top: 1px;
  content: "A";
}

.cms-icon-xing::before {
  content: "b";
}

.cms-icon-pinterest::before {
  content: "v";
}

.cms-icon-facebook::before {
  content: "J";
}

.cms-icon-twitter::before {
  content: "K";
}

.cms-icon-instagram::before {
  content: "L";
}

.cms-icon-youtube::before {
  content: "N";
}

.cms-icon-linkedin::before {
  content: "O";
}

.cms-icon-search::before {
  content: "P";
}

.cms-icon-star::before {
  content: "Q";
}

.cms-icon-menu::before {
  content: "S";
}

.cms-icon-check::before {
  content: "I";
}

.cms-icon-info::before {
  content: "d";
}

.cms-icon-x::before {
  content: "T";
}

.cms-icon-forward::before {
  content: "?";
}

.cms-icon-more_v::before {
  content: "Z";
  position: relative;
  left: 9px;
  top: 1px;
}

.cms-icon-share::before {
  content: "[";
}

.cms-icon-user::before {
  content: "z";
  font-size: 22px;
  line-height: 22px;
  position: relative;
  top: 3px;
}

.cms-icon-chevron_d::before,
.cms-icon-chevron_u::before,
.cms-icon-chevron_l::before,
.cms-icon-chevron_r::before {
  content: "H";
  position: relative;
  top: 4.5px;
}

.cms-icon-xsmall.cms-icon-chevron_d::before {
  top: 0px;
  left: 4px;
  font-size: 9px;
}

.cms-icon-chevron_l {
  transform: rotate(90deg);
}

.cms-icon-chevron_r {
  transform: rotate(-90deg);
}

.cms-icon-chevron_u {
  transform: rotate(180deg);
}

.cms-icon.cms-icon-xsmall {
  font-size: 10px;
}

.cms-icon.cms-icon-medium,
.col-teaser-socialmedia .cms-icon {
  font-size: 20px;
}

.col-teaser-socialmedia a > svg {
  width: 24px;
  height: auto;
}

.cms-icon-on {
  color: #121212;
  background-color: #fff;
  border-radius: 50%;
}

.cms-icon-user.cms-icon-on {
  padding: 5px 9px;
}

#cms-element-footer-legend .cms-icon {
  font-size: 32px;
  line-height: 32px;
  color: rgba(255, 255, 255, 0.6);
}

#cms-element-footer-legend a > svg {
  width: 34px;
  height: auto;
}

.cms-cta-button .cms-icon {
  font-size: 24px;
}

.cms-cta-button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 40px;
  height: 40px;
  border-radius: 100%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 24px;
  -webkit-box-shadow: 0 6px 12px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 6px 12px 0 rgba(0, 0, 0, 0.1);
  color: #fff;
  text-decoration: none;
  background-color: #000;
}

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

.cms-notification {
  padding: 10px;
  border: none;
  background-color: #87b400;
  color: #fff;
  border-radius: 8px;
  display: inline-block;
  position: fixed;
  top: 78px;
  left: 50%;
  margin-right: -50%;
  transform: translate(-50%, 0);
  z-index: 666;
}

.cms-notification.cms-notification-warn {
  color: red;
}

/**
 * FAQ
 */
.cms-faq-row p {
  margin-bottom: 1em;
}

/**
 * downlload popup lange
 */
.cms-teaser-download-language {
  position: absolute;
  background-color: #121212;
  z-index: 2 !important;
  border: 1px solid #d8d8d8;
  padding: 10px;
}

.cms-teaser-download-language:after {
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-top: 10px solid #121212;
  content: "";
  height: 0;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translate(-50%, -2px);
  width: 0;
}

.cms-teaser-download-language:before {
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-top: 10px solid #d8d8d8;
  content: "";
  height: 0;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translate(-50%, 0px);
  width: 0;
}

.cms-teaser-download-language a {
  display: block;
  color: white;
}

.cms-teaser-download-language a:hover {
  color: rgba(255, 255, 255, 0.8);
}

/**
 * Retouren
 */
.cms-status-dot {
  display: inline-block;
  border: 8px solid #969696;
  border-radius: 8px;
  content: "";
  height: 0;
  width: 0;
}

.cms-status-green {
  border-color: #87b400;
}

.cms-status-yellow {
  border-color: #ffca30;
}

.cms-status-red {
  border-color: #ff261a;
}

/**
 * Kompetenzdatenbank
 */
#gmap {
  overflow: hidden;
  padding-bottom: 56.25%;
  position: relative;
  height: 600px;
}

#fakemap {
  transition: filter 250ms ease;
}
#fakemap.blurred {
  filter: blur(2px);
}

.maps-info {
  color: #000000;
  margin: 10px;
}
.maps-info h4 {
  color: #000000;
}
.maps-info .maps-info-content {
  margin-top: 10px;
}
.maps-info .maps-info-content p.maps-info-address {
  margin-bottom: 10px;
}
.maps-info .maps-info-content p {
  margin-bottom: 0;
}
.maps-info .maps-info-content p span {
  display: inline-block;
  width: 75px;
}
.maps-info .maps-info-content p a {
  color: #000000;
  text-decoration: none;
}

#mapconsent {
  position: absolute;
  top: 0;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background-color: transparent;
}
#mapconsent p {
  margin-bottom: 0;
  background-color: #ffffff;
  padding: 1em;
}

.map-spinner {
  width: 64px;
  height: 64px;
  left: calc(50% - 32px);
  top: calc(50% - 32px);
  animation: rotator 1.4s linear infinite;
  position: absolute;
  width: 132px;
  height: 132px;
  left: calc(50% - 66px);
  top: calc(50% - 66px);
  z-index: 100;
}
.map-spinner .path {
  stroke-dasharray: 187;
  stroke-dashoffset: 0;
  transform-origin: center;
  animation: dash 1.4s ease-in-out infinite;
  stroke: rgba(0, 0, 0, 0.9);
  stroke-width: 6;
  stroke-linecap: round;
}

@keyframes rotator {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(270deg);
    transform: rotate(270deg);
  }
}
@keyframes dash {
  0% {
    stroke-dashoffset: 187;
  }
  50% {
    stroke-dashoffset: 46.75;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
  }
  100% {
    stroke-dashoffset: 187;
    -webkit-transform: rotate(450deg);
    transform: rotate(450deg);
  }
}
/**
 * Search
 */
#gsearch2 {
  height: 40px;
  border: 1px solid #a0a0a0;
  background-color: transparent;
  width: 0px;
  transition: width 0.5s ease;
}

.gsearch-suggest a {
  cursor: pointer;
}

.pagination {
  border-top: 1px solid #cccccc;
  padding-top: 10px;
  padding-bottom: 22px;
}

.pagination ul {
  display: inline;
  padding: 0;
}

.pagination li {
  list-style-type: none;
  display: inline;
}

.search-results p {
  margin-bottom: 28px;
}

.search-filters ul {
  margin: 0px 0px 30px;
}

.search-selection ul {
  margin: 0px 0px 30px;
}

/* cookie consent */
.consent-dialog {
  background-color: #e3e3e3;
  z-index: 40;
  position: fixed;
  left: 16px;
  right: 16px;
  top: 102px;
  border-radius: 6px;
  max-width: 800px !important;
  height: auto !important;
  margin: 30px auto;
}

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

.consent-dialog p,
.consent-dialog .text {
  color: #323232 !important;
}

.consent-dialog a {
  color: #999999;
  text-decoration: none;
}

.consent-dialog a:hover {
  color: #323232;
}

.consent-dialog label {
  font-weight: 400 !important;
}

.consent-dialog .consent-content {
  max-width: 800px !important;
  height: auto !important;
  border: 1px solid #c8c8c8 !important;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
  position: relative;
  background-color: #fff;
  background-clip: padding-box;
  border-radius: 6px;
  outline: 0;
}

.consent-dialog .consent-body {
  position: relative;
  padding-top: 25px;
  padding-right: 25px;
  padding-bottom: 10px;
  padding-left: 25px;
}

.consent-dialog .options {
  margin-top: 20px;
  margin-bottom: 20px;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
}

.consent-dialog .option {
  display: inline-flex;
  padding-left: 34px;
  margin-right: 1rem;
  min-height: 24px;
  margin-bottom: 10px;
  position: relative;
}

.consent-dialog .option .consent-input {
  position: absolute;
  z-index: 2;
  opacity: 0;
  top: 3px;
  left: 3px;
  transform: scale(1.5);
  padding: 0;
}

.consent-dialog .option .consent-label::after {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 14px;
  height: 14px;
  content: "";
}

.consent-dialog .option .consent-input:checked ~ .consent-label::after {
  position: absolute;
  top: 6px;
  left: 5px;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23000' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e");
}

.consent-dialog .option .consent-label {
  position: static;
  margin-bottom: 0;
  vertical-align: top;
  margin-top: 3px;
}

.consent-dialog .option .consent-label:before {
  background-color: transparent !important;
  border-radius: 0;
  box-shadow: none !important;
  position: absolute;
  content: "";
  height: 24px;
  width: 24px;
  top: 0;
  left: 0;
  border: #adb5bd solid 1px;
  pointer-events: none;
  display: block;
}

.consent-dialog .consent-btn {
  cursor: pointer;
  font-size: inherit;
  margin: 0 5px 15px 5px;
  width: 100%;
  height: 48px;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  border: 1px solid transparent;
  border-radius: 24px;
  padding: 0 20px;
  width: 248px;
  background: transparent;
  border-color: #707070;
  color: #000;
}

.consent-dialog .consent-btn.consent-btn-green {
  border-color: #000;
  background: #000;
  color: #fff;
}

.consent-dialog .consent-btn:hover {
  border-color: #000;
}

.consent-dialog .consent-btn.consent-btn-green:hover {
  background: #191919;
}

@media (max-width: 767px) {
  .consent-dialog {
    top: 65px;
    position: absolute;
  }

  .consent-dialog .consent-body {
    padding: 10px 10px 0 10px;
  }

  .consent-dialog .option {
    min-width: 150px;
  }

  .consent-dialog .consent-btn {
    width: 100%;
    margin-left: 0px;
    margin-right: 0px;
  }
}
/**
 * Breakpoints
 */
@media (max-width: 575.98px) {
  .cms-row-teaser-horizontal .cms-teaser-kombi:first-child {
    padding-bottom: 24px;
  }

  .cms-row-teaser-horizontal .cms-teaser-kombi:last-child {
    padding-top: 0px;
  }

  .cms-element-buttons .row > div {
    text-align: center;
  }
}
@media (max-width: 767.98px) {
  .cms-w--sm-100 {
    width: 100%;
  }

  .cms-row-image-text > div:first-child > .cms-teaser-kombi {
    padding-bottom: 24px;
  }

  .cms-row-image-text > div:last-child > .cms-teaser-kombi {
    padding-top: 0px;
  }

  #cms-element-swiper-hero .swiper-slide > div {
    padding-bottom: 187px;
  }

  .cms-teaser-kombi .cms-teaser-image-scroll {
    overflow-x: scroll;
  }

  .cms-teaser-kombi .cms-teaser-image-scroll img {
    max-width: unset;
    width: 767px;
    height: auto;
  }
}
@media (min-width: 576px) {
  #cms-navsub.cms-navsub-languages,
#cms-navsub.cms-navsub-mygira {
    width: 60%;
  }
}
@media (min-width: 768px) {
  .container-fluid {
    padding-left: 30px;
    padding-right: 30px;
  }

  #cms-element-footer-tiles .cms-teaser-footer-tile {
    padding-left: 30px;
  }

  /*.swiper-slide .cms-teaser-kombi, */
  .cms-teaser-product-teaser,
.cms-teaser-product-variant {
    margin-left: 30px;
    margin-right: 30px;
  }

  .cms-teaser-buttons .btn {
    width: auto;
    margin-right: 10px;
    margin-left: 10px;
  }

  .cms-teaser-cross .btn-icon {
    width: 80%;
  }

  #cms-navsub.cms-navsub-languages,
#cms-navsub.cms-navsub-mygira {
    width: 45%;
  }

  .cms-teaser-image-jammer {
    right: 24px;
    top: 24px;
    font-size: 28px;
    line-height: 28px;
    padding: 12px 36px;
  }

  .cms-teaser-breadcrumb a:first-child {
    padding-left: 0px;
  }

  .cms-teaser-breadcrumb a:first-child::before {
    display: none;
  }

  .cms-element-light .cms-row-light-vruler > div:first-child {
    border-right: 1px black solid;
    padding-bottom: 35px;
  }
}
@media (min-width: 992px) {
  body {
    padding-top: 108px;
  }

  h1, .h1 {
    font-size: 48px;
    line-height: 52px;
  }

  .cms-teaser-card,
.cms-teaser-card h2,
.cms-teaser-card h3,
.cms-teaser-card h4,
.cms-teaser-card p,
.cms-teaser-card,
.cardtext {
    font-size: 16px !important;
    line-height: 24px !important;
  }

  .cms-element-swiper-variants {
    padding-top: 65px;
    padding-bottom: 95px;
  }

  /* text only being shown in active slide which will be zoomed so decrease text size before to fit after zoom effect */
  .cms-element-swiper-variants .swiper-slide .cms-teaser-kombi h2,
.cms-element-swiper-variants .swiper-slide .cms-teaser-kombi .cms-teaser-text,
.cms-element-swiper-variants .swiper-slide .cms-teaser-kombi p,
.cms-element-swiper-variants .swiper-slide .cms-teaser-text,
.cms-element-swiper-variants .cms-teaser-product-text {
    display: none;
  }

  .swiper-slide.swiper-slide-active .cms-teaser-kombi h2,
.swiper-slide.swiper-slide-active .cms-teaser-kombi .cms-teaser-text,
.swiper-slide.swiper-slide-active .cms-teaser-kombi p,
.swiper-slide.swiper-slide-active .cms-teaser-product-text {
    display: block;
  }

  .cms-element-swiper-variants .swiper-slide .cms-teaser-kombi .cms-teaser-text,
.cms-element-swiper-variants .swiper-slide .cms-teaser-kombi p,
.cms-element-swiper-variants .swiper-slide .cms-teaser-text,
.cms-element-swiper-variants .cms-teaser-product-text {
    font-size: calc(16px / 1.167);
    line-height: calc(24px / 1.167);
  }

  .cms-element-swiper-variants .swiper-slide .cms-teaser-kombi h2 {
    font-size: calc(32px / 1.167);
    line-height: calc(36px / 1.167);
  }

  .cms-element-swiper-variants .swiper-slide {
    width: 771.208226221px;
    max-width: calc(100% / 1.167);
    transition: transform 0.3s, -webkit-transform 0.3s;
  }

  .cms-element-swiper-variants .swiper-slide.swiper-slide-active {
    transform: scale(1.167);
    z-index: 3;
  }

  .cms-element-swiper-variants::after,
.cms-element-swiper-variants::before {
    position: absolute;
    display: block;
    content: "";
    width: 15%;
    top: 65px;
    height: 411px;
    z-index: 2;
  }

  .cms-element-wrap-medium.cms-element-swiper-variants::after,
.cms-element-wrap-medium.cms-element-swiper-variants::before {
    width: 10%;
  }

  .cms-element-swiper-variants:not(.cms-element-wrap-medium)::before {
    left: 0;
    background-image: linear-gradient(90deg, #121212, rgba(245, 245, 245, 0));
  }

  .cms-element-swiper-variants:not(.cms-element-wrap-medium)::after {
    right: 0;
    background-image: linear-gradient(270deg, #121212, rgba(245, 245, 245, 0));
  }

  .swiper-slide .cms-teaser-kombi {
    margin-left: 0px;
    margin-right: 0px;
  }

  .cms-teaser-product-teaser,
.cms-teaser-product-variant {
    position: relative;
    width: 771.208226221px;
    margin-left: 0px;
    margin-right: 0px;
  }

  .cms-teaser-product-teaser img {
    object-fit: cover;
    width: 771.208226221px;
    height: 411.311053985px;
  }

  .cms-teaser-product-image {
    background-color: #e4e4e4;
    height: 411.311053985px;
    padding-top: 0;
  }

  .swiper-slide.swiper-slide-active .cms-teaser-product-image {
    background-color: #f5f5f5;
  }

  .cms-teaser-cross .btn-icon {
    width: 75%;
  }

  body[data-locale^=de] .cms-teaser-cross .btn-icon {
    width: 60%;
  }

  #cms-navsub.cms-navsub-languages,
#cms-navsub.cms-navsub-mygira {
    width: 290px;
    right: calc((100% - 1120px) / 2);
  }

  #cms-element-swiper-hero {
    height: calc(100vh - 68px - 40px);
  }

  #cms-element-swiper-hero .swiper-pagination {
    display: none;
  }

  #cms-nav-form-search {
    padding-left: 16px;
  }
}
/* Sysint search */
#sysint-search-intro,
#sysint-search-panel {
  display: none;
}

#sysint-search-intro.sysint-search-extend-on,
#sysint-search-panel.sysint-search-extend-on {
  display: flex;
}

#iframe_reference {
  box-sizing: content-box;
  position: fixed;
  background-color: #fff;
  left: 50%;
  top: 50%;
  margin-left: -301px;
  margin-top: -315px;
  z-index: 999;
  border: 0;
  padding: 20px 25px 0px 25px;
  width: 552px;
  height: 617px;
}

/**
 * datatables
 */
.compare-table .dataTables_scrollBody table tbody tr td:first-child {
  visibility: hidden;
}
.compare-table .DTFC_LeftBodyWrapper {
  height: auto !important;
}
.compare-table .DTFC_Cloned tr.single-row td,
.compare-table .dataTables_scrollBody table tr td.empty {
  background-color: #6c6c6c !important;
}
.compare-table table.dataTable thead th,
.compare-table table.dataTable tbody td {
  padding: 0;
}
.compare-table table.dataTable tbody th div,
.compare-table table.dataTable tbody td div {
  padding: 10px;
}
.compare-table table.dataTable thead th {
  vertical-align: bottom;
  font-weight: 400;
}
@media (min-width: 640px) {
  .compare-table {
    /* hide overlay */
    /* show orig table */
  }
  .compare-table .dataTables_scrollBody {
    overflow-x: hidden !important;
  }
  .compare-table .compare-table .DTFC_LeftWrapper {
    display: none;
  }
  .compare-table .compare-table .dataTables_scrollBody table tbody tr td:first-child {
    visibility: visible;
  }
  .compare-table .compare-table .dataTables_scrollBody table tbody tr td .single-col {
    background-color: #6c6c6c !important;
  }
  .compare-table .compare-table .dataTables_scrollHead th {
    background-color: transparent !important;
  }
}
.compare-table .DTFC_LeftBodyLiner {
  overflow-y: hidden !important;
  width: auto !important;
  height: auto !important;
  max-height: none !important;
}
.compare-table .header-desc {
  margin-top: 25px;
  padding: 10px;
}
.compare-table .normal-row .row-entry {
  margin-left: 33px;
}
.compare-table table.dataTable tbody tr:not(:last-child) td {
  border-bottom: 1px rgba(255, 255, 255, 0.3) solid;
}
.compare-table table.dataTable th {
  border-bottom: 1px rgba(255, 255, 255, 0.6) solid;
}
.compare-table .header-entry {
  margin-top: 25px;
  margin-left: 33px;
  padding-bottom: 10px;
}
.compare-table .dataTables_scrollBody table tbody tr {
  background-color: transparent;
}
.compare-table .dataTables_scrollHead th,
.compare-table table.DTFC_Cloned thead,
.compare-table table.DTFC_Cloned tbody tr td:first-child {
  background-color: #262626;
}
.compare-table .dataTables_scrollBody {
  border-bottom: 0 !important;
}

table.dataTable.cms-table-datasheet thead .sorting_desc {
  background: url(/images/v4/arrow-down.svg) no-repeat left center !important;
}

table.dataTable.cms-table-datasheet thead .sorting_asc {
  background: url(/images/v4/arrow-up.svg) no-repeat left center !important;
}

table.dataTable.cms-table-datasheet thead .sorting {
  background: url(/images/v4/arrow-updown.svg) no-repeat left center !important;
}

table.dataTable.cms-table-datasheet tbody tr {
  background-color: transparent;
}

table.dataTable.cms-table-datasheet.no-footer {
  border-bottom-color: rgba(255, 255, 255, 0.6);
}

table.dataTable.cms-table-datasheet td.cms-tcol-buttons {
  vertical-align: top;
}

/*
 * evalanche form
 */
#eva_form_container {
  margin-top: 35px;
}
#eva_form_container .evalanche-loader-wrapper {
  height: 300px;
  display: flex;
  justify-content: center;
  align-items: center;
}
#eva_form_container .evalanche-loader {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background-color: #fff;
  box-shadow: 32px 0 #fff, -32px 0 #fff;
  position: relative;
  animation: evaflash 0.5s ease-out infinite alternate;
}
@keyframes evaflash {
  0% {
    background-color: #FFF2;
    box-shadow: 32px 0 #FFF2, -32px 0 #FFF;
  }
  50% {
    background-color: #FFF;
    box-shadow: 32px 0 #FFF2, -32px 0 #FFF2;
  }
  100% {
    background-color: #FFF2;
    box-shadow: 32px 0 #FFF, -32px 0 #FFF2;
  }
}
#eva_form_container #form_error_mandatory, #eva_form_container #form_error_validation, #eva_form_container #form_error_mandatory_title, #eva_form_container #form_error_validation_title {
  margin-bottom: 1em;
}
#eva_form_container h3 {
  margin-bottom: 20px;
}
#eva_form_container #form_error_validation, #eva_form_container #form_error_mandatory, #eva_form_container #form_error_mandatory_title, #eva_form_container #form_error_validation_title {
  white-space: pre-line;
}
#eva_form_container .mandatory-error, #eva_form_container #form_error_mandatory, #eva_form_container #form_error_mandatory_title {
  color: #dc3545 !important;
}
#eva_form_container .validation-error, #eva_form_container #form_error_validation, #eva_form_container #form_error_validation_title {
  color: #dc3545 !important;
}
#eva_form_container input[type=date].mandatory-error,
#eva_form_container input[type=date].validation-error,
#eva_form_container input[type=text].mandatory-error,
#eva_form_container input[type=text].validation-error {
  color: #121212 !important;
  border: 3px solid #dc3545 !important;
  padding: 0 8px !important;
}
#eva_form_container input[type=date].mandatory-error::placeholder,
#eva_form_container input[type=date].validation-error::placeholder,
#eva_form_container input[type=text].mandatory-error::placeholder,
#eva_form_container input[type=text].validation-error::placeholder {
  color: #dc3545;
}
#eva_form_container div.label {
  padding-right: 10px;
  padding-bottom: 5px;
}
#eva_form_container .field_col {
  display: inline-block;
  padding-right: 15px;
  padding-bottom: 10px;
}
#eva_form_container #form input {
  overflow: visible;
  outline: none;
}
#eva_form_container #form input[type=date],
#eva_form_container #form input[type=text],
#eva_form_container #form select,
#eva_form_container #form textarea {
  outline: none;
  margin: 0;
  font-family: "Univers Next W02", verdana;
  display: block;
  width: 100%;
  font-weight: 400;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  height: 46px;
  padding: 0 10px;
  border-radius: 0px;
  font-size: 14px;
  line-height: 20px;
  background-color: #fff;
  border-color: #fff;
  color: #121212;
}
#eva_form_container #form input[type=checkbox] {
  position: absolute;
  z-index: 2;
  opacity: 0;
  top: 3px;
  left: 3px;
  transform: scale(1.5);
}
#eva_form_container .eva-checkbox {
  position: relative;
  display: block;
  min-height: 1.5rem;
  padding-left: 30px;
}
#eva_form_container .eva-checkbox label::before {
  display: block;
  pointer-events: none;
  border: #adb5bd solid 1px;
  border-color: rgba(255, 255, 255, 0.4) !important;
  transition: none;
  color: #fff;
  background-color: transparent !important;
  border-radius: 0;
  box-shadow: none !important;
  position: absolute;
  content: "";
  height: 24px;
  width: 24px;
  top: 0;
  left: 0;
}
#eva_form_container .eva-checkbox input + label::after {
  position: absolute;
  background-color: transparent !important;
  border-radius: 0;
  box-shadow: none !important;
  position: absolute;
  content: "";
  height: 24px;
  width: 24px;
  top: 0;
  left: 0;
}
#eva_form_container .eva-checkbox input:checked + label::after {
  position: absolute;
  top: 2px;
  left: 4px;
  background: none;
  content: "I";
  font-family: GiraIcons;
}
#eva_form_container #form input[type=radio] {
  height: 24px;
  width: 24px;
}
#eva_form_container .cols-1 > .field_col {
  width: 100%;
  display: inline-block;
  margin: 0;
  padding: 0 0 20px 0;
  /* font-size: 14px; */
}
#eva_form_container .cols-1 > .field_col > div {
  padding-right: 10px;
  padding-bottom: 5px;
}
#eva_form_container .cols-2 > .field_col {
  width: 50%;
  display: inline-block;
  margin: 0;
  padding: 0 0 20px 0;
  /* font-size: 14px; */
}
#eva_form_container .cols-2 > .field_col > div {
  padding-right: 10px;
  padding-bottom: 5px;
}
#eva_form_container .cols-3 > .field_col {
  width: 33%;
  display: inline-block;
  margin: 0;
  padding: 0 0 20px 0;
  /* font-size: 14px; */
}
#eva_form_container .cols-3 > .field_col > div {
  padding-right: 10px;
  padding-bottom: 5px;
}
#eva_form_container .cols-4 > .field_col {
  width: 25%;
  display: inline-block;
  margin: 0;
  padding: 0 0 20px 0;
  /* font-size: 14px; */
}
#eva_form_container .cols-4 > .field_col > div {
  padding-right: 10px;
  padding-bottom: 5px;
}
#eva_form_container .field_col {
  vertical-align: top;
}

.cms-thema-teaser p:first-child {
  margin-bottom: 0px;
}

#cms-element-header-but {
  transform: translate(16px, 0px);
}

model-viewer {
  position: absolute;
  background-color: transparent;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
  --progress-bar-color: none;
  --progress-bar-height: 0px;
}

model-viewer::part(default-progress-bar) {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200"><circle fill="%23FFFFFF" stroke="%23FFFFFF" stroke-width="14" r="15" cx="40" cy="100"><animate attributeName="opacity" calcMode="spline" dur="2" values="1;0;1;" keySplines=".5 0 .5 1;.5 0 .5 1" repeatCount="indefinite" begin="-.4"></animate></circle><circle fill="%23FFFFFF" stroke="%23FFFFFF" stroke-width="14" r="15" cx="100" cy="100"><animate attributeName="opacity" calcMode="spline" dur="2" values="1;0;1;" keySplines=".5 0 .5 1;.5 0 .5 1" repeatCount="indefinite" begin="-.2"></animate></circle><circle fill="%23FFFFFF" stroke="%23FFFFFF" stroke-width="14" r="15" cx="160" cy="100"><animate attributeName="opacity" calcMode="spline" dur="2" values="1;0;1;" keySplines=".5 0 .5 1;.5 0 .5 1" repeatCount="indefinite" begin="0"></animate></circle></svg>');
  --progress-bar-color: transparent;
  background-size: 10%;
  background-repeat: no-repeat;
  background-position: center;
}

.mdl-poster {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background-image: var(--lazy-load-poster);
  background-size: auto;
  background-repeat: no-repeat;
  background-position: center;
}

.mdl-load-button {
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.2), 0 0 4px rgba(0, 0, 0, 0.25);
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate3d(-50%, -50%, 0);
  z-index: 100;
  cursor: pointer;
}
