.woocommerce ul.products li.product,
.products .product,
.wc-block-grid__product {
    position: relative;
}

.woocommerce ul.products li.product .onsale {
    display: none;
}

.nbpb_badge {
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 20;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 0 14px;
    border-radius: 999px;
    background: #a91536;
    color: #ffffff;
    font-size: 15px;
    font-weight: 800;
    line-height: 1;
    box-shadow: 0 14px 30px rgba(169, 21, 54, 0.22);
    pointer-events: none;
}

.nbpb_price,
.woocommerce ul.products li.product .price .nbpb_price,
.products .product .price .nbpb_price {
    display: flex;
    flex-direction: column;
    align-items: inherit;
    gap: 8px;
}

.nbpb_price_row {
    display: inline-flex;
    align-items: baseline;
    justify-content: inherit;
    gap: 10px;
    flex-wrap: wrap;
}

.nbpb_price del,
.woocommerce ul.products li.product .price .nbpb_price del,
.products .product .price .nbpb_price del {
    color: #9aa1ad !important;
    font-size: 15px;
    font-weight: 500;
    opacity: 1 !important;
    text-decoration-thickness: 1px;
}

.nbpb_price ins,
.woocommerce ul.products li.product .price .nbpb_price ins,
.products .product .price .nbpb_price ins {
    color: #a91536 !important;
    font-size: 24px;
    font-weight: 800;
    text-decoration: none !important;
    background: transparent !important;
}

.nbpb_code_label {
    display: inline-flex;
    width: fit-content;
    padding: 6px 13px;
    border-radius: 999px;
    background: rgba(169, 21, 54, 0.08);
    color: #a91536;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
}

.woocommerce ul.products li.product .price {
    display: block;
}

@media (max-width: 768px) {
    .nbpb_badge {
        top: 10px;
        left: 10px;
        min-height: 30px;
        padding: 0 12px;
        font-size: 13px;
    }

    .nbpb_price ins,
    .woocommerce ul.products li.product .price .nbpb_price ins,
    .products .product .price .nbpb_price ins {
        font-size: 21px;
    }

    .nbpb_code_label {
        font-size: 12px;
        padding: 6px 11px;
    }
}


/* v1.4 layout and image code badge */
.nbpb_code_label {
    display: none !important;
}

.nbpb_code_badge {
    position: absolute;
    left: 12px;
    bottom: 12px;
    z-index: 20;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 0 14px;
    border-radius: 999px;
    background: rgba(255, 245, 247, 0.96);
    color: #a91536;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    box-shadow: 0 12px 26px rgba(17, 24, 39, 0.10);
    pointer-events: none;
    white-space: nowrap;
}

