/* ==========================================================================
   Casa Monasterio — WooCommerce
   ========================================================================== */

.tienda{padding-block:clamp(38px,5vw,72px)}

/* ---------- Barra superior del listado ---------- */
.tienda__barra{
  display:flex;align-items:center;gap:16px;flex-wrap:wrap;
  padding-bottom:20px;margin-bottom:clamp(24px,3vw,40px);border-bottom:1px solid var(--linea);
}
.woocommerce-result-count{margin:0;font-size:.88rem;color:var(--tinta-2)}
.woocommerce-ordering{margin-left:auto}
.woocommerce-ordering select{
  padding:.6em 2.4em .6em 1em;border-radius:50px;font-size:.85rem;appearance:none;cursor:pointer;
  background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235b5852' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 12px center;background-size:16px;
}

/* ---------- Rejilla de productos ---------- */
/* La especificidad tiene que igualar a la de WooCommerce (`.woocommerce
   ul.products`), que declara `display:flex` y anchos en porcentaje. */
.woocommerce ul.products,
.woocommerce-page ul.products,
ul.products,
.productos{
  list-style:none;margin:0;padding:0;
  display:grid;gap:clamp(18px,2.4vw,34px);
  grid-template-columns:repeat(var(--columnas,3),minmax(0,1fr));
}
.woocommerce ul.products.columns-1,ul.products.columns-1{--columnas:1}
.woocommerce ul.products.columns-2,ul.products.columns-2{--columnas:2}
.woocommerce ul.products.columns-3,ul.products.columns-3{--columnas:3}
.woocommerce ul.products.columns-4,ul.products.columns-4{--columnas:4}
.productos.rejilla--4{--columnas:4}

/* WooCommerce reparte el ancho en porcentajes con selectores de la forma
   `.woocommerce-page.columns-3 ul.products li.product`, que pesan más que
   `.woocommerce ul.products li.product`. Para que la rejilla mande hay que
   escribir la anulación con la misma forma. */
.woocommerce ul.products.columns-1 li.product,
.woocommerce-page ul.products.columns-1 li.product,
.woocommerce.columns-1 ul.products li.product,
.woocommerce-page.columns-1 ul.products li.product,
.woocommerce ul.products.columns-2 li.product,
.woocommerce-page ul.products.columns-2 li.product,
.woocommerce.columns-2 ul.products li.product,
.woocommerce-page.columns-2 ul.products li.product,
.woocommerce ul.products.columns-3 li.product,
.woocommerce-page ul.products.columns-3 li.product,
.woocommerce.columns-3 ul.products li.product,
.woocommerce-page.columns-3 ul.products li.product,
.woocommerce ul.products.columns-4 li.product,
.woocommerce-page ul.products.columns-4 li.product,
.woocommerce.columns-4 ul.products li.product,
.woocommerce-page.columns-4 ul.products li.product,
.woocommerce ul.products.columns-5 li.product,
.woocommerce-page ul.products.columns-5 li.product,
.woocommerce.columns-5 ul.products li.product,
.woocommerce-page.columns-5 ul.products li.product,
.woocommerce ul.products.columns-6 li.product,
.woocommerce-page ul.products.columns-6 li.product,
.woocommerce.columns-6 ul.products li.product,
.woocommerce-page.columns-6 ul.products li.product,
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  width:auto;float:none;margin:0;clear:none;
}

/* El plugin separa la imagen del texto con un margen pensado para su
   propia tarjeta; aquí el espaciado lo da la rejilla. */
.woocommerce ul.products li.product a img,
.woocommerce-page ul.products li.product a img{margin:0;box-shadow:none}


.producto{display:flex;flex-direction:column;background:transparent}
.producto__medios{
  position:relative;display:block;aspect-ratio:1;overflow:hidden;
  border-radius:var(--radio-lg);background:var(--hueso);
}
.producto__foto{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.22,.61,.36,1),opacity var(--transicion)}
.producto__foto--alterna{position:absolute;inset:0;opacity:0}
.producto__medios:hover .producto__foto{transform:scale(1.05)}
.producto__medios:hover .producto__foto--alterna{opacity:1}
.producto__foto.sin-foto{object-fit:cover}

