.elementor-45 .elementor-element.elementor-element-7de1731{--display:flex;}.elementor-45 .elementor-element.elementor-element-fbb621c{--display:flex;}.elementor-45 .elementor-element.elementor-element-7542c22{--display:flex;}.elementor-45 .elementor-element.elementor-element-a50e811.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-45 .elementor-element.elementor-element-a50e811.elementor-wc-products ul.products li.product span.onsale{display:block;}@media(max-width:1024px){.elementor-45 .elementor-element.elementor-element-a50e811.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}}@media(max-width:767px){.elementor-45 .elementor-element.elementor-element-a50e811.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}}/* Start custom CSS for woocommerce-products, class: .elementor-element-a50e811 *//* =========================================================
   The Alchemia Lab · WooCommerce Product Cards (Premium)
   Pegar completo en: Apariencia > Personalizar > CSS adicional
   Nota: CSS NO puede cambiar el texto "Oferta" a "Más vendido".
   Para eso se requiere un pequeño JS aparte.
   ========================================================= */

/* Fuente moderna para precios */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

:root{
  --tal-ink:#0f0f10;
  --tal-muted:#6d6d6d;
  --tal-line:rgba(0,0,0,.10);
  --tal-bg:#ffffff;
  --tal-gold:#D4B55C;

  --tal-radius:18px;
  --tal-shadow:0 12px 28px rgba(0,0,0,.08);
  --tal-shadow-hover:0 26px 60px rgba(0,0,0,.14);

  --tal-sale-bg:rgba(17,17,17,.92);
  --tal-sale-border:rgba(255,255,255,.18);
  --tal-sale-shadow:0 10px 22px rgba(0,0,0,.14);

  --tal-sale-color:#ffffff;
  --tal-price:#b32622;
}

/* Grid spacing (si el tema lo soporta) */
.woocommerce ul.products{
  gap:22px;
}
.woocommerce ul.products li.product{
  margin:0 !important;
}

/* Card base */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  background:var(--tal-bg);
  border:1px solid var(--tal-line);
  border-radius:var(--tal-radius);
  overflow:hidden;
  box-shadow:var(--tal-shadow);
  transition:transform .22s ease, box-shadow .28s ease, border-color .22s ease;
  position:relative;
  text-align:left;
}

/* Micro borde premium (foil sutil) */
.woocommerce ul.products li.product::before,
.woocommerce-page ul.products li.product::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:var(--tal-radius);
  padding:1px;
  background:linear-gradient(135deg,
    rgba(212,181,92,0) 0%,
    rgba(212,181,92,.22) 22%,
    rgba(255,255,255,.42) 38%,
    rgba(212,181,92,.18) 56%,
    rgba(212,181,92,0) 78%
  );
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
          mask-composite:exclude;
  opacity:0;
  transition:opacity .25s ease;
  pointer-events:none;
  z-index:2;
}

.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover{
  transform:translateY(-6px);
  box-shadow:var(--tal-shadow-hover);
  border-color:rgba(212,181,92,.35);
}
.woocommerce ul.products li.product:hover::before,
.woocommerce-page ul.products li.product:hover::before{
  opacity:.95;
}

/* Imagen */
.woocommerce ul.products li.product a img{
  margin:0 !important;
  display:block;
  width:100%;
  height:auto;
  transform:scale(1);
  transition:transform .55s ease, filter .35s ease;
}
.woocommerce ul.products li.product:hover a img{
  transform:scale(1.05);
  filter:brightness(1.02) contrast(1.02);
}

/* Título */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product h3{
  padding:16px 16px 6px !important;
  margin:0 !important;
  color:var(--tal-ink);
  font-family:"Playfair Display",serif;
  font-weight:650;
  letter-spacing:.02em;
  line-height:1.22;

  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  overflow:hidden;
}

/* Categorías/meta si aparecen */
.woocommerce ul.products li.product .posted_in,
.woocommerce ul.products li.product .product-category,
.woocommerce ul.products li.product .woocommerce-loop-category__title,
.woocommerce ul.products li.product .product-categories,
.woocommerce ul.products li.product .meta,
.woocommerce ul.products li.product .category{
  padding:0 16px 10px !important;
  margin:0 !important;
  color:var(--tal-muted);
  font-size:13px;
  letter-spacing:.08em;
  text-transform:uppercase;
  line-height:1.35;
}

/* ===== Precio (sin Playfair, con Inter) ===== */
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .price ins,
.woocommerce ul.products li.product .price del,
.woocommerce ul.products li.product .price .amount{
  font-family:"Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  letter-spacing:.01em;
}

