/* Revaldak: ajustes exclusivos para categorias de produto em telas pequenas. */
@media (max-width: 767px) {
 body.tax-product_cat .titlebar { padding: 18px 12px !important; min-height: 0 !important; }
 body.tax-product_cat .titlebar #page-title { font-size: 26px !important; line-height: 1.2 !important; margin: 0 !important; }
 body.tax-product_cat .titlebar + .row { display: block !important; width: 100% !important; max-width: 100% !important; margin: 0 !important; }
 body.tax-product_cat .titlebar + .row > .large-3.columns { display: none !important; }
 body.tax-product_cat .titlebar + .row > .large-9.columns { display: block !important; float: none !important; clear: both !important; width: 100% !important; max-width: 100% !important; padding: 14px 12px 26px !important; margin: 0 !important; }
 body.tax-product_cat .titlebar + .row ul.products,
 body.tax-product_cat .titlebar + .row .woocommerce ul.products {
   display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)) !important;
   column-gap: 12px !important; row-gap: 16px !important; align-items: stretch !important;
   width: 100% !important; max-width: 100% !important; padding: 0 !important;
   margin: 14px 0 24px !important; list-style: none !important;
 }
 body.tax-product_cat .titlebar + .row ul.products::before,
 body.tax-product_cat .titlebar + .row ul.products::after { display: none !important; content: none !important; }
 body.tax-product_cat .titlebar + .row ul.products > li.product,
 body.tax-product_cat .titlebar + .row ul.products > li.product.first,
 body.tax-product_cat .titlebar + .row ul.products > li.product.last {
   box-sizing: border-box !important; grid-column: auto !important; grid-row: auto !important;
   display: flex !important; flex-direction: column !important; align-items: stretch !important;
   float: none !important; clear: none !important; width: 100% !important; max-width: 100% !important;
   min-width: 0 !important; height: auto !important; min-height: 0 !important;
   padding: 0 0 10px !important; margin: 0 !important;
   left: auto !important; right: auto !important; top: auto !important; bottom: auto !important;
   position: relative !important; transform: none !important; opacity: 1 !important;
   visibility: visible !important; animation: none !important; transition: none !important;
   box-shadow: none !important; background: #fff !important;
 }
 body.tax-product_cat .titlebar + .row ul.products > li.product > a.woocommerce-LoopProduct-link,
 body.tax-product_cat .titlebar + .row ul.products > li.product > a.woocommerce-loop-product__link {
   display: flex !important; flex-direction: column !important; width: 100% !important;
   margin: 0 !important; padding: 0 !important; text-decoration: none !important;
 }
 body.tax-product_cat .titlebar + .row ul.products > li.product img {
   box-sizing: border-box !important; display: block !important;
   width: 100% !important; max-width: 100% !important;
   height: 175px !important; max-height: 175px !important; min-height: 175px !important;
   object-fit: contain !important; object-position: center !important;
   margin: 0 auto 8px !important; padding: 4px !important;
 }
 body.tax-product_cat .titlebar + .row ul.products > li.product .product-info {
   box-sizing: border-box !important; width: 100% !important; min-height: 55px !important;
   margin: 0 !important; padding: 4px 5px !important; text-align: center !important;
 }
 body.tax-product_cat .titlebar + .row ul.products > li.product h2,
 body.tax-product_cat .titlebar + .row ul.products > li.product h3,
 body.tax-product_cat .titlebar + .row ul.products > li.product .woocommerce-loop-product__title {
   font-size: 13px !important; line-height: 1.35 !important; margin: 2px 0 6px !important;
   overflow-wrap: anywhere !important;
 }
 body.tax-product_cat .titlebar + .row ul.products > li.product .button {
   position: static !important; display: block !important; width: calc(100% - 12px) !important;
   box-sizing: border-box !important; max-width: none !important; min-width: 0 !important;
   height: auto !important; margin: auto 6px 0 !important; padding: 9px 4px !important;
   font-size: 11px !important; line-height: 1.3 !important; text-align: center !important;
   transform: none !important; opacity: 1 !important; visibility: visible !important;
 }
 body.tax-product_cat .titlebar + .row .woocommerce-result-count { float: none !important; margin-bottom: 8px !important; }
 body.tax-product_cat .titlebar + .row .woocommerce-ordering { float: none !important; margin: 0 0 12px !important; }
 body.tax-product_cat .titlebar + .row .woocommerce-ordering select { width: 100% !important; }
}

