/* Broad WooCommerce Product Collection normalization for PDP related products. */
html body.single-product main .wp-block-woocommerce-product-collection,
html body.single-product main .wp-block-woocommerce-related-products,
html body.single-product main .related.products {
  box-sizing: border-box !important;
  width: min(1240px, 100%) !important;
  max-width: 1240px !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

html body.single-product main ul.wc-block-product-template,
html body.single-product main ul.products,
html body.single-product main .wc-block-product-template {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-auto-columns: minmax(0, 1fr) !important;
  gap: 20px !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body.single-product main ul.wc-block-product-template::before,
html body.single-product main ul.wc-block-product-template::after,
html body.single-product main ul.products::before,
html body.single-product main ul.products::after {
  display: none !important;
}

html body.single-product main ul.wc-block-product-template > li,
html body.single-product main ul.products > li.product,
html body.single-product main .wc-block-product-template > li {
  box-sizing: border-box !important;
  display: flex !important;
  float: none !important;
  flex: none !important;
  flex-basis: auto !important;
  flex-direction: column !important;
  grid-column: auto !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(148,177,220,.17) !important;
  border-radius: 5px !important;
  background: linear-gradient(180deg,#0b1524,#060d17) !important;
}

html body.single-product main .wc-block-product-template > li > *,
html body.single-product main ul.products > li.product > * {
  box-sizing: border-box !important;
  min-width: 0 !important;
  max-width: none !important;
}

html body.single-product main .wc-block-product-template .wp-block-woocommerce-product-image,
html body.single-product main .wc-block-product-template .wc-block-components-product-image,
html body.single-product main ul.products li.product > a:first-child {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
}

html body.single-product main .wc-block-product-template img,
html body.single-product main ul.products li.product img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 1 / .82 !important;
  margin: 0 !important;
  border-radius: 0 !important;
  object-fit: contain !important;
  background: #07101b !important;
}

html body.single-product main .wc-block-product-template .wp-block-post-title,
html body.single-product main .wc-block-product-template .wp-block-post-title a,
html body.single-product main .wc-block-product-template .wc-block-components-product-name,
html body.single-product main .wc-block-product-template .wc-block-components-product-name a,
html body.single-product main ul.products li.product .woocommerce-loop-product__title {
  display: block !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 18px 18px 0 !important;
  padding: 0 !important;
  color: #fff !important;
  writing-mode: horizontal-tb !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: anywhere !important;
  font-size: 1.05rem !important;
  line-height: 1.35 !important;
  text-align: left !important;
}

html body.single-product main .wc-block-product-template .wc-block-components-product-price,
html body.single-product main ul.products li.product .price {
  display: block !important;
  width: auto !important;
  margin: 10px 18px 0 !important;
  color: #fff !important;
  font-weight: 800 !important;
  text-align: left !important;
}

html body.single-product main .wc-block-product-template .wp-block-button,
html body.single-product main .wc-block-product-template .wp-block-woocommerce-product-button,
html body.single-product main ul.products li.product .button {
  box-sizing: border-box !important;
  display: block !important;
  align-self: stretch !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 18px !important;
}

html body.single-product main .wc-block-product-template .wp-block-button__link,
html body.single-product main .wc-block-product-template .wp-block-woocommerce-product-button .wp-element-button,
html body.single-product main ul.products li.product .button {
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 12px 16px !important;
  border-radius: 4px !important;
  color: #fff !important;
  background: #1769e8 !important;
  writing-mode: horizontal-tb !important;
  white-space: normal !important;
  font-size: .78rem !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
  text-align: center !important;
  text-transform: uppercase !important;
}

@media (max-width: 782px) {
  html body.single-product main ul.wc-block-product-template,
  html body.single-product main ul.products,
  html body.single-product main .wc-block-product-template {
    grid-template-columns: 1fr !important;
  }
}