.woocommerce ul.products li.product .price{
  padding:0 16px 14px !important;
  margin:0 !important;
  line-height:1.1;
  display:flex;
  align-items:baseline;
  gap:10px;
  flex-wrap:wrap;
}

/* Precio final */
.woocommerce ul.products li.product .price ins{
  text-decoration:none !important;
  order:2;
}
.woocommerce ul.products li.product .price ins .amount,
.woocommerce ul.products li.product .price > .amount{
  font-size:30px;
  font-weight:800;
  color:var(--tal-price);
  letter-spacing:.02em;
}

/* Precio tachado */
.woocommerce ul.products li.product .price del{
  order:1;
  opacity:.55;
}
.woocommerce ul.products li.product .price del .amount{
  font-size:21px;
  font-weight:500;
  color:#9a9a9a;
  text-decoration:line-through;
  text-decoration-thickness:2px;
  text-decoration-color:rgba(179,38,34,.35);
}

/* Rating */
.woocommerce ul.products li.product .star-rating{
  margin:0 16px 10px !important;
}

/* Botón */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button{
  margin:0 16px 16px !important;
  display:flex !important;
  align-items:center;
  justify-content:center;
  border-radius:999px !important;
  border:1px solid rgba(179,38,34,.65) !important;
  background:transparent !important;
  color:var(--tal-price) !important;
  font-weight:650 !important;
  letter-spacing:.10em !important;
  text-transform:uppercase !important;
  padding:14px 16px !important;
  box-shadow:0 10px 24px rgba(0,0,0,.06);
  transition:transform .22s ease, background .22s ease, color .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.woocommerce ul.products li.product:hover .button,
.woocommerce ul.products li.product:hover a.button{
  transform:translateY(-1px);
  background:var(--tal-price) !important;
  color:#fff !important;
  border-color:var(--tal-price) !important;
  box-shadow:0 16px 34px rgba(179,38,34,.20);
}
.woocommerce ul.products li.product .button::after,
.woocommerce ul.products li.product a.button::after{
  display:none !important;
}

/* ===== Badge “Oferta” pequeño arriba derecha ===== */
.woocommerce span.onsale{
  left:auto !important;
  right:12px !important;
  top:12px !important;

  background:var(--tal-sale-bg) !important;
  color:var(--tal-sale-color) !important;

  border-radius:999px !important;
  padding:7px 10px !important;
  font-size:10.5px !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;

  min-height:auto !important;
  line-height:1 !important;

  box-shadow:var(--tal-sale-shadow) !important;
  border:1px solid var(--tal-sale-border) !important;

  width:auto !important;
  height:auto !important;
}

/* Responsive */
@media (max-width:600px){
  .woocommerce ul.products li.product .woocommerce-loop-product__title,
  .woocommerce ul.products li.product h2,
  .woocommerce ul.products li.product h3{
    -webkit-line-clamp:2;
    padding:14px 14px 6px !important;
    font-size:18px;
  }

  .woocommerce ul.products li.product .price{
    padding:0 14px 12px !important;
  }
  .woocommerce ul.products li.product .price ins .amount,
  .woocommerce ul.products li.product .price > .amount{
    font-size:26px;
  }
  .woocommerce ul.products li.product .price del .amount{
    font-size:18px;
  }

  .woocommerce ul.products li.product .button,
  .woocommerce ul.products li.product a.button{
    margin:0 14px 14px !important;
    padding:13px 14px !important;
  }

  .woocommerce span.onsale{
    right:10px !important;
    top:10px !important;
    padding:6px 9px !important;
    font-size:10px !important;
  }
}
/* Ajuste fino botón Añadir al carrito (tipografía más compacta) */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button{
  font-size:13px !important;      /* antes más grande */
  letter-spacing:.08em !important; /* más compacto */
  padding:13px 16px !important;   /* mantiene altura elegante */
}

/* Mobile */
@media (max-width:600px){
  .woocommerce ul.products li.product .button,
  .woocommerce ul.products li.product a.button{
    font-size:12.5px !important;
    letter-spacing:.07em !important;
    padding:12px 14px !important;
  }
}
/* === Centrado perfecto del texto en "Añadir al carrito" === */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  line-height:1 !important;        /* clave: elimina empuje vertical */
  height:auto !important;
  min-height:48px;                 /* altura consistente y elegante */

  padding:14px 18px !important;    /* balance real del botón */
  text-align:center !important;
}

/* Mobile */
@media (max-width:600px){
  .woocommerce ul.products li.product .button,
  .woocommerce ul.products li.product a.button{
    min-height:44px;
    padding:12px 16px !important;
  }
}/* End custom CSS */