/* === RESET duro del quantity custom del tema === */
.woocommerce div.product form.cart .quantity{
  display: inline-flex !important;
  align-items: center !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  vertical-align: middle !important;
}

.woocommerce div.product form.cart .quantity input.qty{
  width: 70px !important;
  height: 44px !important;
  line-height: 44px !important;
  padding: 0 !important;
  margin: 0 !important;
  text-align: center !important;
  box-sizing: border-box !important;
  border-top: 1px solid rgba(0,0,0,.2) !important;
  border-bottom: 1px solid rgba(0,0,0,.2) !important;
  border-left: 0 !important;
  border-right: 0 !important;
  background: #fff !important;
}

/* Botones: neutraliza TODO lo que meta el theme */
.woocommerce div.product form.cart .quantity a.quantity-change{
  all: unset !important;                 /* clave */
  position: relative !important;
  width: 44px !important;
  height: 44px !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(0,0,0,.2) !important;
  background: #fff !important;
  cursor: pointer !important;
  display: inline-block !important;
}

/* Redondeo */
.woocommerce div.product form.cart .quantity a.quantity-change.minus{
  border-radius: 10px 0 0 10px !important;
}
.woocommerce div.product form.cart .quantity a.quantity-change.plus{
  border-radius: 0 10px 10px 0 !important;
}

/* Oculta el <i> del tema por si se cuela */
.woocommerce div.product form.cart .quantity a.quantity-change i{
  display: none !important;
}

/* Dibuja el "-" (raya horizontal) */
.woocommerce div.product form.cart .quantity a.quantity-change::before{
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  width: 14px !important;
  height: 2px !important;
  background: #111 !important;
  transform: translate(-50%, -50%) !important;
}

/* Dibuja la raya vertical SOLO para el "+" */
.woocommerce div.product form.cart .quantity a.quantity-change.plus::after{
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  width: 2px !important;
  height: 14px !important;
  background: #111 !important;
  transform: translate(-50%, -50%) !important;
}

/* Hover */
.woocommerce div.product form.cart .quantity a.quantity-change:hover{
  background: rgba(0,0,0,.04) !important;
}

.woocommerce div.product form.cart button.single_add_to_cart_button{
  margin-left: 12px !important; /* ajusta: 8, 12, 16... */
}

/* Tienda: tamaño del título y del texto (nombre + descripción corta) */
/* ===== BeTheme / WooCommerce: bajar tamaño en cards de tienda ===== */

/* Título (nombre del producto) */
body.woocommerce ul.products li.product h2,
body.woocommerce ul.products li.product h3,
body.woocommerce ul.products li.product h4,
body.woocommerce ul.products li.product .woocommerce-loop-product__title,
body.woocommerce ul.products li.product .title,
body.woocommerce ul.products li.product .product-title,
body.woocommerce ul.products li.product .desc h4{
  font-size: 16px !important;  /* ajusta */
  line-height: 1.15 !important;
}

/* Descripción / excerpt en la card (BeTheme suele usar .desc) */
body.woocommerce ul.products li.product .desc,
body.woocommerce ul.products li.product .desc p,
body.woocommerce ul.products li.product .mfn-product-excerpt,
body.woocommerce ul.products li.product .excerpt,
body.woocommerce ul.products li.product .product-excerpt{
  font-size: 13px !important;  /* ajusta */
  line-height: 1.25 !important;
}

/* (Opcional) limitar descripción a 2 líneas */
body.woocommerce ul.products li.product .desc,
body.woocommerce ul.products li.product .desc p,
body.woocommerce ul.products li.product .mfn-product-excerpt,
body.woocommerce ul.products li.product .excerpt,
body.woocommerce ul.products li.product .product-excerpt{
  display: -webkit-box !important;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden !important;
}

