.isSticky{
	position: fixed;
}

/*+++
STAGE
+++*/
.w-100{
    width:100%;
}
.stage{
    --headlineSizeH1: clamp(3rem, 2.2719rem + 3.6405vw, 5rem);
    --headlineSizeH2: min(calc(var(--headlineSizeH1) / 2),3rem);
    margin-bottom: calc(var(--stageDescription) + 50px);
    position: relative;
    --imgPosH:center;
    --imgPosV:center;
    --stageDescription:0px;
}
.stage::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: calc(var(--headerHeight) * 3);
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.75), transparent);
    z-index: 1;
    opacity: 1;
}
.stage::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    height: 50px;
    top: calc(var(--stageDescription) + 100%);
    background: linear-gradient(180deg, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.1) 50%,transparent 100%);
}
.stage.hasSubNav::after{
    top:calc(var(--stageDescription) + 100% + var(--subStickyNavHeight));
}
.stage.hasSubNav {
    margin-bottom: calc(50px + var(--subStickyNavHeight) + var(--stageDescription));
}
.stage .container-fluid, .breadcrumb-menu .container-fluid {
    max-width: calc(100vw / 12 * 11);
    min-width: min(100%, 1320px);
    z-index: 1;
}
.stage-n, .stage {
    --height: 75vh;
    --heights: 75svh;
    height: var(--height);
    height: var(--heights);
}
.stage-s {
    --height: 50vh;
    --heights: 50svh;
    height: var(--height);
    height: var(--heights);
}
.stage-b {
    --height: 85vh;
    --heights: 85svh;
    height: var(--height);
    height: var(--heights);
}
.stage-f, .stage-product {
    --height: 100vh;
    --heights: 100svh;
    height: var(--height);
    height: var(--heights);
}
.stage-n .stage-content, .stage .stage-content {
    height: var(--height);
    height: var(--heights);
    width: 100%;
    position: relative;
}

.stage-f .stage-content, .stage-b .stage-content {
    height: var(--height);
    height: var(--heights);
    width: 100%;
    position: absolute;
}

.stage-img-wrap img {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    object-fit: cover;
    object-position: var(--imgPosH) var(--imgPosV);
}

.stage video.stag-bg-video {
    width: 100%;
    height: 100%;
    position: absolute;
    object-fit: cover;
    object-position: var(--imgPosH) var(--imgPosV);
}

.stage-img-wrap {
    position: relative;
    height: 100%;
    padding-top: 8rem;
}

.stage .headline .container-fluid{
    padding-bottom: clamp(1rem, calc(100vw / 12 / 4), calc(1920px / 12 / 4));
    position: relative;
    height: 100%;
}
.stage .headline hgroup {
    position: relative;
}
.stage .product-image{
    position: absolute;
    bottom: 100%;
    left:0;
    height: calc(var(--height) - 100%);
    height: calc(var(--heights) - 100%);
    z-index: -1;
}
.stage .product-image img{
    height: 100%;
    object-fit: contain;
    object-position: center bottom;
    }

