/* Fix for course grid alignment */
.woocommerce ul.products {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Ensure consistent padding for all grid items */
.woocommerce ul.products li.course-listing,
.woocommerce ul.products li.product.course-listing {
    margin: 0 !important;
    padding: 0 !important;
}

/* Remove any left margin from the first item */
.woocommerce ul.products li:first-child {
    margin-left: 0 !important;
    padding-left: 0 !important;
}

/* Reset all product grids */
.woocommerce ul.products,
.wcv_shop_products ul.products,
.wcv-shop-products ul.products,
.related.products ul.products,
.woocommerce-page ul.products,
.woocommerce-page .products,
.woocommerce .products,
.woocommerce ul.products:not(.products-grid),
.woocommerce-page ul.products:not(.products-grid) {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
    width: 100% !important;
    border-collapse: collapse !important;
    border-spacing: 0 !important;
    table-layout: fixed !important;
    line-height: 0 !important;
    font-size: 0 !important;
    letter-spacing: 0 !important;
    word-spacing: 0 !important;
}

/* Force all direct children to have no spacing */
.woocommerce ul.products > *,
.wcv_shop_products ul.products > *,
.wcv-shop-products ul.products > *,
.related.products ul.products > *,
.woocommerce-page ul.products > *,
.woocommerce .products > *,
.woocommerce-page .products > * {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    font-size: 100% !important;
    vertical-align: baseline !important;
    background: transparent !important;
    line-height: 0 !important;
    letter-spacing: 0 !important;
    word-spacing: 0 !important;
    float: none !important;
    clear: none !important;
    display: block !important;
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
}

/* Completely reset all list items */
.woocommerce ul.products li,
.wcv_shop_products ul.products li,
.wcv-shop-products ul.products li,
.related.products ul.products li,
.woocommerce-page ul.products li,
.woocommerce .products li,
.woocommerce-page .products li,
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.woocommerce .products li.product,
.woocommerce-page .products li.product {
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    clear: none !important;
    display: block !important;
}

/* Remove any additional margins or padding from product items */
.wcv_shop_products .product,
.wcv-shop-products .product,
.wcv_shop_products .product-inner,
.wcv-shop-products .product-inner,
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.related.products ul.products li.product {
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    clear: none !important;
    display: block !important;
    position: relative;
}

/* Ensure the course card takes full width and has no extra spacing */
.wcv_shop_products .course-card,
.wcv-shop-products .course-card {
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
}

/* Hide product images in course cards */
.woocommerce ul.products li.product .wp-post-image,
.woocommerce ul.products li.product .product-image,
.woocommerce ul.products li.product .woocommerce-loop-product__image,
.woocommerce ul.products li.product .product-thumbnail,
.woocommerce ul.products li.product .attachment-woocommerce_thumbnail,
.woocommerce ul.products li.product img,
.wcv_shop_products .product .wp-post-image,
.wcv_shop_products .product .product-image,
.wcv_shop_products .product .woocommerce-loop-product__image,
.wcv_shop_products .product .product-thumbnail,
.wcv_shop_products .product .attachment-woocommerce_thumbnail,
.wcv_shop_products .product img,
.wcv-shop-products .product .wp-post-image,
.wcv-shop-products .product .product-image,
.wcv-shop-products .product .woocommerce-loop-product__image,
.wcv-shop-products .product .product-thumbnail,
.wcv-shop-products .product .attachment-woocommerce_thumbnail,
.wcv-shop-products .product img,
.woocommerce div.product div.images,
.woocommerce div.product div.thumbnails,
.woocommerce div.product .woocommerce-product-gallery,
.woocommerce div.product .woocommerce-product-gallery__wrapper,
.woocommerce div.product .woocommerce-product-gallery__image,
.woocommerce div.product .woocommerce-product-gallery__image--placeholder,
.woocommerce div.product .woocommerce-product-gallery__image img {
    display: none !important;
    height: 0 !important;
    width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    visibility: hidden !important;
    opacity: 0 !important;
}

/* Hide the product gallery on single product pages */
.woocommerce-product-gallery {
    display: none !important;
}

/* Adjust the product summary to take full width on single product pages */
.woocommerce div.product .summary.entry-summary {
    width: 100% !important;
    float: none !important;
    padding-left: 0 !important;
}

/* Remove any padding or margin that was meant for the image */
.woocommerce ul.products li.product {
    padding-top: 0 !important;
}

.woocommerce ul.products li.product .course-card__content {
    padding-top: 20px !important;
}

/* Make store info div (which contains the background image) clickable */
.store-info {
    position: relative;
    cursor: pointer;
    display: block !important;
    height: 200px; /* Adjust height as needed */
    background-size: cover !important;
    background-position: center !important;
    transition: transform 0.3s ease;
}

/* Add overlay for better hover effect */
.store-info::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,0.2);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.store-info:hover::after {
    opacity: 1;
}

/* Ensure the store avatar image is also clickable */
.store-avatar {
    cursor: pointer;
}

/* Make sure the store avatar image is properly sized */
.store-avatar img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform 0.3s ease;
}

.store-avatar:hover img {
    transform: scale(1.05);
}

/* Reset any conflicting styles from theme */
.thim-ekits-course .thim-ekits-course__inner,
.thim-course-tabs .thim-ekits-course,
.thim-course-tabs .thim-ekits-course__inner {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}