.emon-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
}

.emon-card{
    position:relative;
    overflow:hidden;
}

.emon-thumb-link,
.emon-title a,
.emon-button{
    text-decoration:none;
}

.emon-thumb{
    position:relative;
    overflow:hidden;
    display:block;
    background:#f5f5f5;
}

.emon-thumb img{
    width:100%;
    height:100%;
    display:block;
    transition:all .45s ease;
}

.emon-thumb:after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    opacity:0;
    transition:opacity .3s ease;
}

.emon-has-overlay:hover:after{
    opacity:1;
}

.emon-secondary-image{
    position:absolute;
    inset:0;
    opacity:0;
}

.emon-hover-swap:hover .emon-primary-image,
.emon-hover-fade:hover .emon-primary-image,
.emon-hover-slide_up:hover .emon-primary-image,
.emon-hover-blur:hover .emon-primary-image{
    opacity:0;
}

.emon-hover-swap:hover .emon-secondary-image,
.emon-hover-fade:hover .emon-secondary-image,
.emon-hover-blur:hover .emon-secondary-image{
    opacity:1;
}

.emon-hover-slide_up .emon-secondary-image{
    transform:translateY(20px);
}

.emon-hover-slide_up:hover .emon-secondary-image{
    opacity:1;
    transform:translateY(0);
}

.emon-hover-zoom_in:hover .emon-primary-image{
    transform:scale(1.08);
}

.emon-hover-zoom_out .emon-primary-image{
    transform:scale(1.08);
}

.emon-hover-zoom_out:hover .emon-primary-image{
    transform:scale(1);
}

.emon-hover-grayscale .emon-primary-image{
    filter:grayscale(100%);
}

.emon-hover-grayscale:hover .emon-primary-image{
    filter:grayscale(0);
}

.emon-hover-blur:hover .emon-secondary-image{
    filter:blur(0);
}

.emon-hover-blur .emon-secondary-image{
    filter:blur(10px);
}

.emon-content{
    margin-top:14px;
}

.emon-title{
    margin:0;
    font-size:18px;
    line-height:1.4;
}

.emon-price,
.emon-rating{
    margin-top:8px;
}

.emon-price ins{
    text-decoration:none;
}

.emon-rating .star-rating{
    float:none;
    margin:0;
}

.emon-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin-top:12px;
    transition:all .3s ease;
}

.emon-badge{
    position:absolute;
    top:12px;
    left:12px;
    z-index:4;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:6px 10px;
    font-size:12px;
    font-weight:600;
    line-height:1;
    border-radius:999px;
    color:#fff;
}

.emon-badge-sale{
    background:#dc2626;
}

.emon-badge-featured{
    background:#111827;
}

.emon-empty{
    padding:16px;
    background:#f8f8f8;
    border:1px solid #e5e7eb;
}

@media (max-width: 1024px){
    .emon-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media (max-width: 767px){
    .emon-grid{
        grid-template-columns:repeat(1,minmax(0,1fr));
    }
}
