/********************************************************

			Coderplace Custom Styles

********************************************************/

.tm-carousel {
  display: none;
  position: relative;
  float: left;
  width: 100%;
  margin: 0;
}

.cp-carousel {
  display: none;
  position: relative;
  float: left;
  width: 100%;
  margin: 0;
}

.owl-carousel .owl-wrapper {
  display: none;
  position: relative;
  -webkit-transform: translate3d(0px, 0px, 0px);
  -ms-transform: translate3d(0px, 0px, 0px);
  -o-transform: translate3d(0px, 0px, 0px);
  -moz-transform: translate3d(0px, 0px, 0px);
  display: flex !important;
  flex-wrap: wrap;
}

.owl-carousel .owl-wrapper:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}

.owl-carousel .owl-wrapper-outer {
  overflow-x: clip;
  position: relative;
  float: left;
  width: 100%;
  padding: 0;
}

.owl-carousel .owl-wrapper-outer.autoHeight {
  -webkit-transition: height 500ms ease-in-out;
  -moz-transition: height 500ms ease-in-out;
  -ms-transition: height 500ms ease-in-out;
  -o-transition: height 500ms ease-in-out;
  transition: height 500ms ease-in-out;
}

.owl-carousel .owl-item {
  float: left;
  display: flex;
  height: auto;
}

.owl-carousel .owl-item .manu_image a {
  display: inline-block;
}

.owl-carousel .owl-item .manu_image a img {
  max-width: 100%;
}

.owl-carousel .owl-wrapper,
.owl-carousel .owl-item {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  text-align: center;
}

/* mouse grab icon */
.customNavigation {
  position: absolute;
  z-index: 9;
  width: 100%;
  top: 50%;
  direction: ltr !important;
  right: 0;
  left: auto;
  opacity: 0;
  -khtml-opacity: 0;
  -webkit-opacity: 0;
  -moz-opacity: 0;
}

.products .customNavigation { top: 48%; }
.tmcategorylist .customNavigation { top: 54%; }

.tmcategorylist:hover .customNavigation {
  opacity: 1;
  -khtml-opacity: 1;
  -webkit-opacity: 1;
  -moz-opacity: 1;
}

.testimonial-block-part .customNavigation { display: none; }

.testimonial-block-part .owl-theme .owl-controls {
  display: block !important;
  width: 100%;
  float: left;
}

.customNavigation a.prev::before {
  content: "\E314";
  font-family: "Material Icons";
  position: absolute;
  font-size: 20px;
  right: 5px;
  top: -1px;
  color: #808080;
}

.customNavigation a.next::before {
  content: "\E315";
  font-family: "Material Icons";
  position: absolute;
  font-size: 20px;
  right: 3px;
  top: -1px;
  color: #808080;
}

#tmtestimonialcmsblock .customNavigation {
  top: -24px;
  z-index: 5;
  right: 15px;
}

.owl-theme .owl-controls .owl-page.active span { background-color: var(--primary-color); }
.owl-theme .owl-controls .owl-page span { background-color: #cccccc; }

#index #tmtestimonialcmsblock .customNavigation {
  top: -40px;
  right: 0;
}

.special-products .customNavigation { top: 52%; }

.special-products:hover .customNavigation,
.products:hover .customNavigation,
.testimonial-block-part:hover .customNavigation,
.tmblog-latest:hover .customNavigation,
#tminstagramblock:hover .customNavigation,
.product-accessories:hover .customNavigation,
.productscategory-products:hover .customNavigation {
  opacity: 1;
  -khtml-opacity: 1;
  -webkit-opacity: 1;
  -moz-opacity: 1;
}

.lastest_block .customNavigation { top: 44%; }

.customNavigation i {
  color: #222 !important;
  cursor: pointer;
  font-size: 0;
  font-weight: 500;
  height: 38px;
  line-height: 32px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  text-align: center;
  width: 38px;
  background: transparent;
  border-radius: 0;
  font-style: unset;
  box-shadow: 0px 0px 16px 0px rgba(0,0,0,0.11);
}

.customNavigation i.prev {
  background: #fff;
  border-radius: 50%;
  left: -5px;
}

.customNavigation i.next {
  background: #fff;
  border-radius: 50%;
  right: -5px;
}

.tmcategorylist .customNavigation i.prev,
.testimonial-block-part .customNavigation i.prev,
#tminstagramblock .btn.prev.instagram_prev,
.special-products .customNavigation i.prev { left: -20px; }

.tmcategorylist .customNavigation i.next,
.testimonial-block-part .customNavigation i.next,
#tminstagramblock .btn.next.instagram_next,
.special-products .customNavigation i.next { right: -20px; }

