.variations + .speero-var-964{ display:none; }
.speero-coupon-container {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    max-width: 100%;
    margin: 10px auto;
    color: #171c8e;
    font-family: 'brandon-grotesque';
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 29px;
    letter-spacing: 0.7px;
    width: 100%;
}
/* Updated mobile styles to keep image and text side by side */
.speero-coupon-container.speero-var-96RO94 {
    border-radius: 7px;
    background: rgba(254, 221, 76, 0.15);
    padding: 16px 15px;
    justify-content: space-between;
    align-items: center;
    max-width: 430px;
    margin-left: 0;
}

.speero-coupon-input-container {
    flex: 1;
    max-width: 70%; /* Limit width to make room for image */
}

.speero-coupon-image {
    margin-left: 10px;
    display: flex;
    align-items: center;
}

.speero-coupon-image img {
    max-width: 70px;
    height: auto;
}

/*
 * The coupon renders inside a TM-EPO .tm-cell (tm_after_styled_variations hook),
 * where the theme's `.site-content .tm-cell img { width:95px!important; height:95px!important }`
 * would stretch this 62x60 illustration to 70x95. Override with higher specificity
 * to keep the aspect ratio. (On /product/shampoo-conditioner/ RO243 relocates the
 * coupon out of .tm-cell, so it was never affected there.)
 */
.speero-coupon-container.speero-var-96RO94 .speero-coupon-image img {
    width: auto !important;
    height: auto !important;
    max-width: 70px !important;
}

/*
.speero-coupon-container.speero-var-96RO94 {
    border-radius: 7px;
    background: rgba(254, 221, 76, 0.15);
    padding:20px 15px;
}
@media (max-width: 767px) {
    .speero-coupon-container.speero-var-96RO94 {
        border-radius: 7px;
        background: rgba(254, 221, 76, 0.15);
        padding:10px 15px;
    }
}
*/
.speero-coupon-badge {
    position: relative;
    min-width: 100px;
    min-height: 29px;
    padding-left: 12px;
    margin-right: 15px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='99' height='29' viewBox='0 0 99 29' fill='none'%3E%3Cpath d='M0 29V9.22727V0H99L87.4103 14.5L99 29H0Z' fill='%23FEDD4C'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    font-weight: 700;
}
.speero-coupon-input-container label {
    display: flex !important;
    margin-top: 0;
    align-items: center;
    color: #171c8e;
    font-family: 'brandon-grotesque';
    font-size: 16px;
    font-style: normal;
    line-height: 25px;
    letter-spacing: 0.7px;
    font-weight: 700;
    text-transform: inherit !important;
}
.speero-input-box {
    border: 1px solid #171c8e;
    min-width: 16px;
    min-height: 16px;
    margin-right: 10px;
    display: inline-block;
}
/*.speero-coupon-input-container label span:nth-of-type(2), .speero-coupon-input-container label span:last-of-type {
    padding-top: 20px;
  }*/
#speero-coupon:checked + label .speero-input-box {
    background: #171c8e;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='19' viewBox='0 0 19 19' fill='none'%3E%3Cg id='9104218_done_verified_check_complete_accept_icon 1'%3E%3Cg id='_icons'%3E%3Cpath id='Vector' d='M11.8917 8.21538L6.97317 15.1333L4.18858 12.9795C3.98763 12.6923 3.51874 12.6205 3.25081 12.8359C2.98287 13.0513 2.91589 13.5538 3.11684 13.841L6.37032 16.7128C6.50429 16.8564 6.70524 17 6.90619 17C7.10714 17 7.2411 16.9282 7.37507 16.7846L12.8294 9.22051C13.0974 8.93333 13.0304 8.50256 12.7624 8.21538C12.5615 7.92821 12.0926 7.92821 11.8917 8.21538Z' fill='white' stroke='white'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: -1px -5px;
}
#speero-coupon:checked + label {
    font-weight: 700;
}
#speero-coupon {
    display: none;
}
.speero-coupon-container.speero-hidden {
    display: none !important;
}
.speero-var-96RO94 .speero-coupon-input-container label span:last-of-type {
    display: none;
}
.speero-var-192 .speero-coupon-input-container label span:nth-of-type(2) {
    display: none;
}
@media (min-width: 500px) {
    .speero-coupon-input-container label {
        line-height: 22px;
    }
    .speero-coupon-input-container label span:last-of-type {
        padding-top: 0px;
    }
}

@media (min-width: 768px) {
    .product-quantity-subtotal-wrapper {
        width: 190px;
    }
}
.cart-item-id-9676479 .oldprice{
    text-decoration:line-through;
    color: #7D7D7D;
    font-weight: bold!important;
}
.cart-item-id-9676479 .newprice{
    color: #EF4036;
    display:inline-block;
    margin-left:5px;
    font-weight: bold!important;
}
.cart-item-id-9676479.free-gift .cart-item-qty-wrapper{
    display:none;
}


/* Mobile adjustments */
@media (max-width: 767px) {
    .speero-coupon-container.speero-var-96RO94 {
        padding: 10px 10px;
        flex-wrap: nowrap;
    }

    .speero-coupon-badge {
        margin-right: 10px;
    }

    .speero-coupon-input-container {
        max-width: 55%; /* Even more limited on mobile */
    }

    .speero-coupon-input-container label {
        font-size: 14px; /* Smaller font size */
        line-height: 18px;
    }

    .speero-coupon-image {
        margin-left: auto;
        margin-top: 0;
    }

    .speero-coupon-image img {
        max-width: 50px; /* Smaller image on mobile */
    }

    .speero-coupon-container.speero-var-96RO94 .speero-coupon-image img {
        max-width: 50px !important; /* keep the mobile cap over the .tm-cell img override */
    }

    /* Ensure text doesn't wrap awkwardly */
    .speero-input-box {
        /*min-width: 14px;
        min-height: 14px;*/
        margin-right: 5px;
    }
}

/* Extra small devices */
@media (max-width: 480px) {
    .speero-coupon-input-container {
        max-width: 51%;
    }
}