/* Phase 18.9.5.28.5.8.2 — Product Cards Price Visibility, Carousel Isolation & Product Gallery Responsive Fix */
:root{
  --product-card-image-h: 250px;
  --product-card-min-h: 650px;
  --product-card-title-lines: 2;
  --product-card-desc-lines: 3;
}

.product-grid,
.featured-products-grid-v66,
.product-grid-v66,
.storefront-product-grid,
.storefront-products-themed-v1331{
  align-items:stretch!important;
}

.product-grid > .card.product-card-pro,
.featured-products-grid-v66 > .card.product-card-pro,
.product-grid-v66 > .card.product-card-pro,
.storefront-product-grid .card.product-card-pro,
.storefront-products-themed-v1331 .card.product-card-pro,
.card.product-card-pro.v61-product-card{
  height:100%!important;
  min-height:var(--product-card-min-h)!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  isolation:isolate;
}

.card.product-card-pro .card-img-wrap{
  flex:0 0 var(--product-card-image-h)!important;
  height:var(--product-card-image-h)!important;
  min-height:var(--product-card-image-h)!important;
  width:100%!important;
  display:block!important;
  position:relative!important;
  overflow:hidden!important;
  background:linear-gradient(135deg,#f8fbff,#eef2ff)!important;
}
.card.product-card-pro .card-img-wrap img{
  width:100%!important;
  height:100%!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center!important;
}
.card.product-card-pro .card-body{
  flex:1 1 auto!important;
  min-height:0!important;
  display:flex!important;
  flex-direction:column!important;
  padding:18px!important;
}

.card.product-card-pro .product-meta-v1222,
.card.product-card-pro .product-meta{
  min-height:34px!important;
  max-height:42px!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:6px!important;
  flex-wrap:wrap!important;
  line-height:1.45!important;
  margin-bottom:10px!important;
}
.card.product-card-pro .product-store-name-v1222,
.card.product-card-pro .product-meta span:not(.product-store-verified-v1222){
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

.card.product-card-pro h3{
  min-height:62px!important;
  max-height:62px!important;
  margin:0 0 10px!important;
  line-height:1.55!important;
  overflow:hidden!important;
}
.card.product-card-pro h3 a{
  display:-webkit-box!important;
  -webkit-line-clamp:var(--product-card-title-lines)!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  overflow-wrap:anywhere!important;
}
.card.product-card-pro .card-body > p{
  min-height:78px!important;
  max-height:78px!important;
  margin:0 0 12px!important;
  line-height:1.75!important;
  display:-webkit-box!important;
  -webkit-line-clamp:var(--product-card-desc-lines)!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  overflow-wrap:anywhere!important;
  color:#64748b!important;
}

.card.product-card-pro .product-card-metrics-v61{
  margin-top:auto!important;
  min-height:38px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-auto-rows:auto!important;
  align-items:center!important;
  justify-content:stretch!important;
  column-gap:10px!important;
  row-gap:4px!important;
  overflow:visible!important;
}
.card.product-card-pro .product-card-metrics-v61 span{
  min-width:0!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

.card.product-card-pro .price-row{
  direction:rtl!important;
  min-height:78px!important;
  margin:12px 0 14px!important;
  padding:12px 12px!important;
  border:1px solid #e5edfb!important;
  border-radius:20px!important;
  background:linear-gradient(135deg,#ffffff,#f8fbff)!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-auto-rows:auto!important;
  align-items:center!important;
  justify-content:stretch!important;
  column-gap:10px!important;
  row-gap:4px!important;
  overflow:visible!important;
}
.card.product-card-pro .price-row .variant-price-prefix-v18945{
  grid-column:2!important;
  grid-row:1 / span 2!important;
  align-self:center!important;
  justify-self:end!important;
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:34px!important;
  border-radius:999px!important;
  padding:6px 10px!important;
  margin:0!important;
  background:linear-gradient(135deg,#eff6ff,#eef2ff)!important;
  border:1px solid #dbeafe!important;
  color:#2563eb!important;
  font-size:12px!important;
  font-weight:1000!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.card.product-card-pro .price-row .price{
  grid-column:1!important;
  grid-row:1!important;
  justify-self:start!important;
  min-width:0!important;
  max-width:100%!important;
  color:#071022!important;
  font-size:clamp(18px,1.35vw,26px)!important;
  line-height:1.2!important;
  font-weight:1000!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  direction:rtl!important;
  unicode-bidi:plaintext!important;
  text-align:start!important;
  letter-spacing:-.02em!important;
}
.card.product-card-pro .price-row del{
  grid-column:1!important;
  grid-row:2!important;
  justify-self:start!important;
  min-width:0!important;
  max-width:100%!important;
  display:inline-flex!important;
  align-items:center!important;
  color:#94a3b8!important;
  font-size:12px!important;
  line-height:1.3!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  direction:rtl!important;
  unicode-bidi:plaintext!important;
}
.card.product-card-pro .card-actions{
  margin-top:auto!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 52px 52px!important;
  gap:10px!important;
  align-items:center!important;
  min-height:58px!important;
}
.card.product-card-pro .card-actions .btn.wide,
.card.product-card-pro .card-actions .stock-disabled-btn-v141{
  width:100%!important;
  min-width:0!important;
  min-height:54px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  padding-inline:12px!important;
}
.card.product-card-pro .card-actions .icon-btn,
.card.product-card-pro .card-actions .inline-cart-form .icon-btn{
  width:52px!important;
  height:54px!important;
  min-width:52px!important;
  border-radius:16px!important;
}
.card.product-card-pro .inline-cart-form{
  margin:0!important;
  width:52px!important;
  height:54px!important;
  display:block!important;
}

@media (min-width:1280px){
  .featured-products-grid-v66 .card.product-card-pro{--product-card-image-h:255px;--product-card-min-h:660px;}
}
@media (max-width:1180px){
  :root{--product-card-image-h:230px;--product-card-min-h:620px;}
  .featured-products-grid-v66{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media (max-width:860px){
  :root{--product-card-image-h:220px;--product-card-min-h:590px;}
  .featured-products-grid-v66,
  .product-grid-v66,
  .product-grid,
  .storefront-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;}
  .card.product-card-pro .card-body{padding:14px!important;}
  .card.product-card-pro .price-row{min-height:70px!important;padding:10px!important;}
  .card.product-card-pro .price-row .price{font-size:clamp(19px,4.5vw,24px)!important;}
}
@media (max-width:560px){
  :root{--product-card-image-h:205px;--product-card-min-h:560px;}
  .featured-products-grid-v66,
  .product-grid-v66,
  .product-grid,
  .storefront-product-grid{grid-template-columns:1fr!important;gap:16px!important;}
  .card.product-card-pro h3{min-height:auto!important;max-height:58px!important;}
  .card.product-card-pro .card-body > p{min-height:64px!important;max-height:64px!important;-webkit-line-clamp:2!important;}
  .card.product-card-pro .price-row{column-gap:6px!important;}
  .card.product-card-pro .price-row .variant-price-prefix-v18945{font-size:11px!important;padding:6px 8px!important;}
  .card.product-card-pro .price-row del{max-width:100%!important;}
  .card.product-card-pro .card-actions{grid-template-columns:minmax(0,1fr) 50px 50px!important;gap:8px!important;}
  .card.product-card-pro .card-actions .icon-btn,
  .card.product-card-pro .card-actions .inline-cart-form,
  .card.product-card-pro .card-actions .inline-cart-form .icon-btn{width:50px!important;min-width:50px!important;height:52px!important;}
}

.card.product-card-pro .variant-select-required-v18945{text-decoration:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}


/* Phase 18.9.5.28.5.8.2 — Keep price readable in every product card size */
.card.product-card-pro .price-row *{text-overflow:clip!important}
.card.product-card-pro .price-row .price,
.card.product-card-pro .price-row del{overflow-wrap:normal!important;word-break:keep-all!important}
@media (max-width:1180px){
  .card.product-card-pro .price-row .price{font-size:clamp(18px,2vw,24px)!important}
}
@media (max-width:560px){
  .card.product-card-pro .price-row{grid-template-columns:minmax(0,1fr) auto!important;min-height:74px!important}
  .card.product-card-pro .price-row .price{font-size:22px!important}
}
