/* One card component for native collections, classic loops and legacy Woo grids.
   Figma CZZ1Fj15WgHhO5seD0anl0, node 8:7; read 2026-11-06.
   A single product's summary is excluded. */
:root {
  --ac-card-width: 250px;
  --ac-card-gap: 40px;
  --ac-catalog-max-width: calc(5 * var(--ac-card-width) + 4 * var(--ac-card-gap));
}
:is(li.ac-product-card, .wc-block-product-template > .wc-block-product, .wc-block-grid__product, .woocommerce ul.products > li.ac-product-card) {
  --ac-card-ink: #070707;
  --ac-card-orange: #ff8d28;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-self: stretch;
  flex: 0 0 var(--ac-card-width);
  width: var(--ac-card-width) !important;
  max-width: 100%;
  min-width: 0;
  min-height: 400px;
  height: auto;
  padding: 14px 14px 9px;
  gap: 0;
  border: 1px solid #f7f7f7;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 4px 10px 1px rgb(0 0 0 / 5%);
  color: var(--ac-card-ink);
  font-family: var(--wp--preset--font-family--body, Inter, sans-serif);
  text-align: left;
}
/* The homepage's editable Group remains in the editor, without a second card box. */
li.ac-product-card > .acd1-product-card { display: contents; }

/* Fixed Figma tracks wrap without stretching cards. Carousels keep their scrolling. */
.wc-block-product-template:not(.is-product-collection-layout-carousel):not(.ac-related-track),
.woocommerce ul.products:has(> li.ac-product-card):not(.ac-related-track),
.wc-block-grid__products {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, var(--ac-card-width)), var(--ac-card-width))) !important;
  gap: var(--ac-card-gap) !important;
  justify-content: center;
  padding: 0;
}
.woocommerce ul.products:has(> li.ac-product-card)::before,
.woocommerce ul.products:has(> li.ac-product-card)::after { display: none; }
.woocommerce ul.products > li.ac-product-card,
.wc-block-grid__products > .wc-block-grid__product {
  margin: 0 !important;
  float: none;
  max-width: 100% !important;
}