.etiqueta{
  position:absolute;top:12px;left:12px;z-index:2;
  padding:.4em .9em;border-radius:50px;background:var(--blanco);color:var(--tinta);
  font-size:.66rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;
}
.etiqueta--oferta{background:var(--rojo);color:var(--blanco)}
.etiqueta--agotado{background:var(--tinta);color:var(--blanco);left:auto;right:12px}

.producto__cuerpo{padding-top:16px;display:flex;flex-direction:column;gap:6px;flex:1}
.producto__categoria{
  font-size:.66rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--arena-osc);
}
.producto__titulo{
  font-family:var(--display);font-size:1.12rem;line-height:1.3;margin:0;
  text-transform:none;letter-spacing:0;
}
.producto__titulo a:hover{color:var(--arena-osc)}
.producto__opciones{margin:0;font-size:.82rem;color:var(--tinta-3)}
.producto__pie{
  margin-top:auto;padding-top:12px;display:flex;align-items:center;
  justify-content:space-between;gap:12px;flex-wrap:wrap;
}
.producto__precio{font-size:1rem;font-weight:500;color:var(--tinta)}
.producto__precio .desde{font-size:.72rem;font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:var(--tinta-3)}
.producto__precio del{color:var(--tinta-3);font-weight:300;margin-right:.4em}
.producto__precio ins{text-decoration:none;color:var(--rojo)}
.producto .added_to_cart{
  font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;
  border-bottom:1px solid var(--linea-fuerte);padding-bottom:2px;
}

/* ---------- Paginación ---------- */
.woocommerce-pagination,.navigation.pagination{margin-top:clamp(34px,4vw,56px)}
.woocommerce-pagination ul,.nav-links{
  display:flex;justify-content:center;gap:8px;list-style:none;margin:0;padding:0;
}
.woocommerce-pagination li{border:0!important}
.page-numbers{
  display:grid;place-items:center;min-width:42px;height:42px;padding:0 12px;
  border:1px solid var(--linea);border-radius:50px;font-size:.88rem;
  transition:background var(--transicion),border-color var(--transicion),color var(--transicion);
}
.page-numbers:hover{border-color:var(--arena-osc);color:var(--arena-osc)}
.page-numbers.current{background:var(--arena-osc);border-color:var(--arena-osc);color:var(--blanco)}
.page-numbers svg{width:16px;height:16px}

/* ==========================================================================
   Ficha de producto
   ========================================================================== */
.single-product div.product{
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);
  gap:clamp(26px,4vw,64px);align-items:start;
}
.single-product .woocommerce-product-gallery{position:sticky;top:calc(var(--cabecera) + 20px)}
.woocommerce-product-gallery__wrapper{border-radius:var(--radio-lg);overflow:hidden}
.woocommerce-product-gallery img{border-radius:var(--radio-lg)}
.flex-control-thumbs{
  display:grid;grid-template-columns:repeat(4,1fr);gap:10px;list-style:none;margin:12px 0 0;padding:0;
}
.flex-control-thumbs img{border-radius:var(--radio);cursor:pointer;opacity:.62;transition:opacity var(--transicion)}
.flex-control-thumbs img:hover,.flex-control-thumbs .flex-active{opacity:1}
.woocommerce-product-gallery__trigger{
  position:absolute;top:14px;right:14px;z-index:3;width:40px;height:40px;
  display:grid;place-items:center;border-radius:50%;background:var(--blanco);
  box-shadow:var(--sombra);font-size:0;
}
.woocommerce-product-gallery__trigger::after{content:"⤢";font-size:16px;color:var(--tinta)}

