/************************************   Mini Cart   ************************************/
.cart-preview-content {
  position: relative;
}
.cart-preview-content .cart-preview-count {
  position: absolute;
  /**top: -10px;
  right: -15px;
  width: 25px;
  height: 25px;
  line-height: 28px;**/
  background: var(--c-red);
  border-radius: 50%;
  color: #fff;
  font-weight: 700;
  text-align: center;
}
.cart-preview-content .cart-preview-count {
  top: -8px;
  right: -8px;
  width: 20px;
  height: 20px;
  line-height: 24px;
}
.modalCart {
  display: none;
}
.cart:hover .modalCart {
  position: absolute;
  top: 0;
  right: 50px;
  display: block;
  background: #fff;
  border-radius: 5px;
  font-size: 12px;
  padding: 10px;
  width: 150px;
  opacity: 1;
}
/**************************************   Cart   **************************************/
.cart {
  padding: 0 0 0 20px;
}
#page-1 .articleInner::before {
  content: unset;
}
.gridBG::after {
  content: '';
  position: absolute;
  background: rgba(255,255,255,.3);
  width: 100%;
  height:100%;
  display: block;
  z-index: -1;
  left: 0;
  top: 6vh;
  bottom: 0;
}

.gridBG .articleInner .articleInner::before,
#page-34 .tabtxt .articleInner::before{
  content: unset;
}

@media screen and (max-width:1080px){
  .gridBG::after{
    position: fixed;
    top: 0;
  }
}
/************************************** Products **************************************/
.onlyList .swiper-wrapper {
  min-height: 540px;
}
.tx-cart-products .team .swiper-slide{
  opacity: .7;
  transform: scale(.6);
  text-align: center;
  margin-top: -80px;
  transition: all .2s ease;
}
.tx-cart-products .swiper-slide{
  text-align: center;	
}
.tx-cart-products .team .swiper-slide-next{
  opacity: 1;
  transform: scale(1);
  margin-top: 80px;
}
.tx-cart-products .onlyOne {
  margin: 0 auto;
}

@media screen and (max-width:1023px){
  .tx-cart-products .team .swiper-slide{
    opacity: 1;
    transform: scale(1);
    margin-top: 0;
  }
  .swiperCaption {
    max-width: 80%;
    margin: 0 auto;
  }
  .swiper-wrapper {
    min-height: auto;
  }
}
@media screen and (max-width:763px){
  .articleInner {
    padding: 0 10px;
    max-width: 100vw;
  }
}
@media screen and (max-width:399px){
  .swiperCaption {
    max-width: 90%;
  }
}
/** caption **/
.tx-cart-products .swiperCaption {
  background: rgba(255,255,255,.7);
  position: relative;
  color: var(--c-blue);
  text-align: left;
  padding: 5px 1em;
  margin-top: 10px;
}
.tx-cart-products .swiperCaption h2{
  color: var(--c-red);
  margin: 7px 0 0 0;
}
.tx-cart-products .swiper-slide .swiperCaption::after {
  content: '';
  position: absolute;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  bottom: -10px;
  left: -10px;
  width: 100%;
  height: 5vh;
  max-width: 5vw;
}
.tx-cart-products .team .swiper-slide-next .swiperCaption::before{
  content: '';
  position: absolute;
  border-left: 1px solid #fff;
  border-top: 1px solid #fff;
  top: -10px;
  left: -10px;
  width: 100%;
  height: 100%;
  max-width: 4vw;
  max-height: 6vh;
}
.col.onlyTwo {
  width: 49%;
}
@media screen and (max-width:1023px){
  .col.onlyTwo {
    width: 100%;
    margin-bottom: 50px;
  }
}