.stage h1 {
    font-size: var(--headlineSizeH1);
    color: #000;
    margin-bottom: 0.15em;
    position: absolute;
    bottom: 100%;
    width: 100%;
}
.stage h1 span.spantitle{
    font-size: var(--headlineSizeH2);
    display: block;
    line-height: 1em;
}
h1 span.preline {
    display: block;
    width: fit-content;
    font-size: clamp(1.25rem, 0.25em, 2rem);
    line-height: 1.2em;
    background: rgba(0, 0, 0, 0.3);
    backdrop-filter: blur(12px);
    padding: 0 0.5rem 0.25rem 0.5rem;
    color: #fff;
}
.headline h1::before {
    content: '';
    position: absolute;
    top: -1rem;
    left: calc(var(--bs-gutter-x) * -.5);
    right: calc(var(--bs-gutter-x) * -.5);
    bottom: -0.15em;
    background: linear-gradient(0deg, rgba(255,255,255,0.75) 25%, transparent);
    z-index: -1;
}
.headline h1::after {
    content: '';
    position: absolute;
    top: -1rem;
    left: calc(var(--bs-gutter-x) * -.5);
    right: calc(var(--bs-gutter-x) * -.5);
    bottom: -0.15em;
    background: #fff;
    z-index: -2;
}
.stage h2 {
    font-size: var(--headlineSizeH2);
    font-weight: 200;
    margin-top: .5rem;
}
.stage-description{
    position: absolute;
    top: 100%;
    left: 0;
    padding: 0.75rem;
}
p .preisvalue, .preisvalue {
    font-size: 40px;
    line-height: 40px;
    font-weight: 700;
}
@media (min-width: 992px) {
    .stage::after {
        top: 100%;
    }
    .stage.hasSubNav::after {
        top: calc(100% + var(--subStickyNavHeight));
    }
    .stage{
        --headlineSizeH1: clamp(5rem, 1.6667rem + 4.4444vw, 7rem);
        margin-bottom: 50px;
    }
    .stage.hasSubNav {
        margin-bottom: calc(50px + var(--subStickyNavHeight));
    }
    .stage h1 {
        color: #fff;
        background: transparent;
    }
    .headline h1::before,.headline h1::after {
        display: none;
    }
    h1 span.preline {
        background: rgba(255, 255, 255, 0.5);
        color: #000;
    }
    .stage .product-image{
        position: absolute;
        bottom: 0;
        right: 0;
        left: unset;
        height: auto;
    }
    .stage .product-image img{
        max-height: calc(var(--height) - var(--headerHeight));
        max-height: calc(var(--heights) - var(--headerHeight));
        object-fit: contain;
        object-position: center;
    }
    .stage.stage-product .headline .container-fluid{
        min-height: 33vh;
        max-height: 65vh;
    }
    .stage-description{
        position: unset;
        top: unset;
        left: unset;
        padding: unset;
    }
}