/* BeTheme/WooCommerce: igualar altura de la descripción en el grid */
.woocommerce ul.products li.product .desc p{
  margin-bottom: 0 !important;
  line-height: 1.25 !important;
  min-height: calc(1.25em * 2);  /* reserva 2 líneas siempre */
  display: -webkit-box;
  -webkit-line-clamp: 2;         /* máximo 2 líneas */
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Cambiar texto del botón reset de WOOF/HUSKY (sin premium) */
.woof_reset_search_form{
  font-size: 0 !important;            /* oculta el texto original */
}

.woof_reset_search_form::after{
  content: "Restablecer" !important;  /* pon el texto que quieras */
  font-size: 14px !important;
}

/* Botón reset WOOF: centrado perfecto */
.woof_reset_search_form{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;

  width: 100% !important;        /* si quieres que sea ancho completo */
  height: 40px !important;       /* ajusta si tu botón es más alto/bajo */
  padding: 0 16px !important;

  line-height: normal !important;
}

/* Por si el texto está dentro de un span/label interno */
.woof_reset_search_form > *{
  margin: 0 auto !important;
}


/* BeTheme: quitar navegación prev/next (flechas con miniatura) en producto */
body.single-product a.fixed-nav{
  display: none !important;
}

/* BeTheme (loop tienda): forzar color + negrita precio */
body.woocommerce ul.products li.product .desc span.price,
body.woocommerce ul.products li.product .desc span.price .woocommerce-Price-amount,
body.woocommerce ul.products li.product .desc span.price .woocommerce-Price-currencySymbol,
body.woocommerce ul.products li.product .desc span.price bdi{
  color: #3A6B4C !important;
  font-weight: 700 !important; /* 600/700/800, prueba 700 */
}

/* Si BeTheme lo pone como enlace o heredado raro */
body.woocommerce ul.products li.product .desc span.price *{
  color: #3A6B4C !important;
  font-weight: 700 !important;
}

/* Botón "Añadir al carrito" (producto individual) */
.single-product button.single_add_to_cart_button.button.alt{
  background-color: #1A3728 !important;
  border-color: #1A3728 !important;
  color: #fff !important;
}

/* Precio en ficha de producto (single product) */
body.single-product div.product p.price,
body.single-product div.product p.price .woocommerce-Price-amount,
body.single-product div.product p.price .woocommerce-Price-currencySymbol,
body.single-product div.product p.price bdi{
  color: #3A6B4C !important;
  font-weight: 700 !important;	
}

/* Hover */
.single-product button.single_add_to_cart_button.button.alt:hover{
  background-color: #142a1f !important; /* un tono un poco más oscuro */
  border-color: #142a1f !important;
  color: #fff !important;
}


/* Producto: ocultar todo el meta excepto la línea de Marca */
.single-product .product_meta .tagged_as{
  display: none !important;
}

/* Asegurar que el posted_in de Marca se muestre */
.single-product .product_meta .posted_in:has(a[href*="/marca/"]){
  display: inline-block !important;
}

/* Ocultar bloque "Compartir" (BeTheme) en producto */
.single-product .share-simple-wrapper{
  display: none !important;
}

/* =========================================================
   QUICK VIEW (BeTheme) + FICHA PRODUCTO:
   - Color del precio
   - Ocultar SKU / Categorías / Etiquetas (manteniendo Marca)
   ========================================================= */

/* 1) Color del precio (ficha + quick view) */
body.single-product div.product p.price,
body.single-product div.product p.price *,

/* Quick View (varios wrappers posibles en BeTheme) */
body .mfn-quick-view-wrapper p.price,
body .mfn-quick-view-wrapper p.price *,
body .mfn-qv-wrapper p.price,
body .mfn-qv-wrapper p.price *,
body .mfn-quick-view p.price,
body .mfn-quick-view p.price *{
  color: #1A3728 !important;
}


/* 3) Ocultar Etiquetas */
body.single-product .product_meta .tagged_as,
body .mfn-quick-view-wrapper .product_meta .tagged_as,
body .mfn-qv-wrapper .product_meta .tagged_as,
body .mfn-quick-view .product_meta .tagged_as{
  display: none !important;
}

/* 4) Ocultar Categorías (pero NO la Marca)
   - Categorías suelen enlazar a /categoria-producto/
   - Marca suele enlazar a /marca/
*/

/* Asegura que la Marca sí se muestre */
body.single-product .product_meta .posted_in:has(a[href*="/marca/"]),
body .mfn-quick-view-wrapper .product_meta .posted_in:has(a[href*="/marca/"]),
body .mfn-qv-wrapper .product_meta .posted_in:has(a[href*="/marca/"]),
body .mfn-quick-view .product_meta .posted_in:has(a[href*="/marca/"]){
  display: inline-block !important;
}

/* ===== QUICK VIEW / PREVIEW (popup) ===== */

/* Precio */
.mfn-popup-content-wrapper.product .price,
.mfn-popup-content-wrapper.product .price .amount,
.mfn-popup-content-wrapper.product .price .woocommerce-Price-amount,
.mfn-popup-content-wrapper.product .price bdi,
.mfn-popup-content-wrapper.product .price .woocommerce-Price-currencySymbol {
  color: #3A6B4C !important;
  font-weight: 700 !important;	
}

/* Botón "Añadir al carrito" */
.mfn-popup-content-wrapper.product .single_add_to_cart_button.button.alt {
  background-color: #1a3728 !important;
  border-color: #1a3728 !important;
  color: #ffffff !important;
}

/* Hover botón */
.mfn-popup-content-wrapper.product .single_add_to_cart_button.button.alt:hover {
  background-color: #13281e !important; /* un pelín más oscuro */
  border-color: #13281e !important;
  color: #ffffff !important;
}

/* Quitar Etiquetas / Categorías / SKU */
.mfn-popup-content-wrapper.product .product_meta.mfn_product_meta .tagged_as {
  display: none !important;
}

/* (Opcional) quitar el margen superior si te queda hueco */
.mfn-popup-content-wrapper.product .product_meta.mfn_product_meta {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Franja tipo topbar */
.koelus-shop-strip{
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  background: #3A6B4C;
}

/* Grosor similar al Top_bar (ajusta altura aquí) */
.koelus-shop-strip-inner{
  height: 80px;                 /* <-- ajusta: 60-90px suele cuadrar */
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 15px;              /* respiración lateral */
}

/* Logo centrado */
.koelus-shop-strip-inner img{
  max-height: 60px;             /* <-- ajusta según la altura */
  width: auto;
  display: block;
}

/* Móvil */
@media (max-width: 767px){
  .koelus-shop-strip-inner{ height: 64px; }
  .koelus-shop-strip-inner img{ max-height: 46px; }
}

.koelus-shop-strip-link{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none !important;
}

.koelus-shop-strip-link:hover{
  opacity: 0.95; /* opcional */
}

.single-product .post-nav.minimal{
  display: none !important;
}

.single-product #Content{
  padding-top: 40px !important;   /* ajusta 20-50px a tu gusto */
}

/* Paginación tienda: color verde (en vez de azul) */
.woocommerce-shop .pages .page-numbers,
.post-type-archive-product .pages .page-numbers{
  color: #1a3728 !important;
  border-color: #1a3728 !important;
}

/* Hover */
.woocommerce-shop .pages .page-numbers:hover,
.post-type-archive-product .pages .page-numbers:hover{
  background: #1a3728 !important;
  color: #ffffff !important;
}

/* Página actual */
.woocommerce-shop .pages .page-numbers.current,
.post-type-archive-product .pages .page-numbers.current{
  background: #1a3728 !important;
  color: #ffffff !important;
  border-color: #1a3728 !important;
}

/* ===== Chosen dropdown (WOOF): quitar azul y poner #1a3728 ===== */

/* Hover (lo que antes se ponía azul al pasar) */
#woof_tax_select_product_brand_chosen .chosen-results li.highlighted,
#woof_tax_select_product_cat_chosen .chosen-results li.highlighted,
.woof .chosen-container .chosen-results li.highlighted{
  background: #1a3728 !important;
  color: #ffffff !important;
}

/* Opción seleccionada (la azul fija) */
#woof_tax_select_product_brand_chosen .chosen-results li.result-selected,
#woof_tax_select_product_cat_chosen .chosen-results li.result-selected,
.woof .chosen-container .chosen-results li.result-selected{
  background: #1a3728 !important;
  color: #ffffff !important;
}

/* (Opcional) borde del desplegable */
#woof_tax_select_product_brand_chosen .chosen-drop,
#woof_tax_select_product_cat_chosen .chosen-drop,
.woof .chosen-container .chosen-drop{
  border-color: #1a3728 !important;
}

/* (Opcional) el input de búsqueda del desplegable */
#woof_tax_select_product_brand_chosen .chosen-search input,
#woof_tax_select_product_cat_chosen .chosen-search input,
.woof .chosen-container .chosen-search input{
  border-color: #1a3728 !important;
}

/* (Opcional) el “campo” cerrado */
#woof_tax_select_product_brand_chosen .chosen-single,
#woof_tax_select_product_cat_chosen .chosen-single,
.woof .chosen-container .chosen-single{
  border-color: #1a3728 !important;
}

/* Input buscador WOOF (texto al escribir) */
.woof .woof_husky_txt-input,
input.woof_husky_txt-input{
  color: #1a3728  !important;
  border-color: #1a3728 !important;
}

/* Placeholder */
.woof .woof_husky_txt-input::placeholder,
input.woof_husky_txt-input::placeholder{
  color: #1a3728  !important;
  opacity: 0.7;
}

/* Focus (cuando haces click y se pone azul) */
.woof .woof_husky_txt-input:focus,
input.woof_husky_txt-input:focus{
  color: #1a3728  !important;
  border-color: #3A6B4C !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(58, 107, 76, 0.20) !important;
}

.woocommerce-shop ul.products,
.post-type-archive-product ul.products{
  margin-top: 30px !important; /* ajusta a tu gusto */
}

/* Breadcrumb WooCommerce */
.woocommerce-breadcrumb,
.woocommerce-breadcrumb a {
  color: #3A6B4C !important;
}

/* (Opcional) hover un pelín más oscuro */
.woocommerce-breadcrumb a:hover {
  color: #2f563e !important;
}

button.woof_reset_search_form,
.woof_reset_search_form.button{
  background: #3A6B4C !important;
  border-color: #3A6B4C !important;
  color: #fff !important;
}

/* Opcional: hover un poco más oscuro */
button.woof_reset_search_form:hover,
.woof_reset_search_form.button:hover{
  background: #2f563e !important;
  border-color: #2f563e !important;
  color: #fff !important;
}

/* Carrito: icono + contador + total */
#header_cart,
#header_cart .header-cart-count,
#header_cart .header-cart-total{
  color: #E5E7CA !important;
}

