/* Homira storefront canvas: keep non-hero content inside the configured 1350px width. */
.dn-elementor-page .elementor-widget.elementor-widget-homira-category-menu,
.dn-elementor-page .elementor-widget.elementor-widget-homira-product-cards {
  width: min(var(--dn-site-width, 1350px), calc(100% - 6px)) !important;
  max-width: 1350px !important;
  margin-inline: auto !important;
}

/* WooCommerce clearfix pseudo-elements must never become product grid cells. */
.hm-related ul.products::before,
.hm-related ul.products::after { display: none !important; content: none !important; }
.hm-related ul.products { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)) !important; grid-auto-flow: row !important; align-items: stretch !important; }
.hm-related ul.products > li.product,
.hm-related ul.products > .hm-pcard { width: 100% !important; min-width: 0 !important; margin: 0 !important; }
@media (max-width: 1000px) { .hm-related ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (max-width: 560px) { .hm-related ul.products { grid-template-columns: minmax(0, 1fr) !important; } }

.elementor-widget-homira-category-menu .hm-category-menu,
.hm-pcards-widget {
  width: min(var(--dn-site-width, 1350px), 100%) !important;
  max-width: 1350px !important;
  margin-inline: auto !important;
}

.single-product .hm-product-shell {
  width: min(var(--dn-site-width, 1350px), calc(100% - 48px)) !important;
  max-width: 1350px !important;
  margin-inline: auto !important;
}

.dn-product-archive .dn-archive-shell {
  width: min(var(--dn-site-width, 1350px), calc(100% - 36px)) !important;
  max-width: 1350px !important;
  margin-inline: auto !important;
}

@media (max-width: 700px) {
  .single-product .hm-product-shell {
    width: calc(100% - 8px) !important;
  }

  .dn-product-archive .dn-archive-shell {
    width: calc(100% - 24px) !important;
  }
}

/* Related products use the exact archive-card media and price treatment. */
.hm-related .hm-pcard>.hm-pcard-image{height:258px!important;padding:6px!important;background:#fff!important}
.hm-related .hm-pcard>.hm-pcard-image>.hm-pcard-img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:scale-down!important;object-position:center!important;transform:scale(.68)!important}
.hm-related .hm-pcard:hover>.hm-pcard-image>.hm-pcard-img{transform:scale(.68)!important}
.hm-related .hm-pcard .hm-pcard-price{min-height:50px;padding:2px 11px 2px 0;border:0!important;border-right:3px solid var(--dn-accent)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.hm-related .hm-pcard .hm-pcard-price>small{border:0;border-radius:999px;background:color-mix(in srgb,var(--dn-accent) 10%,#fff);color:var(--dn-accent)}
.hm-related .hm-pcard .hm-pcard-price b{color:var(--dn-accent);font-size:21px}
@media(max-width:560px){
 .hm-related{overflow:hidden}
 .hm-related ul.products{display:grid!important;grid-template-columns:none!important;grid-auto-columns:72%!important;grid-auto-flow:column!important;gap:10px!important;overflow-x:auto!important;padding:3px 3px 13px!important;scroll-snap-type:x mandatory;scrollbar-width:none}
 .hm-related ul.products::-webkit-scrollbar{display:none}
 .hm-related ul.products>.hm-pcard{scroll-snap-align:start}
 .hm-related .hm-pcard>.hm-pcard-image{height:238px!important}
}