.summary.entry-summary{padding-top:4px}
.summary .product_title{font-size:clamp(1.8rem,3vw,2.5rem);margin-bottom:.3em}
.summary .price{
  font-size:1.5rem;font-weight:400;color:var(--tinta);margin-bottom:1.1em;display:block;
}
.summary .price del{color:var(--tinta-3);font-size:1.1rem;margin-right:.5em}
.summary .price ins{text-decoration:none;color:var(--rojo)}
.woocommerce-product-details__short-description{color:var(--tinta-2);margin-bottom:1.6em}
.product_meta{
  margin-top:1.8em;padding-top:1.4em;border-top:1px solid var(--linea);
  font-size:.85rem;color:var(--tinta-2);display:flex;flex-direction:column;gap:.5em;
}
.product_meta a:hover{color:var(--arena-osc)}

/* Variaciones */
table.variations{width:100%;border-collapse:collapse;margin-bottom:1.2em}
table.variations tr{display:block;margin-bottom:1.1em}
table.variations th,table.variations td{display:block;padding:0;text-align:left}
table.variations th label{
  font-size:.74rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;
  color:var(--tinta-2);margin-bottom:.7em;
}
.reset_variations{
  display:inline-block;margin-top:.6em;font-size:.78rem;color:var(--tinta-3);
  border-bottom:1px solid var(--linea-fuerte);
}
.woocommerce-variation-price{margin-bottom:1em}
.woocommerce-variation-price .price{font-size:1.35rem;margin-bottom:0}
.woocommerce-variation-availability p{font-size:.85rem;color:var(--verde);margin:0 0 1em}

/* Muestras de color/talla del plugin de swatches */
.variable-items-wrapper{display:flex;flex-wrap:wrap;gap:8px}
.woo-variation-swatches .variable-items-wrapper .variable-item{
  border-radius:50px!important;box-shadow:none!important;border:1px solid var(--linea-fuerte)!important;
  padding:.5em 1.1em!important;font-size:.82rem!important;transition:all var(--transicion);
}
.woo-variation-swatches .variable-items-wrapper .variable-item.selected,
.woo-variation-swatches .variable-items-wrapper .variable-item:hover{
  border-color:var(--arena-osc)!important;background:var(--hueso)!important;
}

/* Cantidad y agregar */
.cantidad,.quantity{display:inline-flex;align-items:center;border:1px solid var(--linea-fuerte);border-radius:50px;overflow:hidden}
.cantidad__boton{
  width:38px;height:44px;border:0;background:none;cursor:pointer;font-size:1rem;
  color:var(--tinta-2);transition:background var(--transicion),color var(--transicion);
}
.cantidad__boton:hover{background:var(--hueso);color:var(--arena-osc)}
.quantity input.qty{
  width:46px;height:44px;border:0;text-align:center;padding:0;font-size:.95rem;
  background:transparent;-moz-appearance:textfield;
}
.quantity input.qty::-webkit-outer-spin-button,
.quantity input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
form.cart{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:1.4em}
form.cart .single_add_to_cart_button{
  flex:1;min-width:190px;min-height:46px;
  display:inline-flex;align-items:center;justify-content:center;gap:.7em;
  padding:.95em 1.9em;border:1px solid var(--arena-osc);border-radius:50px;
  background:var(--arena-osc);color:var(--blanco);cursor:pointer;
  font-size:.8rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;
  transition:background var(--transicion),border-color var(--transicion);
}
form.cart .single_add_to_cart_button:hover{background:var(--arena-mas-osc);border-color:var(--arena-mas-osc)}
form.cart .single_add_to_cart_button.disabled{opacity:.45;cursor:not-allowed}