.customNavigation i.prev::before {
  content: '';
  -webkit-mask-image: url(../img/megnor/pro-left.svg);
  -webkit-mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-image: url(../img/megnor/pro-left.svg);
  mask-position: center;
  mask-repeat: no-repeat;
  background-color: #000;
  mask-size: 14px;
  width: 38px;
  height: 38px;
  display: block;
  -webkit-mask-size: 14px;
}

.customNavigation i.next::before {
  content: '';
  -webkit-mask-image: url(../img/megnor/pro-right.svg);
  -webkit-mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-image: url(../img/megnor/pro-right.svg);
  mask-position: center;
  mask-repeat: no-repeat;
  background-color: #000;
  mask-size: 14px;
  width: 38px;
  height: 38px;
  display: block;
  -webkit-mask-size: 14px;
}

#cpleftbanner1 img,
#cpleftbanner2 img { max-width: 100%; }

#cpleftbanner1 li,
#cpleftbanner2 li {
  overflow: hidden;
  position: relative;
  float: left;
  border-radius: 5px;
}

#cpleftbanner1 li a,
#cpleftbanner2 li a {
  display: inline-block;
  position: relative;
  overflow: hidden;
  vertical-align: top;
}

@media (max-width: 1449px) {
  .tmcategorylist .customNavigation i.prev,
  .testimonial-block-part .customNavigation i.prev,
  #tminstagramblock .btn.prev.instagram_prev,
  .special-products .customNavigation i.prev { left: -15px; }

  .tmcategorylist .customNavigation i.next,
  .testimonial-block-part .customNavigation i.next,
  #tminstagramblock .btn.next.instagram_next,
  .special-products .customNavigation i.next { right: -15px; }

  .customNavigation i.next { right: 0; }
  .customNavigation i.prev { left: 0; }
}

@media (max-width: 1199px) {
  #tmtestimonialcmsblock .customNavigation {
    top: -36px;
    z-index: 5;
    right: -18px;
  }
}

@media (max-width: 991px) {
  #cpleftbanner1 li img,
  #cpleftbanner2 li a { width: auto; }

  #tmtestimonialcmsblock .customNavigation {
    top: 0;
    right: 0;
  }
}

@media (max-width: 767px) {
  .customNavigation {
    opacity: 1;
    -khtml-opacity: 1;
    -webkit-opacity: 1;
    -moz-opacity: 1;
  }

  .tmcategorylist .customNavigation i.prev,
  .testimonial-block-part .customNavigation i.prev,
  #tminstagramblock .btn.prev.instagram_prev,
  .special-products .customNavigation i.prev,
  .btn.prev.accessories_prev { left: 0; }

  .tmcategorylist .customNavigation i.next,
  .testimonial-block-part .customNavigation i.next,
  #tminstagramblock .btn.next.instagram_next,
  .special-products .customNavigation i.next,
  .btn.next.accessories_next { right: 0; }

  #main .images-container .js-qv-mask .customNavigation { top: 13px; }
}

#module-opartdevis-createquotation .card {
  clear: both;
  border: 0px;
}

/* Liens (override) */
:root {
  --link-color: #303840;
  --link-hover-color: #fad505;
}

a {
  color: var(--link-color);
  text-decoration: none;
}

a:focus,
a:hover {
  color: var(--link-hover-color);
  text-decoration: none;
}

#product #description .product-description a,
#product .product-short-description a,
.quickview #product-description-short a,
.configurator_block div[id^="product-description-short-"] a {
  color: var(--primary-color, var(--link-color, #303840));
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 0.15em;
}

#product #description .product-description a:hover,
#product .product-short-description a:hover,
.quickview #product-description-short a:hover,
.configurator_block div[id^="product-description-short-"] a:hover {
  color: var(--link-hover-color, #fad505);
}

/* Fix blank slider before FlexSlider initializes */
.flexslider .slides > li:first-child { display: block !important; }

/* Cookie icon: reserve size only when icon mode is used */
.hi-cookie-logo.hi-cookie-predefined-icon img {
  width: 100px;
  height: 117px;
  display: block;
}

/* Prevent CLS: keep product thumbnails visible (do not start hidden) */
#product #additional-carousel.tm-carousel,
#product #additional-carousel.product_list {
  display: block !important;
}

/* Optional: reserve space so nothing jumps while JS initializes */
#product #additional-carousel { min-height: 120px; }

/* Fallback: show first slide even if flexslider JS fails */
.flexslider .slides > li:first-child { display: block; }
.flexslider .slides > li:first-child .caption-description .slide-text {
  opacity: 1;
  transform: none;
}

/* Force subcategory tiles to be square */
#subcategories .subcategory-image {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  overflow: hidden !important;
  display: block !important;
}

#subcategories .subcategory-image > a.img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
}

#subcategories .subcategory-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}