/* v1.0.2: fluxo flexível evita células fantasmas causadas por estilos do tema. */
@media (max-width: 767px) {
 body.tax-product_cat .titlebar + .row ul.products,
 body.tax-product_cat .titlebar + .row .woocommerce ul.products {
   display: flex !important; flex-wrap: wrap !important; align-content: flex-start !important;
   justify-content: flex-start !important; gap: 16px 12px !important;
   height: auto !important; min-height: 0 !important; overflow: visible !important;
 }
 body.tax-product_cat .titlebar + .row ul.products > li.product,
 body.tax-product_cat .titlebar + .row ul.products > li.product.first,
 body.tax-product_cat .titlebar + .row ul.products > li.product.last {
   flex: 0 0 calc((100% - 12px)/2) !important;
   width: calc((100% - 12px)/2) !important;
   max-width: calc((100% - 12px)/2) !important;
   order: 0 !important; align-self: stretch !important;
   margin: 0 !important; clear: none !important;
 }
 body.tax-product_cat .titlebar + .row ul.products > li.product:nth-child(n) {
   margin-left: 0 !important; margin-right: 0 !important;
 }
 body.tax-product_cat .titlebar + .row .woocommerce,
 body.tax-product_cat .titlebar + .row .woocommerce-page,
 body.tax-product_cat .titlebar + .row > .large-9.columns {
   height: auto !important; min-height: 0 !important;
   overflow: visible !important; display: flow-root !important;
 }
 body.tax-product_cat .titlebar + .row nav.woocommerce-pagination,
 body.tax-product_cat .titlebar + .row .woocommerce-pagination {
   display: block !important; position: relative !important; float: none !important;
   clear: both !important; width: 100% !important; height: auto !important;
   margin: 24px auto 32px !important; padding: 8px 0 16px !important;
   text-align: center !important; overflow: visible !important;
   visibility: visible !important; opacity: 1 !important; transform: none !important;
 }
 body.tax-product_cat .titlebar + .row .woocommerce-pagination ul.page-numbers {
   display: flex !important; flex-wrap: wrap !important; justify-content: center !important;
   align-items: center !important; gap: 7px !important; float: none !important;
   width: auto !important; height: auto !important; margin: 0 auto !important;
   padding: 0 !important; overflow: visible !important;
 }
 body.tax-product_cat .titlebar + .row .woocommerce-pagination ul.page-numbers li {
   display: block !important; float: none !important; width: auto !important;
   height: auto !important; margin: 0 !important; padding: 0 !important;
 }
 body.tax-product_cat .titlebar + .row .woocommerce-pagination .page-numbers a,
 body.tax-product_cat .titlebar + .row .woocommerce-pagination .page-numbers span {
   display: inline-flex !important; justify-content: center !important; align-items: center !important;
   min-width: 36px !important; min-height: 36px !important;
 }
 body.tax-product_cat .titlebar + .row { height: auto !important; overflow: visible !important; }
}

