/**
 * WooCommerce Custom Styles for NOVA Theme
 */

.nova-shop-main {
    padding: 30px 0 60px;
}

.nova-breadcrumb {
    font-size: 13px;
    color: #6b7280;
    margin-bottom: 24px;
}

.nova-breadcrumb a {
    color: #111111;
    font-weight: 600;
}

.bc-sep {
    margin: 0 6px;
    color: #9ca3af;
}

/* WooCommerce Product Loop */
ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 24px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

ul.products::before, ul.products::after {
    display: none !important;
}

ul.products li.product {
    margin: 0 !important;
    width: 100% !important;
    float: none !important;
    background: #ffffff;
    border-radius: var(--nova-radius-md);
    position: relative;
    transition: var(--nova-transition);
}

ul.products li.product:hover {
    transform: translateY(-3px);
}

ul.products li.product .woocommerce-loop-product__link {
    display: block;
    text-decoration: none;
    color: inherit;
}

ul.products li.product img {
    border-radius: var(--nova-radius-md);
    aspect-ratio: 4/5;
    object-fit: cover;
    margin-bottom: 12px !important;
}

ul.products li.product .woocommerce-loop-product__title {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #111111 !important;
    padding: 0 !important;
    margin-bottom: 4px !important;
}

ul.products li.product .price {
    font-size: 15px !important;
    font-weight: 800 !important;
    color: #111111 !important;
    margin-bottom: 8px !important;
}

ul.products li.product .price del {
    color: #9ca3af !important;
    font-weight: 400 !important;
    font-size: 13px !important;
}

ul.products li.product .button {
    background-color: #111111 !important;
    color: #ffffff !important;
    border-radius: var(--nova-radius-full) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    padding: 8px 18px !important;
    transition: var(--nova-transition) !important;
}

ul.products li.product .button:hover {
    background-color: #2b2b2b !important;
}

/* Single Product Details */
.woocommerce div.product {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
}

.woocommerce div.product div.images {
    width: 50% !important;
    float: none !important;
    margin: 0 !important;
}

.woocommerce div.product div.summary {
    width: 45% !important;
    float: none !important;
    margin: 0 !important;
}

.woocommerce div.product .product_title {
    font-size: 32px !important;
    font-weight: 800 !important;
    color: #111111 !important;
    line-height: 1.2 !important;
}

.woocommerce div.product p.price {
    font-size: 24px !important;
    font-weight: 800 !important;
    color: #111111 !important;
}

.woocommerce div.product form.cart .button {
    background-color: #111111 !important;
    color: #ffffff !important;
    padding: 14px 32px !important;
    border-radius: var(--nova-radius-full) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
}

.woocommerce div.product form.cart .quantity input.qty {
    border-radius: var(--nova-radius-full) !important;
    border: 1px solid #d1d5db !important;
    padding: 8px !important;
    font-weight: 700 !important;
}

/* Cart & Checkout */
.woocommerce-cart table.cart td.actions .button,
.woocommerce-checkout #place_order {
    background-color: #111111 !important;
    color: #ffffff !important;
    border-radius: var(--nova-radius-full) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    padding: 12px 28px !important;
}

@media (max-width: 768px) {
    ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 12px !important;
    }
    .woocommerce div.product div.images,
    .woocommerce div.product div.summary {
        width: 100% !important;
    }
}

/* Ensure WooCommerce page styling never distorts header or footer branding */
.woocommerce-page .site-header img.trendtee-header-logo,
.woocommerce .site-header img.trendtee-header-logo,
.woocommerce-page .site-footer img.trendtee-footer-logo,
.woocommerce .site-footer img.trendtee-footer-logo {
    height: 40px !important;
    max-height: 40px !important;
    width: auto !important;
    object-fit: contain !important;
    display: block !important;
}

/* Strict Equal Height Product Boxes in WooCommerce Grids */
.nova-product-card,
.woocommerce .nova-product-card,
.woocommerce-page .nova-product-card {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}

.product-thumb-wrap,
.woocommerce .product-thumb-wrap,
.woocommerce-page .product-thumb-wrap {
    position: relative !important;
    width: 100% !important;
    height: 260px !important;
    min-height: 260px !important;
    max-height: 260px !important;
    aspect-ratio: 4 / 5 !important;
    overflow: hidden !important;
    border-radius: 12px !important;
    background-color: #f3f4f6 !important;
    margin-bottom: 12px !important;
    flex-shrink: 0 !important;
    display: block !important;
}

.product-thumb-wrap .product-image-link,
.woocommerce .product-thumb-wrap .product-image-link,
.woocommerce-page .product-thumb-wrap .product-image-link {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    border-radius: inherit !important;
    overflow: hidden !important;
}

.product-thumb-wrap img,
.product-thumb-wrap .product-main-img,
.product-thumb-wrap .product-image-link img,
.woocommerce-page .product-thumb-wrap img,
.woocommerce .product-thumb-wrap img,
.woocommerce-page .product-thumb-wrap .product-image-link img,
.woocommerce .product-thumb-wrap .product-image-link img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    max-height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block !important;
    border-radius: inherit !important;
}