.breadcrumb-menu{
	background-color: hsla(0,0%,94%,1.00);
    margin-top: calc(-50px - var(--subStickyNavHeight));
    top:calc(var(--headerHeight) + var(--scroll)) !important;
    transition:  top .1s ease
}
.breadcrumb { 
  list-style: none; 
  overflow: hidden; 
  padding: 0;
  margin:0;
    display: flex;
    flex-wrap: nowrap;
    white-space: nowrap;
    width: 100%;
}
.breadcrumb li { 
    margin: 0 !important;
    overflow: hidden;
    position: relative;
    max-width: fit-content;
    min-width: 10%;
}
.breadcrumb li a {
  color: #000000;
  text-decoration: none !important; 
  padding: 5px 12px 5px 5px;
  background: hsla(0,0%,94%,1.00); 
  position: relative; 
  display: block;
  float: left;
	font-weight: 600;
	font-size: 12px;
	overflow: hidden;
        text-overflow: ellipsis;
    white-space: nowrap;
    width: 100%;
}
.breadcrumb li a:after { 
  content: " "; 
  display: block; 
  width: 0; 
  height: 0;
  border-top: 30px solid transparent;           /* Go big on the size, and let overflow hide */
  border-bottom: 30px solid transparent;
  border-left: 10px solid hsla(0,0%,94%,1.00);
  position: absolute;
  top: 50%;
  margin-top: -30px; 
	right: 2px;
  z-index: 2; 
}	
.breadcrumb li a:before { 
  content: " "; 
  display: block; 
  width: 0; 
  height: 0;
  border-top: 30px solid transparent;           /* Go big on the size, and let overflow hide */
  border-bottom: 30px solid transparent;
  border-left: 10px solid white;
  position: absolute;
  top: 50%;
  margin-top: -30px; 
	right: 0;
  z-index: 1; 
}
@media(min-width:992px){
    .breadcrumb-menu{
    top:calc(var(--headerHeight)) !important;
    transition:  none;
}
    .breadcrumb li { 
        min-width: auto;
    }
}
@media(min-width:768px){
	.breadcrumb li a {
	  padding: 10px 32px 10px 16px;
		font-size: 14px;
	}
	.breadcrumb li a:after { 
	  border-top: 50px solid transparent;           /* Go big on the size, and let overflow hide */
	  border-bottom: 50px solid transparent;
	  border-left: 30px solid hsla(0,0%,94%,1.00);
	  margin-top: -50px; 
	}	
	.breadcrumb li a:before { 
	  border-top: 50px solid transparent;           /* Go big on the size, and let overflow hide */
	  border-bottom: 50px solid transparent;
	  border-left: 30px solid white;
	  margin-top: -50px;  
	}
}
.breadcrumb li:first-child a {
  padding-left: 10px;
	color:        hsla(0,0%,70%,1.00);
}
.breadcrumb li:nth-child(2) a       { color:        hsla(0,0%,60%,1.00); }
/*.breadcrumb li:nth-child(2) a:after { border-left-color: hsla(0,0%,80%,1.00); }*/
.breadcrumb li:nth-child(3) a       { color:        hsla(0,0%,50%,1.00); }
/*.breadcrumb li:nth-child(3) a:after { border-left-color: hsla(0,0%,85%,1.00); }*/
.breadcrumb li:nth-child(4) a       { color:        hsla(0,0%,40%,1.00); }
/*.breadcrumb li:nth-child(4) a:after { border-left-color: hsla(0,0%,90%,1.00); }*/
.breadcrumb li:nth-child(5) a       { color:        hsla(0,0%,30%,1.00); }
/*.breadcrumb li:nth-child(5) a:after { border-left-color: hsla(0,0%,95%,1.00); }*/
.breadcrumb li:last-child a {
  background: transparent !important;
  color: black;
  pointer-events: none;
  cursor: default;
}
.breadcrumb li:last-child a:after { border: 0; }
.breadcrumb li:last-child a:before { border: 0; }
.breadcrumb li a:hover {  color:#ff0000; }

.lex-titel{
	font-size: 65px;
    text-transform: uppercase;
    margin: 80px 0 30px 0;
    line-height: 60px;
	font-family: 'bebas-neue-pro','Arial',sans-serif;
    font-style: normal;
    font-weight: 600;
	color:#fff;
}

@media (max-width: 539px){
.lex-titel {
    font-size: 42px;
    line-height: 40px;
}
	}

/*---
STAGE
----*/







.link-box {
    position: relative;
    overflow: hidden;
    height: 100%;
    display: table;
    table-layout: fixed;
}
.link-box.anzahl-1 {
	max-height: 25vh;
}
.link-box.anzahl-2 {
	max-height: 25vh;
}
.link-box.anzahl-3 {
	max-height: 25vh;
}
.link-box.anzahl-4 {
	max-height: 25vh;
}
.link-box:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: 0.3;
    z-index: 1;
    transition: all 0.5s ease;
}
.link-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
    position: absolute;
    z-index: 0;
    transition: all 0.5s ease;
}

.inhalt-link-box {
    display: table-cell;
    width: 100%;
    text-align: center;
    text-decoration: none !important;
	vertical-align: middle;
    padding:50px 30px;
    z-index: 2;
    position: relative;
}
.inhalt-link-box h3 {
    color: #fff;
    text-decoration: none;
}
.inhalt-link-box p {
    color: #fff;
}
a.inhalt-link-box p {
	display: none;
}
label .ext-link-box{
	opacity: 0;
	transition: all 0.5s ease;
	position: relative;
    width: 100%;
    padding: 0 30px;
    left: 0;
    display: grid;
    grid-template-rows: 0fr;
	}
label .ext-link-box-inner{
        overflow: hidden;
    }
input:checked+label.inhalt-link-box .ext-link-box {
	opacity: 1;
    grid-template-rows: 1fr;
	}
span.more {
    border: 1px solid #fff;
    color: #fff;
    padding: 7px 15px;
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 600;
    margin-top: 15px;
    display: inline-block;
}

