product-card {
    display: block;
    height: 100%;
}
product-card .product-card-shell {
    position: relative;
    height: 100%;
}
product-card .product-card-wrapper{
    display: flex;
    flex-direction: column;
    height: 100%;
}
product-card .product-card-image{
    position: relative;
    overflow: hidden;
    border-radius:12px;
    display: flex;
    justify-content: center;
    margin-bottom:10px;
    aspect-ratio: var(--aspect-ratio);
}

product-card .product-card-image .empty-image-class{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
product-card .block-product-card__second-image{
    opacity: 0;
    transition: opacity 0.3s;
    position: absolute;
    top: 0;
    left: 0;
}

product-card:hover .block-product-card__second-image{
    opacity: 1;
}
product-card theme-product-form,
product-card theme-quick-add-modal{
    position: absolute;
    z-index: 3;
    top: 10px;
    right: 10px;
}

product-card .product-card-title,
product-card .product-card-wrapper:hover .product-card-title,
product-card .product-card-wrapper:focus-visible .product-card-title,
product-card .product-card-wrapper:visited .product-card-title{
    display: -webkit-box;
    color: rgba(var(--color-button-text-link, var(--color-text)), 1);
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
product-card .block-product-card__price{
    margin-top: 8px;
}
product-card .product-card_tags{
    display:flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 10px;
}

product-card .product-card_tag{
    border-radius:30px;
    border:1px solid #FF744F4D;
    padding:2px 20px;
}
product-card .product-card__quick-add{
    display: grid;
    width: 36px;
    height: 36px;
    margin: 0;
    padding: 0;
    place-items: center;
    color: rgb(var(--color-button-text));
    cursor: pointer;
    background: rgb(var(--color-button-background));
    border: 0;
    border-radius: 50%;
    box-shadow: 0 4px 12px rgb(0 0 0 / 16%);
    transition: opacity .25s ease, transform .25s ease, background-color .2s ease;
}
product-card .product-card__quick-add .product-card__quick-add-icon rect {
    display: none;
}
product-card .product-card__quick-add .product-card__quick-add-icon path {
    stroke: currentColor;
}
product-card .product-card__quick-add .product-card__quick-add-icon {
    width: 30px;
    height: 30px;
}
product-card .product-card__quick-add .button__spinner {
    display: none;
    width: 20px;
    height: 20px;
    color: currentColor;
}
product-card .product-card__quick-add.loading .product-card__quick-add-icon {
    display: none;
}
product-card .product-card__quick-add.loading .button__spinner,
product-card .product-card__quick-add.loading .icon-loading {
    display: block;
    animation: animation-button-loading linear 1.5s infinite;
}
product-card .product-card__quick-add:hover {
    transform: scale(1.1);
}
product-card .product-card__quick-add:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 3px;
}
product-card summary.product-card__quick-add {
    list-style: none;
}
product-card summary.product-card__quick-add::-webkit-details-marker {
    display: none;
}
product-card .product-card__quick-add .icon-loading {
    display: none;
    width: 20px;
    height: 20px;
    color: currentColor;
}
@media (min-width: 960px) and (hover: hover) and (pointer: fine) {
    product-card theme-product-form,
    product-card theme-quick-add-modal {
        pointer-events: none;
        opacity: 0;
        transform: translateY(5px);
        transition: opacity .25s ease, transform .25s ease;
    }
    product-card:hover theme-product-form,
    product-card:focus-within theme-product-form,
    product-card:hover theme-quick-add-modal,
    product-card:focus-within theme-quick-add-modal {
        pointer-events: auto;
        opacity: 1;
        transform: translateY(0);
    }
}
product-card .product-card_tag{
    color: rgba(var(--color-light-text));
    text-align: center;
}
@media(max-width:768px){
    product-card .product-card-image{
        margin-bottom:4vw;
    }
    product-card .product-card-title{
        margin-bottom:1.3333vw;
    }
    product-card .block-product-card__price{
        margin-bottom:4vw;
    }
    product-card .product-card_tag{
        padding:2px 14px; 
    }
    product-card theme-product-form,
    product-card theme-quick-add-modal{
        top: 8px;
        right: 8px;
    }
}

@media (prefers-reduced-motion: reduce) {
    product-card theme-product-form,
    product-card theme-quick-add-modal,
    product-card .product-card__quick-add {
        transition: none;
    }
}

product-card .block-product-card__modal-content {
    width: 80vw;
    max-width: 1200px;
    max-height: 80vh;
    overflow-y: auto;
}
product-card .block-product-card__modal-content .quick-add-hidden {
    display: none;
}
product-card .block-product-card__modal-content theme-product-detail {
    --page-padding: 40px;
    --detail-padding-inline-start: 0px !important;
    --detail-padding-inline-end: 0px !important;
    --detail-padding-block-start: 0px !important;
    --detail-padding-block-end: 0px !important;

    padding: var(--page-padding);
}
product-card .block-product-card__modal-close {
    position: absolute;
    inset-block-start: 10px;
    inset-inline-end: 15px;
    color: #fff;
    background: rgb(0 0 0 / 40%);
}
@media (max-width: 959px) {
    product-card .block-product-card__modal-content {
        width: 100%;
    }
    product-card .block-product-card__modal-content theme-product-detail {
        --page-padding: 20px;
    }
}
