/* Shared catalogue card appearance for the shop and homepage. */
:is(.shop-page, .home-page) .product-cart-wrap { width: 100%; display: flex; flex-direction: column; padding: 10px; margin-bottom: 0 !important; border: 1px solid #f2f2f5; border-radius: 21px; background: #fff; box-shadow: 0 9px 23px #20263c0b, 0 2px 4px #20263c04; overflow: hidden; }
:is(.shop-page, .home-page) .product-cart-wrap:hover { border-color: #e1e5df; box-shadow: 0 12px 26px #20263c13; }
:is(.shop-page, .home-page) .product-cart-wrap .product-img-action-wrap { padding: 0; border-radius: 17px; overflow: hidden; }
:is(.shop-page, .home-page) .product-cart-wrap .product-img { border-radius: 17px; }
:is(.shop-page, .home-page) .product-img > a { display: block; aspect-ratio: 1; background: #f4f3f1; }
:is(.shop-page, .home-page) .product-cart-wrap .product-img img { width: 100%; height: 100%; aspect-ratio: 1; object-fit: cover; }
:is(.shop-page, .home-page) .product-cart-wrap .wishlist-btn { opacity: 1; top: 15px; right: 15px; width: 36px; height: 36px; padding: 0; display: grid; place-items: center; border-radius: 50%; background: #ffffffed; color: #25282e; z-index: 3; }
:is(.shop-page, .home-page) .wishlist-btn i { font-family: 'Font Awesome 6 Free'; font-weight: 400; font-size: 17px; }
:is(.shop-page, .home-page) .wishlist-btn:hover { color: #b88a26; background: #fff; }
:is(.shop-page, .home-page) .product-badges.product-badges-position { top: 0; left: 0; }
:is(.shop-page, .home-page) .product-badges span.hot { background: linear-gradient(110deg, #b08022, #d6af43); border-radius: 18px 0 18px 0; padding: 8px 14px; font-size: 12px; font-weight: 700; }
:is(.shop-page, .home-page) .product-cart-wrap .product-content-wrap { padding: 9px 7px 5px; flex: 1; display: flex; flex-direction: column; }
:is(.shop-page, .home-page) .product-category { display: flex; align-items: center; justify-content: space-between; gap: 6px; min-height: 24px; line-height: 1.4; margin-bottom: 5px; }
:is(.shop-page, .home-page) .product-category a { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; color: #686b70; }
:is(.shop-page, .home-page) .product-content-wrap h2 { font-family: inherit; font-size: 14px; font-weight: 500; line-height: 1.4; margin-bottom: 8px; }
:is(.shop-page, .home-page) .product-content-wrap h2 a { color: #111319; display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
:is(.shop-page, .home-page) .product-cart-wrap .product-card-bottom { margin: 0 0 8px; display: block; }
:is(.shop-page, .home-page) .product-cart-wrap .product-price { line-height: 1.4; }
:is(.shop-page, .home-page) .product-cart-wrap .product-price span { font-family: inherit; font-size: 19px; font-weight: 800; color: #064614; }
:is(.shop-page, .home-page) .product-cart-wrap .product-price span.old-price { font-size: 14px; color: #a3a4a8; margin-left: 9px; }
:is(.shop-page, .home-page) .product-category .stock-status.in-stock { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; min-height: 22px; padding: 3px 10px; margin: 0 0 0 auto; white-space: nowrap; border-radius: 999px; background: #def9ec; color: #006b35; font-family: Arial, sans-serif; font-size: 12px; font-weight: 400; line-height: 16px; }
:is(.shop-page, .home-page) .product-content-wrap > .d-flex { margin-top: auto; gap: 8px; padding-top: 7px; flex-wrap: nowrap; }
:is(.shop-page, .home-page) .order-now-btn,
:is(.shop-page, .home-page) .product-content-wrap .add-to-cart-btn { flex: 1 1 auto; display: inline-flex !important; justify-content: center; align-items: center; min-height: 34px; padding: 7px 10px; border: 0; border-radius: 4px; font-size: 14px; font-weight: 400; line-height: 20px; white-space: nowrap; cursor: pointer; text-transform: none; }
:is(.shop-page, .home-page) .order-now-btn { flex: 1 1 0; min-width: 0; background: #102b25; color: #fff; }
:is(.shop-page, .home-page) .order-now-btn:hover { background: #1b4037; color: #fff; }
:is(.shop-page, .home-page) .product-content-wrap .add-to-cart-btn { flex: 0 0 36px; width: 36px; padding: 7px; background: #e4e6ec; color: #142b46; }
:is(.shop-page, .home-page) .product-content-wrap .add-to-cart-btn:hover { background: #d6dae3; color: #142b46; }
:is(.shop-page, .home-page) .product-content-wrap .add-cart { display: none !important; }

.home-page .product-cart-wrap { font-family: Arial, sans-serif; }
.home-page .product-grid-4 { --bs-gutter-x: 14px; row-gap: 16px; }
.home-page .product-grid-4 > [class*="col-"] { display: flex; }
.home-page .product-grid-4 .product-cart-wrap { height: 100%; }
.home-page .category-product-group { margin-bottom: 30px; }
@media (max-width: 575px) {
    :is(.shop-page, .home-page) .product-cart-wrap { padding: 7px; border-radius: 16px; }
    :is(.shop-page, .home-page) .product-cart-wrap .product-content-wrap { padding-inline: 2px; }
    :is(.shop-page, .home-page) .product-cart-wrap .wishlist-btn { top: 12px; right: 12px; width: 30px; height: 30px; }
    :is(.shop-page, .home-page) .product-content-wrap > .d-flex { gap: 6px; }
    :is(.shop-page, .home-page) .order-now-btn,
    :is(.shop-page, .home-page) .product-content-wrap .add-to-cart-btn { padding-inline: 6px; font-size: 12px; }
    :is(.shop-page, .home-page) .product-cart-wrap .product-price span { font-size: 17px; }
}

:is(.shop-page, .home-page) .product-content-wrap .add-to-cart-btn i { font-size: 18px; line-height: 20px; }