.inhalt-link-box h3:after {
    content: 'i';
    border-radius: 30px;
    background: #fff;
    width: 20px;
    height: 20px;
    line-height: 20px;
    font-size: 16px;
    font-weight: 700;
    overflow: hidden;
    position: absolute;
    color: #000000;
    font-family: 'open-sans', sans-serif;
    margin-left: 10px;
    opacity: 1;
    transition: all 0.5s ease;
}
input:checked+label.inhalt-link-box h3:after, .link-box:hover h3:after{
    opacity: 0;
}
@media (min-width:641px){
	.link-box.anzahl-1 {
		max-height: 25vh;
	}
	.link-box.anzahl-2 {
		max-height: 25vh;
	}
	.link-box.anzahl-3 {
		max-height: 25vh;
	}
	.link-box.anzahl-4 {
		max-height: 25vh;
	}
}
@media (min-width:1025px){
	.link-box.anzahl-1 {
		max-height: 100vh;
	}
	.link-box.anzahl-2 {
		max-height: 100vh;
	}
	.link-box.anzahl-3 {
		max-height: 100vh;
	}
	.link-box.anzahl-4 {
		max-height: 100vh;
	}
	.inhalt-link-box p {
		display: block;
	}
	.inhalt-link-box {
		
	}
	.ext-link-box{
	opacity: 0;
	transition: all 0.5s ease;
	position: relative;
    width: 100%;
    padding: 0 30px;
    left: 0;
    display: grid;
    grid-template-rows: 0fr;
	}
    .ext-link-box-inner{
        overflow: hidden;
    }
	.inhalt-link-box h3 {
    transition: all 0.5s ease;
	}
	.link-box:hover .ext-link-box {
	opacity: 1;
    grid-template-rows: 1fr;
	}
	.link-box:hover:before {
    opacity: 0.5;
	}
	.link-box:hover img {
    transform: scale(1.1);
	}
	.link-box-img-wrap{
	display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    overflow: hidden;
    z-index: 0;
	}
}








.tx-powermail textarea, .tx-powermail input, .tx-powermail select {
    border: 1px solid var(--diener-lightGrau2);
    border-radius: 5px;
    margin-bottom: 20px;
    padding: .825rem;
    width: 100%;
    font-family: var(--diener-copyFont);
    outline:none;
    position: relative;
    display: block;
    font-weight: 300;
    font-size: .875rem;
}

.tx-powermail select{
    font-size: .875rem;
    color: var(--diener-lightGrau2);
    font-weight: 500;
}

.tx-powermail .has-value select,.tx-powermail select:focus{
    color: #000;
    font-weight: 300;
}




.powermail_field.is-focus input.powermail_input,.powermail_field.is-focus select,.powermail_field.is-focus textarea {
    border: 2px solid #000;
    margin-bottom: 18px;
}

.powermail_field.has-value input.powermail_input,.powermail_field.has-value select,.powermail_field.has-value textarea {
    border: 2px solid var(--diener-green);
    margin-bottom: 18px;
}

label.form-label.powermail_label {
    position: absolute;
    line-height: 1.5rem;
    font-size: .875rem;
    font-weight: 300;
    z-index: 1;
    display: flex;
    align-content: center;
    flex-wrap: wrap;
    padding: .825rem;
    padding-left: .25rem;
    padding-right: .25rem;
    left: .5rem;
    top: 0;
    transition: all .3s ease;
    color: var(--diener-grau);
    cursor: text;
}

.powermail_field {
    position: relative;
}

.powermail_field.has-value label.form-label.powermail_label, .powermail_field.is-focus label.form-label.powermail_label, .powermail_field.has-error label.form-label.powermail_label, .powermail_fieldwrap_type_select label.form-label.powermail_label, .powermail_fieldwrap_type_country label.form-label.powermail_label, .powermail_fieldwrap_type_file label.form-label.powermail_label {
    top: -.5em;
    font-size: .75rem;
    padding-top: 0;
    padding-bottom: 0;
    line-height: 1em;
    font-weight: 500;
}
.powermail_field.is-focus label.form-label.powermail_label {
    color: #000;
}
.powermail_field.has-value label.form-label.powermail_label {
    color: var(--diener-green);
}
.powermail_field.has-error label.form-label.powermail_label {
    color: var(--diener-red1) !important;
}
.powermail_field label.form-label.powermail_label::before {
    content: '';
    position: absolute;
    left: 0;
    top: calc(50% - .5em);
    background: white;
    z-index: -1;
    width: 100%;
    height: 1em;
    transition: all .3s ease;
}