/* v1.0.3 — neutraliza clearfix e deslocamentos da primeira célula. */
@media (max-width: 767px) {
 body.tax-product_cat .titlebar + .row ul.products::before,
 body.tax-product_cat .titlebar + .row ul.products::after,
 body.tax-product_cat .titlebar + .row .woocommerce ul.products::before,
 body.tax-product_cat .titlebar + .row .woocommerce ul.products::after {
   content: none !important; display: none !important;
   position: absolute !important; width: 0 !important; height: 0 !important;
   flex: none !important;
 }
 body.tax-product_cat .titlebar + .row ul.products {
   display: flex !important; flex-direction: row !important; flex-wrap: wrap !important;
   justify-content: flex-start !important; align-items: stretch !important;
   gap: 16px 12px !important; text-align: left !important;
 }
 body.tax-product_cat .titlebar + .row ul.products > li.product {
   flex-grow: 0 !important; flex-shrink: 0 !important;
   flex-basis: calc(50% - 6px) !important;
   width: calc(50% - 6px) !important; max-width: calc(50% - 6px) !important;
   margin: 0 !important; margin-inline: 0 !important;
   padding-left: 0 !important; padding-right: 0 !important;
   float: none !important; clear: none !important;
   inset: auto !important; transform: none !important;
 }
 body.tax-product_cat .titlebar + .row ul.products > li.product:first-of-type,
 body.tax-product_cat .titlebar + .row ul.products > li.product.first {
   margin-left: 0 !important; margin-inline-start: 0 !important;
   clear: none !important; float: none !important;
 }
}

/* v1.0.5: somente produtos relacionados, sem interferir no catalogo. */
@media (max-width:767px) {
body.single-product .related ul.products::before,
body.single-product .related ul.products::after,
body.single-product .upsells ul.products::before,
body.single-product .upsells ul.products::after {
    content: none !important; display: none !important;
  }
body.single-product .related ul.products,
body.single-product .upsells ul.products {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-flow: row !important;
    gap: 18px 12px !important;
    align-items: stretch !important;
    justify-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    padding: 0 !important;
    margin: 16px 0 28px !important;
    list-style: none !important;
    clear: both !important;
  }
body.single-product .related ul.products > li.product,
body.single-product .upsells ul.products > li.product {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    box-sizing: border-box !important;
    grid-column: auto !important;
    grid-row: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    flex: initial !important;
    float: none !important;
    clear: none !important;
    break-before: auto !important;
    break-after: auto !important;
    margin: 0 !important;
    padding: 0 0 10px !important;
    inset: auto !important;
    position: relative !important;
    transform: none !important;
    background: #fff !important;
    text-align: center !important;
  }
body.single-product .related ul.products > li.product img,
body.single-product .upsells ul.products > li.product img {
    display: block !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 155px !important;
    min-height: 155px !important;
    max-height: 155px !important;
    object-fit: contain !important;
    object-position: center !important;
    padding: 4px !important;
    margin: 0 auto 8px !important;
  }
body.single-product .related ul.products > li.product a,
body.single-product .upsells ul.products > li.product a {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
body.single-product .related ul.products > li.product .product-info,
body.single-product .upsells ul.products > li.product .product-info {
    width: 100% !important;
    min-height: 52px !important;
    padding: 4px !important;
    margin: 0 !important;
    text-align: center !important;
  }
body.single-product .related ul.products > li.product h2,
body.single-product .related ul.products > li.product h3,
body.single-product .upsells ul.products > li.product h2,
body.single-product .upsells ul.products > li.product h3 {
    font-size: 13px !important;
    line-height: 1.35 !important;
    overflow-wrap: anywhere !important;
    margin: 3px 0 8px !important;
  }
body.single-product .related ul.products > li.product .button,
body.single-product .upsells ul.products > li.product .button {
    display: block !important;
    box-sizing: border-box !important;
    position: static !important;
    transform: none !important;
    float: none !important;
    width: calc(100% - 8px) !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: auto 4px 0 !important;
    padding: 10px 3px !important;
    height: auto !important;
    font-size: 11px !important;
    line-height: 1.3 !important;
    text-align: center !important;
    opacity: 1 !important;
    visibility: visible !important;
  }
body.single-product .related,
body.single-product .upsells {
    clear: both !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
    margin-bottom: 28px !important;
  }
}