/* Icono SVG (trazo) */
#header_cart svg .path{
  stroke: #E5E7CA !important;
}

/* Por si el tema usa fill en algún icono */
#header_cart svg{
  fill: #E5E7CA !important;
}

/* Limitar tamaño de la imagen en la ficha de producto */
.single-product div.product .woocommerce-product-gallery__image {
  max-height: 520px;      /* ajusta este valor a tu gusto */
}

.single-product div.product .woocommerce-product-gallery__image img.wp-post-image {
  width: 100%;
  height: 520px;          /* mismo valor que arriba */
  object-fit: contain;    /* mantiene proporción sin recortar */
}

/* Si el contenedor está en flex y centra, lo alineamos a la izquierda */
.single-product div.product {
  justify-content: flex-start !important;
}

.single-product div.product .woocommerce-product-gallery,
.single-product div.product .woocommerce-product-gallery__wrapper,
.single-product div.product .woocommerce-product-gallery__image {
  display: flex !important;
  justify-content: flex-start !important;
  align-items: flex-start !important;
}

/* El enlace debe ocupar y no centrarse */
.single-product div.product .woocommerce-product-gallery__image > a {
  display: block !important;
  margin: 0 !important;
}

.wc-block-components-totals-footer-item-tax {
  font-size: 14px !important;
  line-height: 1.3;
  font-weight: 400;
  margin: 0;
}