.tx-cart-products .onlyTwo:last-child .swiper-slide .swiperCaption::after,
.tx-cart-products .team .swiper-slide-next .swiperCaption::after {
  content: unset;
}
.tx-cart-products .onlyTwo:last-child .swiper-slide .swiperCaption::before {
  content: '';
  position: absolute;
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
  top: -10px;
  right: -10px;
  width: 100%;
  height: 5vh;
  max-width: 5vw;
}
.tx-cart-products .onlyOne:last-child .swiper-slide .swiperCaption::before {
  content: '';
  position: absolute;
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
  top: -10px;
  right: -10px;
  width: 100%;
  height: 5vh;
  max-width: 5vw;
}
/** Pager **/
.tx-cart-products .swiperPager {
  display: none;
}
/* Trigger */
.tx-cart-products .trigger--1 span {
  background: url(../../../user-upload/icons/produktDetail-1.png);
}

/********************************* Detail Gallery ********************************/
.catImg {
  display: flex;
}
.catImgBig {
  width: 72%;
  text-align: center;
}
.catImgBig .gallery:nth-child(2),
.catImgBig .gallery:nth-child(3),
.catImgBig .gallery:nth-child(4),
.catImgBig .gallery:nth-child(5),
.catImgBig .gallery:nth-child(6){
  opacity: 0;
}
.catImgSmall {
  width: 25%;
  display: block;
  text-align: center;
  /*max-height: 450px;
  overflow: hidden;*/
}
.catImgSmall span {
  background: rgba(255,255,255,.3);
  display: block;
  padding: 10px;
  height: 100%;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
span.swiper-notification {
  display: none;
}
.tx-cart-products .col11 h2,
.tx-cart-products .col11 h3,
.tx-cart-products .col11 h3 p{
  color: var(--c-blue);
  margin: 0;
  line-height: 1.2;	
  text-transform: unset;
}
.tx-cart-products .col11 h2::before {
  content: '';
  position: absolute;
  border-top: 2px solid var(--c-red);
  border-left: 2px solid var(--c-red);
  top: -5px;
  left: -10px;
  width: 100%;
  height: 100%;
  max-width: 5vw;
}
.tx-cart-products .triggerer h3 {
  color: var(--c-red) !important;
}
.catCaption {
  margin-bottom: 2em;
} 

/*horizontal*/
.tx-cart-products .catImgSmall .ProductsDetailthumbs .swiper-slide{
  opacity: 1;
  transform: scale(1); 
  margin-top: 0; 
  height: 70px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.tx-cart-products .swiper-slide {
  position: relative;
}
.tx-cart-products .videoLink {
  background: transparent;
}
.tx-cart-products .videoLink::before {
  content: "\f144";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 40px;
  color: rgba(255,255,255,.8);
  position: absolute;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1.4;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}
.catImg {
  display: block;
  text-align: center;
}
.catImgBig,
.catImgSmall{
  width: 100%;
  position: relative;
}
.catImgBig {
  height: 350px;
  overflow: hidden;
}
.productSwiper .swiper-button-next, .swiper-button-prev {
  top: 50%; 
  transform: rotate(0); 
  color: var(--c-red);
}
#thumbs .ProductsDetailthumbs {
  margin: 1em auto;  
  max-width: 80%;
}
#thumbs .swiperButton{
  margin-top: -32px;
}
.zoom {
  display:inline-block;
  position: relative;
}
.zoom:after {
  content:'';
  display:block; 
  width:33px; 
  height:33px; 
  position:absolute; 
  top:0;
  right:0;
  background:url(../../img/icon.png);
}
.zoom img {
  display: block;
}
.zoomWindowContainer > div{
  height: 75vh !important;
  width: 56vw !important;
  top: -40% !important;
  z-index: 1001 !important;
}

