/* Reserve a single slide before the carousel plugin builds its wrappers. */
#content .me-grid-managed .owlproduct:not(.rev-owl):not(.owl-theme) { display:block; }
#content .me-grid-managed .owlproduct:not(.rev-owl):not(.owl-theme) > :not(:first-child) { display:none; }

/* Flex rows preserve the theme's responsive widths without measuring heights. */
#content .products_category:has(> .product-grid),
#content .products_category.me-grid-stable { display:flex; flex-wrap:wrap; align-items:stretch; }
#content .products_category:has(> .product-grid)::before,
#content .products_category:has(> .product-grid)::after,
#content .products_category.me-grid-stable::before,
#content .products_category.me-grid-stable::after { display:none; }
#content .products_category > .product-grid {
  display:flex; flex:none; float:none; height:auto!important; min-width:0;
}
#content .products_category > .filter_gr { flex:0 0 100%; max-width:100%; }
#content .products_category > .product-grid > .product-thumb,
#content .products_category > .product-grid > .product-thumb:hover {
  position:relative!important; inset:auto!important; width:100%; min-width:0;
  display:flex; flex-direction:column; flex:1; margin:0 0 20px!important;
  height:auto!important; transform:none!important; transition:box-shadow .15s ease!important;
}
#content .products_category > .product-grid > .product-thumb.rev-reveal,
#content .products_category > .product-grid > .product-thumb.op_dblock1,
#content .products_category > .product-grid > .product-thumb.op_dblock2 { opacity:1!important; }
#content .products_category > .product-grid .product-thumb > .image {
  flex:none; width:100%!important; aspect-ratio:var(--me-image-ratio,1);
}
#content .products_category > .product-grid .product-thumb > .caption {
  display:flex; flex-direction:column; flex:1; min-width:0;
}
#content .products_category > .product-grid .product-thumb h4 {
  height:auto!important; min-height:2.7em; line-height:1.35;
}
#content .products_category > .product-grid .product-thumb .price,
#content .products_category > .product-grid .product-thumb .product_buttons { height:auto!important; }
#content .products_category > .product-grid .product-thumb .product_buttons { margin-top:auto; }
@media(min-width:992px){
  /* Keep hover details as an overlay so opening them never pushes a row down. */
  #content .products_category > .product-grid .product-thumb .description_options {
    position:absolute; top:100%; left:-1px; right:-1px; margin:0!important;
    /* The theme can keep this flex container visible while hiding all its
       children. Never give that empty container a frame or a fixed height. */
    height:auto!important; min-height:0; padding:0; border:0;
    background:var(--rev-surface,#fff);
    z-index:9;
  }
}
