/* PRODUCT CARD*/
.woocommerce-active .site-main .products.columns-4 .product {
  width: 25%;
  padding-bottom: 5px;
}
@media (min-width: 768px) and (max-width: 991px) {
  .woocommerce-active .site-main .products.columns-4 .product {
    width: 25%;
  }
}
@media (min-width: 576px) and (max-width: 767px) {
  .woocommerce-active .site-main .products.columns-4 .product {
    width: 50%;
  }
}
@media (max-width: 575px) {
  .woocommerce-active .site-main .products.columns-4 .product {
    width: 50%;
  }
}
.product-content-wrap,
.woobt-product,
.related section.product .product-content-wrap {
  display: flex;
  flex-direction: column;
  min-height: 420px;
  padding: 0 10px 10px 10px;
  border: 1px solid var(--border-color);
  border-radius: 5px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  transition:
    box-shadow 0.3s ease-in-out,
    transform 0.3s ease-in-out;
}

.product-content-wrap .thumbnail-wrap a,
.product-layout-classic .product .thumbnail-wrap a,
.product .thumbnail-wrap a img.hover-img,
.woobt-product img,
.wpcuf-image img {
  display: block;
  padding: 20px;
  background-color: #ffffff;
}
@media (max-width: 768px) {
  .product-content-wrap .thumbnail-wrap a,
  .product-layout-classic .product .thumbnail-wrap a,
  .product .thumbnail-wrap a img.hover-img,
  .woobt-product img,
  .wpcuf-image img {
    display: block;
    width: 100% !important;
    padding: 15px;
    background-color: #ffffff;
  }
}
.product-content-wrap .thumbnail-wrap img {
  display: block;
  width: 100%;
  height: auto;
}
.product .content-wrap,
.woobt-product {
  background: #ffffff !important;
}
.product-layout-classic.classic-center .product .content-wrap {
  text-align: left;
}
.product-content-wrap:hover {
  transform: translateY(-5px);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);
}
.product .content-wrap::before {
  display: none;
}
.product .woocommerce-loop-product__title,
.wpcuf-name {
  display: -webkit-box;
  text-overflow: initial;
  white-space: initial;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  height: 60px;
  font-weight: 600;
  line-height: 20px;
  color: #222222 !important; /* Un pelín más oscuro para ganar contraste */

}

.product-layout-classic.classic-center .product .single-categories {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}
.product-layout-classic.classic-center .product .price,
.woobt-price,
.wpcuf-price {
  justify-content: left;
}
.product .content-wrap .price,
.woobt-price {
  min-height: 50px;
  padding-bottom: 0px;
}
.wpcuf-price {
  padding: 20px;
}
.woocommerce-Price-amount,
.woofc-area
  .woofc-area-bot
  .woofc-data
  .woofc-data-right
  .woocommerce-Price-amount {
  color: #aa40b5;
  font-weight: 600;
}
.woocommerce-Price-currencySymbol,
.woofc-area
  .woofc-area-bot
  .woofc-data
  .woofc-data-right
  .woocommerce-Price-currencySymbol {
  font-weight: 400;
}
.woocommerce-Price-amount:hover,
.woocommerce-Price-currencySymbol:hover,
.woofc-area
  .woofc-area-bot
  .woofc-data
  .woofc-data-right
  .woocommerce-Price-amount:hover,
.woofc-area
  .woofc-area-bot
  .woofc-data
  .woofc-data-right
  .woocommerce-Price-currencySymbol:hover {
  color: #90369a;
}
.product-layout-default section.product .product-button,
.product-layout-classic section.product .product-button {
  display: flex;
  z-index: 1;
  position: relative;
  top: auto;
  bottom: auto;
  align-items: center;
  justify-content: center;
  width: 100% !important;
  min-height: 65px;
  padding: 10px 15px;
  overflow: hidden;
  transform: none;
  border: 2px solid #aa40b5;
  border-radius: 5px;
  background: #aa40b5 !important;
  color: #ffffff;
  letter-spacing: 1px;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  opacity: 100;
  transition:
    background-color 0.3s ease-in-out,
    color 0.3s ease-in-out;
  -webkit-transform: none;
}
.cart-wrap .product-button:hover::after {
  background-color: #90369a !important;
  color: #ffffff;
}
@media (min-width: 768px) {
  .product-layout-default section.product .product-button {
    visibility: visible;
    opacity: 100;
  }
  .product-layout-default section.product .product-button:hover,
  .product-layout-classic section.product .product-button:hover {
    background-color: #90369a !important;
    color: #ffffff;
  }
}
@media (max-width: 768px) {
  .product-layout-default section.product .product-button {
    background-color: #aa40b5;
    color: #ffffff;
  }
  .product-layout-default section.product .product-button:hover,
  .product-layout-classic section.product .product-button:hover {
    background-color: #90369a !important;
    color: #ffffff;
  }
}
@media (max-width: 480px) {
  .woocommerce-shop .site-main .products.grid-view .product .timer {
    display: flex;
  }
}
.list-btn-block h3 {
  padding: 0;
}
.right-content-product::after {
  display: none;
  background: none;
}

