/* 1. Force the slider containers background white */
.slick-list, 
.slick-track, 
.slick-slide {
  background-color: #fff !important;
  background: #fff !important;
}

/* 2. Force the product image wrapper or container background white */
.product-image-wrapper, /* replace with actual parent container class */
.product-image-wrapper * {
  background-color: #fff !important;
  background: #fff !important;
}



/* ============================
   UNIFORM PRODUCT CARD STYLES
   Smaller size + shadow + hover
   ============================ */

/* Base card styles */
.aiz-card-box,
.featured-card,
.product-cart-wrap,
.product-card-custom {
    background: #fff !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.12) !important;
    transition: all 0.3s ease !important;
    position: relative !important;
    margin: 10px !important;
    padding: 5px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    box-sizing: border-box !important;
    max-width: 260px !important;  /* uniform card width */
    min-height: 360px !important; /* uniform card height */
}

/* Hover shadow */
.aiz-card-box:hover,
.featured-card:hover,
.product-card-custom:hover {
    box-shadow: 0 6px 22px rgba(0,0,0,0.18) !important;
}

/* Images */
.aiz-card-box img,
.featured-card img,
.product-cart-wrap img,
.product-card-custom img {
    width: 100% !important;
    max-height: 220px !important;  /* Larger images */
    object-fit: contain !important;
    display: block !important;
    margin: 0 auto !important;
    transition: transform 0.4s ease !important;
}

/* Hover Zoom Effect for Images */
.aiz-card-box:hover img,
.featured-card:hover img,
.product-cart-wrap:hover img,
.product-card-custom:hover img {
    transform: scale(1.1) !important;
}

/* Image container for zoom effect */
.aiz-card-box .image-hover-effect,
.featured-card .image-hover-effect,
.product-cart-wrap .image-hover-effect,
.product-card-custom .image-hover-effect {
    overflow: hidden !important;
}

/* Titles - FIXED HEIGHT to ensure uniform card sizes */
.aiz-card-box h4,
.product-cart-wrap h4,
.product-card-custom h4,
.featured-card h4,
.aiz-card-box h3,
.product-cart-wrap h3,
.product-card-custom h3,
.featured-card h3 {
    font-size: 1rem !important;
    font-weight: 600 !important;
    color: #333 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    margin: 5px 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    min-height: 42px !important;  /* Fixed height for 2 lines */
    max-height: 42px !important;  /* Ensures uniform height */
}

/* Price - Bold and Friendly */
.aiz-card-box .price,
.product-cart-wrap .price,
.product-card-custom .price,
.featured-card .price,
.text-primary,
.fw-700 {
    font-size: 1.1rem !important;
    font-weight: 800 !important;  /* Extra bold */
    color: #ff0052 !important;
    text-align: center !important;
    margin-bottom: 8px !important;
}