.top_bar_right_wrapper a.top-bar-right-icon.myaccount_button.toggle-login-modal {
  display: none !important;
}

.wc-block-components-totals-footer-item-shipping {
  font-size: 13px !important;
  line-height: 1.4 !important;
}

.woocommerce div.product p.stock .ko-stock-note{
  display:block;
  margin-top:6px;
  font-size:14px;
  line-height:1.4;
  font-weight:500;
}

.woocommerce div.product p.stock.out-of-stock .ko-stock-note{
  color:#c0392b;
}

.image_frame .soldout{
  display: none !important;
}

.woocommerce ul.products li.product.outofstock .image_frame img{
  opacity: 1 !important;
  filter: none !important;
}

.woocommerce ul.products li.product.outofstock .image_frame .mask{
  display: none !important;
  opacity: 0 !important;
  background: transparent !important;
}

/* Mensajes de error de validación en checkout (debajo de campos) */
.woocommerce-checkout p[id^="validate-error-"],
.woocommerce-checkout p[id^="validate-error-"] span {
  font-size: 14px !important;
  line-height: 1.2 !important;
}

/* Icono del error para que no se vea desproporcionado */
.woocommerce-checkout p[id^="validate-error-"] svg {
  width: 18px !important;
  height: 18px !important;
  vertical-align: top;
}