/********************************** Tabs Detail **********************************/
#tabS ul {
  position: relative;
  margin: 0;
}
#tabS ul li {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  margin: 1em 0;
}
#tabS .tabtxt ul {
  margin-left: 17px;
}
#tabS .tabtxt ul li{
  position: relative;
  margin: 0;
  margin: 10px 5px;	
}
#tabS .tabtxt ul li::before {
  content: '.';
  position: absolute;
  left: -20px;
  top: -14px;
  font-size: 28px;
}
#tabS ul li .tabHead{
  width: 33%;
  margin: 0;
  padding: 0 5px;
  color: #fff;
  font-size: 16px;
  font-weight: 400;
  cursor: pointer;
  display: flex;
  align-items: center;
  color: #495C7D; 
}
#tabS ul li .tabHead::before {
  content:' '; 
  width: 30px; 
  height:44px; 
  background-repeat: no-repeat;
  background-size: contain;
  margin-right: 20px;    
  position: relative;
  top: 6px;
}
#tabS ul li:nth-child(1) .tabHead::before {background-image: url(../../img/icon1.png);}
#tabS ul li:nth-child(2) .tabHead::before {background-image: url(../../img/icon2.png);}
#tabS ul li:nth-child(3) .tabHead::before {background-image: url(../../img/icon3.png);}
#tabS ul li:nth-child(4) .tabHead::before {background-image: url(../../img/icon5.png);}
#tabS ul li:nth-child(5) .tabHead::before {background-image: url(../../img/icon4.png);}

#tabS ul li .tabtxt {
  position: absolute;
  display: none;
  width: 66%;
  top: 0;
}
#tabS ul li .tabtxt .ce-gallery .ce-row {
  display: flex;
  flex-wrap: wrap;
}
#tabS ul li .tabtxt .ce-gallery .ce-row .ce-column{
  width: 25%;
  margin: 2px;
}
#tabS ul li.tabContent-4 .tabtxt .ce-gallery .ce-row{
  display: block;
}
#tabS ul li.tabContent-4 .tabtxt .ce-gallery .ce-row .ce-column {
  width: 100%;
}
#tabS ul li.tabContent-4 .tabtxt .ce-gallery .ce-row .ce-column iframe {
  width: 100%;
  min-height: 150px;
  max-height: 150px;
}
#tabS ul li .tabtxt::after {
  content: '';
  position: absolute;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  bottom: -5px;
  left: -10px;
  width: 100%;
  height: 5vh;
  max-width: 5vw;
  z-index: -1;
}
#tabS ul li .tabtxt h3{
  font-size: 24px;
  font-weight: 600;
  color: var(--c-red);
  margin: 45px 0 0 0;
}
/*** active ***/
#tabS ul li.active .tabHead {
  background: #fff;
  color: var(--c-red);
}
#tabS ul li.active .tabtxt {
  display: block;
  padding: 0 2em 0 0;
  right: -5%;
  z-index: 99;
}
#tabS ul li.active .tabtxt.related {
  display: flex;
  flex-wrap: wrap;
}

#tabS ul li.active:nth-child(1) .tabHead::before {background-image: url(../../img/icon1h.png);}
#tabS ul li.active:nth-child(2) .tabHead::before {background-image: url(../../img/icon2h.png);}
#tabS ul li.active:nth-child(3) .tabHead::before {background-image: url(../../img/icon3h.png);}
#tabS ul li.active:nth-child(4) .tabHead::before {background-image: url(../../img/icon5h.png);}
#tabS ul li.active:nth-child(5) .tabHead::before {background-image: url(../../img/icon4h.png);}