:is(li.ac-product-card, .wc-block-product-template > .wc-block-product, .wc-block-grid__product, .woocommerce ul.products > li.ac-product-card) :is(.ac-card-image, .wc-block-components-product-image) {
  position: relative;
  display: block;
  flex: none;
  box-sizing: border-box;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 11 / 13;
  margin: 0 0 10px !important;
  overflow: hidden;
  border-radius: 8px;
}
:is(li.ac-product-card, .wc-block-product-template > .wc-block-product, .wc-block-grid__product, .woocommerce ul.products > li.ac-product-card) :is(.ac-card-image, .wc-block-components-product-image) :is(img, a, .wc-block-grid__product-image) {
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-height: none;
  margin: 0 !important;
  object-fit: cover;
  aspect-ratio: auto !important;
  border-radius: 8px;
}
:is(li.ac-product-card, .wc-block-product-template > .wc-block-product, .wc-block-grid__product, .woocommerce ul.products > li.ac-product-card) :is(.wp-block-post-title, .woocommerce-loop-product__title, .wc-block-grid__product-title) {
  min-height: 34.286px;
  margin: 0 0 4px !important;
  padding: 0 !important;
  font-family: inherit;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 15px !important;
  letter-spacing: 0;
  text-align: left !important;
  overflow-wrap: anywhere;
  color: var(--ac-card-ink);
}
:is(li.ac-product-card, .wc-block-product-template > .wc-block-product, .wc-block-grid__product, .woocommerce ul.products > li.ac-product-card) :is(.wp-block-post-title a, .woocommerce-LoopProduct-link, .wc-block-grid__product-link) {
  color: var(--ac-card-ink);
  text-decoration: none;
}
/* Classic Woo places title and price inside its product link. */
ul.products > li.product > .woocommerce-LoopProduct-link,
.woocommerce ul.products > li.product.ac-product-card > a.woocommerce-LoopProduct-link { display: flex; flex: 1; flex-direction: column; }
.wc-block-grid__product > .wc-block-grid__product-link { display: block; }
:is(li.ac-product-card, .wc-block-product-template > .wc-block-product, .wc-block-grid__product, .woocommerce ul.products > li.ac-product-card) :is(.wp-block-woocommerce-product-price, .price, .wc-block-grid__product-price) {
  margin: auto 0 7px !important;
  color: var(--ac-card-orange);
  font-size: 16px !important;
  font-weight: 900;
  line-height: 19px;
  text-align: left !important;
}
:is(li.ac-product-card, .wc-block-product-template > .wc-block-product, .wc-block-grid__product, .woocommerce ul.products > li.ac-product-card) .wp-block-woocommerce-product-price .wc-block-components-product-price { margin: 0 !important; }
:is(li.ac-product-card, .wc-block-product-template > .wc-block-product, .wc-block-grid__product, .woocommerce ul.products > li.ac-product-card) del {
  display: inline;
  margin-right: 5px;
  color: #636363;
  opacity: 1;
  font-size: 12px;
  font-weight: 400;
}
:is(li.ac-product-card, .wc-block-product-template > .wc-block-product, .wc-block-grid__product, .woocommerce ul.products > li.ac-product-card) ins { display: inline; color: var(--ac-card-orange); text-decoration: none; font-weight: 900; }
:is(li.ac-product-card, .wc-block-product-template > .wc-block-product, .wc-block-grid__product, .woocommerce ul.products > li.ac-product-card) .wc-price-history.lowest {
  display: block;
  margin: 7px 0 0;
  color: #636363;
  font-size: 10px;
  font-weight: 400;
  line-height: 14px;
  text-align: left;
}
:is(li.ac-product-card, .wc-block-product-template > .wc-block-product, .wc-block-grid__product, .woocommerce ul.products > li.ac-product-card) .wc-price-history.prior-price-value { font: inherit; color: inherit; }
:is(li.ac-product-card, .wc-block-product-template > .wc-block-product, .wc-block-grid__product, .woocommerce ul.products > li.ac-product-card) .wc-price-history.prior-price-value bdi { font: inherit; }
:is(li.ac-product-card, .wc-block-product-template > .wc-block-product, .wc-block-grid__product, .woocommerce ul.products > li.ac-product-card) :is(.wp-block-woocommerce-product-button, .wc-block-grid__product-add-to-cart) { margin: 0 !important; width: 100%; }
:is(li.ac-product-card, .wc-block-product-template > .wc-block-product, .wc-block-grid__product, .woocommerce ul.products > li.ac-product-card) :is(.wp-block-button__link, a.button) {
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 36px;
  height: 36px;
  flex-shrink: 0;
  margin: 0 !important;
  padding: 0 10px !important;
  border: 0;
  border-radius: 10px;
  background: var(--ac-card-ink) !important;
  color: #fff !important;
  font-family: inherit;
  font-size: 12px !important;
  font-weight: 500;
  line-height: 18px;
  text-align: center;
  text-decoration: none;
  white-space: normal;
}
:is(li.ac-product-card, .wc-block-product-template > .wc-block-product, .wc-block-grid__product, .woocommerce ul.products > li.ac-product-card) a:focus-visible { outline: 3px solid var(--ac-card-orange); outline-offset: 3px; }

/* Two independent labels in normal flow within one positioned stack. */
.ac-card-image > .ac-product-badges,
.ac-product-gallery-hero > .ac-product-badges {
  position: absolute;
  z-index: 4;
  top: 7px;
  left: 6px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  max-width: calc(100% - 12px);
  pointer-events: none;
}
.ac-product-badges > .ac-product-badge {
  position: static;
  display: inline-block;
  max-width: 100%;
  padding: 5px 7px;
  border-radius: 4px;
  background: #ff383c;
  color: #fff;
  font-family: inherit;
  font-size: 9px;
  font-weight: 700;
  line-height: 12px;
  letter-spacing: 0;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}

/* Green label from Figma 25:174/25:175. Custom red labels retain their own styling. */
.ac-product-badges > .ac-product-badge--sale {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 70px;
  height: 20px;
  padding: 0 10px;
  background: #34c759;
  color: #fff;
  font-size: 8px;
  font-weight: 500;
  line-height: normal;
  border-radius: 4px;
}

/* Split all available space equally around prices that have no history message. */
:is(li.ac-product-card, .wc-block-product-template > .wc-block-product, .wc-block-grid__product, .woocommerce ul.products > li.ac-product-card):not(:has(.wc-price-history.lowest)) :is(.wp-block-post-title, .woocommerce-loop-product__title, .wc-block-grid__product-title) {
  margin-bottom: 0 !important;
}
:is(li.ac-product-card, .wc-block-product-template > .wc-block-product, .wc-block-grid__product, .woocommerce ul.products > li.ac-product-card):not(:has(.wc-price-history.lowest)) :is(.wp-block-woocommerce-product-price, .price, .wc-block-grid__product-price) {
  margin-block: auto !important;
}
/* The large product photo uses exactly the same badge stack as listing photos. */
.single-product .ac-product-gallery-hero { position: relative; }
