.product-image-fade {
    opacity: 0;
    transition: opacity 0.5s ease-in-out, transform 0.3s ease-in-out;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1);
}

.product-image-fade.loaded {
    opacity: 1;
}

.card-img:hover .product-image-fade {
    transform: scale(1.1);
}

/* Product widget image styling - circular with box shadow */
.product-widget .card-img {
    border-radius: 300px;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.5);
}

/* Ensure text is center-aligned in product widgets */
.product-widget .card-box {
    text-align: center;
}

.product-widget .card-title {
    text-align: center;
}

/* Category header styles */
#content4-20 .product-tab {
    color: var(--text-primary) !important;
}

#content4-20 a .product-tab {
    color: var(--text-primary) !important;
}

/* Tabs styling when outside header section */
.product-tabs-wrapper .product-tab {
    color: var(--text-primary) !important;
}

.product-tabs-wrapper a .product-tab {
    color: var(--text-primary) !important;
}

#content4-20 .title h2.display-2 {
    font-size: 56px;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1.2;
    margin-bottom: 12px;
    font-family: var(--font-heading);
    letter-spacing: -0.02em;
    padding-bottom: 0 !important;
}

.category-buttons {
    margin-top: 30px;
    margin-bottom: 30px;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.category-buttons .btn {
    margin: 0;
    padding: 12px 0px !important;
    font-size: 16px !important;
    flex: 1;
    min-width: 0;
    max-width: 220px;
}

#subcategory-description {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    font-size: 16px;
}

@media (max-width: 767px) {
    .category-buttons {
        flex-direction: column;
        align-items: center;
    }

    .category-buttons .btn {
        width: 100%;
        max-width: 280px;
    }

    #content4-20 .title h2.display-2 {
        font-size: 36px;
    }
}

/* Reduce space between tabs and subcategory title */
#features3-1x {
    padding-top: 10px !important;
}

/* Increase space between subcategory title text section and first row of groups */
#features3-1x > .container > div:first-child {
    margin-bottom: 40px !important;
}

