/* BBOX 5.5.0 DESKTOP ISOLATION — migrated from former shared base.css. */
/* product-card — base presentation. */
.woocommerce ul.products::before,.woocommerce ul.products::after {
  display: none;
}

.woocommerce ul.products li.product,.woocommerce ul.products[class*="columns-"] li.product,ul.products li.bbox-product-card {
  position: relative;
  float: none;
  width: auto;
  margin: 0;
  padding: var(--bbox-space-4);
  min-width: 0;
  background: var(--bbox-surface);
  color: var(--bbox-text);
  border: 1px solid var(--bbox-border);
  border-radius: var(--bbox-radius-lg);
  box-shadow: var(--bbox-shadow);
}

.product-media {
  position: relative;
  aspect-ratio: var(--bbox-product-image-ratio);
  display: grid;
  place-items: center;
}

.woocommerce ul.products li.product .product-media img,.product-media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  margin: 0;
}

.product-card-copy {
  padding-block: var(--bbox-space-3);
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-size: var(--bbox-text-sm);
  line-height: 1.9;
  padding: 0;
  margin-bottom: var(--bbox-space-3);
}

.woocommerce ul.products li.product .price {
  color: var(--bbox-gold-deep);
  font-weight: 700;
}

.woocommerce ul.products li.product .button {
  width: 100%;
  margin-top: var(--bbox-space-3);
}

.woocommerce span.onsale {
  min-width: 0;
  min-height: 0;
  padding: var(--bbox-space-1) var(--bbox-space-3);
  border-radius: var(--bbox-radius-pill);
  background: var(--bbox-gold);
  color: var(--bbox-dark);
  line-height: 1.8;
  top: var(--bbox-space-2);
  left: auto;
  inset-inline-start: var(--bbox-space-2);
}

.bbox-card-ratio-square .product-media {
  aspect-ratio: 1;
}

.bbox-card-ratio-portrait .product-media {
  aspect-ratio: 3/4;
}

:root {
  --bbox-desktop-card-columns: var(--bbox-setting-columns,3);
}

:root {
  --bbox-mobile-card-columns: var(--bbox-setting-mobile-columns,2);
}

:root {
  --bbox-product-image-ratio: 1 / 1.08;
}

/* BBOX 5.2.0 canonical luxury card finish */
.woocommerce ul.products li.product,.product-card{border-color:var(--bbox-border);box-shadow:var(--bbox-shadow-soft);transition:transform var(--bbox-transition),box-shadow var(--bbox-transition),border-color var(--bbox-transition);}
.woocommerce ul.products li.product:hover,.product-card:hover{transform:translateY(-3px);border-color:var(--bbox-gold-line);box-shadow:var(--bbox-shadow-gold);}
.product-media img,.woocommerce ul.products li.product img{transition:transform 320ms cubic-bezier(.2,.7,.2,1);}
.woocommerce ul.products li.product:hover .product-media img,.product-card:hover .product-media img{transform:scale(1.018);}