/* Pestañas */
.woocommerce-tabs{grid-column:1/-1;margin-top:clamp(38px,5vw,72px)}
.woocommerce-tabs ul.tabs{
  display:flex;gap:6px;list-style:none;margin:0 0 26px;padding:0 0 0;
  border-bottom:1px solid var(--linea);flex-wrap:wrap;
}
.woocommerce-tabs ul.tabs li a{
  display:block;padding:.85em 1.2em;font-size:.78rem;font-weight:500;
  letter-spacing:.14em;text-transform:uppercase;color:var(--tinta-2);
  border-bottom:2px solid transparent;margin-bottom:-1px;
}
.woocommerce-tabs ul.tabs li.active a{color:var(--tinta);border-bottom-color:var(--arena-osc)}
.woocommerce-tabs .panel h2{display:none}
.woocommerce-tabs .panel{color:var(--tinta-2);max-width:70ch}
.shop_attributes{width:100%;border-collapse:collapse;font-size:.92rem}
.shop_attributes th,.shop_attributes td{padding:.8em 0;border-bottom:1px solid var(--linea);text-align:left}
.shop_attributes th{font-weight:500;color:var(--tinta);width:34%}

/* Relacionados y ventas cruzadas */
.related,.up-sells,.cross-sells{grid-column:1/-1;margin-top:clamp(44px,6vw,84px)}
.related>h2,.up-sells>h2,.cross-sells>h2{
  font-size:clamp(1.5rem,2.4vw,2rem);margin-bottom:1.2em;
}

/* ==========================================================================
   Carrito y pago
   ========================================================================== */
.woocommerce-cart-form table.shop_table,
.woocommerce table.shop_table{
  width:100%;border-collapse:collapse;border:1px solid var(--linea);border-radius:var(--radio-lg);overflow:hidden;
}
.woocommerce table.shop_table th{
  background:var(--hueso);padding:1em;text-align:left;font-size:.72rem;
  font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--tinta-2);
}
.woocommerce table.shop_table td{padding:1.1em 1em;border-top:1px solid var(--linea);vertical-align:middle}
.woocommerce table.shop_table .product-thumbnail img{width:72px;border-radius:var(--radio)}
.product-remove a.remove{
  display:grid;place-items:center;width:28px;height:28px;border-radius:50%;
  background:var(--hueso);color:var(--tinta-2);font-size:1.1rem;line-height:1;
}
.product-remove a.remove:hover{background:var(--rojo);color:var(--blanco)}

.cart-collaterals,.woocommerce-checkout-review-order{margin-top:clamp(28px,4vw,44px)}
.cart_totals,.woocommerce-checkout-review-order{
  background:var(--hueso);border:1px solid var(--linea);border-radius:var(--radio-lg);padding:clamp(20px,3vw,32px);
}
.cart_totals h2,.woocommerce-checkout-review-order h3{font-size:1.25rem}
.wc-proceed-to-checkout .button,
.woocommerce-cart .button,.woocommerce-checkout .button,
#place_order,.wc-block-components-button{
  display:inline-flex;align-items:center;justify-content:center;gap:.7em;
  padding:.95em 1.9em;border:1px solid var(--arena-osc);border-radius:50px;
  background:var(--arena-osc);color:var(--blanco);cursor:pointer;
  font-size:.8rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;
}
.wc-proceed-to-checkout .button:hover,#place_order:hover{background:var(--arena-mas-osc);border-color:var(--arena-mas-osc);color:var(--blanco)}
.woocommerce-checkout .col2-set{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,40px)}
.woocommerce form .form-row{margin-bottom:1.1em}
.woocommerce form .form-row label{margin-bottom:.5em}
.select2-container--default .select2-selection--single{
  height:auto;padding:.55em .4em;border:1px solid var(--linea-fuerte);border-radius:var(--radio);
}