.powermail_field.has-value label.form-label.powermail_label::before, .powermail_field.is-focus label.form-label.powermail_label::before, .powermail_field.has-error label.form-label.powermail_label::before, .powermail_fieldwrap_type_select label.form-label.powermail_label::before, .powermail_fieldwrap_type_country label.form-label.powermail_label::before{
    width:100%;
    height: 100%;
}


.tx-powermail .powermail_fieldset {
    width: 100%;
    margin: 0;
    border: 0;
}

@media (min-width: 576px) {
    .hide75, .vis75{
        flex: 0 0 auto;
        width: 75%;
    }
    .hide25 ,.vis25{
        flex: 0 0 auto;
        width: 257%;
    }
    .hide66 ,.vis66{
        flex: 0 0 auto;
        width: 66.666666666%;
    }
    .hide10 ,.vis10{
        flex: 0 0 auto;
        width: 10%;
    }
    .hide20 ,.vis20{
        flex: 0 0 auto;
        width: 20%;
    }
    .hide30 ,.vis30{
        flex: 0 0 auto;
        width: 30%;
    }
    .hide40 ,.vis40{
        flex: 0 0 auto;
        width: 40%;
    }
    .hide50 ,.vis50{
        flex: 0 0 auto;
        width: 50%;
    }
    .hide60 ,.vis60{
        flex: 0 0 auto;
        width: 60%;
    }
    .hide70 ,.vis70{
        flex: 0 0 auto;
        width: 70%;
    }
    .hide80 ,.vis80{
        flex: 0 0 auto;
        width: 80%;
    }
    .hide90 ,.vis90{
        flex: 0 0 auto;
        width: 90%;
    }
    .hide100 ,.vis100{
        flex: 0 0 auto;
        width: 100%;
    }
}
@media (min-width: 992px) {
    .tx-powermail .powermail_fieldset.w50 {
        width: 50%;
    }
}

.powermail-errors-list {
    position: absolute;
    list-style: none;
    font-size: .625rem;
    font-weight: 600;
    line-height: 1em;
    padding: 0 .5em;
    margin: 0;
    right: .5rem;
    top: calc(100% - .5em);
    color: var(--diener-red1);
    background: #fff;
    z-index: 1;
    text-align: right;
    width: max-content;
}

.form-control.powermail_field_error {
    border: 1px solid var(--diener-red1) !important;
}




.technische-daten .tdContainer {
    border-top: 1px solid var(--diener-lightGrau2);
}
.technische-daten .tdContainer:nth-last-child(1 of .tdContainer){
    border-bottom: 1px solid var(--diener-lightGrau2);
}





.faq h2 span {
    display: block;
    font-size: 18.75rem;
    line-height: 11.75rem;
    height: 14.56rem;
    background-clip: text;
    background-image: var(--diener-rotVerlauf);
    color: transparent;
    position: relative;
    bottom: -3.5rem;
    left: -10px;
    z-index: -1;
}

.faq h2 {
    position: relative;
    top: -3.5rem;
}
.faq-q header {
    padding: 20px 0;
    padding-right: 50px;
    cursor: pointer;
    position: relative;
}

.faq-q {
    border-top: 1px solid var(--diener-lightGrau2);
}

.faq-q header h3 {
    padding: 0;
    margin: 0;
}

.faq-q:last-child {
    border-bottom: 1px solid var(--diener-lightGrau2);
}

.faq-q header::after {
    content: '';
    position: absolute;
    width: 19px;
    height: 19px;
    border-bottom: 3px solid var(--diener-grau);
    border-right: 3px solid var(--diener-grau);
    transform: rotate(45deg);
    top: 50%;
    margin-top: -15px;
    right: 10px;
    transition: all 0.3s ease;
}