/* BBOX 5.3.0 canonical deterministic product-card geometry. */
.woocommerce ul.products li.product.bbox-product-card,
ul.products li.bbox-product-card{
  display:grid;
  grid-template-rows:auto 1fr auto;
  align-content:stretch;
  overflow:hidden;
}
.bbox-product-card .product-media{
  overflow:hidden;
  border-radius:calc(var(--bbox-radius-md) - .15rem);
  background:linear-gradient(180deg,#fff 0%,#fbfaf7 100%);
}
.bbox-product-card .product-card-copy{
  display:flex;
  flex-direction:column;
  min-width:0;
  padding-block:12px 6px;
}
.bbox-product-card .woocommerce-loop-product__title{
  display:-webkit-box;
  min-height:3.8em;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  line-clamp:2;
}
.bbox-product-card .price{
  margin-top:auto;
  min-height:2.1em;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:4px 7px;
}
.bbox-product-card > .button,
.bbox-product-card > a.button{
  align-self:end;
  margin-top:10px;
}

/* product-card — desktop presentation. */
:root {
  --bbox-card-columns: var(--bbox-desktop-card-columns);
}

.woocommerce ul.products,ul.products.bbox-home438-product-grid {
  display: grid;
  gap: var(--bbox-space-4);
  padding: 0;
  margin: 0;
  list-style: none;
  grid-template-columns: repeat(auto-fit,minmax(min(100%,max(220px,calc((100% - (var(--bbox-card-columns) - 1) * var(--bbox-space-4)) / var(--bbox-card-columns)))),1fr));
}


/* BBOX 5.3.0 desktop product grid rhythm. */
.woocommerce ul.products,ul.products.bbox-home438-product-grid{gap:clamp(16px,1.5vw,24px);}
.bbox-product-card{min-height:100%;}

/* BBOX 5.5.51 DESKTOP PRODUCT CARD CANONICAL START */
@media (min-width:1101px){
  body.woocommerce-shop .catalog-results > ul.products > li.product.bbox-product-card,
  body.tax-product_cat .catalog-results > ul.products > li.product.bbox-product-card,
  body.post-type-archive-product .catalog-results > ul.products > li.product.bbox-product-card{
    position:relative!important;
    display:grid!important;
    grid-template-rows:auto 1fr auto!important;
    align-content:stretch!important;
    float:none!important;

    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    min-height:0!important;

    margin:0!important;
    padding:12px!important;

    border:1px solid var(--bbox-border)!important;
    border-radius:16px!important;
    background:var(--bbox-surface,#fff)!important;
    box-shadow:0 8px 26px rgba(20,18,13,.055)!important;
    overflow:hidden!important;
  }

  body.woocommerce-shop .bbox-product-card .product-media,
  body.tax-product_cat .bbox-product-card .product-media,
  body.post-type-archive-product .bbox-product-card .product-media{
    aspect-ratio:1 / 1!important;
    width:100%!important;
    min-height:0!important;
    overflow:hidden!important;
    border-radius:12px!important;
    background:linear-gradient(180deg,#fff 0%,#fbfaf7 100%)!important;
  }

  body.woocommerce-shop .bbox-product-card .product-media img,
  body.tax-product_cat .bbox-product-card .product-media img,
  body.post-type-archive-product .bbox-product-card .product-media img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-height:none!important;
    margin:0!important;
    object-fit:contain!important;
  }

  body.woocommerce-shop .bbox-product-card .product-card-copy,
  body.tax-product_cat .bbox-product-card .product-card-copy,
  body.post-type-archive-product .bbox-product-card .product-card-copy{
    display:flex!important;
    flex-direction:column!important;
    min-width:0!important;
    padding:10px 2px 2px!important;
  }

  body.woocommerce-shop .bbox-product-card .woocommerce-loop-product__title,
  body.tax-product_cat .bbox-product-card .woocommerce-loop-product__title,
  body.post-type-archive-product .bbox-product-card .woocommerce-loop-product__title{
    display:-webkit-box!important;
    min-height:3.2em!important;
    max-height:3.2em!important;
    margin:0 0 8px!important;
    padding:0!important;

    overflow:hidden!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    line-clamp:2!important;

    font-size:13px!important;
    line-height:1.6!important;
    font-weight:800!important;
    color:var(--bbox-text,#171717)!important;
  }

  body.woocommerce-shop .bbox-product-card .price,
  body.tax-product_cat .bbox-product-card .price,
  body.post-type-archive-product .bbox-product-card .price{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:baseline!important;
    gap:3px 6px!important;
    min-height:1.8em!important;
    margin-top:auto!important;
    font-size:13px!important;
    line-height:1.5!important;
    font-weight:800!important;
    color:var(--bbox-gold-deep)!important;
  }

  body.woocommerce-shop .bbox-product-card .price del,
  body.tax-product_cat .bbox-product-card .price del,
  body.post-type-archive-product .bbox-product-card .price del{
    font-size:10px!important;
    opacity:.45!important;
  }

  body.woocommerce-shop .bbox-product-card > .button,
  body.tax-product_cat .bbox-product-card > .button,
  body.post-type-archive-product .bbox-product-card > .button{
    width:100%!important;
    min-height:40px!important;
    margin:10px 0 0!important;
    padding:8px 10px!important;
    border-radius:10px!important;
    font-size:12px!important;
  }

  body.woocommerce-shop .bbox-product-card .onsale,
  body.tax-product_cat .bbox-product-card .onsale,
  body.post-type-archive-product .bbox-product-card .onsale{
    top:10px!important;
    right:10px!important;
    left:auto!important;
    inset-inline-start:auto!important;
    min-width:0!important;
    min-height:0!important;
    padding:4px 9px!important;
    border-radius:999px!important;
    font-size:10px!important;
    line-height:1.5!important;
  }
}
/* BBOX 5.5.51 DESKTOP PRODUCT CARD CANONICAL END */
