.product .badge-container:has(.badge-inner.on-sale .onsale) {
    top: 10px;
    left: 10px;
    margin: 0;
    pointer-events: none;
}

.product .badge-container .badge:has(.badge-inner.on-sale .onsale) {
    width: auto;
    height: auto;
    margin: 0;
    display: block;
    line-height: 0;
}

.product .badge-container .badge-inner.on-sale:has(.onsale),
.container-image-and-badge > .room78-product-badge {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto;
    height: auto;
    min-height: 32px;
    padding: 4px 10px;
    border: 0;
    border-radius: 4px;
    color: #fff;
    font-family: inherit;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: .015em;
    text-transform: none;
    white-space: nowrap;
}

.product .badge-container .badge-inner.on-sale:has(.onsale) {
    background-color: #c52222;
    font-size: 16px;
    font-variant-numeric: tabular-nums;
    box-shadow: 0 0 0 1px #fff6, 0 1px 4px #0003;
}

.product .badge-container .badge-inner.on-sale .onsale {
    color: inherit;
    font: inherit;
    background: none;
}

.container-image-and-badge {
    position: relative;
}

.container-image-and-badge > .room78-product-badge {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 2;
    background-color: #303036;
    pointer-events: none;
}

.container-image-and-badge > .room78-product-badge--new {
    background-color: #244dcc;
    color: #fff;
    font-size: 15px;
    box-shadow: 0 0 0 1px #fff, 0 2px 5px #0005;
}

.container-image-and-badge > .room78-product-badge--hit {
    background-color: #087a4b;
    font-size: 14px;
    box-shadow: 0 0 0 1px #fff, 0 2px 5px #0005;
}

.product-thumbnails .room78-product-badge {
    display: none;
}

@media (max-width: 549px) {
    .product .badge-container:has(.badge-inner.on-sale .onsale) {
        top: 7px;
        left: 7px;
    }

    .container-image-and-badge > .room78-product-badge {
        top: 7px;
        right: 7px;
    }
}
