/* * * * * * * * * * * * * * * * * * * * * * * * * */
/* COMUNI */

/* elem img (anche per single page thumb)*/

.prod-item_img {
  height: 100%;
  width:100%;
  background: center center no-repeat #fff;
  background-size: contain;
  z-index: 1;
  position: absolute;
  top:0;
  left:0;
}

.prod-item_img.prod-item_img-hover {
  opacity: 0;
}

.has-hover-image:hover .prod-item_img {
  transition: opacity 0.5s;
  opacity: 0;
}

.has-hover-image:hover .prod-item_img.prod-item_img-hover {
  opacity: 1;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * */
/* SINGLE PRODOTTO */

.product-content {
  font-size: 15px;
  line-height: 26px;
}

.post-cat-wrap.prod-cats {
  width: 100%;
  float: left;
  clear: left;
  margin: 10px 0;
}

.post-cat-wrap.prod-cats .post-cat {
  font-size: 13px;
}

.prod-featured-img {
  height: 300px;
  position: relative;
}

ul.product-technical-scheda {
  background: #eee;
  padding: 10px 20px;
  margin: 30px 0;
  display: block;
}

ul.product-technical-scheda li {
  background: #eee;
  padding: 10px 0;
  margin: 0;
  width: 100%;
  display: block;
  border-bottom: 1px solid #ccc;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: nowrap;
}

ul.product-technical-scheda li:last-child {
  border-bottom: none;
}

ul.product-technical-scheda li span:first-child {
  text-transform:uppercase;
  min-width: 220px;
  max-width: 40%;
  padding-right: 15px;
  font-weight:bold;
}

ul.product-technical-scheda li span:last-child {
  text-align: left;
}

@media ( max-width: 767px ) {
  ul.product-technical-scheda li {
    flex-wrap: wrap;
  }
  ul.product-technical-scheda li span {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
  }
}

/* carosello */

.product-header .owl-carousel .owl-item,
.owl-carousel.owl-carousel-product .owl-item {
  background: #fff;
}

.product-header .owl-carousel .owl-item figcaption,
.owl-carousel.owl-carousel-product .owl-item figcaption {
  display: none;
}

/* relateds */

.products-relateds {
  margin-top: 30px;
}

@media ( min-width: 768px ) {
  .products-relateds [class*="col-"]:last-child .prod-item {
    display: none;
  }
}

/* * * * * * * * * * * * * * * * * * * * * * * * * */
/* BRAND */

.brand-box .brand-img-wrapper {
  margin: 0 20px 15px 0;
  float: left;
  max-width: 25%;
  width:250px;
}

.brand-box .brand-img-wrapper .brand-img {
  width:100%;
  height: auto;
}

.brand-box .brand-title {
  font-size: 1.3em;
  color: #2c2f34;
  font-weight: bold;
  margin: 0 0 15px 0;
}

.brand-box .brand-title p {
  margin: 0;
  padding: 0;
}

.brand-box .brand-text {
  clear: both;
  width:100%;
}

.brand-box a,
.brand-box .brand-link {
  color: #2579b7;
}

.brand-box .brand-link {
  font-weight: bold;
  text-decoration: underline;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * */
/* LISTING PRODOTTO */

.prod-item {
  display: block;
  color: #333;
  margin: 0 0 30px;
}

/* wrapper img */

.prod-item .prod-item_img-wrapper {
  width:100%;
  height:0;
  padding-top: 75%;
  border: 5px solid #eee;
  position: relative;
  margin: 0 0 15px;
}

.prod-item:hover .prod-item_img-wrapper {
  border-color: #ddd;
  transition: border 0.3s;
}

.prod-item.has-video .prod-item_img-wrapper:before {
  content: '';
  z-index: 3;
  position: absolute;
  top: 50%;
  left:50%;
  width: 100px;
  height: 100px;
  background: rgba(0,0,0,0.5);
  transform: translate(-50%,-50%);
  border-radius: 50%;
}

.prod-item.has-video .prod-item_img-wrapper:after {
  content: '';
  z-index: 4;
  position: absolute;
  top: 50%;
  left:50%;
  background: transparent;
  transform: translate(-50%,-50%);
  width: 0;
  height: 0;
  margin-left: 5px;
  border-top: 25px solid transparent;
  border-bottom: 25px solid transparent;
  border-left: 40px solid #fff;
}

@media ( max-width: 991px ) {
  .prod-item.has-video .prod-item_img-wrapper:before {
    width: 75px;
    height: 75px;
  }
  .prod-item.has-video .prod-item_img-wrapper:after {
    margin-left: 5px;
    border-top: 18px solid transparent;
    border-bottom: 18px solid transparent;
    border-left: 30px solid #fff;
  }
}

/* labels */

.prod-item .prod-item_label,
.label-pay-prod {
  background: #333;
  color: #eee;
  line-height: 1em;
  padding: 5px 10px;
  font-size: 13px;
  display: inline-block;
  float: left;
  clear: both;
}

.prod-item .prod-item_label {
  z-index: 2;
  position: absolute;
  bottom: -5px;
  left: -5px;
}

.prod-item .prod-item_name {
  color: #333;
  font-weight: bold;
  line-height: 1.1em;
  margin: 0 0 5px;
  font-size: 15px;
}

.prod-item .prod-item_brand,
.brand-prod {
  color: #666;
  line-height: 1.1em;
  font-size: 0.9em;
  font-size: 15px;
}

.entry-header .brand-prod {
  font-size: 20px;
}

.error-zero-result {
  font-size: 15px;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * */
/* PAGINAZIONE DEL LISTING PRODOTTO */

.products-pagination {
  padding:0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  flex-wrap: wrap;
}

.products-pagination a,
.products-pagination span {
  padding:0;
  margin:0;
  border: 1px solid #eee;
  border-top-width: 2px;
  border-bottom-width: 2px;
  display: block;
  text-align: center;
  width: 40px;
  height: auto;
  line-height: 40px;
  transition: color 0.3s, background 0.3s;
}

.products-pagination a {
  background: white;
  color: #333;
}

.products-pagination a:hover {
  background: #eee;
  color: #2579b7;
}

.products-pagination span {
  background: #2579b7;
  color: white;
}

.products-pagination a:first-child,
.products-pagination span:first-child {
  border-left-width: 2px;
}

.products-pagination a:last-child,
.products-pagination span:last-child {
  border-right-width: 2px;
}

.terms-seo-text {
  margin-bottom: 30px;
  font-size: 15px;
  line-height: 26px;
}

.terms-seo-text .prod_shortcode {
  font-weight: bold;
  color: #2579b7;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * */
/* FILTRI */

.filter-reset {
  float: right;
  clear: both;
  text-align: right;
  color: #2579b7;
  margin: 10px 0 20px 0;
}

.filter-wrapper {
  float: left;
  clear: both;
  width: 100%;
}

.menu-filters.button {
  display: none !important;
}

.products-filters {
  margin: 45px 0 0 0;
  padding: 0;
  user-select: none;
  overflow: auto;
}

.products-filters .filters-taxonomy {
  margin: 0;
  padding: 0;
}

.products-filters .filters-title {
  margin: 0 0 10px 0;
  padding: 15px;
  background: #2579b7;
  color: #fff;
  font-weight: bold;
  position: relative;
  font-size: 15px;
  cursor: pointer;
}

.products-filters .filters-list {
  margin: 0;
  padding: 0;
}

.products-filters .filters-list ul {
  margin: 0 0 10px 0;
  padding: 0;
}

.products-filters .filters-list ul li {
  margin: 0;
  padding: 0;
  border: none;
  border-bottom: #eee solid 1px;
  position:relative;
  font-size: 15px;
}

.products-filters .filters-list ul li.is-active > label,
.products-filters .filters-list ul li.is-active > span {
  color: #2579b7;
  font-weight: bold;
}

.products-filters .filters-list ul li.is-active > label:hover,
.products-filters .filters-list ul li.is-active > span:hover {
  color: #004785;
}

.products-filters .filters-list ul li.is-selected:before {
  content: '';
  position: absolute;
  top: 21px;
  left:0;
  transform: translate(0,-50%);
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
  border-left: 7px solid #2579b7;
  display: none;
}

.products-filters .filters-list ul li:last-child {
  border-bottom: none;
}

.products-filters .filters-list ul li label,
.products-filters .filters-list ul li span {
  margin: 0;
  padding: 10px 15px;
  cursor: pointer;
  display: inline-block;
  position:relative;
}

.products-filters .filters-list ul li label:hover,
.products-filters .filters-list ul li span:hover {
  color: #2579b7;
}

.products-filters .filters-list ul li label input {
  display: none;
}

.products-filters .filters-list ul li span {
  position: relative;
}

/* freccioline */

.filter-arrow {
  position: absolute;
  top:50%;
  transform: translate(0,-50%);
  right:5px;
  cursor:pointer;
  width: 30px;
  height: 30px;
}

.filter-arrow:hover {
  opacity: 0.5;
}

.filter-arrow:before,
.filter-arrow:after {
  content: '';
  position: absolute;
  top:50%;
  left: 50%;
  transform: translate(-50%,-50%);
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-bottom: 5px solid #2579b7;
  z-index: 1;
}

.filter-arrow:before {
  margin-top: 2px;
  border-bottom: 5px solid #eee;
  z-index: 2;
}

.collapsed .filter-arrow:before,
.collapsed .filter-arrow:after {
  border-bottom: none;
  border-top: 5px solid #2579b7;
}

.collapsed .filter-arrow:before {
  margin-top: -2px;
  border-bottom: none;
  border-top: 5px solid #eee;
}

/* 2 lv. */

.products-filters .filters-list ul ul li {
  border-bottom: none;
  padding-left: 30px;
}

.products-filters .filters-list .filter-arrow {
  top: 6px;
  transform: none;
}

.products-filters .filters-list .filter-arrow:before {
  border-bottom-color: #fff;
}

.products-filters .filters-list .collapsed .filter-arrow:before {
  border-top-color: #fff;
}

/* mobile */

@media ( max-width: 991px ) {
  .filter-reset {
    float: left;
  }
  .menu-filters.button,
  .menu-filters.button:hover,
  .menu-filters.button:active {
    position: absolute;
    right: 0;
    bottom: -1px;
    box-shadow: -20px 0 0 0 white;
    display: block !important;
    outline: 0;
    -moz-outline: 0;
  }
  .menu-filters.button.filters-actives {
    background-color: #004785 !important;
  }
  .menu-filters.button.filters-actives:after {
    content: '';
    width: 0px;
    height: 0px;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-top: 10px solid #004785;
    position: absolute;
    left: 50%;
    transform: translate(-50%,0);
    bottom: -10px;
    overflow: visible;

  }
  .products-filters {
    margin-top: -40px;
    display: none !important;
  }
  .products-filters.filters-actives {
    display: block !important;
  }
  .products-filters .widget-title {
    display: none !important;
  }
  .products-filters .filters-title:before,
  .products-filters .filters-title:after {
    display: none !important;
  }
  .terms-seo-text,
  .product-wrapper,
  .post-footer {
    display: block !important;
  }
  .terms-seo-text.filters-actives,
  .product-wrapper.filters-actives,
  .post-footer.filters-actives {
    display: none !important;
  }
  .single.single-product .wp-post-image {
    max-height: 250px;
    width: auto;
    margin: auto;
    display: block;
    height: auto;
    max-width: 100%;
  }

  /* se si vuole aprire i menu di 1 lv di default */
  /* .products-filters .filters-title .filter-arrow {
    display: none !important;
  }
  .products-filters .filters-taxonomy > .collapse:not(.show) {
      display: block !important;
      } */
    }

    /* * * * * * * * * * * * * * * * * * * * * * * * * */
    /* ADV */

    .product-adv > div {
      border: solid 3px #eee;
      width: 100%;
      height:100%;
    }
