/* curren-storefront — product cards from the redesign (all product grids and carousels). */
ul.products li.product,
.mf-products-grid li.product,
.products li.product { position: relative; }

ul.products li.product .product-inner {
	position: relative; height: 100%; display: flex; flex-direction: column; box-sizing: border-box;
	background: #fff; border: 1px solid #E4E0D6 !important; border-radius: 12px; overflow: hidden; padding: 0 !important;
	font-family: 'Hind Siliguri', 'Noto Sans Bengali', sans-serif; transition: box-shadow .2s, border-color .2s;
}
ul.products li.product:hover .product-inner { border-color: #CFC8B8 !important; box-shadow: 0 6px 18px rgba(17, 18, 20, .08); }

/* photo */
ul.products li.product .mf-product-thumbnail { position: relative; margin: 0 !important; background: #EFECE4; aspect-ratio: 1 / 1; overflow: hidden; }
ul.products li.product .mf-product-thumbnail > a { display: block; height: 100%; }
ul.products li.product .mf-product-thumbnail img { width: 100% !important; height: 100% !important; object-fit: cover; margin: 0 !important; transition: transform .35s; }
ul.products li.product:hover .mf-product-thumbnail img { transform: scale(1.03); }
ul.products li.product .mf-product-thumbnail .onsale,
ul.products li.product .mf-product-thumbnail .ribbons,
ul.products li.product .mf-product-thumbnail .footer-button { display: none !important; } /* Martfury's ribbon and hover icons */
.csf-card__off { position: absolute; top: 12px; left: 12px; z-index: 3; background: #E6212C; color: #fff; font-family: 'Hind Siliguri', sans-serif; font-size: 13px; font-weight: 600; line-height: 1.5; padding: 3px 10px; border-radius: 999px; pointer-events: none; }

/* text */
ul.products li.product .mf-product-details { flex: 1 1 auto; display: flex; flex-direction: column; padding: 14px 16px 16px !important; margin: 0 !important; text-align: left; }
ul.products li.product .mf-product-content { display: flex; flex-direction: column; gap: 4px; padding: 0 !important; margin: 0 !important; }
.csf-card__cat { display: block; font-size: 13px; color: #5E5A52; line-height: 1.4; }
ul.products li.product .woo-loop-product__title { margin: 0 !important; font-size: 17px !important; font-weight: 600 !important; line-height: 1.35 !important; min-height: 0; }
ul.products li.product .woo-loop-product__title a { color: #141414 !important; }
ul.products li.product .woo-loop-product__title a:hover { color: #B3121B !important; }
ul.products li.product .mf-product-content .star-rating,
ul.products li.product .mf-product-content .mf-rating,
ul.products li.product .mf-product-content .sold-by-meta { display: none !important; }

ul.products li.product .mf-product-price-box { margin-top: auto !important; padding: 8px 0 0 !important; display: flex !important; flex-direction: column; gap: 10px; border: 0 !important; position: static !important; }
ul.products li.product .mf-product-price-box .price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; margin: 0 !important; color: #141414 !important; }
.csf-lp__now { font-size: 20px; font-weight: 700; color: #141414; line-height: 1.2; }
.csf-lp__from { font-size: 13px; color: #5E5A52; margin-left: -4px; }
.csf-lp__old { font-size: 14px; color: #6B665C; font-weight: 400; }
ul.products li.product .mf-product-price-box .add_to_cart_button,
ul.products li.product .mf-product-price-box .button:not(.csf-card__btn),
ul.products li.product .mf-product-price-box .product-list-add-to-cart { display: none !important; }

/* stars under the name (only on reviewed products); storefront.css, which colours .csf-star, loads on product pages only */
.csf-card__rating { display: flex; align-items: center; gap: 5px; line-height: 1; }
.csf-card__rating .csf-stars-row { display: inline-flex; gap: 1px; font-size: 14px; line-height: 1; }
.csf-card__rating .csf-star { color: #D6D1C4; }
.csf-card__rating .csf-star.is-on { color: #E6212C; }
.csf-card__rcount { font-size: 13px; color: #5E5A52; }

.csf-card__btn { display: flex; align-items: center; justify-content: center; min-height: 44px; border-radius: 8px; background: #111214; color: #fff !important; font-family: 'Hind Siliguri', sans-serif; font-size: 15px; font-weight: 600; text-decoration: none !important; transition: background .15s; }
.csf-card__btn:hover { background: #E6212C; color: #fff !important; }
.csf-card__btn.is-out { background: #EFECE4; color: #6B665C !important; cursor: default; }

@media (max-width: 767px) {
	ul.products li.product .mf-product-details { padding: 10px 10px 12px !important; }
	.csf-card__cat { font-size: 12px; }
	ul.products li.product .woo-loop-product__title { font-size: 14.5px !important; }
	.csf-lp__now { font-size: 17px; }
	.csf-lp__old { font-size: 12.5px; }
	.csf-card__btn { min-height: 40px; font-size: 14px; }
	.csf-card__off { top: 8px; left: 8px; font-size: 12px; padding: 2px 8px; }
}

/* spacing as drawn: 24px between cards, no white panel behind the homepage grids, compact text */
ul.products li.product .woo-loop-product__title,
ul.products li.product .mf-product-content { height: auto !important; min-height: 0 !important; max-height: none !important; }
/* Compact text: name, stars, price and button follow each other. (space-between used to push the
   price box to the bottom, leaving a big gap under the stars whenever a card in the row was taller.) */
ul.products li.product .mf-product-price-box { margin-top: 8px !important; gap: 8px !important; }
ul.products li.product .product-inner { justify-content: flex-start; }
/* Martfury's 30px margin under each card ended up inside the card (the card fills its grid cell,
   which that margin had made taller): empty space under the button. The row gap is the li's padding. */
ul.products li.product .product-inner { margin-bottom: 0 !important; }
ul.products li.product .mf-product-details { justify-content: flex-start !important; }
.cw-grid .mf-products-grid,
.cw-grid .mf-products-grid .products-content,
.cw-grid .mf-products-grid .cat-header { background: transparent !important; border: 0 !important; padding: 0 !important; box-shadow: none !important; }
.cw-grid .mf-products-grid .cat-header { display: none !important; }
@media (min-width: 768px) {
	.cw-grid ul.products,
	body.woocommerce.archive ul.products { display: flex !important; flex-wrap: wrap; margin: 0 -12px !important; }
	.cw-grid ul.products li.product,
	body.woocommerce.archive ul.products li.product { padding: 0 12px 24px !important; margin: 0 !important; border: 0 !important; }
	.cw-grid ul.products li.product .product-inner,
	body.woocommerce.archive ul.products li.product .product-inner { height: 100%; }
}

/* homepage rows: 5 cards per line on desktop (the theme only goes to 5 from 1200px) */
@media (min-width: 992px) {
	.cw-grid ul.products li.product.col-mf-5 { width: 20% !important; }
}

/* Martfury's hover overlay (title + price only, no button, no padding) fades in over the card on
   catalog pages — the card already shows everything, so it stays hidden */
.woocommerce ul.products li.product .mf-product-details-hover,
ul.products li.product .mf-product-details-hover { display: none !important; }
ul.products li.product .product-inner:hover .csf-card__cat, ul.products li.product .csf-card__cat { color: #5E5A52 !important; }

/* product-page sliders ("একই রকম আরও মডেল", up-sells): Martfury's slick slides have no gutter,
   so the cards touched — 24px between cards, edges still flush with the section */
.related.products ul.products.slick-slider .slick-list,
.up-sells ul.products.slick-slider .slick-list { margin: 0 -12px; }
.related.products ul.products li.product,
.up-sells ul.products li.product { padding: 0 12px !important; box-sizing: border-box; border: 0 !important; }
.related.products ul.products li.product .product-inner,
.up-sells ul.products li.product .product-inner { height: 100%; }
.related.products ul.products.slick-slider .slick-track,
.up-sells ul.products.slick-slider .slick-track { display: flex !important; }
.related.products ul.products.slick-slider .slick-slide,
.up-sells ul.products.slick-slider .slick-slide { height: auto !important; float: none !important; }
@media (max-width: 767px) {
	.related.products ul.products.slick-slider .slick-list,
	.up-sells ul.products.slick-slider .slick-list { margin: 0; }
	.related.products ul.products li.product,
	.up-sells ul.products li.product { padding: 0 6px !important; }
}