/* Avisos tipo banner dentro del checkout, como el del teléfono */
.woocommerce-checkout .wc-block-components-notice-banner,
.woocommerce-checkout .wc-block-components-notice-banner__content,
.woocommerce-checkout .wc-block-components-notice-banner__content span,
.woocommerce-checkout .wc-block-components-validation-error,
.woocommerce-checkout .wc-block-components-validation-error span {
  font-size: 14px !important;
  line-height: 1.3 !important;
}

/* =========================================
   MÓVIL: BeTheme + HUSKY
   sidebar de filtros encima de productos
   ========================================= */
@media only screen and (max-width: 767px){

  /* El contenedor real de contenido pasa a columna */
  body.woocommerce-shop #Content .content_wrapper,
  body.post-type-archive-product #Content .content_wrapper,
  body.tax-product_cat #Content .content_wrapper{
    display: flex !important;
    flex-direction: column !important;
  }

  /* Sidebar HUSKY primero */
  body.woocommerce-shop #Content .content_wrapper > .mcb-sidebar,
  body.post-type-archive-product #Content .content_wrapper > .mcb-sidebar,
  body.tax-product_cat #Content .content_wrapper > .mcb-sidebar{
    order: 1 !important;
    -webkit-order: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    clear: both !important;
    margin: 0 0 1px 0 !important;
    padding: 0 !important;
    min-height: auto !important;
  }

  /* Productos después */
  body.woocommerce-shop #Content .content_wrapper > .sections_group,
  body.post-type-archive-product #Content .content_wrapper > .sections_group,
  body.tax-product_cat #Content .content_wrapper > .sections_group{
    order: 2 !important;
    -webkit-order: 2 !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    clear: both !important;
  }

  /* Quitar offsets/anchos de columnas del tema */
  body.woocommerce-shop #Content .content_wrapper > .sections_group,
  body.woocommerce-shop #Content .content_wrapper > .mcb-sidebar,
  body.post-type-archive-product #Content .content_wrapper > .sections_group,
  body.post-type-archive-product #Content .content_wrapper > .mcb-sidebar,
  body.tax-product_cat #Content .content_wrapper > .sections_group,
  body.tax-product_cat #Content .content_wrapper > .mcb-sidebar{
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* Por si el sticky interno está interfiriendo */
  body.woocommerce-shop .mcb-sidebar .inner-wrapper-sticky,
  body.post-type-archive-product .mcb-sidebar .inner-wrapper-sticky,
  body.tax-product_cat .mcb-sidebar .inner-wrapper-sticky{
    position: static !important;
    top: auto !important;
  }
}