/* Price wrapper for consistent spacing */
.fs-14 {
    min-height: 30px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Cart hover bar */
.aiz-card-box .cart-hover-bar,
.featured-card .cart-hover-bar,
.product-card-custom .cart-hover-bar {
    position: absolute !important;
    bottom: 10px !important;
    left: 10px !important;
    right: 10px !important;
    width: calc(100% - 20px) !important;
    height: 35px !important;
    background: #333 !important;
    color: #fff !important;
    border-radius: 6px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    opacity: 0 !important;
    transform: translateY(40px) !important;
    transition: all 0.35s ease !important;
    z-index: 25 !important;
}

.aiz-card-box:hover .cart-hover-bar,
.featured-card:hover .cart-hover-bar,
.product-card-custom:hover .cart-hover-bar {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

/* Border animation */
.aiz-card-box span[class^="border-run"],
.featured-card span[class^="border-run"] {
    position: absolute !important;
    background: #ff0052 !important;
    z-index: 20 !important;
    opacity: 0 !important;
    transition: all 0.35s ease !important;
}

.aiz-card-box .border-run-top,
.featured-card .border-run-top { top:0; left:0; height:2px; width:0; }
.aiz-card-box .border-run-right,
.featured-card .border-run-right { top:0; right:0; width:2px; height:0; }
.aiz-card-box .border-run-bottom,
.featured-card .border-run-bottom { bottom:0; right:0; height:2px; width:0; }
.aiz-card-box .border-run-left,
.featured-card .border-run-left { bottom:0; left:0; width:2px; height:0; }

.aiz-card-box:hover .border-run-top,
.featured-card:hover .border-run-top { width:100% !important; opacity:1 !important; }
.aiz-card-box:hover .border-run-right,
.featured-card:hover .border-run-right { height:100% !important; opacity:1 !important; transition-delay:.1s !important; }
.aiz-card-box:hover .border-run-bottom,
.featured-card:hover .border-run-bottom { width:100% !important; opacity:1 !important; transition-delay:.2s !important; }
.aiz-card-box:hover .border-run-left,
.featured-card:hover .border-run-left { height:100% !important; opacity:1 !important; transition-delay:.3s !important; }

/* 2-line clamp for any text */
.text-truncate-2 {
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    word-break: break-word !important;
}

/* Safe small-card column behavior */
.aiz-card-box [class*="col-"],
.featured-card [class*="col-"],
.product-cart-wrap [class*="col-"],
.product-card-custom [class*="col-"] {
    padding-left: 10px !important;
    padding-right: 10px !important;
    margin-bottom: 20px !important;
}

/* UNIVERSAL PRODUCT TITLE FIX FOR ALL CARDS */
.aiz-card-box .card-title,
.aiz-card-box .product-title,
.aiz-card-box h4,
.aiz-card-box h3,
.aiz-card-box .text-truncate-2,
.product-cart-wrap .card-title,
.product-cart-wrap .product-title,
.product-cart-wrap h4,
.product-cart-wrap h3,
.product-cart-wrap .text-truncate-2,
.product-card-custom .card-title,
.product-card-custom .product-title,
.product-card-custom h4,
.product-card-custom h3,
.product-card-custom .text-truncate-2,
.featured-card .card-title,
.featured-card .product-title,
.featured-card h4,
.featured-card h3,
.featured-card .text-truncate-2 {
    font-size: 1rem !important;
    line-height: 1.3 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    min-height: 42px !important;  /* Fixed height for uniform cards */
    max-height: 42px !important;
}

/* ============================
   MOBILE RESPONSIVE STYLES
   2 COLUMNS ON ALL MOBILE SCREENS
   ============================ */

@media (max-width: 767px) {
    /* CRITICAL: Override Bootstrap grid columns for mobile */
    /* This forces 2 columns ONLY for product card containers */
    /* NOT affecting single product page or checkout page */
    .row [class*="col-"]:has(.aiz-card-box),
    .row [class*="col-"]:has(.featured-card),
    .row [class*="col-"]:has(.product-cart-wrap),
    .row [class*="col-"]:has(.product-card-custom) {
        width: 50% !important;
        max-width: 50% !important;
        flex: 0 0 50% !important;
        padding-left: 5px !important;
        padding-right: 5px !important;
    }

    /* Force 2 columns for ALL product card containers */
    .aiz-card-box,
    .featured-card,
    .product-cart-wrap,
    .product-card-custom {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 280px !important;
        margin: 5px 0 !important;
        padding: 8px !important;
    }

    /* Smaller images on mobile */
    .aiz-card-box img,
    .featured-card img,
    .product-cart-wrap img,
    .product-card-custom img {
        max-height: 140px !important;  /* Larger on mobile */
    }

    /* Image wrapper mobile fix */
    .image-wrapper-fix {
        min-height: 160px !important;
    }

    /* Smaller text on mobile - WITH FIXED HEIGHT */
    .aiz-card-box h3,
    .aiz-card-box h4,
    .product-cart-wrap h3,
    .product-cart-wrap h4,
    .product-card-custom h3,
    .product-card-custom h4,
    .featured-card h3,
    .featured-card h4,
    .aiz-card-box .card-title,
    .featured-card .card-title {
        font-size: 0.85rem !important;
        margin: 3px 0 !important;
        line-height: 1.2 !important;
        min-height: 34px !important;  /* Fixed height for mobile */
        max-height: 34px !important;
    }

    /* Smaller price on mobile - BOLD */
    .aiz-card-box .price,
    .product-cart-wrap .price,
    .product-card-custom .price,
    .featured-card .price,
    .fs-14 {
        font-size: 0.95rem !important;
        font-weight: 800 !important;  /* Extra bold on mobile */
        margin-bottom: 5px !important;
        min-height: 28px !important;
    }

    /* Product details padding */
    .p-2, .p-md-3 {
        padding: 8px !important;
    }

    /* Adjust cart hover bar for mobile */
    .aiz-card-box .cart-hover-bar,
    .featured-card .cart-hover-bar,
    .product-card-custom .cart-hover-bar,
    .absolute-bottom-left {
        height: 30px !important;
        font-size: 0.75rem !important;
        bottom: 5px !important;
        left: 5px !important;
        right: 5px !important;
        width: calc(100% - 10px) !important;
    }

    /* Cart button icons smaller */
    .cart-hover-bar i {
        font-size: 1.2rem !important;
    }

    /* Hide some elements on mobile for cleaner look */
    .d-sm-flex {
        display: flex !important;
    }

    /* Row adjustments - ONLY for product listing rows */
    .row:has(.aiz-card-box),
    .row:has(.featured-card),
    .row:has(.product-cart-wrap),
    .row:has(.product-card-custom) {
        margin-left: -5px !important;
        margin-right: -5px !important;
    }

    /* Rating stars smaller on mobile */
    .rating_wrap {
        font-size: 0.8rem !important;
    }

    /* Product badges smaller */
    .absolute-top-left {
        font-size: 0.7rem !important;
        padding: 2px 6px !important;
    }

    /* Action buttons (wishlist/compare) */
    .aiz-p-hov-icon .action-btn {
        width: 28px !important;
        height: 28px !important;
        font-size: 0.9rem !important;
    }
}

/* Extra small devices (very small phones) */
@media (max-width: 375px) {
    .aiz-card-box,
    .featured-card,
    .product-cart-wrap,
    .product-card-custom {
        min-height: 260px !important;
        padding: 5px !important;
    }

    .aiz-card-box img,
    .featured-card img,
    .product-cart-wrap img,
    .product-card-custom img {
        max-height: 110px !important;
    }

    .image-wrapper-fix {
        min-height: 140px !important;
    }

    .aiz-card-box h3,
    .aiz-card-box h4,
    .product-cart-wrap h3,
    .product-cart-wrap h4,
    .product-card-custom h3,
    .product-card-custom h4,
    .featured-card h3,
    .featured-card h4 {
        font-size: 0.75rem !important;
        min-height: 30px !important;  /* Fixed height */
        max-height: 30px !important;
    }

    .aiz-card-box .price,
    .product-cart-wrap .price,
    .product-card-custom .price,
    .featured-card .price {
        font-size: 0.85rem !important;
        font-weight: 800 !important;
        min-height: 26px !important;
    }

    .cart-hover-bar {
        font-size: 0.7rem !important;
        height: 28px !important;
    }
}

/* Reduce Add to Cart button text size */
.aiz-card-box .cart-hover-bar,
.featured-card .cart-hover-bar,
.product-card-custom .cart-hover-bar {
    font-size: 0.75rem !important;  /* Smaller, friendly size */
}