.faq-q header.active::after {
    transform: rotate(45deg) scale(-1);
    margin-top: 0;
}
.productModelTec{
    position: relative;
}
.productModelTec::before,.productModelTec::after{
    content: '';
    height: 1px;
    visibility: visible;
    position: absolute;
    width: 100%;
}
.productModelTec::before{
    border-bottom: 1px solid #ffffff;
    bottom: 0;
}
.productModelTec::after{
    border-bottom: 1px solid #b1b1b1;
    bottom: 1px;
}
.productModelTec.cta::before, .productModelTec.cta::after {
    display: none;
}


.icon-row .icon img{
    aspect-ratio:var(--aspect);
    object-fit: contain;
    object-position: bottom center;
    width: 100%;
}

.icon-row:after {
    content: 'flickity';
    display: none;
}
@media (min-width: 992px) {
    .icon-row:after {
        content: '';
        display: none;
    }
}


.productGalleryNav button.flickity-button.flickity-prev-next-button.next {
    right: -22px;
}
.productGalleryNav button.flickity-button.flickity-prev-next-button.previous {
    left:-22px;
}
.productGalleryNav button.flickity-button {
    background: var(--diener-lightGrau2);
}
.productGalleryNav button.flickity-button:hover {
    background: var(--diener-lightGrau1);
}

.productGalleryNav .flickity-button-icon {
    fill: #ffffff;
}

.productGalleryNav .flickity-slider button.carousel-cell-nav {
    background: #fff;
    border: 1px solid var(--diener-grau);
    border-radius: 10px;
    padding: 0;
    overflow: hidden;
}
.productGalleryNav .carousel-cell-nav {
    opacity: 0.5;
}
.productGalleryNav .carousel-cell-nav.is-nav-selected {
    opacity: 1;
}
@media (min-width: 992px) {
	.productGallery {
		position: sticky;
		top: calc(var(--headerHeight) + 3rem);
	}
	.productGalleryNav button.flickity-button.flickity-prev-next-button {
    opacity:0;
	}
	.productGalleryNav:hover button.flickity-button.flickity-prev-next-button {
		opacity:1;
	}
	.productGalleryNav:hover button.flickity-button:disabled{
		opacity:0.3;
	}
}

.sliderActive:after {
  content: 'flickity';
  display: none; /* hide :after */
}

.sliderInactive:after {
  content: '';
  display: none; /* hide :after */
}
@media (min-width: 576px) {
	.sliderActive-sm:after {
  content: 'flickity';
  display: none; /* hide :after */
}

.sliderInactive-sm:after {
  content: '';
  display: none; /* hide :after */
}
}
@media (min-width: 768px) {
	.sliderActive-md:after {
  content: 'flickity';
  display: none; /* hide :after */
}

.sliderInactive-md:after {
  content: '';
  display: none; /* hide :after */
}
}
@media (min-width: 992px) {
	.sliderActive-lg:after {
  content: 'flickity';
  display: none; /* hide :after */
}

.sliderInactive-lg:after {
  content: '';
  display: none; /* hide :after */
}
}
@media (min-width: 1200px) {
	.sliderActive-xl:after {
  content: 'flickity';
  display: none; /* hide :after */
}

.sliderInactive-xl:after {
  content: '';
  display: none; /* hide :after */
}
}
@media (min-width: 1400px) {
	.sliderActive-xxl:after {
  content: 'flickity';
  display: none; /* hide :after */
}

.sliderInactive-xxl:after {
  content: '';
  display: none; /* hide :after */
}
}


.otherProductGallery, .productLink{
    transition: opacity ease 0.3s;
}
.otherProductGallery:hover .productLink {
    opacity: 0.5;
}
.otherProductGallery .productLink {
    border-radius:10px;
}
.otherProductGallery .productLink a {
    text-decoration: none;
    color:#000000;
}
.otherProductGallery .productLink:hover {
    opacity: 1;
}




.topShaddow:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3rem;
    background: linear-gradient(
180deg, rgba(0, 0, 0, 0.1), transparent);
}
.topShaddow {
    position: relative;
}

.productRow::after {
    content: '';
    top: 2rem;
    bottom: 2rem;
    position: absolute;
    right: 100%;
    left: -100%;
    z-index: 1;
    box-shadow: 1rem 0px 2rem 0px rgba(0, 0, 0, 0.25);
}