/* ecke entfernt - box immer on top
#tabS ul li.active .tabHead::after {
content: '';
position: absolute;
border-right: 1px solid #fff;
border-top: 1px solid #fff;
top: 48px;
left: 26.5%;
width: 100%;
height: 5vh;
max-width: 5vw;
}*/
#tabS input.form-control {
  display: none;
}
#tabS input.submit{
  display: block;
  border: 0;
  color: #fff;
  text-align: right;
  margin: 0;
  background: transparent;
  width: 100%;
}
.orderNow,
#tabS span.price,
#tabS .cartIcon {
  display: block;
  background: var(--c-red);
  border: 0;
  padding: 1em 1em;
  color: #fff;
  max-width: 158px;
  min-width: 185px;
  text-align: center;
  margin: 5px 0 0 0;
  position: relative;
}
#tabS .cartIcon::before {
  content: '';
  background: url(../../img/cart_w.png) no-repeat;
  background-size: contain;
  position: absolute;
  width: 22px;
  height: 20px;
  top: 12px;
  left: 21px;
}
#tabS span.price::before {
  content: '';
  background: url(../../img/euro.png) no-repeat;
  background-size: contain;
  position: absolute;
  width: 100%;
  height: 22px;
  top: 16px;
  left: 21px;
}
#tabS > .tx-cart-products {
  position: absolute;
  bottom: -5px;
}
.tabContent-1 {
  margin-top: 0 !important;
}
.back {
  color: var(--c-red);
  font-weight: 600;
  font-size: 20px;
}
.back::after {
  content: '';
  position: absolute;
  border-left: 1px solid var(--c-red);
  border-bottom: 1px solid var(--c-red);
  bottom: -5px;
  left: -10px;
  width: 100%;
  height: 5vh;
  max-width: 5vw;
}
#tabS ul li ul.pdf-list {
  list-style:none;
  list-style-image: unset;
  margin-left: 23px;
  display: flex;
  flex-wrap: wrap;
  position: relative;
}
#tabS ul li ul.pdf-list li::before { 
  content: unset;
  position: relative;
  top: 0;
  left: 0;
}
#tabS ul li ul.pdf-list li a::before { 
  content: '';
  position: relative;
  top: 0;
  left: 0;
  background-image: url(../../img/pdfsymbol.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  display: block;
  height: 100px;
  width: 100%;
  max-width: 65px;
  margin: 0 auto;
}
.pdf-list a {
  color: var(--c-blue);
  padding: 5px 10px;
  margin: 5px 0;
  display: block;
}
/* Image Scroll */


/* related */
.related_wrap {
  font-weight: 600;
  font-size: 12px;
  margin: 1px 0;
}
.tabtxt.related header{
  width: 100%;
}
.tabtxt.related > div{
  width: 24%;
  margin: 1px;
  flex-shrink: 1;
}
.related_wrap a{
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.relatedImg{
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  background-color: #fff;
  min-height: 100px;
  width: 100%;
}
.relatedTxt{
  background: var(--c-red);
  color: #fff;
  padding: 2px;
  /**/
  width: 100%;
  display: flex;
  align-items: center;
  height: 45px;
  justify-content: center;
}

/*** Warenkorb ***/
.tx-cart .bg-light-grey{
  background: transparent;
}
.tx-cart form {
  color: #333;
}
.checkout-step-content > fieldset {
  border: 0;
}
table.checkout-product-table.data-table.table.stack td.col-md-6 {
  background: var(--c-blue);
  color: #fff;
  padding: 5px;
}

/************* Cart FORM *************/
.tx-cart,
.tx-cart label,
.tx-cart th,
.tx-cart td{
  color: var(--c-blue);
}
.checkout-step-fields .field {
  display: flex;
  justify-content: space-between;
}
.tx-cart label em {
  color: var(--c-red);
}
.tx-cart fieldset {
  border: 0;
}
.tx-cart .field {
  margin: 2px 0;
}
.tx-cart a.btn.btn-danger,
.field.comment{
  display: none;
}
#form-order .checkout-step-title{
  background: var(--c-blue);
  color: #fff;
}
input.form-control.form-control-inline {
  max-width: 35px;
  text-align: center;
  padding: 5px;
}
div#checkout-step-summary {
  margin-top: 4em;
  border-top: 1px solid #fff;
}
.orderNow{
  display: unset;
}
.field.accept-terms {
  font-size: 12px;
}
.top-buffer {
  margin-top: 0 ;
}
#form-cart tr.total-gross {
  font-weight: 800;
}
.checkout-product-table colgroup {
  display: none;
}
.checkout-step-table td, 
.checkout-step-table tr{
  width: 100%;
}
.checkout-step-number {
  display: none !important;
}
#form-cart tr {
  border-bottom: 1px solid #fff;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