/* INICIO - Responsive */
@media (max-width: 575px) {
  .site-footer {
    text-align: center;
  }
  .site-footer ul {
    padding: 0;
  }
}
/* FIN - Responsive */
body.woocommerce-checkout #primary .woocommerce-error li a {
  color: #fff;
}
/* INICIO cambios en label SALE */
.egudgets-sale,
div.thumbnail-wrap p.stock.out-of-stock {
  display: none !important;
}
/* FIN cambios en label SALE */
/* INICIO UPSELL */
.wpcuf-uf-wrap .wpcuf-uf-products .wpcuf-uf-product {
  display: flex;
  flex-direction: column;
  padding: 0 15px 15px 15px;
  border: 1px solid #d1d1d1;
  border-radius: 5px;
}
/* WIDGETS */

.back-to-top {
  bottom: 120px;
}
.header-stickybar-wrap {
  display: none;
}
.single_variation_wrap .woocommerce-variation-add-to-cart {
  justify-content: flex-start;
}
div .tt-post-meta-wrap,
.single-product .prev_next_buttons {
  display: none;
}
.fc-wrapper .wc-proceed-to-checkout .checkout-button {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 20px;
  border-radius: 5px;
  background-color: #aa40b5;
  color: #ffffff;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  cursor: pointer;
  transition: background-color 0.3s ease-in-out;
}
.fc-wrapper .wc-proceed-to-checkout .checkout-button:hover {
  background-color: #90369a;
  color: #ffffff;
}
.wpcbm-badges {
  z-index: 2;
}
.wpcbm-badges-notes {
  padding: 0 5px;
  background: rgba(0, 0, 0, 0.45) !important;
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.7);
}
/* QUICK VIEW */
#woosq-popup .view-details-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 60px;
  background-color: #aa40b5;
  color: #ffffff;
  font-weight: bold;
  text-align: center;
  text-transform: uppercase;
  cursor: pointer;
  transition: background-color 0.3s ease-in-out;
}
#woosq-popup .view-details-btn:hover {
  background-color: #90369a;
  color: #ffffff;
}
.woosq-open .select2-container {
  z-index: 999959;
}