/* =========================================
   MÓVIL: cards de producto alineadas
   ========================================= */
@media only screen and (max-width: 767px){

  /* 1) Cortar layout tipo masonry / isotope / alturas raras */
  body.woocommerce-shop ul.products,
  body.post-type-archive-product ul.products,
  body.tax-product_cat ul.products{
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
  }

  body.woocommerce-shop ul.products li.product,
  body.post-type-archive-product ul.products li.product,
  body.tax-product_cat ul.products li.product{
    float: none !important;
    clear: none !important;
    display: flex !important;
    flex-direction: column !important;
    width: 50% !important;
    margin: 0 0 24px 0 !important;
    padding: 0 10px !important;
    box-sizing: border-box !important;
    position: relative !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
  }

  /* 2) Imagen */
  body.woocommerce-shop ul.products li.product .image_frame,
  body.post-type-archive-product ul.products li.product .image_frame,
  body.tax-product_cat ul.products li.product .image_frame{
    height: 180px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    margin-bottom: 0 !important;
  }

  body.woocommerce-shop ul.products li.product .image_frame img,
  body.post-type-archive-product ul.products li.product .image_frame img,
  body.tax-product_cat ul.products li.product .image_frame img{
    max-height: 180px !important;
    width: 100% !important;
    object-fit: contain !important;
  }

  /* 3) Título más compacto */
  body.woocommerce ul.products li.product h2,
  body.woocommerce ul.products li.product h3,
  body.woocommerce ul.products li.product h4,
  body.woocommerce ul.products li.product .woocommerce-loop-product__title,
  body.woocommerce ul.products li.product .title,
  body.woocommerce ul.products li.product .product-title,
  body.woocommerce ul.products li.product .desc h4{
    min-height: calc(1.15em * 2) !important;
    margin-top: 3px !important;
    margin-bottom: 2px !important;
    line-height: 1.15 !important;
    overflow: hidden !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
  }

  /* 4) Descripción más compacta */
  body.woocommerce ul.products li.product .desc,
  body.woocommerce ul.products li.product .desc p,
  body.woocommerce ul.products li.product .mfn-product-excerpt,
  body.woocommerce ul.products li.product .excerpt,
  body.woocommerce ul.products li.product .product-excerpt{
    min-height: calc(1.25em * 1.6) !important;
    margin-top: 0 !important;
    margin-bottom: 6px !important;
    line-height: 1.2 !important;
    overflow: hidden !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
  }

  /* 5) Precio */
  body.woocommerce ul.products li.product .desc span.price,
  body.woocommerce ul.products li.product .price{
    display: block !important;
    margin-top: 0 !important;
    min-height: auto !important;
  }
}

    vertical-align: middle !important;
  }

  /* El contador más compacto */
  #header_cart .header-cart-count{
    margin-left: 0 !important;
    margin-right: 2px !important;
    font-size: 12px !important;
  }

  /* Texto del total compacto */
  #header_cart .header-cart-total{
    max-width: 82px !important;
    overflow: hidden !important;
    white-space: nowrap !important;
    text-overflow: ellipsis !important;
    font-size: 13px !important;
    line-height: 1 !important;
    margin: 0 !important;
  }
}