.tableRowHead {
    z-index: 2;
}

.productRow {
    position: relative;
}
.productImageContainer img {
    max-width: 15vw;
    margin: 0 auto;
}




.produkt-features .headlineWrap{
  top:0;
  bottom: 0;
}

.produkt-features .featureHeight .image-fit-cover picture{
  position: absolute;
  width: 100%;
  height: 100%;
}
.featureHeight.fh-75vh{
    min-height: calc(75vh - var(--headerHeight));
}
.featureHeight.fh-25vh{
    min-height: calc(25vh - var(--headerHeight));
}
.featureHeight.fh-50vh{
    min-height: calc(50vh - var(--headerHeight));
}
.featureHeight.fh-100vh{
    min-height: calc(100vh - var(--headerHeight));
}


.produkt-features img{
    height: 100%;
}

.produkt-features .image-dir-cover picture img{
			object-fit: cover;
			object-position: center center;
		}
.produkt-features .image-dir-bottom-center img {
			object-fit: contain;
			object-position: bottom center;
		}
.produkt-features .image-dir-center-center img {
			object-fit: contain;
			object-position: center center;
		}
.produkt-features .image-dir-top-center img {
			object-fit: contain;
			object-position: top center;
		}
		.startdir-text-left .produktFeature-odd .image-dir-bottom-text img, .startdir-text-right .produktFeature-even .image-dir-bottom-text img {
			object-fit: contain;
			object-position: bottom left;
		}
		.startdir-text-left .produktFeature-even .image-dir-bottom-text img, .startdir-text-right .produktFeature-odd .image-dir-bottom-text img {
			object-fit: contain;
			object-position: bottom right;
		}
		.startdir-text-left .produktFeature-odd .image-dir-center-text img, .startdir-text-right .produktFeature-even .image-dir-center-text img {
			object-fit: contain;
			object-position: center left;
		}
		.startdir-text-left .produktFeature-even .image-dir-center-text img, .startdir-text-right .produktFeature-odd .image-dir-center-text img {
			object-fit: contain;
			object-position: center right;
		}
		.startdir-text-left .produktFeature-odd .image-dir-top-text img, .startdir-text-right .produktFeature-even .image-dir-top-text img {
			object-fit: contain;
			object-position: top left;
		}
		.startdir-text-left .produktFeature-even .image-dir-top-text img, .startdir-text-right .produktFeature-odd .image-dir-top-text img {
			object-fit: contain;
			object-position: top right;
		}




.produkt-features .ccarousel {
  align-self: center;
}
@media(min-width:768px) {}

