/* 3Grafik Mobile Precise Fix v2. Applies ONLY on mobile/tablet. */
@media screen and (max-width: 991px) {
  /* From the actual browser-console output, not guessed selectors. */
  html body .topbar-device-mobile,
  html body .footer-device-mobile,
  html body .search-device-mobile,
  html body [id^="search-mobile-close-"],
  html body #tbay-mobile-menu,
  html body #tbay-mobile-smartmenu,
  html body #tbay-offcanvas-main,
  html body .topbar-mobile,
  html body .footer-mobile,
  html body .tbay-mmenu,
  html body .tbay-offcanvas,
  html body .tbay-offcanvas-main {
    display: none !important;
    visibility: hidden !important;
  }
  /* Puca's mobile overlays; never hide our .tg-mr navigation. */
  html body .active-mobile:not(.tg-mr):not(.tg-mr__drawer):not(.tg-mr__panel) {
    display: none !important;
    visibility: hidden !important;
  }
  html body .tg-mr {
    display: block !important;
    visibility: visible !important;
    position: relative !important;
    z-index: 1050 !important;
  }
  html body .tg-mr__drawer[open] > .tg-mr__panel {
    display: block !important;
    visibility: visible !important;
  }
  /* Puca archive actually renders .row.grid > .grid.product > .product-block.grid. */
  body.tax-product_cat .products .row.grid,
  body.tax-product_tag .products .row.grid,
  body.post-type-archive-product .products .row.grid {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    column-gap: 0 !important;
    row-gap: 20px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
  }
  body.tax-product_cat .products .row.grid > .grid.product,
  body.tax-product_tag .products .row.grid > .grid.product,
  body.post-type-archive-product .products .row.grid > .grid.product {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    height: auto !important;
  }
  body.tax-product_cat .products .grid.product > .product-block.grid,
  body.tax-product_tag .products .grid.product > .product-block.grid,
  body.post-type-archive-product .products .grid.product > .product-block.grid {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }
  /* Large but bounded photography, no stretching or oversized vertical cards. */
  body.tax-product_cat .products .product-block img,
  body.tax-product_tag .products .product-block img,
  body.post-type-archive-product .products .product-block img {
    display: block !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: 400px !important;
    object-fit: contain !important;
    margin-inline: auto !important;
  }
  /* Reduce accidental Puca bottom space when its fixed footer is removed. */
  body.tax-product_cat .products .grid.product,
  body.tax-product_tag .products .grid.product,
  body.post-type-archive-product .products .grid.product {padding-bottom: 0 !important;}
}
@media screen and (min-width: 600px) and (max-width: 991px) {
  body.tax-product_cat .products .row.grid,
  body.tax-product_tag .products .row.grid,
  body.post-type-archive-product .products .row.grid {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    column-gap: 16px !important;
  }
}
