/* Santa Catalina — Ficha de producto: layout del demo (.fp-*) sobre Blocksy nativo */

.single-product .product-entry-wrapper,
.single-product div.product.type-product{ max-width:1200px;margin:0 auto;position:relative; }

.single-product .product-entry-wrapper{
  display:grid !important;grid-template-columns:55fr 45fr;gap:clamp(28px,4vw,60px);
  align-items:start;padding:clamp(24px,3vw,44px) 28px;
}
@media(max-width:900px){ .single-product .product-entry-wrapper{ grid-template-columns:1fr; } }

/* ---------- galería ---------- */
.single-product .woocommerce-product-gallery{ position:sticky;top:90px;float:none !important;width:auto !important;margin:0 !important; }
@media(max-width:900px){ .single-product .woocommerce-product-gallery{ position:static; } }
.single-product .woocommerce-product-gallery .flexy-container,
.single-product .ct-product-gallery-container .flexy-container,
.single-product .woocommerce-product-gallery__wrapper{
  border:1px solid var(--linea,#E7DAD2);border-radius:18px;overflow:hidden;background:var(--crema,#F9F0EC);
}
.single-product .woocommerce-product-gallery img{ border-radius:0; }
.single-product .flexy-pills ul,
.single-product .woocommerce-product-gallery .flexy-view{ gap:12px !important;margin-top:14px !important; }
.single-product .flexy-pills li,
.single-product .woocommerce-product-gallery .flexy-view [data-flexy-item]{
  border:2px solid transparent;border-radius:12px;overflow:hidden;
}
.single-product .flexy-pills li.active,
.single-product .flexy-pills li[aria-selected=true]{ border-color:var(--guinda,#7B0A0C) !important; }

.fp-badge-pop{
  position:absolute;top:18px;left:calc(28px + 16px);z-index:5;
  background:var(--guinda,#7B0A0C);color:#fff;font-family:var(--font-body,Lato,sans-serif);
  font-weight:900;font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  padding:7px 14px;border-radius:999px;box-shadow:0 8px 20px rgba(43,29,26,.18);
}
.fp-badge-pop--sale{ background:var(--beige,#C0A58A);color:var(--tinta,#2B1D1A); }

/* ---------- summary ---------- */
.single-product .summary.entry-summary{ margin:0 !important;width:auto !important;float:none !important;display:flex;flex-direction:column; }
.single-product .summary > *{ order:5; }
.fp-over{ order:1 !important;display:block;font-family:var(--font-body,Lato,sans-serif);font-weight:700;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--dorado,#C9AA8A);margin-bottom:8px; }
.single-product .summary .product_title{ order:2 !important;font-family:var(--font-display,'Bebas Neue',sans-serif) !important;color:var(--guinda,#7B0A0C) !important;font-size:clamp(36px,5vw,50px) !important;line-height:.96 !important;letter-spacing:.015em;margin:0 !important;text-transform:uppercase; }
.single-product .summary .woocommerce-product-rating{ order:3 !important;margin:12px 0 0 !important; }
.single-product .summary > p.price{ order:4 !important;display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin:20px 0 0 !important;color:var(--guinda,#7B0A0C) !important; }
.single-product .summary > p.price .amount,
.single-product .summary > p.price ins .amount{ font-family:var(--font-display,'Bebas Neue',sans-serif) !important;font-size:46px !important;line-height:.9;color:var(--guinda,#7B0A0C) !important;font-weight:400 !important; }
.single-product .summary > p.price ins{ text-decoration:none; }
.single-product .summary > p.price del{ opacity:1; }
.single-product .summary > p.price del .amount{ font-family:var(--font-body,Lato,sans-serif) !important;font-size:17px !important;color:var(--tinta-3,#9a8a83) !important;text-decoration:line-through;font-weight:700 !important; }
.fp-save{ order:4 !important;display:inline-flex;align-items:center;gap:6px;align-self:flex-start;background:#EAF5EE;color:#1F7A4D;font-family:var(--font-body,Lato,sans-serif);font-weight:900;font-size:12px;letter-spacing:.04em;padding:7px 13px;border-radius:999px;margin:12px 0 0; }
.fp-save .amount{ font-size:12px !important;color:#1F7A4D !important;font-family:inherit !important; }
.single-product .woocommerce-product-details__short-description{ order:5 !important;margin:20px 0 0 !important;font-size:15px;line-height:1.7;color:var(--fg2,#6b5b52); }
.single-product .ct-product-divider{ order:6 !important;display:block;height:1px;background:var(--linea,#E7DAD2);border:0;margin:24px 0 !important; }
.single-product .ct-product-add-to-cart{ order:7 !important; }
.single-product .product_meta{ order:9 !important;font-size:12px;color:var(--fg3,#9a8a83);margin-top:18px !important; }
.single-product .product_meta a{ color:var(--fg2,#6b5b52); }
.fp-trust{ order:8 !important;display:flex;flex-wrap:wrap;gap:12px 26px;margin-top:22px; }
.fp-trust__item{ display:flex;align-items:center;gap:9px;font-family:var(--font-body,Lato,sans-serif);font-size:13px;color:var(--fg2,#6b5b52); }
.fp-trust__item svg{ width:18px;height:18px;color:var(--guinda,#7B0A0C);flex:0 0 auto; }
.fp-trust__item b{ color:var(--tinta,#2B1D1A);font-weight:700; }
.fp-features{ order:9 !important;display:flex;flex-wrap:wrap;gap:10px;margin-top:20px; }
.fp-feature{ display:inline-flex;align-items:center;gap:8px;background:var(--crema,#F9F0EC);border:1px solid var(--dorado,#C9AA8A);border-radius:999px;padding:8px 15px;font-family:var(--font-body,Lato,sans-serif);font-size:12.5px;font-weight:700;color:var(--tinta,#2B1D1A); }
.fp-feature svg{ width:15px;height:15px;color:var(--guinda,#7B0A0C); }

/* ---------- variaciones (woo-variation-swatches) ---------- */
/* precio de la variante seleccionada primero, antes de su descripcion */
.single-product .woocommerce-variation.single_variation{ display:flex !important;flex-direction:column !important; }
.single-product .woocommerce-variation-price{ order:1 !important;font-weight:900 !important;font-size:22px !important;color:var(--guinda,#7B0A0C) !important;margin:14px 0 6px !important; }
.single-product .woocommerce-variation-description{ order:2 !important; }
.single-product .woocommerce-variation-availability{ order:3 !important; }

.single-product table.variations{ border:0;margin:0 0 14px; }
.single-product table.variations th,
.single-product table.variations td{ border:0;padding:8px 0;display:block;text-align:left; }
.single-product table.variations .label label{ font-family:var(--font-body,Lato,sans-serif);font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--tinta,#2B1D1A); }
.single-product .variable-items-wrapper{ display:flex;gap:10px;flex-wrap:wrap;margin-top:8px; }
.single-product .variable-item{ border-radius:8px !important;transition:all .15s ease; }
.single-product .button-variable-item{
  font-family:var(--font-body,Lato,sans-serif) !important;font-weight:700 !important;font-size:13px !important;
  padding:10px 16px !important;border:1.5px solid var(--linea,#E7DAD2) !important;border-radius:8px !important;
  background:#fff !important;color:var(--fg2,#6b5b52) !important;box-shadow:none !important;min-width:0 !important;
}
.single-product .button-variable-item.selected,
.single-product .button-variable-item:hover{ background:var(--guinda,#7B0A0C) !important;color:#fff !important;border-color:var(--guinda,#7B0A0C) !important; }
.single-product .color-variable-item{ width:32px !important;height:32px !important;border-radius:50% !important;box-shadow:inset 0 0 0 2px #fff,0 0 0 1px var(--linea,#E7DAD2) !important;outline:2px solid transparent;outline-offset:2px; }
.single-product .color-variable-item.selected{ outline-color:var(--guinda,#7B0A0C) !important; }
.single-product .reset_variations{ font-size:12px;color:var(--guinda,#7B0A0C); }

/* ---------- cantidad + boton ---------- */
.single-product form.cart{ display:flex;gap:12px;align-items:stretch;flex-wrap:wrap;margin:18px 0 0; }
.single-product form.cart .quantity{
  display:flex;align-items:center;border:1.5px solid var(--linea,#E7DAD2);border-radius:10px;overflow:hidden;height:52px;flex:0 0 auto;
}
.single-product form.cart .quantity input.qty{
  width:46px;height:100%;border:0 !important;text-align:center;font-weight:700;font-size:15px;background:#fff;color:var(--tinta,#2B1D1A);
}
.single-product form.cart .quantity button,
.single-product form.cart .quantity .ct-increase,
.single-product form.cart .quantity .ct-decrease{
  width:42px;height:52px;border:0;background:#fff;color:var(--guinda,#7B0A0C);cursor:pointer;font-size:16px;
}
.single-product form.cart .single_add_to_cart_button{
  flex:1 1 220px;min-height:52px;border-radius:999px !important;background:var(--guinda,#7B0A0C) !important;color:#fff !important;
  border:0 !important;font-family:var(--font-body,Lato,sans-serif) !important;font-weight:900 !important;font-size:14px !important;
  letter-spacing:.1em !important;text-transform:uppercase !important;box-shadow:0 12px 26px rgba(123,10,12,.22) !important;
}
.single-product form.cart .single_add_to_cart_button:hover{ background:var(--guinda-700,#66080A) !important; }
.single-product form.cart .single_add_to_cart_button.disabled{ opacity:.55; }
.single-product .woocommerce-variation-add-to-cart{ display:flex;gap:12px;flex-wrap:wrap;align-items:stretch;width:100%; }
.single-product .woocommerce-variation-price .price .amount{ font-family:var(--font-display,'Bebas Neue',sans-serif) !important;font-size:34px !important;color:var(--guinda,#7B0A0C) !important; }

/* ---------- tabs ---------- */
.single-product .woocommerce-tabs{ max-width:1200px;margin:10px auto 0;padding:clamp(30px,4vw,56px) 28px;border-top:1px solid var(--linea,#E7DAD2); }
.single-product .woocommerce-tabs ul.tabs{
  display:flex;gap:4px;flex-wrap:wrap;padding:0 !important;margin:0 0 30px !important;
  border-bottom:1px solid var(--linea,#E7DAD2) !important;list-style:none;
}
.single-product .woocommerce-tabs ul.tabs::before,
.single-product .woocommerce-tabs ul.tabs::after,
.single-product .woocommerce-tabs ul.tabs li::before,
.single-product .woocommerce-tabs ul.tabs li::after{ display:none !important;border:0 !important; }
.single-product .woocommerce-tabs ul.tabs li{ background:none !important;border:0 !important;margin:0 !important;padding:0 !important;border-radius:0 !important; }
.single-product .woocommerce-tabs ul.tabs li a{
  display:block;padding:14px 18px !important;font-family:var(--font-body,Lato,sans-serif) !important;font-weight:700 !important;
  font-size:13px !important;letter-spacing:.1em;text-transform:uppercase;color:var(--fg2,#6b5b52) !important;
  border-bottom:3px solid transparent;margin-bottom:-1px;
}
.single-product .woocommerce-tabs ul.tabs li.active a,
.single-product .woocommerce-tabs ul.tabs li a:hover{ color:var(--guinda,#7B0A0C) !important; }
.single-product .woocommerce-tabs ul.tabs li.active a{ border-bottom-color:var(--guinda,#7B0A0C); }
.single-product .woocommerce-Tabs-panel{ font-family:var(--font-body,Lato,sans-serif);color:var(--fg2,#6b5b52);line-height:1.7;font-size:15px; }
.single-product .woocommerce-Tabs-panel h2,
.single-product .woocommerce-Tabs-panel h3{ font-family:var(--font-display,'Bebas Neue',sans-serif) !important;color:var(--guinda,#7B0A0C) !important;font-size:28px !important;text-transform:uppercase;letter-spacing:.02em;margin:0 0 16px !important; }
.single-product .woocommerce-Tabs-panel table.shop_attributes{ width:100%;max-width:640px;border-collapse:collapse;border:0; }
.single-product .woocommerce-Tabs-panel table.shop_attributes tr{ border-bottom:1px solid var(--linea,#E7DAD2); }
.single-product .woocommerce-Tabs-panel table.shop_attributes tr:nth-child(2n+1){ background:var(--crema,#F9F0EC); }
.single-product .woocommerce-Tabs-panel table.shop_attributes th,
.single-product .woocommerce-Tabs-panel table.shop_attributes td{ text-align:left;padding:14px 16px;font-size:14.5px;background:transparent; }
.single-product .woocommerce-Tabs-panel table.shop_attributes th{ font-family:var(--font-body,Lato,sans-serif);font-weight:900;color:var(--guinda,#7B0A0C);width:38%;letter-spacing:.02em; }
.single-product .woocommerce-Tabs-panel table.shop_attributes td{ color:var(--tinta,#2B1D1A); }
.single-product .woocommerce-Tabs-panel table.shop_attributes td p{ margin:0; }

/* ---------- relacionados ---------- */
.single-product .related.products,
.single-product .up-sells{ max-width:1200px;margin:0 auto;padding:clamp(30px,4vw,56px) 28px;border-top:1px solid var(--linea,#E7DAD2);clear:both; }
.single-product .related.products > h2,
.single-product .up-sells > h2{ font-family:var(--font-display,'Bebas Neue',sans-serif) !important;color:var(--guinda,#7B0A0C) !important;font-size:clamp(28px,3.5vw,40px) !important;text-transform:uppercase;letter-spacing:.02em;margin:0 0 26px !important; }
.single-product .related.products ul.products{
  display:grid !important;grid-template-columns:repeat(4,1fr);gap:clamp(14px,2vw,24px);margin:0 !important;list-style:none;
}
@media(max-width:1000px){ .single-product .related.products ul.products{ grid-template-columns:repeat(2,1fr); } }
.single-product .related.products li.product{ width:auto !important;margin:0 !important;padding:0 !important;float:none !important;display:flex;flex-direction:column;position:relative;background:transparent;border:0; }
.single-product .related.products li.product::before,
.single-product .related.products li.product::after{ content:none !important; }
.single-product .related.products li.product .ct-media-container,
.single-product .related.products li.product > a:first-child{ display:block;border-radius:14px;overflow:hidden;border:1px solid var(--linea,#E7DAD2);background:var(--crema,#F9F0EC);aspect-ratio:1/1; }
.single-product .related.products li.product img{ width:100% !important;height:100% !important;object-fit:cover;aspect-ratio:1/1 !important;margin:0 !important; }
.single-product .related.products li.product .woocommerce-loop-product__title{ font-family:var(--font-display,'Bebas Neue',sans-serif) !important;color:var(--guinda,#7B0A0C) !important;text-transform:uppercase;font-size:20px !important;line-height:1.05 !important;padding:12px 0 2px !important;margin:0 !important; }
.single-product .related.products li.product .price{ color:var(--tinta,#2B1D1A) !important;font-weight:900 !important;font-size:16px !important;font-family:var(--font-body,Lato,sans-serif) !important; }
.single-product .related.products li.product .price del .amount{ color:var(--tinta-3,#9a8a83) !important;font-size:13px; }
.single-product .related.products li.product .button{ margin-top:10px !important;background:#fff !important;color:var(--guinda,#7B0A0C) !important;border:1.5px solid var(--linea,#E7DAD2) !important;border-radius:999px !important;font-weight:700 !important;font-size:11.5px !important;letter-spacing:.08em !important;text-transform:uppercase !important;padding:9px 18px !important;min-height:0 !important;align-self:flex-start; }

/* ---- v3 fixes: swatches ---- */
.single-product .button-variable-item{ white-space:nowrap !important;min-width:52px !important;text-align:center;padding:10px 18px !important; }
.single-product ul.variable-items-wrapper{ display:flex !important;gap:10px !important;flex-wrap:wrap !important;padding:0 !important;margin:8px 0 0 !important;list-style:none; }
.single-product table.variations tr{ display:block;margin-bottom:16px; }
.single-product table.variations td.value{ margin-top:6px; }
.single-product .woo-variation-swatches-variable-item-more{ font-size:12px;color:var(--guinda,#7B0A0C); }
.single-product .color-variable-item .variable-item-span{ width:32px;height:32px;border-radius:50%; }

/* ================= v5: fondo blanco + botones variación + relacionados ================= */

/* fondo blanco en la ficha */
body.single-product,
body.single-product #main-container,
body.single-product .site-main,
body.single-product .ct-container,
body.single-product .product-entry-wrapper{ background:#fff !important; }

/* botones de talla/variación: que quepa el texto */
.single-product .variable-items-wrapper,
.single-product ul.variable-items-wrapper{ display:flex !important;flex-wrap:wrap !important;gap:9px !important;padding:0 !important;margin:8px 0 0 !important;list-style:none; }
.single-product .button-variable-item,
.single-product li.button-variable-item{
  width:auto !important;min-width:0 !important;height:auto !important;max-width:none !important;
  padding:9px 16px !important;line-height:1.2 !important;font-size:13px !important;font-weight:700 !important;
  border:1.5px solid var(--linea,#E7DAD2) !important;border-radius:9px !important;background:#fff !important;
  color:var(--fg2,#6b5b52) !important;white-space:nowrap !important;box-shadow:none !important;display:inline-flex !important;
  align-items:center;justify-content:center;
}
.single-product .button-variable-item .variable-item-span,
.single-product .button-variable-item span{ width:auto !important;height:auto !important;line-height:1.2 !important;padding:0 !important;font-size:13px !important; }
.single-product .button-variable-item.selected,
.single-product .button-variable-item[aria-checked="true"]{ background:var(--guinda,#7B0A0C) !important;color:#fff !important;border-color:var(--guinda,#7B0A0C) !important; }
.single-product .button-variable-item:hover{ border-color:var(--guinda,#7B0A0C) !important;color:var(--guinda,#7B0A0C) !important; }
.single-product .button-variable-item.selected:hover{ color:#fff !important; }

/* swatches de color */
.single-product ul.color-variable-items-wrapper{ display:flex !important;flex-wrap:wrap !important;gap:10px !important;padding:0 !important;margin:8px 0 0 !important; }
.single-product .color-variable-item,
.single-product li.color-variable-item{ width:30px !important;height:30px !important;border-radius:50% !important;padding:0 !important;border:0 !important;box-shadow:inset 0 0 0 2px #fff,0 0 0 1px var(--linea,#E7DAD2) !important;outline:2px solid transparent;outline-offset:2px;cursor:pointer; }
.single-product .color-variable-item .variable-item-span{ width:100% !important;height:100% !important;border-radius:50% !important;border:0 !important;display:block; }
.single-product .color-variable-item.selected,
.single-product .color-variable-item[aria-checked="true"]{ outline-color:var(--guinda,#7B0A0C) !important; }

/* etiqueta de la variación (Color: / Talla:) */
.single-product table.variations .label,
.single-product table.variations th.label label{ font-family:var(--font-body,Lato,sans-serif) !important;font-weight:700 !important;font-size:11.5px !important;letter-spacing:.12em !important;text-transform:uppercase !important;color:var(--tinta,#2B1D1A) !important; }
.single-product table.variations tr{ display:block;margin-bottom:16px; }
.single-product table.variations td,.single-product table.variations th{ display:block;padding:0 !important;border:0 !important; }

/* menos hueco entre divisores cuando no hay descripción corta */
.single-product .ct-product-divider{ margin:18px 0 !important; }
.single-product form.cart{ margin-top:6px !important; }

/* relacionados: rejilla tipo ficha del demo */
.single-product .related.products,
.single-product .up-sells.upsells,
.single-product .up-sells{ background:#fff;max-width:1200px;margin:0 auto !important;padding:clamp(34px,4vw,60px) 28px !important;border-top:1px solid var(--linea,#E7DAD2); }
.single-product .related.products > h2{ font-family:var(--font-display,'Bebas Neue',sans-serif) !important;color:var(--guinda,#7B0A0C) !important;text-transform:uppercase;letter-spacing:.02em;font-size:clamp(26px,3.4vw,38px) !important;text-align:center;margin:0 0 30px !important; }
.single-product .related.products ul.products{ display:grid !important;grid-template-columns:repeat(4,1fr) !important;gap:24px !important;margin:0 !important;padding:0 !important;list-style:none !important; }
@media(max-width:1000px){ .single-product .related.products ul.products{ grid-template-columns:repeat(2,1fr) !important; } }
.single-product .related.products li.product{ width:auto !important;margin:0 !important;padding:0 !important;float:none !important;display:flex !important;flex-direction:column;background:#fff;border:1px solid var(--linea,#E7DAD2);border-radius:14px;overflow:hidden;box-shadow:0 5px 16px rgba(43,29,26,.06);position:relative; }
.single-product .related.products li.product::before,
.single-product .related.products li.product::after{ content:none !important; }
.single-product .related.products li.product figure,
.single-product .related.products li.product .ct-media-container,
.single-product .related.products li.product > a:first-child{ margin:0 !important;border:0 !important;border-radius:0 !important;border-bottom:1px solid var(--linea,#E7DAD2) !important;aspect-ratio:1/1;overflow:hidden;display:block; }
.single-product .related.products li.product img{ width:100% !important;height:100% !important;object-fit:cover !important;aspect-ratio:1/1 !important;margin:0 !important;border-radius:0 !important; }
.single-product .related.products li.product .woocommerce-loop-product__title{ font-family:var(--font-display,'Bebas Neue',sans-serif) !important;color:var(--guinda,#7B0A0C) !important;text-transform:uppercase;font-size:18px !important;line-height:1.05 !important;padding:12px 14px 2px !important;margin:0 !important; }
.single-product .related.products li.product .price{ color:var(--tinta,#2B1D1A) !important;font-weight:900 !important;font-size:15px !important;font-family:var(--font-body,Lato,sans-serif) !important;padding:0 14px !important;display:block;margin:2px 0 0 !important; }
.single-product .related.products li.product .price del .amount{ color:var(--tinta-3,#9a8a83) !important;font-size:12px; }
.single-product .related.products li.product .entry-meta,
.single-product .related.products li.product .star-rating,
.single-product .related.products li.product .ct-woo-card-actions,
.single-product .related.products li.product .button{ display:none !important; }
.single-product .related.products li.product{ padding-bottom:16px; }

/* ================= v6: limpiar tarjetas de relacionados ================= */
.single-product .related.products li.product .sc-stars,
.single-product .related.products li.product .ti-card__dots,
.single-product .related.products li.product .star-rating,
.single-product .related.products li.product .entry-meta,
.single-product .related.products li.product .ct-woo-card-actions,
.single-product .related.products li.product .added_to_cart,
.single-product .related.products li.product .ct-woo-card-extra,
.single-product .related.products li.product svg.sc-star{ display:none !important; }
.single-product .related.products li.product > *:last-child{ margin-bottom:14px !important; }
.single-product .related.products li.product .price{ padding-bottom:2px !important; }

/* por si el hook de estrellas del sc-shop se cuela en la ficha */
.single-product .sc-stars svg.sc-star{ width:14px !important;height:14px !important; }
.single-product .summary .sc-stars{ display:none !important; }

.single-product .related.products li.product .ti-badge{ display:none !important; }

/* ================= v8: ficha COMPACTA (galería contenida, badges, breadcrumb) ================= */

/* cabecera / breadcrumb en blanco y compacta */
.single-product .hero-section,
.single-product .entry-header,
.single-product [data-type="type-1"]{ background:#fff !important;padding-top:14px !important;padding-bottom:6px !important;min-height:0 !important; }
.single-product .ct-breadcrumbs{ font-family:var(--font-body,Lato,sans-serif) !important;font-size:12px !important;color:var(--tinta-3,#9a8a83) !important;text-transform:none !important;letter-spacing:0 !important;padding:0 !important; }
.single-product .ct-breadcrumbs a{ color:var(--guinda,#7B0A0C) !important;text-decoration:none;font-weight:600; }
.single-product .ct-breadcrumbs a:hover{ text-decoration:underline; }

/* layout: 2 columnas parejas, menos padding vertical */
.single-product .product-entry-wrapper{ grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;gap:clamp(24px,3.5vw,48px) !important;padding:18px 28px 40px !important;align-items:start; }
@media(max-width:900px){ .single-product .product-entry-wrapper{ grid-template-columns:1fr !important; } }

/* ===== GALERÍA contenida ===== */
.single-product .woocommerce-product-gallery{ position:sticky;top:88px;margin:0 !important;width:auto !important;float:none !important; }
@media(max-width:900px){ .single-product .woocommerce-product-gallery{ position:static; } }
.single-product .ct-product-gallery-container{ position:relative; }
.single-product .flexy-container,
.single-product .flexy,
.single-product .flexy-view,
.single-product .flexy-items{ width:100% !important;height:auto !important; }
.single-product .flexy{
  border:1px solid var(--linea,#E7DAD2) !important;border-radius:18px !important;overflow:hidden !important;
  background:var(--crema,#F9F0EC) !important;aspect-ratio:4/3 !important;
}
.single-product .flexy-items{ aspect-ratio:4/3 !important; }
.single-product .flexy-item,
.single-product .flexy-item figure.ct-media-container{ width:100% !important;height:100% !important;margin:0 !important;border:0 !important;border-radius:0 !important;aspect-ratio:auto !important;background:transparent !important; }
.single-product .flexy-item img{ width:100% !important;height:100% !important;object-fit:cover !important;object-position:center !important;display:block !important;border-radius:0 !important;aspect-ratio:auto !important;max-width:none !important; }

/* thumbnails compactos */
.single-product .flexy-pills{ margin-top:12px !important; }
.single-product .flexy-pills ul{ display:grid !important;grid-template-columns:repeat(4,1fr) !important;gap:10px !important;padding:0 !important;margin:0 !important;list-style:none; }
.single-product .flexy-pills li{ margin:0 !important;padding:0 !important;border:2px solid transparent !important;border-radius:12px !important;overflow:hidden !important;aspect-ratio:1/1;background:var(--crema,#F9F0EC); }
.single-product .flexy-pills li img{ width:100% !important;height:100% !important;object-fit:cover !important;display:block;border-radius:0 !important; }
.single-product .flexy-pills li.active,
.single-product .flexy-pills li[aria-selected="true"]{ border-color:var(--guinda,#7B0A0C) !important; }
.single-product .flexy-arrow-prev,
.single-product .flexy-arrow-next{ display:none !important; }

/* ===== BADGES: solo uno, dentro de la caja ===== */
.single-product .ct-product-gallery-container > .onsale,
.single-product .woocommerce-product-gallery .onsale,
.single-product span.onsale{ display:none !important; }
.single-product .fp-badge-pop{
  position:absolute !important;top:14px !important;left:14px !important;z-index:6 !important;
  background:var(--guinda,#7B0A0C) !important;color:#fff !important;
  font-family:var(--font-body,Lato,sans-serif) !important;font-weight:900 !important;font-size:10.5px !important;
  letter-spacing:.14em !important;text-transform:uppercase !important;padding:6px 13px !important;border-radius:999px !important;
  box-shadow:0 8px 20px rgba(43,29,26,.2) !important;
}
.single-product .fp-badge-pop--sale{ background:var(--beige,#C0A58A) !important;color:var(--tinta,#2B1D1A) !important; }

/* ===== SUMMARY compacto ===== */
.single-product .summary.entry-summary{ gap:0 !important; }
.single-product .summary .product_title{ font-size:clamp(30px,3.6vw,42px) !important;margin-top:2px !important; }
.single-product .fp-over{ font-size:10.5px !important;margin-bottom:6px !important; }
.single-product .summary .woocommerce-product-rating{ margin:8px 0 0 !important; }
.single-product .summary > p.price{ margin:12px 0 0 !important; }
.single-product .summary > p.price .amount,
.single-product .summary > p.price ins .amount{ font-size:38px !important; }
.single-product .fp-save{ margin-top:10px !important;font-size:11.5px !important;padding:6px 12px !important; }
.single-product .woocommerce-product-details__short-description{ margin:14px 0 0 !important;font-size:14px !important;line-height:1.6 !important; }
.single-product .woocommerce-product-details__short-description ul{ margin:10px 0 0 !important; }
.single-product .ct-product-divider{ margin:14px 0 !important; }
.single-product form.cart{ margin-top:4px !important;gap:10px !important; }
.single-product table.variations tr{ margin-bottom:12px !important; }
.single-product .fp-trust{ margin-top:16px !important;gap:8px 20px !important; }
.single-product .fp-trust__item{ font-size:12.5px !important; }
.single-product .fp-features{ margin-top:14px !important;gap:8px !important; }
.single-product .fp-feature{ font-size:11.5px !important;padding:7px 13px !important; }
.single-product .product_meta{ margin-top:14px !important;font-size:11.5px !important; }

/* ================= v9: sección "También te puede gustar" = fondo crema como el demo ================= */
.single-product .related.products,
.single-product .up-sells.upsells,
.single-product .up-sells{
  background:var(--crema,#F9F0EC) !important;border-top:0 !important;
  max-width:none !important;margin:0 !important;
  padding:clamp(44px,5vw,72px) 0 clamp(48px,6vw,80px) !important;
}
.single-product .related.products > *{ max-width:1200px;margin-left:auto;margin-right:auto;padding-left:28px;padding-right:28px;box-sizing:border-box; }
.single-product .related.products > h2{
  font-family:var(--font-display,'Bebas Neue',sans-serif) !important;color:var(--guinda,#7B0A0C) !important;
  text-transform:uppercase;letter-spacing:.02em;font-size:clamp(28px,3.6vw,42px) !important;text-align:center;margin:0 auto 30px !important;
}
.single-product .related.products > h2::before{
  content:"De la misma colección";display:block;font-family:var(--font-body,Lato,sans-serif);
  font-weight:700;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--dorado,#C9AA8A);margin-bottom:8px;
}

/* tarjetas: SHOW categoría + estrellas + dots como el demo */
.single-product .related.products li.product{ background:#fff !important;border:1px solid var(--linea,#E7DAD2) !important;box-shadow:0 6px 20px rgba(43,29,26,.07) !important; }
.single-product .related.products li.product .entry-meta{ display:block !important;margin:12px 14px 0 !important;list-style:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis; }
.single-product .related.products li.product .entry-meta li{ display:inline;margin:0;padding:0; }
.single-product .related.products li.product .entry-meta li:not(:first-child){ display:none; }
.single-product .related.products li.product .entry-meta a{ font-family:var(--font-body,Lato,sans-serif);font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--tinta-3,#9a8a83);text-decoration:none; }
.single-product .related.products li.product .woocommerce-loop-product__title{ padding:4px 14px 0 !important;font-size:18px !important; }
.single-product .related.products li.product .sc-stars{ display:flex !important;align-items:center;gap:6px;margin:7px 14px 0 !important; }
.single-product .related.products li.product .sc-stars svg.sc-star{ display:inline-block !important;width:12px !important;height:12px !important;color:#E8A23D; }
.single-product .related.products li.product .sc-stars .sc-rnum{ font-size:11px;color:var(--fg2,#6b5b52); }
.single-product .related.products li.product .price{ padding:7px 14px 0 !important;font-size:16px !important; }
.single-product .related.products li.product .ti-card__dots{ display:flex !important;gap:6px;margin:9px 14px 4px !important; }
.single-product .related.products li.product .ti-card__dot{ width:14px;height:14px;border-radius:50%;border:1px solid rgba(43,29,26,.12);box-shadow:inset 0 0 0 2px #fff;display:block; }
.single-product .related.products li.product .ti-badge,
.single-product .related.products li.product .onsale,
.single-product .related.products li.product .star-rating,
.single-product .related.products li.product .ct-woo-card-actions,
.single-product .related.products li.product .button{ display:none !important; }

/* ================= v10: header crema + panel blanco + relacionados visibles ================= */

/* body crema (para que el header transparente se vea crema como el demo) */
body.single-product{ background:var(--crema,#F9F0EC) !important; }
body.single-product #main-container,
body.single-product .site-main,
body.single-product .ct-container{ background:transparent !important; }

/* la FICHA en un panel blanco */
.single-product .product-entry-wrapper{ background:#fff !important; }
.single-product .woocommerce-tabs{ background:#fff !important; }

/* breadcrumb: banda blanca fina */
.single-product .hero-section,
.single-product .entry-header,
.single-product [data-type="type-1"]{ background:#fff !important; }

/* RELACIONADOS: forzar visible (Blocksy ponía display:none al core .related.products) */
.single-product .related.products{ display:block !important;background:var(--crema,#F9F0EC) !important; }
.single-product .related.products ul.products{ display:grid !important;grid-template-columns:repeat(4,1fr) !important; }
@media(max-width:1000px){ .single-product .related.products ul.products{ grid-template-columns:repeat(2,1fr) !important; } }
/* si Blocksy pinta ADEMÁS su propio bloque .related (sin .products), ocultarlo para no duplicar */
.single-product .product > .related:not(.products){ display:none !important; }

/* ================= v11: botón "Ver todos los modelos" + etiquetas de color ================= */
.single-product .fp-secondary{
  display:flex !important;width:100% !important;margin:12px 0 0 !important;
  align-items:center;justify-content:center;gap:8px;
  font-family:var(--font-body,Lato,sans-serif);font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--guinda,#7B0A0C);background:#fff;border:1.5px solid var(--guinda,#7B0A0C);border-radius:999px;
  padding:13px 22px;text-decoration:none;transition:background .15s ease,color .15s ease;box-sizing:border-box;
}
.single-product .fp-secondary:hover{ background:var(--guinda,#7B0A0C);color:#fff; }
.single-product .woocommerce-variation-add-to-cart{ flex-wrap:wrap; }
.single-product .woocommerce-variation-add-to-cart .fp-secondary{ order:99; }

/* etiquetas de color debajo del swatch (como el demo: Guinda / Beige Arena...) */
.single-product ul.color-variable-items-wrapper{ gap:14px 12px !important;align-items:flex-start !important; }
.single-product .color-variable-item{ position:relative;display:flex !important;flex-direction:column;align-items:center;gap:7px;width:auto !important;height:auto !important;border:0 !important;box-shadow:none !important;background:none !important;padding:0 !important; }
.single-product .color-variable-item > span,
.single-product .color-variable-item .variable-item-span{
  width:30px !important;height:30px !important;border-radius:50% !important;display:block;
  box-shadow:inset 0 0 0 2px #fff,0 0 0 1px var(--linea,#E7DAD2) !important;outline:2px solid transparent;outline-offset:2px;
}
.single-product .color-variable-item.selected > span,
.single-product .color-variable-item.selected .variable-item-span,
.single-product .color-variable-item[aria-checked="true"] .variable-item-span{ outline-color:var(--guinda,#7B0A0C) !important; }
.single-product .color-variable-item::after{
  content:attr(data-title);font-family:var(--font-body,Lato,sans-serif);font-size:10.5px;line-height:1.2;
  color:var(--fg2,#6b5b52);text-align:center;max-width:64px;
}
.single-product .color-variable-item.selected::after,
.single-product .color-variable-item[aria-checked="true"]::after{ color:var(--tinta,#2B1D1A);font-weight:700; }

/* etiqueta "COLOR: Guinda" arriba */
.single-product .variations .label label,
.single-product table.variations .reset_variations{ }
.single-product .wvs-selected-label,
.single-product .variation-label-value{ color:var(--guinda,#7B0A0C) !important;font-weight:700 !important; }

/* ================= v12: sección de producto TODA BLANCA (sin panel), specs a pestañas, galería y relacionados centrados ================= */

/* fondo: header crema, TODO lo demás blanco (como el demo) */
body.single-product{ background:#fff !important; }
body.single-product #main-container,
body.single-product .site-main,
body.single-product .ct-container,
body.single-product .product-entry-wrapper,
body.single-product .woocommerce-tabs,
body.single-product .entry-content{ background:#fff !important; }
/* header: banda crema */
.single-product .elementor-location-header,
.single-product .elementor-location-header .header,
.single-product .header.is-top{ background:var(--crema,#F9F0EC) !important; }
.single-product .header.is-scrolled{ background:rgba(255,255,255,.96) !important; }
/* breadcrumb: banda blanca fina, sin bordes marcados */
.single-product .hero-section,
.single-product .entry-header{ background:#fff !important;box-shadow:none !important;border:0 !important; }

/* la ficha SIN aspecto de tarjeta flotante */
.single-product .product-entry-wrapper{
  border:0 !important;border-radius:0 !important;box-shadow:none !important;
  max-width:1200px;margin:0 auto !important;
  grid-template-columns:minmax(0,0.95fr) minmax(0,1fr) !important;
  gap:clamp(28px,4vw,56px) !important;padding:22px 28px 44px !important;
}
@media(max-width:900px){ .single-product .product-entry-wrapper{ grid-template-columns:1fr !important; } }

/* DETALLES (descripción corta + specs) NO van en la columna derecha -> a las pestañas */
.single-product .summary .woocommerce-product-details__short-description{ display:none !important; }

/* GALERÍA: ocupa toda su columna y centrada */
.single-product .woocommerce-product-gallery,
.single-product .ct-product-gallery-container,
.single-product .flexy-container,
.single-product .flexy,
.single-product .flexy-view,
.single-product .flexy-items{ width:100% !important;max-width:100% !important;margin-left:0 !important;margin-right:0 !important;float:none !important; }
.single-product .flexy{ aspect-ratio:1/1 !important; }
.single-product .flexy-items{ aspect-ratio:1/1 !important; }
.single-product .flexy-pills ul{ grid-template-columns:repeat(4,1fr) !important; }

/* "También te puede gustar": grilla centrada y a lo ancho */
.single-product .related.products{ background:var(--crema,#F9F0EC) !important;padding:clamp(44px,5vw,72px) 0 clamp(48px,6vw,80px) !important; }
.single-product .related.products > h2,
.single-product .related.products > ul.products{ max-width:1200px !important;margin-left:auto !important;margin-right:auto !important;width:100% !important;box-sizing:border-box; }
.single-product .related.products > ul.products{ padding:0 28px !important; }
.single-product .related.products ul.products{
  display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:24px !important;list-style:none !important;
}
@media(max-width:1000px){ .single-product .related.products ul.products{ grid-template-columns:repeat(2,minmax(0,1fr)) !important; } }
.single-product .related.products ul.products li.product{ min-width:0 !important;max-width:100% !important; }

/* tabs a ancho de contenedor y centradas */
.single-product .woocommerce-tabs{ max-width:1200px;margin:0 auto !important; }

/* ================= v13: etiquetas de color visibles ================= */
.single-product ul.color-variable-items-wrapper{ align-items:flex-start !important;gap:16px 14px !important; }
.single-product li.color-variable-item{
  overflow:visible !important;display:inline-flex !important;flex-direction:column !important;
  align-items:center !important;gap:6px !important;width:auto !important;min-width:44px !important;height:auto !important;
  background:none !important;border:0 !important;box-shadow:none !important;padding:0 !important;position:static !important;
}
.single-product li.color-variable-item > span,
.single-product li.color-variable-item .variable-item-span{
  width:30px !important;height:30px !important;min-width:30px !important;border-radius:50% !important;display:block !important;flex:0 0 auto !important;
  box-shadow:inset 0 0 0 2px #fff, 0 0 0 1px var(--linea,#E7DAD2) !important;outline:2px solid transparent;outline-offset:2px;
}
.single-product li.color-variable-item.selected > span,
.single-product li.color-variable-item.selected .variable-item-span,
.single-product li.color-variable-item[aria-checked="true"] .variable-item-span{ outline-color:var(--guinda,#7B0A0C) !important; }
.single-product li.color-variable-item::after{
  content:attr(data-title) !important;display:block !important;position:static !important;
  font-family:var(--font-body,Lato,sans-serif) !important;font-size:10.5px !important;line-height:1.15 !important;
  color:var(--fg2,#6b5b52) !important;text-align:center;max-width:70px;white-space:normal !important;
  opacity:1 !important;visibility:visible !important;height:auto !important;overflow:visible !important;
}
.single-product li.color-variable-item.selected::after,
.single-product li.color-variable-item[aria-checked="true"]::after{ color:var(--tinta,#2B1D1A) !important;font-weight:700 !important; }
/* ocultar el tooltip flotante del plugin para no duplicar */
.single-product .wvs-tooltip,.woo-variation-swatches-tooltip{ display:none !important; }

/* ================= v14: ancho fijo en item de color (etiqueta no se parte letra por letra) ================= */
.single-product ul.color-variable-items-wrapper{ gap:14px 10px !important; }
.single-product li.color-variable-item{ width:66px !important;min-width:66px !important;max-width:66px !important;flex:0 0 66px !important; }
.single-product li.color-variable-item::after{ width:66px !important;max-width:66px !important;white-space:normal !important;word-break:normal !important;overflow-wrap:normal !important; }

/* ================= v15: qty funcional + botón rojo vivo + botones sin cortar + divisores + menos hueco ================= */

/* --- menos espacio: breadcrumb pegado al header y a la ficha --- */
.single-product .hero-section,
.single-product .entry-header{ padding-top:10px !important;padding-bottom:4px !important;min-height:0 !important; }
.single-product .product-entry-wrapper{ padding-top:14px !important; }
.single-product .ct-breadcrumbs{ margin:0 !important; }

/* --- QUANTITY: dejar el stepper nativo de Blocksy, solo enmarcar --- */
.single-product form.cart .quantity{
  position:relative !important;display:inline-flex !important;align-items:center !important;
  border:1.5px solid var(--linea,#E7DAD2) !important;border-radius:10px !important;overflow:hidden !important;
  height:54px !important;width:96px !important;flex:0 0 auto !important;background:#fff !important;
}
.single-product form.cart .quantity input.qty{
  -moz-appearance:textfield;appearance:textfield;
  width:100% !important;height:100% !important;border:0 !important;text-align:center !important;
  font-weight:700 !important;font-size:15px !important;background:transparent !important;color:var(--tinta,#2B1D1A) !important;
  padding:0 22px !important;box-shadow:none !important;pointer-events:auto !important;
}
.single-product form.cart .quantity input.qty::-webkit-outer-spin-button,
.single-product form.cart .quantity input.qty::-webkit-inner-spin-button{ -webkit-appearance:none;margin:0; }
/* +/- de Blocksy: NO forzar width/height; solo asegurar que sean clicables y visibles */
.single-product form.cart .quantity .ct-increase,
.single-product form.cart .quantity .ct-decrease{
  all:revert;position:absolute !important;right:0 !important;width:24px !important;height:50% !important;
  cursor:pointer !important;pointer-events:auto !important;z-index:3 !important;background:transparent !important;
  border:0 !important;color:var(--guinda,#7B0A0C) !important;
}
.single-product form.cart .quantity .ct-increase{ top:0 !important; }
.single-product form.cart .quantity .ct-decrease{ bottom:0 !important; }



/* --- AÑADIR AL CARRITO: rojo vivo SIEMPRE (aunque falte elegir variación) --- */
.single-product form.cart .single_add_to_cart_button,
.single-product form.cart .single_add_to_cart_button.disabled,
.single-product form.cart .single_add_to_cart_button:disabled{
  background:#7B0A0C !important;color:#fff !important;opacity:1 !important;
  border:0 !important;border-radius:999px !important;min-height:54px !important;
  font-family:var(--font-body,Lato,sans-serif) !important;font-weight:900 !important;font-size:14px !important;
  letter-spacing:.08em !important;text-transform:uppercase !important;box-shadow:0 12px 26px rgba(123,10,12,.25) !important;
  cursor:pointer !important;flex:1 1 200px !important;
}
.single-product form.cart .single_add_to_cart_button:hover{ background:#66080A !important; }

/* --- BOTONES DE TALLA: que NO se corten --- */
.single-product .button-variable-item,
.single-product li.button-variable-item{
  width:auto !important;min-width:0 !important;max-width:none !important;height:auto !important;
  padding:10px 18px !important;overflow:visible !important;white-space:nowrap !important;
}
.single-product .button-variable-item span,
.single-product .button-variable-item .variable-item-span,
.single-product .button-variable-item .wvs-name-title{
  width:auto !important;min-width:max-content !important;max-width:none !important;overflow:visible !important;
  white-space:nowrap !important;text-overflow:clip !important;display:inline !important;line-height:1.2 !important;
}

/* --- DIVISORES: una línea arriba de COLOR y otra entre COLOR y TALLA (como el demo) --- */
.single-product .ct-product-divider{ display:none !important; }
.single-product .ct-product-add-to-cart{ border-top:1px solid var(--linea,#E7DAD2) !important;padding-top:18px !important;margin-top:16px !important; }
.single-product table.variations tr + tr{ border-top:1px solid var(--linea,#E7DAD2) !important;padding-top:14px !important;margin-top:2px !important; }
.single-product .product_meta{ border-top:1px solid var(--linea,#E7DAD2) !important;padding-top:14px !important;margin-top:16px !important; }

/* ================= v16: quitar líneas negras, galería como el demo, fichas de relacionados parejas ================= */

/* --- A) fuera las líneas negras bajo los swatches de color --- */
.single-product li.color-variable-item::before,
.single-product li.color-variable-item span::before,
.single-product li.color-variable-item span::after,
.single-product li.color-variable-item .variable-item-span::before,
.single-product li.color-variable-item .variable-item-span::after{ display:none !important;content:none !important;border:0 !important; }
.single-product li.color-variable-item,
.single-product li.color-variable-item .variable-item-span{ border-bottom:0 !important;text-decoration:none !important;box-shadow:inset 0 0 0 2px #fff, 0 0 0 1px var(--linea,#E7DAD2) !important; }
.single-product li.color-variable-item{ box-shadow:none !important; }

/* --- B) GALERÍA igual al demo: imagen grande que llena la columna + fila de 4 miniaturas --- */
.single-product .woocommerce-product-gallery,
.single-product .ct-product-gallery-container{ width:100% !important;max-width:100% !important;margin:0 !important; }
.single-product .flexy{
  width:100% !important;aspect-ratio:1/1 !important;border:1px solid var(--linea,#E7DAD2) !important;
  border-radius:16px !important;overflow:hidden !important;background:var(--crema,#F9F0EC) !important;
}
.single-product .flexy-view,
.single-product .flexy-items,
.single-product .flexy-item,
.single-product .flexy-item figure{ width:100% !important;height:100% !important;margin:0 !important;border:0 !important;border-radius:0 !important;background:transparent !important; }
.single-product .flexy-item img{
  width:100% !important;height:100% !important;object-fit:cover !important;object-position:center !important;
  display:block !important;border-radius:0 !important;margin:0 !important;max-width:none !important;
}
.single-product .flexy-pills{ margin-top:12px !important;width:100% !important; }
.single-product .flexy-pills ul{ display:grid !important;grid-template-columns:repeat(4,1fr) !important;gap:10px !important;margin:0 !important;padding:0 !important;list-style:none !important; }
.single-product .flexy-pills li{ margin:0 !important;padding:0 !important;aspect-ratio:1/1;border:2px solid transparent !important;border-radius:12px !important;overflow:hidden !important;background:var(--crema,#F9F0EC) !important;cursor:pointer; }
.single-product .flexy-pills li img{ width:100% !important;height:100% !important;object-fit:cover !important;display:block;border-radius:0 !important; }
.single-product .flexy-pills li.active,
.single-product .flexy-pills li[aria-selected="true"]{ border-color:var(--guinda,#7B0A0C) !important; }

/* --- C) fichas de "También te puede gustar": parejas, sin marco blanco en esquinas, centradas --- */
.single-product .related.products ul.products{ align-items:stretch !important;justify-content:center !important; }
.single-product .related.products li.product{
  height:100% !important;background:#fff !important;border:1px solid var(--linea,#E7DAD2) !important;
  border-radius:14px !important;overflow:hidden !important;box-shadow:0 6px 18px rgba(43,29,26,.06) !important;
  padding:0 0 14px !important;
}
.single-product .related.products li.product figure,
.single-product .related.products li.product .ct-media-container,
.single-product .related.products li.product > a:first-child{
  margin:0 !important;border:0 !important;border-radius:0 !important;border-bottom:1px solid var(--linea,#E7DAD2) !important;
  aspect-ratio:1/1 !important;width:100% !important;overflow:hidden !important;display:block !important;background:var(--crema,#F9F0EC) !important;
}
.single-product .related.products li.product img{ width:100% !important;height:100% !important;object-fit:cover !important;aspect-ratio:1/1 !important;margin:0 !important;border-radius:0 !important; }
.single-product .related.products li.product .entry-meta{ margin:11px 14px 0 !important; }
.single-product .related.products li.product .woocommerce-loop-product__title{ padding:4px 14px 0 !important;font-size:17px !important;min-height:2.1em; }
.single-product .related.products li.product .sc-stars{ margin:6px 14px 0 !important; }
.single-product .related.products li.product .price{ padding:6px 14px 0 !important;font-size:15px !important; }
.single-product .related.products li.product .ti-card__dots{ margin:8px 14px 0 !important; }

/* ================= v17: botones de talla que NO se corten (override fuerte del plugin) ================= */
.single-product .variable-items-wrapper.button-variable-items-wrapper{ --wvs-item-min-width:auto; }
.single-product li.button-variable-item,
.single-product .button-variable-item{
  width:auto !important;min-width:fit-content !important;max-width:none !important;
  min-height:0 !important;height:auto !important;line-height:1.2 !important;
  padding:10px 18px !important;overflow:visible !important;white-space:nowrap !important;
  display:inline-flex !important;align-items:center;justify-content:center;
}
.single-product li.button-variable-item > *,
.single-product .button-variable-item span,
.single-product .button-variable-item .variable-item-span{
  width:auto !important;min-width:0 !important;max-width:none !important;height:auto !important;
  overflow:visible !important;white-space:nowrap !important;text-overflow:clip !important;
  display:inline !important;font-size:13px !important;line-height:1.2 !important;
}

/* ================= v18: el ::after del swatch = SOLO la etiqueta (sin el borde del tooltip del plugin) ================= */
.single-product li.color-variable-item::before{
  content:none !important;display:none !important;background:none !important;border:0 !important;
}
.single-product li.color-variable-item::after{
  content:attr(data-title) !important;display:block !important;
  position:static !important;transform:none !important;
  border:0 !important;outline:0 !important;background:none !important;box-shadow:none !important;
  clip:auto !important;clip-path:none !important;overflow:visible !important;
  width:66px !important;max-width:66px !important;height:auto !important;min-height:0 !important;
  margin:2px 0 0 !important;padding:0 !important;
  font-family:var(--font-body,Lato,sans-serif) !important;font-size:10.5px !important;font-weight:400 !important;
  line-height:1.15 !important;letter-spacing:0 !important;text-align:center !important;text-transform:none !important;
  white-space:normal !important;color:var(--fg2,#6b5b52) !important;
  opacity:1 !important;visibility:visible !important;pointer-events:none !important;
}
.single-product li.color-variable-item.selected::after,
.single-product li.color-variable-item[aria-checked="true"]::after{ color:var(--tinta,#2B1D1A) !important;font-weight:700 !important; }
.single-product li.color-variable-item .variable-item-contents{ display:block !important;height:auto !important;width:auto !important; }
.single-product li.color-variable-item .variable-item-span-color{
  width:30px !important;height:30px !important;border-radius:50% !important;display:block !important;
  box-shadow:inset 0 0 0 2px #fff, 0 0 0 1px var(--linea,#E7DAD2) !important;border:0 !important;
}
.single-product li.color-variable-item.selected .variable-item-span-color,
.single-product li.color-variable-item[aria-checked="true"] .variable-item-span-color{ box-shadow:inset 0 0 0 2px #fff, 0 0 0 2px var(--guinda,#7B0A0C) !important; }

/* ===== v19safe: SOLO color/pseudo (cero impacto en layout) ===== */
.single-product form.cart .single_add_to_cart_button,
.single-product form.cart .single_add_to_cart_button.disabled,
.single-product form.cart .single_add_to_cart_button:disabled{ background-color:#7B0A0C !important;color:#fff !important;opacity:1 !important; }
.single-product .button-variable-item.selected,
.single-product .button-variable-item[aria-checked="true"]{ background-color:#7B0A0C !important;color:#fff !important;border-color:#7B0A0C !important; }
.single-product .button-variable-item.selected .variable-item-span,
.single-product .button-variable-item[aria-checked="true"] .variable-item-span,
.single-product .button-variable-item.selected span,
.single-product .button-variable-item[aria-checked="true"] span{ color:#fff !important;background-color:transparent !important; }
.single-product .button-variable-item::before,
.single-product .button-variable-item::after{ content:none !important;display:none !important; }
.single-product .wvs-tooltip,.woo-variation-swatches-tooltip{ display:none !important; }
.single-product .flexy,
.single-product .flexy-view,
.single-product .flexy-items,
.single-product .flexy-item,
.single-product .flexy-item figure{ background-color:#fff !important; }

/* galería: fondo blanco en todos los contenedores (solo color) */
.single-product .woocommerce-product-gallery,
.single-product .ct-product-gallery-container,
.single-product .ct-media-container,
.single-product .flexy-pills,
.single-product .flexy-pills li{ background-color:#fff !important; }

/* ===== v26: quitar el hueco grande entre header y breadcrumb (solo padding/margin) ===== */
.single-product .site-main > .ct-container-full,
.single-product .ct-container-full{ padding-top:6px !important; }
.single-product .hero-section{ padding-top:0 !important;padding-bottom:0 !important;margin-bottom:6px !important;min-height:0 !important; }
.single-product .entry-header{ padding-top:2px !important;padding-bottom:6px !important;margin:0 !important;min-height:0 !important; }
.single-product .product-entry-wrapper{ padding-top:8px !important; }

/* ===== v27: relacionados beige a todo el ancho + categoría primero (como el demo) ===== */
.single-product .related.products{
  background-color:var(--crema,#F9F0EC) !important;
  max-width:none !important;width:100vw !important;
  margin-left:calc(50% - 50vw) !important;margin-right:calc(50% - 50vw) !important;
  padding-left:0 !important;padding-right:0 !important;
}
.single-product .related.products > h2,
.single-product .related.products > ul.products{
  max-width:1200px !important;margin-left:auto !important;margin-right:auto !important;
  padding-left:28px !important;padding-right:28px !important;box-sizing:border-box;
}
/* orden de la ficha: FOTO -> CATEGORÍA -> NOMBRE -> ESTRELLAS -> PRECIO -> DOTS */
.single-product .related.products li.product figure,
.single-product .related.products li.product > a:first-child{ order:-2 !important; }
.single-product .related.products li.product .entry-meta{ order:-1 !important;margin:12px 14px 0 !important;padding:0 !important; }
.single-product .related.products li.product .woocommerce-loop-product__title{ order:0 !important;margin:2px 14px 0 !important; }
.single-product .related.products li.product .sc-stars{ order:1 !important;margin:6px 14px 0 !important; }
.single-product .related.products li.product .price{ order:2 !important;margin:6px 14px 0 !important; }
.single-product .related.products li.product .ti-card__dots{ order:3 !important;margin:8px 14px 0 !important; }
.single-product .related.products li.product .ct-woo-card-actions{ order:9 !important; }
/* una sola categoría, en dorado como el demo */
.single-product .related.products li.product .entry-meta a:not(:first-child){ display:none !important; }
.single-product .related.products li.product .entry-meta a{
  color:var(--dorado,#C9AA8A) !important;font-size:10px !important;font-weight:700 !important;
  letter-spacing:.14em !important;text-transform:uppercase !important;text-decoration:none !important;
}
.single-product .related.products li.product .entry-meta,
.single-product .related.products li.product .entry-meta li{ list-style:none !important;display:block !important; }

/* ===== v28: miniaturas centradas/repartidas + COLOR más arriba (solo spacing/flex de la tira) ===== */

/* miniaturas: repartir a lo ancho (sin aspect-ratio ni height forzados) */
.single-product .flexy-pills ul{ display:flex !important;gap:10px !important;justify-content:space-between !important;flex-wrap:nowrap !important;padding:0 !important;margin:0 !important;list-style:none !important; }
.single-product .flexy-pills li{ flex:1 1 0 !important;min-width:0 !important;max-width:none !important;margin:0 !important; }
.single-product .flexy-pills li img{ width:100% !important;display:block; }

/* COLOR/TALLA más compacto: menos aire arriba del bloque de variaciones */
.single-product .ct-product-divider{ display:none !important; }
.single-product .fp-save{ margin-bottom:0 !important; }
.single-product .woocommerce-product-details__short-description{ display:none !important;margin:0 !important; }
.single-product .ct-product-add-to-cart{ border-top:1px solid var(--linea,#E7DAD2) !important;padding-top:8px !important;margin-top:8px !important; }
.single-product form.cart{ margin-top:0 !important; }
.single-product table.variations{ margin:0 !important; }
.single-product table.variations > tbody > tr:first-child{ margin-top:0 !important;padding-top:0 !important;border-top:0 !important; }
.single-product table.variations td.label,
.single-product table.variations th.label{ margin-bottom:4px !important;padding-top:0 !important; }
.single-product .variable-items-wrapper{ margin-top:4px !important;margin-bottom:0 !important; }

/* ===== v29: imagen principal CONTENIDA y centrada + icono de lupa (cosmético, sin tocar el slider) ===== */

/* imagen principal: que se vea COMPLETA y centrada en el cuadro (no recortada) */
.single-product .flexy-item img,
.single-product .woocommerce-product-gallery__image img,
.single-product .ct-product-gallery-container img{ object-fit:contain !important;object-position:center center !important; }

/* la caja que contiene la imagen */
.single-product .ct-product-gallery-container{ position:relative !important; }

/* icono de lupa arriba-derecha del cuadro (como el demo) */
.single-product .ct-product-gallery-container::after{
  content:"" !important;position:absolute !important;top:16px;right:16px;z-index:6;
  width:40px;height:40px;border-radius:50%;pointer-events:none;
  background-color:rgba(255,255,255,.92);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%237B0A0C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m21 21-4.35-4.35'/%3E%3Cpath d='M11 8v6M8 11h6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:center;background-size:19px 19px;
  box-shadow:0 4px 14px rgba(43,29,26,.16);border:1px solid var(--linea,#E7DAD2);
}

/* ===== v30: botón "Ver carrito" negro redondeado + refuerzo texto blanco en talla ===== */

/* "Ver carrito" (aparece tras añadir): píldora NEGRA, letras blancas */
.single-product .woocommerce div.product form.cart .added_to_cart,
.single-product .added_to_cart,
.single-product a.added_to_cart,
.single-product .wc-forward:not(.button):not(.checkout-button){
  background:#1b1b1b !important;color:#fff !important;border:0 !important;
  border-radius:999px !important;padding:14px 28px !important;min-height:54px !important;
  display:inline-flex !important;align-items:center !important;justify-content:center !important;
  font-family:var(--font-body,Lato,sans-serif) !important;font-weight:800 !important;font-size:13px !important;
  letter-spacing:.06em !important;text-transform:uppercase !important;text-decoration:none !important;
  box-shadow:0 10px 24px rgba(0,0,0,.18) !important;
}
.single-product .added_to_cart:hover,
.single-product a.added_to_cart:hover{ background:#000 !important;color:#fff !important; }

/* talla: texto SIEMPRE blanco cuando el botón está activo/hover-activo */
.single-product .button-variable-item.selected,
.single-product .button-variable-item.selected *,
.single-product .button-variable-item[aria-checked="true"],
.single-product .button-variable-item[aria-checked="true"] *{ color:#fff !important; }
.single-product .button-variable-item.selected,
.single-product .button-variable-item[aria-checked="true"]{ background-color:#7B0A0C !important;border-color:#7B0A0C !important; }

/* ===== v31: ver-carrito 1 línea + talla blanca al hover + imagen llena el cuadro + badge dentro ===== */

/* "VER CARRITO": una sola línea + texto blanco también al pasar el cursor */
.single-product .added_to_cart,
.single-product a.added_to_cart{
  white-space:nowrap !important;padding:14px 30px !important;line-height:1 !important;
  background:#1b1b1b !important;color:#fff !important;
}
.single-product .added_to_cart:hover,
.single-product a.added_to_cart:hover,
.single-product a.added_to_cart:focus{ background:#000 !important;color:#fff !important; }

/* TALLA: cuando el botón tiene fondo guinda (hover o seleccionado) -> texto BLANCO */
.single-product .button-variable-item:hover,
.single-product .button-variable-item:hover *,
.single-product .button-variable-item.selected,
.single-product .button-variable-item.selected *,
.single-product .button-variable-item[aria-checked="true"],
.single-product .button-variable-item[aria-checked="true"] *{ color:#fff !important; }
.single-product .button-variable-item:hover,
.single-product .button-variable-item.selected,
.single-product .button-variable-item[aria-checked="true"]{ background-color:#7B0A0C !important;border-color:#7B0A0C !important; }

/* IMAGEN: se ve completa dentro del cuadro, sin recortar (algunas fotos del catalogo no son full-bleed) */
.single-product .flexy-item img,
.single-product .woocommerce-product-gallery__image img,
.single-product .ct-product-gallery-container img{ object-fit:contain !important;object-position:center !important;width:100% !important; }

/* ETIQUETA "OFERTA" dentro del cuadro (arriba-izq) + ocultar la nativa de Blocksy */
.single-product .product-entry-wrapper{ position:relative !important; }
.single-product .fp-badge-pop{
  position:absolute !important;top:26px !important;left:44px !important;z-index:8 !important;
  margin:0 !important;
}
.single-product .ct-product-gallery-container .onsale,
.single-product .woocommerce-product-gallery .onsale,
.single-product span.onsale,
.single-product .ct-woo-badge{ display:none !important; }

.fp-ref-note{ font-size:12.5px; color:var(--fg3,#8a8a8a); font-style:italic; margin-top:10px; line-height:1.4; }

.sc-promo-banner{ margin:14px 0; display:flex; flex-direction:column; gap:8px; }
.sc-promo-banner__item{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; background:var(--crema,#F9F0EC); border:1px solid var(--linea,#E7DAD2); border-radius:10px; padding:10px 14px; font-size:13.5px; color:var(--tinta,#2B1D1A); }
.sc-promo-banner__tag{ background:var(--guinda,#7B0A0C); color:#fff; font-weight:700; font-size:10.5px; letter-spacing:.06em; text-transform:uppercase; padding:4px 10px; border-radius:999px; white-space:nowrap; }

/* ================= fix legibilidad: titulos en "Tambien te puede gustar" (punto 31 informe) ================= */
.single-product .related.products li.product .woocommerce-loop-product__title{
  font-weight:400 !important;
  font-size:17px !important;
  line-height:1.2 !important;
}
@media(max-width:700px){
  .single-product .related.products li.product .woocommerce-loop-product__title{
    font-size:16px !important;
    line-height:1.2 !important;
  }
}
/* fix legibilidad: titulo principal (H1) de la pagina de producto (punto 31 informe) */
.single-product .summary .product_title{
  font-weight:400 !important;
  line-height:1.15 !important;
}
/* enlace "agregar el otro producto del combo" dentro del aviso de promo */
.sc-promo-banner__item{ flex-direction:column; align-items:flex-start !important; }
.sc-promo-banner__add{
  display:inline-flex; align-items:center; gap:6px; margin-top:2px;
  color:var(--guinda,#7B0A0C) !important; font-weight:700; font-size:13px;
  text-decoration:underline; text-underline-offset:2px;
}
.sc-promo-banner__add:hover{ color:var(--guinda-700,#66080A) !important; }
/* obs.: igualar la altura de las tarjetas de "También te puede gustar" con las de la tienda.
 * Sin esto, un título mas largo (3 lineas) empuja el precio/puntos de color mas abajo que la
 * tarjeta vecina (1-2 lineas), desalineando la fila. Reservamos y topamos a 2 lineas, igual que
 * en el listado de la tienda. */
.single-product .related.products li.product .woocommerce-loop-product__title{
  min-height:41px !important; display:-webkit-box !important; -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important; overflow:hidden !important;
}
@media(max-width:700px){
  .single-product .related.products li.product .woocommerce-loop-product__title{ min-height:38px !important; }
}

/* obs.: quitar el espacio en blanco grande entre "Tambien te puede gustar" y el footer en movil.
 * El wrapper del tema (.ct-container-full) + .related.products suman ~98px de padding inferior
 * que no hace falta aqui (el footer ya trae su propio aire interno). */
@media (max-width:820px){
  body.single-product .ct-container-full{ padding-bottom:0 !important; }
  .single-product .related.products{ padding-bottom:16px !important; }
}
