/****************************
 * Product Item
*****************************/
.vii-product-item {--price-width:80px;}
.vii-product-item:has(del) {--price-width:120px;}

/* clickable wrapper */
.vii-product-item .woocommerce-loop-product__link {
    display:block; text-decoration:none; height:100%;
    margin-bottom:12px;
}
.vii-product-item .woocommerce-loop-product__link:hover,
.vii-product-item .woocommerce-loop-product__link:focus {text-decoration:none;}

/* product title */
.vii-product-item .woocommerce-loop-product__info-col:has(.woocommerce-loop-product__title) {
    width:calc(100% - var(--price-width)); padding-right:10px;
}
.vii-product-item .woocommerce-loop-product__title {
    --vii-size-h2:var(--vii-size-body);
}

/* price */
.vii-product-item .woocommerce-loop-product__info-col:has(.price) {width:var(--price-width);}
.vii-product-item .price {
    font-size:var(--vii-size-body);
    flex-direction:row-reverse;
    white-space:nowrap;
}
.vii-product-item .price del {margin-left:0;}

/* image */
.vii-product-item .woocommerce-loop-product__image:not(.has-hover-img) {overflow:hidden}
.vii-product-item .woocommerce-loop-product__image:not(.has-hover-img) img {transition:transform .3s ease;}
.vii-product-item .woocommerce-loop-product__image:not(.has-hover-img):hover img {transform:scale(1.1);}


/* button */
.woocommerce-loop-product__button {padding-left:1px; padding-right:1px;}
.woocommerce-loop-product__button .button {width:100%;}
.woocommerce-loop-product__button .added_to_cart {display:none;}

@media only screen and (min-width:769px) {
    .woocommerce-loop-product__button {transform:translateY(-10px); opacity:0; transition:var(--vii-transition);}
    .vii-product-item:hover .woocommerce-loop-product__button {transform:translateY(-1px); opacity:1;}
}

/****************************
 * Product Item > Responsive
*****************************/
@media only screen and (max-width:768px) {
    .woocommerce-loop-product__info {flex-direction:column; justify-content:space-between;gap:0;height:auto !important;}
    .vii-product-item .woocommerce-loop-product__link {margin-bottom:10px;}
    .vii-product-item .woocommerce-loop-product__info-col:has(.woocommerce-loop-product__title) {width:100%; padding:0; margin-bottom:0;}
    .vii-product-item .woocommerce-loop-product__info-col:has(.price) {width:100%;}
    .vii-product-item .price {justify-content:flex-end;}
    .woocommerce-loop-product__subtitle {height:auto !important; font-size:12px;}
}