/* ---------- Avisos ---------- */
.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-notice{
  display:flex;align-items:center;gap:12px;flex-wrap:wrap;
  padding:1em 1.3em;margin-bottom:1.6em;border-radius:var(--radio-lg);
  border:1px solid var(--linea);background:var(--hueso);font-size:.92rem;list-style:none;
}
.woocommerce-message{border-color:#c3d6c4;background:#eef4ee}
.woocommerce-error{border-color:#e6c3c4;background:#fbeeee;color:#7d1a1c}
.woocommerce-message .button,.woocommerce-info .button{margin-left:auto}

/* ---------- Mi cuenta ---------- */
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.woocommerce-MyAccount-navigation a{
  display:block;padding:.75em 1em;border-radius:var(--radio);font-size:.92rem;
  transition:background var(--transicion);
}
.woocommerce-MyAccount-navigation a:hover{background:var(--hueso)}
.woocommerce-MyAccount-navigation .is-active a{background:var(--crema);color:var(--tinta)}
.woocommerce-account .woocommerce{display:grid;grid-template-columns:240px 1fr;gap:clamp(22px,3vw,44px);align-items:start}

/* ---------- Buscador desplegable ---------- */
.caja-buscador{
  max-height:0;overflow:hidden;border-top:1px solid transparent;
  transition:max-height var(--transicion),border-color var(--transicion);background:var(--hueso);
}
.caja-buscador.abierto{max-height:140px;border-top-color:var(--linea)}
.buscador-form{display:flex;gap:10px;padding-block:18px}
.buscador-form input[type=search]{flex:1;border-radius:50px;padding:.8em 1.2em}

/* ---------- Tarjeta de entrada del blog ---------- */
.tarjeta-entrada__cuerpo{padding-top:16px}
.tarjeta-entrada__cuerpo h3{font-size:1.2rem;margin-bottom:.4em}
.tarjeta-entrada__cuerpo p{font-size:.92rem;color:var(--tinta-2)}
.vacio{padding-block:clamp(40px,6vw,80px)}

/* ==========================================================================
   Adaptable
   ========================================================================== */
@media (max-width:1080px){
  .woocommerce ul.products.columns-4,
  .woocommerce-page ul.products.columns-4,
  ul.products.columns-4,
  .productos.rejilla--4{--columnas:3}
}
@media (max-width:900px){
  .single-product div.product{grid-template-columns:1fr}
  .single-product .woocommerce-product-gallery{position:static}
  .woocommerce-checkout .col2-set{grid-template-columns:1fr}
  .woocommerce-account .woocommerce{grid-template-columns:1fr}
  .woocommerce-MyAccount-navigation ul{flex-direction:row;flex-wrap:wrap}
}
@media (max-width:700px){
  .woocommerce ul.products.columns-1,
  .woocommerce-page ul.products.columns-1,
  ul.products.columns-1,
  .woocommerce ul.products.columns-2,
  .woocommerce-page ul.products.columns-2,
  ul.products.columns-2,
  .woocommerce ul.products.columns-3,
  .woocommerce-page ul.products.columns-3,
  ul.products.columns-3,
  .woocommerce ul.products.columns-4,
  .woocommerce-page ul.products.columns-4,
  ul.products.columns-4,
  .woocommerce ul.products.columns-5,
  .woocommerce-page ul.products.columns-5,
  ul.products.columns-5,
  .woocommerce ul.products.columns-6,
  .woocommerce-page ul.products.columns-6,
  ul.products.columns-6,
  .productos.rejilla--4{--columnas:2}
  .tienda__barra{gap:10px}
  .woocommerce-ordering{width:100%;margin-left:0}
  .woocommerce-ordering select{width:100%}
  .producto__pie{flex-direction:column;align-items:flex-start;gap:8px}
  .woocommerce table.shop_table thead{display:none}
  .woocommerce table.shop_table tr{display:block;border-top:1px solid var(--linea);padding:10px 0}
  .woocommerce table.shop_table td{display:flex;justify-content:space-between;gap:14px;border:0;padding:.5em 1em}
  .woocommerce table.shop_table td::before{content:attr(data-title);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--tinta-3)}
}
@media (max-width:379px){
  .woocommerce ul.products.columns-1,
  .woocommerce-page ul.products.columns-1,
  ul.products.columns-1,
  .woocommerce ul.products.columns-2,
  .woocommerce-page ul.products.columns-2,
  ul.products.columns-2,
  .woocommerce ul.products.columns-3,
  .woocommerce-page ul.products.columns-3,
  ul.products.columns-3,
  .woocommerce ul.products.columns-4,
  .woocommerce-page ul.products.columns-4,
  ul.products.columns-4,
  .woocommerce ul.products.columns-5,
  .woocommerce-page ul.products.columns-5,
  ul.products.columns-5,
  .woocommerce ul.products.columns-6,
  .woocommerce-page ul.products.columns-6,
  ul.products.columns-6,
  .productos.rejilla--4{--columnas:1}
}

/* ==========================================================================
   Correcciones sobre los estilos propios de WooCommerce
   El plugin trae una maqueta con float y una paleta morada; aquí se ajusta
   solo lo que hace falta, con la misma especificidad que usa el plugin.
   ========================================================================== */

/* La galería viene con ancho del 48 % pensado para el layout flotado. */
.woocommerce div.product div.images.woocommerce-product-gallery,
.woocommerce-page div.product div.images.woocommerce-product-gallery{
  width:100%;float:none;margin-bottom:0;
}
.woocommerce div.product div.images img{width:100%}
.woocommerce div.product div.summary{width:100%;float:none;margin-bottom:0}
.woocommerce div.product .woocommerce-tabs{width:100%;float:none}
.woocommerce #content div.product div.images,
.woocommerce div.product div.images{margin-bottom:0}

/* Botones: el plugin pinta `.button.alt` de morado. */
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt{
  background:var(--arena-osc);
  border:1px solid var(--arena-osc);
  color:var(--blanco);
  border-radius:50px;
  padding:.85em 1.7em;
  font-size:.78rem;
  font-weight:500;
  letter-spacing:.14em;
  text-transform:uppercase;
  line-height:1.2;
  transition:background var(--transicion),border-color var(--transicion);
}
.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover{
  background:var(--arena-mas-osc);border-color:var(--arena-mas-osc);color:var(--blanco);
}
.woocommerce a.button.alt.disabled,
.woocommerce button.button.alt.disabled,
.woocommerce button.button.alt:disabled,
.woocommerce button.button.alt:disabled[disabled]{
  background:var(--linea-fuerte);border-color:var(--linea-fuerte);color:var(--blanco);opacity:1;
}

/* Botón secundario dentro de las tarjetas del listado. */
.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product a.added_to_cart{
  background:transparent;color:var(--tinta);border-color:var(--linea-fuerte);
  padding:.6em 1.1em;font-size:.7rem;
}
.woocommerce ul.products li.product a.button:hover{
  background:var(--tinta);border-color:var(--tinta);color:var(--blanco);
}

/* El plugin de lista de deseos viene en inglés y con su propio color. */
.tinv-wishlist .tinvwl_add_to_wishlist_button{
  color:var(--tinta-2)!important;font-size:.78rem!important;letter-spacing:.06em;
}
.tinv-wishlist .tinvwl_add_to_wishlist_button:hover{color:var(--arena-osc)!important}

/* Cabecera compacta en la ficha: el nombre del producto ya está en el resumen. */
.encabezado-pagina--fino{padding-block:18px;background:var(--hueso);text-align:left}
.encabezado-pagina--fino .miga{justify-content:flex-start}

/* El clearfix de WooCommerce (`ul.products::before/::after`) se convierte en
   celdas dentro de una rejilla y deja huecos en el listado. */
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after{display:none!important}

/* WooCommerce reparte anchos por porcentaje pensando en `float`. */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  width:auto;float:none;margin:0;clear:none;
}
.woocommerce ul.products li.product::before,
.woocommerce ul.products li.product::after{display:none}

/* Miniaturas de la galería: cuadradas y recortadas al centro. */
.woocommerce div.product .flex-control-thumbs li{margin:0;width:auto;float:none}
.woocommerce div.product .flex-control-thumbs img{aspect-ratio:1;object-fit:cover;width:100%}

/* El resumen acompaña a la galería en pantallas grandes. */
@media (min-width:901px){
  .single-product div.product .summary.entry-summary{position:sticky;top:calc(var(--cabecera) + 20px)}
}