.ko-tax-toggle-archive-anchor{
  width: 100%;
  margin: 0 0 14px 0;
  padding-top: 28px;
  box-sizing: border-box;
}

.ko-tax-toggle-archive-anchor .ko-tax-toggle-wrap{
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.single-product .ko-tax-toggle-wrap,
.ko-tax-toggle-single{
  display: flex;
  justify-content: center;
  width: 100%;
  margin: 10px 0 18px 0;
}

.ko-tax-toggle-label{
  display: flex;
  align-items: center;
  gap: 12px;
  cursor: pointer;
  font-size: 16px;
  line-height: 1.3;
  color: #1f1f1f;
}

.ko-tax-toggle-switch{
  position: relative;
  display: inline-block;
  width: 50px;
  height: 28px;
  flex: 0 0 auto;
}

.ko-tax-toggle-switch input{
  opacity: 0;
  width: 0;
  height: 0;
  position: absolute;
}

.ko-tax-toggle-slider{
  position: absolute;
  inset: 0;
  background: #dcdcdc;
  border-radius: 999px;
  transition: 0.25s ease;
}

.ko-tax-toggle-slider:before{
  content: "";
  position: absolute;
  width: 22px;
  height: 22px;
  left: 3px;
  top: 3px;
  background: #fff;
  border-radius: 50%;
  transition: 0.25s ease;
  box-shadow: 0 1px 3px rgba(0,0,0,.2);
}

.ko-tax-toggle-input:checked + .ko-tax-toggle-slider{
  background: #54b948;
}

.ko-tax-toggle-input:checked + .ko-tax-toggle-slider:before{
  transform: translateX(22px);
}

@media only screen and (max-width: 767px){

  .single-product .woocommerce-product-details__short-description,
  .single-product .woocommerce-product-details__short-description p{
    line-height: 1.25 !important;
  }

  .single-product .woocommerce-product-details__short-description p{
    margin-bottom: 0.8em !important;
  }

}

@media only screen and (max-width: 767px){

 .ko-tax-toggle-archive-anchor{
    margin: 6px 0 6px 0 !important;
    padding: 0 !important;
  }

  .ko-tax-toggle-archive-anchor .ko-tax-toggle-wrap{
    width: auto !important;
    max-width: none !important;
    margin: 0 16px 0 auto !important;
    padding: 0 !important;
    display: flex !important;
    justify-content: flex-end !important;
  }

  .ko-tax-toggle-archive-anchor .ko-tax-toggle-label{
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    white-space: normal !important;
    flex-wrap: nowrap !important;
  }

  .ko-tax-toggle-archive-anchor .ko-tax-toggle-text{
    font-size: 15px !important;
    line-height: 1.2 !important;
  }

}

  /* 2) Menos espacio debajo del bloque de filtros */
  .woocommerce ul.products,
  .woocommerce-page ul.products,
  ul.products.columns-3,
  ul.products.masonry.isotope{
    margin-top: 10px !important;
  }

  /* Por si el hueco viene del contenedor de filtros */
  .woocommerce .sidebar,
  .woocommerce-page .sidebar,
  .woocommerce .shop-filters,
  .woocommerce-page .shop-filters,
  .woocommerce .widget-area{
    margin-bottom: 10px !important;
    padding-bottom: 0 !important;
  }

}

@media only screen and (max-width: 767px){

  .ko-tax-toggle-archive-anchor{
    margin: 0 !important;
    padding: 0 !important;
  }

  .ko-tax-toggle-archive-anchor .ko-tax-toggle-wrap{
    width: 100% !important;
    max-width: 100% !important;
    margin: 8px 0 4px 0 !important;
    padding: 0 16px !important;
    justify-content: flex-start !important;
    box-sizing: border-box !important;
    padding-left: 28px !important;
    padding-right: 16px !important;
  }

  .ko-tax-toggle-archive-anchor .ko-tax-toggle-label{
    justify-content: flex-start !important;
  }

}