.nbpb_price.nbpb_sale_price ins,
.nbpb_price.nbpb_sale_price ins .woocommerce-Price-amount,
.nbpb_price.nbpb_sale_price ins bdi,
.woocommerce ul.products li.product .price .nbpb_sale_price ins,
.woocommerce ul.products li.product .price .nbpb_sale_price ins .woocommerce-Price-amount,
.products .product .price .nbpb_sale_price ins,
.products .product .price .nbpb_sale_price ins .woocommerce-Price-amount {
    color: #a91536 !important;
    text-decoration: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

.nbpb_price.nbpb_sale_price del,
.nbpb_price.nbpb_sale_price del .woocommerce-Price-amount,
.nbpb_price.nbpb_sale_price del bdi {
    color: #9aa1ad !important;
}

.woocommerce ul.products li.product,
.products .product,
.wc-block-grid__product {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product .added_to_cart,
.products .product .button,
.products .product a.button,
.products .product .added_to_cart,
.wc-block-grid__product .button,
.wc-block-grid__product a.button {
    margin-top: auto;
}

.woocommerce ul.products li.product .price,
.products .product .price,
.wc-block-grid__product .price {
    min-height: 70px;
}

.woocommerce ul.products li.product .price .nbpb_code_price,
.products .product .price .nbpb_code_price,
.wc-block-grid__product .price .nbpb_code_price {
    min-height: 0;
}

@media (max-width: 768px) {
    .nbpb_code_badge {
        left: 10px;
        bottom: 10px;
        min-height: 32px;
        padding: 0 12px;
        font-size: 12px;
    }

    .woocommerce ul.products li.product .price,
    .products .product .price,
    .wc-block-grid__product .price {
        min-height: 64px;
    }
}


/* v1.5 stronger support for native WooCommerce sale prices */
.woocommerce ul.products li.product .price del,
.woocommerce ul.products li.product .price del .woocommerce-Price-amount,
.woocommerce ul.products li.product .price del bdi,
.products .product .price del,
.products .product .price del .woocommerce-Price-amount,
.products .product .price del bdi,
.wc-block-grid__product .price del,
.wc-block-grid__product .price del .woocommerce-Price-amount,
.wc-block-grid__product .price del bdi {
    color: #9aa1ad !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    opacity: 1 !important;
    text-decoration: line-through !important;
    text-decoration-thickness: 1px !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

.woocommerce ul.products li.product .price ins,
.woocommerce ul.products li.product .price ins .woocommerce-Price-amount,
.woocommerce ul.products li.product .price ins bdi,
.products .product .price ins,
.products .product .price ins .woocommerce-Price-amount,
.products .product .price ins bdi,
.wc-block-grid__product .price ins,
.wc-block-grid__product .price ins .woocommerce-Price-amount,
.wc-block-grid__product .price ins bdi,
.woocommerce ul.products li.product .price .nbpb_native_sale_ins,
.products .product .price .nbpb_native_sale_ins {
    color: #a91536 !important;
    font-size: 24px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    background: transparent !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

.woocommerce ul.products li.product .price ins a,
.products .product .price ins a,
.wc-block-grid__product .price ins a {
    color: #a91536 !important;
    text-decoration: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

.woocommerce ul.products li.product .price,
.products .product .price,
.wc-block-grid__product .price {
    display: flex !important;
    align-items: baseline;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}

.woocommerce ul.products li.product .price .nbpb_price,
.products .product .price .nbpb_price,
.wc-block-grid__product .price .nbpb_price {
    display: flex !important;
    width: 100%;
}

.woocommerce ul.products li.product .price .nbpb_price_row,
.products .product .price .nbpb_price_row,
.wc-block-grid__product .price .nbpb_price_row {
    justify-content: center;
    width: 100%;
}

@media (max-width: 768px) {
    .woocommerce ul.products li.product .price ins,
    .woocommerce ul.products li.product .price ins .woocommerce-Price-amount,
    .woocommerce ul.products li.product .price ins bdi,
    .products .product .price ins,
    .products .product .price ins .woocommerce-Price-amount,
    .products .product .price ins bdi,
    .wc-block-grid__product .price ins,
    .wc-block-grid__product .price ins .woocommerce-Price-amount,
    .wc-block-grid__product .price ins bdi {
        font-size: 21px !important;
    }
}


/* v1.6 support for themes that output sale price as a bare amount span, without <ins> */
.woocommerce ul.products li.product .price.nbpb_native_sale_price .nbpb_native_sale_amount,
.woocommerce ul.products li.product .price.nbpb_native_sale_price .nbpb_native_sale_amount .woocommerce-Price-currencySymbol,
.products .product .price.nbpb_native_sale_price .nbpb_native_sale_amount,
.products .product .price.nbpb_native_sale_price .nbpb_native_sale_amount .woocommerce-Price-currencySymbol,
.wc-block-grid__product .price.nbpb_native_sale_price .nbpb_native_sale_amount,
.wc-block-grid__product .price.nbpb_native_sale_price .nbpb_native_sale_amount .woocommerce-Price-currencySymbol,
.woocommerce ul.products li.product .price .nbpb_native_sale_amount,
.products .product .price .nbpb_native_sale_amount,
.wc-block-grid__product .price .nbpb_native_sale_amount {
    color: #a91536 !important;
    font-size: 24px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

.woocommerce ul.products li.product .price.nbpb_native_sale_price .nbpb_native_sale_del,
.woocommerce ul.products li.product .price.nbpb_native_sale_price .nbpb_native_sale_del .woocommerce-Price-amount,
.woocommerce ul.products li.product .price.nbpb_native_sale_price .nbpb_native_sale_del .woocommerce-Price-currencySymbol,
.products .product .price.nbpb_native_sale_price .nbpb_native_sale_del,
.products .product .price.nbpb_native_sale_price .nbpb_native_sale_del .woocommerce-Price-amount,
.products .product .price.nbpb_native_sale_price .nbpb_native_sale_del .woocommerce-Price-currencySymbol,
.wc-block-grid__product .price.nbpb_native_sale_price .nbpb_native_sale_del,
.wc-block-grid__product .price.nbpb_native_sale_price .nbpb_native_sale_del .woocommerce-Price-amount,
.wc-block-grid__product .price.nbpb_native_sale_price .nbpb_native_sale_del .woocommerce-Price-currencySymbol {
    color: #9aa1ad !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    opacity: 1 !important;
    text-decoration: line-through !important;
    text-decoration-thickness: 1px !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

@media (max-width: 768px) {
    .woocommerce ul.products li.product .price.nbpb_native_sale_price .nbpb_native_sale_amount,
    .products .product .price.nbpb_native_sale_price .nbpb_native_sale_amount,
    .wc-block-grid__product .price.nbpb_native_sale_price .nbpb_native_sale_amount {
        font-size: 21px !important;
    }
}


/* v1.7 support for custom NoBlue article.product cards without .price class */
article.product .nbpb_native_sale_price,
article.product.nbpb_native_sale_price {
    display: flex !important;
    align-items: baseline !important;
    justify-content: center !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
    min-height: 70px;
}

article.product .nbpb_native_sale_del,
article.product .nbpb_native_sale_del .woocommerce-Price-amount,
article.product .nbpb_native_sale_del .woocommerce-Price-currencySymbol,
article.product .nbpb_native_sale_price del,
article.product .nbpb_native_sale_price del .woocommerce-Price-amount,
article.product .nbpb_native_sale_price del .woocommerce-Price-currencySymbol {
    color: #9aa1ad !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    opacity: 1 !important;
    text-decoration: line-through !important;
    text-decoration-thickness: 1px !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

article.product .nbpb_native_sale_ins,
article.product .nbpb_native_sale_ins .woocommerce-Price-currencySymbol,
article.product .nbpb_native_sale_ins_wrapper,
article.product .nbpb_native_sale_ins_wrapper .woocommerce-Price-amount,
article.product .nbpb_native_sale_ins_wrapper .woocommerce-Price-currencySymbol {
    color: #a91536 !important;
    font-size: 24px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

article.product .nbpb_native_sale_ins_wrapper {
    text-decoration: none !important;
}

article.product {
    display: flex;
    flex-direction: column;
    height: 100%;
}

article.product a.add_to_cart_button,
article.product .button,
article.product .added_to_cart {
    margin-top: auto !important;
}

@media (max-width: 768px) {
    article.product .nbpb_native_sale_price,
    article.product.nbpb_native_sale_price {
        min-height: 64px;
    }

    article.product .nbpb_native_sale_ins,
    article.product .nbpb_native_sale_ins .woocommerce-Price-currencySymbol,
    article.product .nbpb_native_sale_ins_wrapper,
    article.product .nbpb_native_sale_ins_wrapper .woocommerce-Price-amount,
    article.product .nbpb_native_sale_ins_wrapper .woocommerce-Price-currencySymbol {
        font-size: 21px !important;
    }
}