#form-cart td:nth-child(1){
  min-width: 50%;
}
#form-cart td:nth-child(2){
  text-align: center;
  font-weight: 600;
}
#form-cart td:nth-child(3){
  min-width: 30%; 
  text-align: center;
  font-weight: 600;
}
#form-cart td:nth-child(4){

}
.tx-cart .btn-danger:hover,
.tx-cart .btn-danger {
  color: #fff;
  background-color: unset;
  border-color: unset;
}
.last a {
  padding: 5px;
  line-height: 2;
  background: var(--c-red);
  color: #fff;
}
.last a:hover {
  background: var(--c-blue);  
}
select,
.input-box {
  min-height: 29px;
}
#checkout-step-shipping-address .checkout-step-content-list .form-control,
#checkout-step-shipping-address .checkout-step-content-list input,
#checkout-step-billing-address .checkout-step-content-list .form-control,
#checkout-step-billing-address .checkout-step-content-list input{
  min-width: 250px;
}
.tx-cart .price {
  min-width: 100px;
}
.txt {
  font-size: 12px;
}
p.alert-message {
  background: red;
  color: #fff;
  padding: 1em;
  text-align: center;
}
/***************** Shop Seite **************************/
.imagesShop .ce-inner{
  display: flex;
  justify-content: center;
}
.imagesShop .ce-row{
  margin: 0 1%;
  text-align: center;
}
.imagesShop figure.image {
  display: flex;
  flex-direction: column;
}
.imagesShop figure.image a {
  order:2;
}
.imagesShop figure.image .image-caption {
  order:1;
  color:var(--c-red);
  font-weight: 600;
}

#c159 .articleInner::before{
  background:transparent;
}
/* Produkt Slider */
.produkt .bgSlide {
  min-height: 175px;
}
.produkt .cover {
  background-size: contain;
}
.produkt .swiperCaption {
  color: var(--c-red);
  font-weight: 600;
  top: unset;
}
.swiperCaption .pos{
  color: var(--c-red);
  font-weight: 600;
}
#page-49 .articleInner::before{
  height: 60vh;  
}
#c163 .articleInner::before{
  background: transparent;
}
#c163 .ce-bodytext{
  font-size: 12px;
}
#c163 .ce-bodytext::before{
  content: '';
  background-image: url(../../img/stempel.png);
  background-size: contain;
  width: 50px;
  height:50px;
  position: absolute;
}
#c163 .ce-bodytext p {
  padding-left: 60px;
}
.validation-error.alert.alert-danger {
  color: red;
}
#c78 h1.ce-headline-center {
  margin: 0 auto;
  margin-bottom: 1em;
}
input.btn.btn-default.renewCart {
  background: var(--c-red);
  color: #fff;
  padding: 10px;
  border: 0;
  margin: 5px 0;
}
.orderNow:hover,
input.btn.btn-default.renewCart:hover{
  background: var(--c-blue);
}
#c78 .col.fifty.col11 {
  border-right: 1px solid #fff;
  padding: 0 10px 0 0;
}
.tx-cart .checkout-step-content {
  padding: 1em 0;
}
.checkout-step-content input {
  padding: 5px;
}