.produkt-features .ccarousel-inner {
  display: flex;
  width: 100%;
  height: 100%;
  position: relative;
  flex-direction: column;
}
@media(min-width:768px) {
 .produkt-features .ccarousel-inner {
    flex-direction: row;
  }
}
.produkt-features .ccarousel .carousel-main {
  width: 100%;
  height: 100%;
}
@media(min-width:768px) {
 .produkt-features .ccarousel .carousel-main {
    width: calc(100% - 150px);
  }
}
.produkt-features .ccarousel .carousel-nav {
  width: 100%;
  height: 100px;
  position: relative;
}
@media(min-width:768px) {
  .produkt-features .ccarousel .carousel-nav {
    width: 25%;
    max-width: 150px;
    min-width: 50px;
    height: auto;
  }
}
.produkt-features .ccarousel .carousel-nav-inner {
  width: 100%;
  overflow: scroll;
  height: 100%;
  position: absolute;
  padding: 15px 0;
  -ms-overflow-style: none;
  scrollbar-width: none;
  display: flex;
  flex-direction: row;
  column-gap: 10px;
  flex-wrap: nowrap;
  justify-content: space-evenly;
}
@media(min-width:768px) {
  .produkt-features .ccarousel .carousel-nav-inner {
    width: 100%;
    padding: 0 15px;
    flex-direction: column;
    row-gap: 10px;
    column-gap: 10px;
  }
}
.produkt-features .ccarousel .carousel-nav-inner::-webkit-scrollbar {
  display: none;
}
.produkt-features button.carousel-cell-nav {
  display: block;
  border: none;
  border-radius: 10px;
  opacity: 0.5;
  transition: opacity 0.3s ease;
  cursor: pointer;
  width: 70px;
  min-width: 70px;
  position: relative;
    padding: 0;
}
.produkt-features button.carousel-cell-nav:hover {
  opacity: 0.75;
}
@media(min-width:768px) {
  .produkt-features button.carousel-cell-nav {
    width: auto;
    min-width: auto;
  }
}
.produkt-features button.carousel-cell-nav img {
  display: block;
}
.produkt-features button.carousel-cell-nav.is-nav-selected {
  opacity: 1;
}
.produkt-features .ccarousel .carousel-nav button.carousel-nav-next, .produkt-features .ccarousel .carousel-nav button.carousel-nav-prev {
  position: absolute;
  width: 40px;
  height: 40px;
  z-index: 9;
  border: none;
  border-radius: 40px;
  cursor: pointer;
  transition: opacity 0.3s ease;
  top: calc(50% - 20px);
}
.produkt-features .ccarousel .carousel-nav:hover button.carousel-nav-next, .produkt-features .ccarousel .carousel-nav:hover button.carousel-nav-prev {
  opacity: 1;
}
.produkt-features .ccarousel .carousel-nav button.carousel-nav-next:disabled, .produkt-features .ccarousel .carousel-nav button.carousel-nav-prev:disabled {
  display: none;
}
.produkt-features button.carousel-nav-next {
  right: 0;
  transform: rotate(-90deg);
}
.produkt-features button.carousel-nav-prev {
  left: 0;
  transform: rotate(-90deg);
}
.produkt-features svg.carousel-button-icon {
  position: absolute;
  width: 60%;
  height: 60%;
  top: 20%;
  left: 20%;
}
@media(min-width:768px) {
  .produkt-features .ccarousel .carousel-nav button.carousel-nav-next, .produkt-features .ccarousel .carousel-nav button.carousel-nav-prev {
    left: 50%;
    margin-left: -20px;
    opacity: 0;
  }
  .produkt-features .ccarousel .carousel-nav button.carousel-nav-next:disabled, .produkt-features .ccarousel .carousel-nav button.carousel-nav-prev:disabled {
    display: block;
  }
  .produkt-features .ccarousel .carousel-nav:hover button.carousel-nav-next:disabled, .produkt-features .ccarousel .carousel-nav:hover button.carousel-nav-prev:disabled {
    opacity: 0.3;
    cursor: auto;
    pointer-events: none;
  }
  .produkt-features .ccarousel .carousel-nav button.carousel-nav-next {
    top: auto;
    bottom: -20px;
    transform: rotate(0deg);
  }
  .produkt-features .ccarousel .carousel-nav button.carousel-nav-prev {
    top: -20px;
    transform: rotate(0deg);
  }
}
.produkt-features button.carousel-cell-nav.videothumb:after {
  content: '';
  width: 48px;
  height: 48px;
  position: absolute;
  z-index: 1;
  margin: auto;
  opacity: 1;
  background: url("/typo3conf/ext/plasmacom/Resources/Public/Icons/play-icon.svg") center center / cover;
  cursor: pointer;
  transition: opacity .3s ease-out;
  top: calc(50% - 24px);
  left: calc(50% - 24px);
}

.produkt-features .image-fit-cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}
.produkt-features .ccarousel .flickity-slider .carouselSlide{
    min-height: 100%;
    align-items: center;
    display: flex;
}
.produkt-features .ccarousel.image-fit-cover img {
    width: 100%;
    height: auto;
    object-fit: contain;
    object-position: center center;
}
.produkt-features .image-padding.order-lg-1 {
    padding: 4vw 0 4vw 4vw !important;
}
.produkt-features .image-padding.order-lg-2 {
    padding: 4vw 4vw 4vw 0 !important;
}
.produkt-features .ccarousel video {
max-width: 100%;
    height: auto;
    display: block;
}
.produkt-features .colorSwitch.produktFeature-odd{
    background-color: var(--diener-lightGrau1);
}