/* Sepahan v2.79 - equal current prices and stable related products on mobile */

/* --------------------------------------------------------------------------
 * Product prices: one fixed size for every current price.
 * The old/struck price stays smaller and the rating owns a separate grid cell.
 * -------------------------------------------------------------------------- */
html body main#primary.sepahan-shop-page .sepahan-products-grid > ul.products > li.product.sepahan-product-card,
html body.single-product .sepahan-nikan-related li.product.sepahan-product-card{
  --sepahan-card-current-price-size:14px;
  --sepahan-card-old-price-size:10.5px;
}

html body main#primary.sepahan-shop-page .sepahan-products-grid > ul.products > li.product.sepahan-product-card .sepahan-product-meta-row,
html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-meta-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:end!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  gap:6px!important;
  direction:ltr!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

html body main#primary.sepahan-shop-page .sepahan-products-grid > ul.products > li.product.sepahan-product-card .sepahan-product-price,
html body main#primary.sepahan-shop-page .sepahan-products-grid > ul.products > li.product.sepahan-product-card .sepahan-price-normalized,
html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-price,
html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-price-normalized{
  grid-column:1!important;
  grid-row:1!important;
  justify-self:start!important;
  align-self:end!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-end!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  gap:1px!important;
  color:var(--sepahan-product-price,#2563eb)!important;
  direction:rtl!important;
  text-align:left!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  font-variant-numeric:tabular-nums!important;
}

/* Current price: sale price and normal price use exactly the same size. */
html body main#primary.sepahan-shop-page .sepahan-products-grid > ul.products > li.product.sepahan-product-card .sepahan-price-normalized > .woocommerce-Price-amount,
html body main#primary.sepahan-shop-page .sepahan-products-grid > ul.products > li.product.sepahan-product-card .sepahan-price-normalized > .woocommerce-Price-amount *,
html body main#primary.sepahan-shop-page .sepahan-products-grid > ul.products > li.product.sepahan-product-card .sepahan-price-normalized > ins,
html body main#primary.sepahan-shop-page .sepahan-products-grid > ul.products > li.product.sepahan-product-card .sepahan-price-normalized > ins *,
html body main#primary.sepahan-shop-page .sepahan-products-grid > ul.products > li.product.sepahan-product-card .sepahan-product-price > .woocommerce-Price-amount,
html body main#primary.sepahan-shop-page .sepahan-products-grid > ul.products > li.product.sepahan-product-card .sepahan-product-price > .woocommerce-Price-amount *,
html body main#primary.sepahan-shop-page .sepahan-products-grid > ul.products > li.product.sepahan-product-card .sepahan-product-price > ins,
html body main#primary.sepahan-shop-page .sepahan-products-grid > ul.products > li.product.sepahan-product-card .sepahan-product-price > ins *,
html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-price-normalized > .woocommerce-Price-amount,
html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-price-normalized > .woocommerce-Price-amount *,
html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-price-normalized > ins,
html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-price-normalized > ins *,
html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-price > .woocommerce-Price-amount,
html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-price > .woocommerce-Price-amount *,
html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-price > ins,
html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-price > ins *{
  display:inline-flex!important;
  align-items:baseline!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  color:var(--sepahan-product-price,#2563eb)!important;
  font-size:var(--sepahan-card-current-price-size)!important;
  font-weight:950!important;
  line-height:1.45!important;
  letter-spacing:-.12px!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  box-sizing:border-box!important;
}

/* Previous price and all of its descendants stay consistently smaller. */
html body main#primary.sepahan-shop-page .sepahan-products-grid > ul.products > li.product.sepahan-product-card .sepahan-price-normalized > del,
html body main#primary.sepahan-shop-page .sepahan-products-grid > ul.products > li.product.sepahan-product-card .sepahan-price-normalized > del *,
html body main#primary.sepahan-shop-page .sepahan-products-grid > ul.products > li.product.sepahan-product-card .sepahan-product-price > del,
html body main#primary.sepahan-shop-page .sepahan-products-grid > ul.products > li.product.sepahan-product-card .sepahan-product-price > del *,
html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-price-normalized > del,
html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-price-normalized > del *,
html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-price > del,
html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-price > del *{
  display:inline-flex!important;
  align-items:baseline!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  color:#94a3b8!important;
  font-size:var(--sepahan-card-old-price-size)!important;
  font-weight:700!important;
  line-height:1.4!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

html body main#primary.sepahan-shop-page .sepahan-products-grid > ul.products > li.product.sepahan-product-card .sepahan-product-rating,
html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-rating{
  grid-column:2!important;
  grid-row:1!important;
  justify-self:end!important;
  align-self:end!important;
  flex:0 0 auto!important;
  width:auto!important;
  max-width:46px!important;
  min-width:0!important;
  margin:0 0 3px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
}

/* --------------------------------------------------------------------------
 * Related products: isolate them from old global four-column/mobile rules.
 * -------------------------------------------------------------------------- */
html body.single-product .sepahan-nikan-related{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin-top:20px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}

html body.single-product .sepahan-nikan-related > .related.products,
html body.single-product .sepahan-nikan-related > .upsells.products{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

html body.single-product .sepahan-nikan-related .related.products > h2,
html body.single-product .sepahan-nikan-related .upsells.products > h2{
  width:100%!important;
  margin:0 0 16px!important;
  padding:0!important;
  font-size:19px!important;
  line-height:1.7!important;
  font-weight:950!important;
  text-align:right!important;
}

html body.single-product .sepahan-nikan-related .related.products > ul.products,
html body.single-product .sepahan-nikan-related .upsells.products > ul.products{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  align-items:stretch!important;
  gap:14px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
  float:none!important;
  clear:both!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}

html body.single-product .sepahan-nikan-related .related.products > ul.products::before,
html body.single-product .sepahan-nikan-related .related.products > ul.products::after,
html body.single-product .sepahan-nikan-related .upsells.products > ul.products::before,
html body.single-product .sepahan-nikan-related .upsells.products > ul.products::after{
  display:none!important;
  content:none!important;
}

html body.single-product .sepahan-nikan-related ul.products > li.product.sepahan-product-card{
  display:flex!important;
  flex-direction:column!important;
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
  clear:none!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

html body.single-product .sepahan-nikan-related ul.products > li.product.sepahan-product-card > .sepahan-product-inner{
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:100%!important;
  min-height:330px!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}

html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-image-link{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}

html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-img{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:165px!important;
  min-height:165px!important;
  max-height:165px!important;
  margin:0!important;
  padding:10px!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-img > img,
html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-img > picture,
html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-img > picture > img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:100%!important;
  max-height:100%!important;
  margin:auto!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
  box-sizing:border-box!important;
}

html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-body{
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  padding:10px 11px 6px!important;
  gap:7px!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-title,
html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-title > a{
  display:-webkit-box!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:42px!important;
  max-height:42px!important;
  margin:0!important;
  padding:0!important;
  color:var(--sepahan-text,#111827)!important;
  font-size:12px!important;
  font-weight:900!important;
  line-height:21px!important;
  text-align:right!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
}

html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-meta-row{
  min-height:48px!important;
  margin-top:auto!important;
}

html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-card-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 38px!important;
  align-items:center!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:5px 10px 10px!important;
  gap:7px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}

html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-card-actions > .sepahan-card-btn-light{
  display:flex!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  height:36px!important;
  min-height:36px!important;
  margin:0!important;
  padding:0 9px!important;
  border-radius:11px!important;
  font-size:11px!important;
  line-height:1!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
  box-sizing:border-box!important;
}

html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-card-actions > .sepahan-card-btn-icon{
  display:flex!important;
  width:38px!important;
  max-width:38px!important;
  min-width:38px!important;
  height:36px!important;
  min-height:36px!important;
  margin:0!important;
  padding:0!important;
  border-radius:11px!important;
  box-sizing:border-box!important;
}

html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-more{
  display:none!important;
}

@media(max-width:1023px){
  html body.single-product .sepahan-nikan-related .related.products > ul.products,
  html body.single-product .sepahan-nikan-related .upsells.products > ul.products{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:12px!important;
  }
}

@media(max-width:767px){
  html body main#primary.sepahan-shop-page .sepahan-products-grid > ul.products > li.product.sepahan-product-card,
  html body.single-product .sepahan-nikan-related li.product.sepahan-product-card{
    --sepahan-card-current-price-size:12.5px;
    --sepahan-card-old-price-size:9.5px;
  }

  html body main#primary.sepahan-shop-page .sepahan-products-grid > ul.products > li.product.sepahan-product-card .sepahan-product-meta-row{
    min-height:46px!important;
  }

  html body main#primary.sepahan-shop-page .sepahan-products-grid > ul.products > li.product.sepahan-product-card .sepahan-product-rating,
  html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-rating{
    max-width:40px!important;
    font-size:9.5px!important;
    gap:1px!important;
  }

  html body.single-product .sepahan-nikan-related{
    margin-top:16px!important;
    padding:12px!important;
    border-radius:16px!important;
  }

  html body.single-product .sepahan-nikan-related .related.products > h2,
  html body.single-product .sepahan-nikan-related .upsells.products > h2{
    margin-bottom:12px!important;
    font-size:17px!important;
    line-height:1.7!important;
  }

  html body.single-product .sepahan-nikan-related .related.products > ul.products,
  html body.single-product .sepahan-nikan-related .upsells.products > ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }

  html body.single-product .sepahan-nikan-related ul.products > li.product.sepahan-product-card > .sepahan-product-inner{
    min-height:300px!important;
  }

  html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-img{
    height:125px!important;
    min-height:125px!important;
    max-height:125px!important;
    padding:6px!important;
  }

  html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-body{
    padding:7px 7px 4px!important;
    gap:5px!important;
  }

  html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-title,
  html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-title > a{
    min-height:38px!important;
    max-height:38px!important;
    font-size:10.5px!important;
    line-height:19px!important;
  }

  html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-meta-row{
    min-height:46px!important;
    gap:4px!important;
  }

  html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-card-actions{
    grid-template-columns:minmax(0,1fr) 34px!important;
    padding:4px 6px 7px!important;
    gap:5px!important;
  }

  html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-card-actions > .sepahan-card-btn-light{
    height:33px!important;
    min-height:33px!important;
    padding:0 6px!important;
    font-size:10px!important;
  }

  html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-card-actions > .sepahan-card-btn-icon{
    width:34px!important;
    max-width:34px!important;
    min-width:34px!important;
    height:33px!important;
    min-height:33px!important;
  }
}

@media(max-width:380px){
  html body.single-product .sepahan-nikan-related{
    padding:10px!important;
  }

  html body.single-product .sepahan-nikan-related .related.products > ul.products,
  html body.single-product .sepahan-nikan-related .upsells.products > ul.products{
    gap:8px!important;
  }

  html body.single-product .sepahan-nikan-related li.product.sepahan-product-card .sepahan-product-img{
    height:116px!important;
    min-height:116px!important;
    max-height:116px!important;
  }
}
