.ul-products {
    background-color: rgba(239, 40, 83, 0.05);
    padding: clamp(40px, 4.20vw, 80px) 0;
    border-radius: clamp(15px, 2.1vw, 40px);

    &-sub-banners-wrapper {
        display: flex;
        flex-direction: column;
        gap: clamp(15px, 1.58vw, 30px);
        height: 100%;

        @include sm {
            flex-direction: row;
        }

        @include xxs {
            flex-direction: column;
        }
    }

    &-sub-banner {
        position: relative;
        z-index: 1;
        border-radius: 20px;
        overflow: hidden;
        height: 100%;

        &::before {
            content: "";
            position: absolute;
            inset: 0;
            z-index: 1;
            background: linear-gradient(to bottom, transparent, var(--ul-primary));
        }

        &-img {
            height: 100%;

            img {
                width: 100%;
                height: 100%;
                object-fit: cover;
            }
        }

        &-txt {
            position: absolute;
            z-index: 2;
            inset: 0;
            top: auto;
            text-align: center;
            color: var(--white);
            padding: clamp(20px, 2.10vw, 40px);

            @include lg {
                padding: clamp(15px, 1.10vw, 40px);
            }
        }

        &-title {
            font-weight: 600;
            font-size: clamp(21px, 1.26vw, 24px);
            line-height: 150%;
            letter-spacing: -0.03em;
            margin-bottom: clamp(12px, 1.05vw, 20px);
        }

        .ul-btn {
            border-color: rgba(255, 255, 255, 0.2);
            color: var(--white);
            height: clamp(34px, 2.31vw, 44px);
            padding: 0 clamp(14px, 1.05vw, 20px);
            gap: 0 clamp(14px, 1.05vw, 20px);

            &:hover {
                background-color: var(--white);
                color: var(--ul-primary);
            }
        }
    }

    &-slider-nav {
        display: none;

        @include sm {
            display: flex;
            background-color: var(--white);
            width: max-content;
            border-radius: 999px;
            padding: 0 clamp(7px, 0.53vw, 10px);
            gap: 20px;
            max-width: 100%;
            margin: auto;
            height: 45px;
            align-items: center;
            margin-top: 15px;

            button {
                display: inline-flex;
                padding-top: 5px;

                &:hover {
                    color: var(--ul-primary);
                }
            }
        }
    }
}

.ul-product {
    background-color: var(--white);
    border-radius: 20px;
    padding: clamp(15px, 1.58vw, 30px);
    // padding-top: clamp(10px, 1.05vw, 20px);

    &:hover {
        .ul-product-img img {
            transform: scale(1.05);
        }

        .ul-product-actions {
            top: 50%;
            pointer-events: all;
            opacity: 1;
        }
    }

    &-heading {
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 5px;
        margin-bottom: clamp(15px, 1.31vw, 25px);
    }

    &-price {
        color: var(--black);
        font-weight: 500;
        font-size: clamp(17px, 1.05vw, 20px);
        line-height: 1.3;
    }

    &-discount-tag {
        background-color: var(--black);
        border-radius: 999px;
        color: var(--white);
        padding: clamp(2px, 0.26vw, 5px) clamp(7px, 0.53vw, 10px);
        font-weight: 500;
        font-size: clamp(9px, 0.63vw, 12px);
    }

    &-img {
        display: flex;
        align-items: center;
        justify-content: center;
        aspect-ratio: 270/262;
        margin-bottom: clamp(16px, 1.16vw, 22px);
        overflow: hidden;
        position: relative;

        img {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            opacity: 0;
            transform: scale(1.04);
            transition: opacity 0.4s ease, transform 0.6s ease;

            &.is-active {
                opacity: 1;
                transform: scale(1);
            }
        }
    }

    &-actions {
        position: absolute;
        display: flex;
        gap: clamp(7px, 3.73vw, 10px);
        top: 60%;
        transform: translateY(-50%);
        transition: 0.4s ease;
        pointer-events: none;
        opacity: 0;

        a,
        button {
            border: 1px solid rgba(0, 0, 0, 0.3);
            width: clamp(32px, 2.10vw, 40px);
            aspect-ratio: 1/1;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 999px;
            color: var(--black);
            padding: 0;

            i {
                padding-top: 5px;
            }

            &:hover {
                background-color: var(--ul-primary);
                border-color: var(--ul-primary);
                color: var(--white);
            }
        }
    }

    &-title {
        margin-bottom: 4px;

        a {
            font-weight: 500;
            font-size: clamp(17px, 1.05vw, 20px);
            color: var(--black);

            &:hover {
                color: var(--ul-primary);
            }
        }
    }

    &-category {
        margin-bottom: 0;

        a {
            font-size: clamp(11px, 0.74vw, 14px);
            color: var(--ul-primary);
            font-weight: 400;
            text-transform: uppercase;
        }
    }
}


.ul-most-selling-products {
    background-color: #F2F2F2;
}

.ul-most-sell-filter-navs {
    display: flex;
    align-items: center;
    gap: clamp(7px, 0.53vw, 10px);
    flex-wrap: wrap;
    justify-content: center;

    a,
    button {
        height: 30px;
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: var(--black);
        border-radius: 999px;
        color: var(--white);
        font-size: clamp(13px, 0.84vw, 16px);
        font-weight: 500;
        padding: 0 clamp(7px, 0.53vw, 10px);
        transition: 0.3s ease;

        &:hover,
        &.mixitup-control-active {
            background-color: var(--ul-primary);
        }

    }
}

.ul-product-horizontal {
    display: flex;
    align-items: center;
    gap: clamp(12px, 1.58vw, 30px);
    background-color: var(--white);
    border-radius: 10px;
    padding: clamp(11px, 0.74vw, 14px);

    &:hover {
        .ul-product-horizontal-img img {
            transform: scale(1.08);
        }
    }

    &-img {
        flex-shrink: 0;
        max-width: clamp(96px, 6.62vw, 126px);
        aspect-ratio: 126/127;
        background-color: #ddd;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 10px;
        overflow: hidden;

        img {
            max-width: 100%;
        }
    }

    &-txt {
        flex-grow: 1;
    }

    .ul-product-price {
        color: var(--ul-primary);
    }

    .ul-product-category a {
        color: #A1A1A1;

        &:hover {
            color: var(--ul-primary);
        }
    }

    .ul-product-category {
        margin-bottom: clamp(9px, 0.63vw, 12px);
    }
}

.ul-product-rating {
    display: flex;
    gap: clamp(5px, 0.42vw, 8px);
    font-size: clamp(11px, 0.74vw, 14px);
    color: #F39F5F;
}
