.dubble-o-products-grid--hide-image .ft_image { display: none; }
.dubble-o-products-grid--hide-title .woocommerce-loop-product__title, .dubble-o-products-grid--hide-title .product-info h2 { display: none; }
.dubble-o-products-grid--hide-price .price { display: none; }
.dubble-o-products-grid--hide-rating .star-rating, .dubble-o-products-grid--hide-rating .woocommerce-product-rating { display: none; }
.dubble-o-products-grid--hide-button .product-info .add_to_cart_button, .dubble-o-products-grid--hide-button .product-info .product_type_simple, .dubble-o-products-grid--hide-button .product-info .product_type_variable, .dubble-o-products-grid--hide-button .product-info .dubble-o-quote-trigger { display: none; }
.dubble-o-products-grid__categories { color: #888; font-size: 13px; margin: 0 0 8px; }
.dubble-o-products-grid__empty { margin: 0; }
.dubble-o-products-grid .products li.product { opacity: 1; transform: none; }

/* The markup below uses Block Shop's archive classes. These few scoped layout
   rules are needed because the theme intentionally scopes its archive layout
   to body.woocommerce-shop, which is not present on ordinary block pages. */
.dubble-o-products-grid__title { margin: 0 0 32px; text-align: center; }
.dubble-o-products-grid__shop-header { margin: 0 0 24px; }
.dubble-o-products-grid__shop-header .shop-header-block { display: flex; flex-wrap: wrap; justify-content: space-between; margin-bottom: 24px; }
.dubble-o-products-grid__shop-header .filter { order: 2; }
.dubble-o-products-grid__filter-toggle { align-items: center; background: transparent; border: 0; color: inherit; cursor: pointer; display: inline-flex; font: inherit; font-size: 15px; padding: 0; }
.dubble-o-products-grid__filter-toggle .icon-filter { display: inline-block; height: 18px; width: 28px; }
.dubble-o-products-grid__filter-toggle span { line-height: 1; position: relative; }
.dubble-o-products-grid__filter-toggle span::after { background: currentColor; bottom: -5px; content: ""; height: 1px; left: 0; position: absolute; transition: width .35s ease-in-out; width: 0; }
.dubble-o-products-grid__filter-toggle:hover span::after, .dubble-o-products-grid__filter-toggle.is-active span::after { width: 100%; }
.dubble-o-products-grid__shop-header .sort-products { order: 3; text-align: right; }
.dubble-o-products-grid__shop-header .sort-products form { display: inline-block; text-align: right; }
.dubble-o-products-grid__shop-header .sort-products form .select2-selection.select2-selection--single { background: none; box-shadow: none; height: 28px; padding: 0; text-align: right; }
.dubble-o-products-grid__shop-header .sort-products form .select2-selection.select2-selection--single .select2-selection__arrow { top: 3px; }
.dubble-o-products-grid__shop-header .sort-products form .select2-container { height: 28px; min-width: 226px; text-align: left; width: auto !important; }
.dubble-o-products-grid__shop-header .sort-products form .select2-container .select2-selection__rendered { background-image: linear-gradient(to top, rgb(0, 0, 0) 1px, rgb(0, 0, 0) 1px, rgba(255, 255, 255, 0) 1px, rgba(255, 255, 255, 0) 1px); background-position: 0 100%; background-repeat: no-repeat; background-size: 0 100%; display: table; font-size: 15px; margin-left: auto; padding-right: 30px; transition: background-size .35s ease-in-out; width: auto; }
.dubble-o-products-grid__shop-header .sort-products form .select2-container .select2-selection__rendered:hover { background-size: 100% 100%; }
.dubble-o-products-grid__expanded-filter { font-size: 16px; }
.dubble-o-products-grid__expanded-filter[hidden] { display: none; }
.dubble-o-products-grid__expanded-filter .widget-vertical-title { left: 24px; line-height: 1; top: 5px; }
.dubble-o-products-grid__expanded-filter .woocommerce-widgets-wrapper { display: flex; flex-wrap: wrap; opacity: 1; padding: 10px 0 0; visibility: visible; }
.dubble-o-products-grid__expanded-filter .woocommerce-widgets-wrapper .column { margin-bottom: 32px; position: relative; width: 100%; }

@media (min-width: 1200px) {
  .dubble-o-products-grid__shop-header { margin-bottom: 64px; }
  .dubble-o-products-grid__shop-header .shop-header-block { flex-wrap: nowrap; margin-bottom: 64px; }
  .dubble-o-products-grid__shop-header .filter, .dubble-o-products-grid__shop-header .sort-products { order: initial; padding-top: 7px; width: 300px; }
  .dubble-o-products-grid__filter-toggle { font-size: 16px; }
  .dubble-o-products-grid__shop-header .sort-products { text-align: right; }
  .dubble-o-products-grid__shop-header .shop-categories { margin: 0; order: initial; width: auto; }
  .dubble-o-products-grid__shop-header .sort-products form .select2-container { min-width: 250px; }
  .dubble-o-products-grid__shop-header .sort-products form .select2-container .select2-selection__rendered { font-size: 16px; }
  .dubble-o-products-grid__expanded-filter { padding-bottom: 20px; }
  .dubble-o-products-grid__expanded-filter .woocommerce-widgets-wrapper .column { margin: 0 60px 60px 0; width: calc((100% - 180px) / 4); }
  .dubble-o-products-grid__expanded-filter .woocommerce-widgets-wrapper .column:nth-child(4n + 4) { margin-right: 0; }
  .dubble-o-products-grid__expanded-filter .woocommerce-widgets-wrapper aside { padding-left: 50px; }
}

@media (min-width: 576px) and (max-width: 1199px) {
  .dubble-o-products-grid__expanded-filter .woocommerce-widgets-wrapper .column { margin-right: 60px; width: calc((100% - 60px) / 2); }
  .dubble-o-products-grid__expanded-filter .woocommerce-widgets-wrapper .column:nth-child(2n + 2) { margin-right: 0; }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .dubble-o-products-grid__expanded-filter .woocommerce-widgets-wrapper .column { margin-right: 60px; width: calc((100% - 120px) / 3); }
  .dubble-o-products-grid__expanded-filter .woocommerce-widgets-wrapper .column:nth-child(3n + 3) { margin-right: 0; }
}