/* Cart Symbol */
@import url('..../fonts/all.css');
input.cartSubmit {
  border: 0;
  background: transparent;
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 2;
}
.icon::before{
  content: "\f218";
  font-family:"Font Awesome 5 Free";
  font-weight: 900;
  font-size: 24px;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  display: flex;
  justify-content: left;
  align-items: center;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 16px;
  right: 0;
  z-index: 1;
}
.success .icon::before{
  content: "\f00c";
}
.cartMain input.form-control {
  display: none;
}
.cartbutton {
  display: block;
  background-color: var(--c-red);
  max-width: 185px;
  height: 54px;
  color: #fff;
  position: relative;
  cursor: pointer;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.3);
  transition: all 0.25s cubic-bezier(0.31, -0.105, 0.43, 1.4);
}
.cartbutton span,
.cartbutton .icon {
  display: block;
  height: 100%;
  text-align: center;
  position: absolute;
  top: 0;
}
.cartbutton span {
  /*width: 72%;*/
  line-height: inherit;
  font-size: 12px;
  text-transform: uppercase;
  left: 0;
  /*transition: all 0.25s cubic-bezier(0.31, -0.105, 0.43, 1.4);*/
  top: 21px;
  right: -36px;
}
/*.cartbutton span:after {
content: "";
background-color: #fff;
width: 2px;
height: 70%;
position: absolute;
top: 15%;
right: -1px;
}*/
.cartbutton .icon {
  /*width: 28%;*/
  width: 100%;
  right: 0;
  transition: all 0.25s cubic-bezier(0.31, -0.105, 0.43, 1.4);
}
.cartbutton .icon .fa {
  font-size: 30px;
  vertical-align: middle;
  transition: all 0.25s cubic-bezier(0.31, -0.105, 0.43, 1.4), height 0.25s ease;
}
.cartbutton .icon .fa-remove {
  height: 36px;
}
.cartbutton .icon .fa-check {
  display: none;
}
.cartbutton.success span, .cartbutton:hover span {
  /* left: -72%;
  opacity: 0;*/
}
.cartbutton.success .icon, .cartbutton:hover .icon {
  width: 100%;
}
.cartbutton.success .icon .fa, .cartbutton:hover .icon .fa {
  font-size: 45px;
}
.cartbutton.success {
  background-color: #27ae60;
}
.cartbutton.success .icon .fa-remove {
  display: none;
}
.cartbutton.success .icon .fa-check {
  display: inline-block;
}
.cartbutton:hover {
  opacity: 0.9;
}
.cartbutton:hover .icon .fa-remove {
  height: 46px;
}
.cartbutton:active {
  opacity: 1;
}


@media screen and (max-width:1023px){
  .col.fifty.col12 {
    margin-top: 2em;
  }
  .tx-cart-products .flex{
    display: flex;
  }
  #tabS span.price::before{
    content: unset;
  }
  .icon::before{
    left: 0;
    justify-content: center;
  }
  #tabS .tabContent-2 .tabtxt ul li {
    width: 100%;
  }
  .cartbutton,
  .tx-cart-products .orderNow, #tabS span.price, #tabS .cartIcon{
    padding: 15px 0px;
    max-width: 125px;
    min-width: unset;
  }
}

@media screen and (max-width:763px){

}

@media screen and (max-width:599px){
  .cartbutton, 
  .orderNow, 
  #tabS span.price, 
  #tabS 
  .cartIcon{
    max-width: 70px;
    padding: 4px 0;
    font-size: 14px;
    border-radius: 3px;
  }
  .tx-cart td, 
  .tx-cart th {
    padding: 5px 0;
  }
  .checkout-step-table tr {
    width: 100%;
    border-bottom: 1px solid #ccc;
    display: block;
  }
  .orderNow,
  input.btn.btn-default.renewCart {
    width: 100%;
    max-width: 100%;
  }
  div#checkout-step-summary {
    margin-top: 0;
    border-top: 0;
  }
  #checkout-step-shipping-address .checkout-step-content-list .form-control, #checkout-step-shipping-address .checkout-step-content-list input, #checkout-step-billing-address .checkout-step-content-list .form-control, #checkout-step-billing-address .checkout-step-content-list input {
    min-width: 220px;
  }
  #tabS ul li ul.pdf-list {
    display: block;
  }
  #tabS ul li ul.pdf-list li a::before {
    margin: 0;
  }
  #tabS ul li.active .tabtxt{
    right: -7%;
  }
  .cart {
    padding: 0; 
    /**margin-top: 20px;**/
  }
  .gridBG::after{
    bottom: 0;
    top: 0;
    right:0;
    height: 100vh;
  }
}


#c632 li {
  margin: 3px 5px !important;
}
#c80 .tabtxt:after {
    content: "";
    display: block;
    height: 80px;
    width: 100%; /* Optional, falls du die volle Breite benötigst */
    clear: both; /* Optional, um sicherzustellen, dass der Platz nach floatenden Elementen angezeigt wird */
}