/* BOTON ADD TO CART */
.cart .single_add_to_cart_button,
.fc-wrapper .fc-place-order button {
  display: flex;
  display: block;
  z-index: 1;
  align-items: center;
  justify-content: center;
  width: auto !important;
  min-height: 60px;
  padding: 20px;
  overflow: hidden;
  border-radius: 5px;
  background: #aa40b5;
  color: #ffffff;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition:
    background-color 0.3s ease-in-out,
    color 0.3s ease-in-out;
}
.cart .single_add_to_cart_button:hover,
.fc-wrapper .fc-place-order button:hover {
  background-color: #90369a;
  color: #ffffff;
}
.fc-wrapper .fc-cart-actions {
  display: none;
}
/* UPSELL IN CART */
@media (min-width: 1000px) {
  .wpcuf-uf-wrap .wpcuf-uf-header .wpcuf-uf-heading {
    font-size: 15px;
  }
}
.wpcuf-uf-wrap .wpcuf-uf-header .wpcuf-uf-heading {
  margin: 0 0 15px;
  padding-top: 12px !important;
  padding-bottom: 12px !important;
  overflow: unset;
  color: var(--fluidcheckout--color--dark-grey, #535156);
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.2;
  text-align: left;
  text-transform: uppercase;
}

@media (max-width: 480px) {
  .pagination .page-numbers li .current,
  .pagination .page-numbers li > a:hover,
  .pagination .page-numbers li > a:active,
  .pagination .page-numbers li > a:focus,
  .site-header .site-main-wrap,
  section.product .product-button,
  .product .product-button-wrap .btn-hv:hover::after {
    margin-right: 20px;
    padding: 0px;
    background: white;
  }
  .right-header {
    margin-right: 2px;
  }
}
/* FILTER WIDGETS */
#secondary .widget-title,
#secondary .wp-block-heading,
.widget h2.widget-title {
  margin-bottom: 15px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--border-color);
  color: var(--title-color);
  font-weight: bold;
}
/*.iksm-container {
     background-color: #ffffff;
}
 .iksm-term__inner {
     display: flex;
     align-items: center;
     padding: 12px 0;
     border-bottom: none;
     cursor: pointer;
}
 .iksm-terms-tree > .iksm-terms-tree__inner > .iksm-term:last-child > .iksm-term__inner {
     border-bottom: none;
}
 .iksm-term__link {
     flex-grow: 1;
     text-decoration: none;
}
 .iksm-term__text {
     transition: color 0.2s ease-in-out;
     color: var(--body-text-color);
}
 .iksm-term__inner:hover .iksm-term__text {
     color: #AA40B5;
}
 .iksm-term__toggle {
     flex-shrink: 0;
     margin-left: 15px;
     width: 24px;
     height: 24px;
     display: flex;
     align-items: center;
     justify-content: center;
     border-radius: 50%;
     transition: background-color 0.2s ease-in-out, transform 0.3s ease-in-out;
}
/* Damos feedback en el hover del icono */
.iksm-term__inner:hover .iksm-term__toggle {
  color: #90369a;
}
.iksm-terms-tree--children {
  padding-left: 10px;
  border-left: 2px solid #f0f0f0;
}
.iksm-term--current > .iksm-term__inner .iksm-term__text {
  color: var(--title-color);
  font-weight: bold;
}
.iksm-term--current > .iksm-term__inner .iksm-term__toggle__inner::before {
  color: var(--title-color);
}
*/
/* PRODUCT LIST HEADER SELECT */
 .product-top-sorting {
  display: flex;
  position: relative;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 2px;
  gap: 0.6rem;
  border: 0px;
  border-radius: 5px;
  background-color: var(--background-color);
}
.woocommerce-ordering .orderby,
.woocommerce-perpage select {
  border: 2px solid var(--border-color);
  border-radius: 5px;
  background: #ffffff;
  color: var(--body-text-color);
  cursor: pointer;
}
.product-top-sorting .select-wrap select:hover,
.product-top-sorting .select-wrap select:active,
.woocommerce-ordering .orderby:focus .woocommerce-perpage select:hover,
.woocommerce-perpage select:active,
.woocommerce-perpage select:focus
 {
  border-color: #90369a;
}

.select-wrap::after {
  position: absolute;
  content: "\f107";
  font-family: "Font Awesome 7 Free" !important;
}

.toggle-filter a.filter {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  border: 1px solid var(--border-color);
  border-radius: 5px;
  color: var(--body-text-color);
  text-decoration: none;
}
.toggle-filter a.filter:hover,
.toggle-filter a.filter:focus {
  border-color: #90369a;
  background-color: #90369a;
  color: #ffffff;
}
@media (max-width: 768px) {
  .product-top-sorting {
    flex-direction: column;
    align-items: stretch;
  }
  .woocommerce-ordering,
  .woocommerce-perpage,
  .toggle-filter,
  .product-top-sorting .woocommerce-ordering .select-wrap select,
  .product-top-sorting .woocommerce-perpage .select-wrap select {
    width: 100%;
  }
}
.products,
.pagination,
.product {
  border: 0;
}

@media (min-width: 992px) {
    #post_sidebar.col-lg-3 {
        position: relative !important;
        height: auto !important;
    }
}

/* ==========================================================================
   SCROLL INTERNO PARA EL FILTRO DE MARCAS (IKSM)
   ========================================================================== */
@media (min-width: 992px) {

    /* Apuntamos al contenedor de los términos dentro del widget de marcas */
    #iksm-widget-5 .iksm-terms {
        /* Limitamos la altura máxima (ajústala a tu gusto, ej: 250px o 300px) */
        max-height: 280px !important; 
        
        /* Activamos el scroll vertical obligatorio y ocultamos el horizontal */
        overflow-y: auto !important;
        overflow-x: hidden !important;
        
        /* Un pequeño margen derecho para que el texto no pegue con la barra */
        padding-right: 8px;
    }

    /* Opcional: Estilizamos la barra de scroll para que sea elegante y fina */
    #iksm-widget-5 .iksm-terms::-webkit-scrollbar {
        width: 5px;
    }
    
    #iksm-widget-5 .iksm-terms::-webkit-scrollbar-track {
        background: rgba(0, 0, 0, 0.03);
        border-radius: 4px;
    }
    
    #iksm-widget-5 .iksm-terms::-webkit-scrollbar-thumb {
        background: rgba(0, 0, 0, 0.15);
        border-radius: 4px;
    }

    #iksm-widget-5 .iksm-terms::-webkit-scrollbar-thumb:hover {
        background: rgba(0, 0, 0, 0.3);
    }
}