/* Paste RO56 Experiment CSS (Styles) here */
.cart_right_wrapper.RO56:before,
.cart_right_wrapper.RO56:after {
    display: none;
}

.RO56-no-show {
    display: none !important;
}

.RO56-free-shipping {
    display: flex;
    padding: 7px 20px;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 13px;
    border: 1px solid #171c8e;
    margin-bottom: 10px;
}
.RO56-free-shipping .ico svg {
    position: relative;
    top: 3px;
}
.RO56-free-shipping .text {
    color: #171c8e;
    text-align: center;
    font-family: brandon-grotesque, sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}
.woocommerce .RO56 .cart-collaterals,
.woocommerce-page .RO56 .cart-collaterals {
    padding: 25px !important;
}
.woocommerce-page .RO56 table.cart-totals-native tr > th,
.is-customer .RO56 .cart-totals-wrapper tr.shipping.revive-eo-shipping th {
    color: #000 !important;
    text-transform: none !important;
    font-weight: 400 !important;
    font-size: 16px !important;
}
.woocommerce-page .RO56 table.cart-totals-native tr.order-total > td {
    border-bottom: none !important;
    padding-top: 15px !important;
    padding-bottom: 15px !important;
    font-size: 16px !important;
}
.woocommerce-page .RO56 table.cart-totals-native tr.order-total > th {
    color: #000 !important;
    font-weight: 450 !important;
    padding-top: 15px !important;
    padding-bottom: 15px !important;
    border-bottom: none !important;
    font-size: 16px !important;
}
.is-customer .cart-totals-wrapper tr.order-total td span,
.is-customer .cart-totals-wrapper tr.order-total td span {
    color: #000 !important;
    font-size: 16px !important;
    text-transform: none !important;
    font-weight: 450 !important;
}
tr.shipping.revive-eo-shipping > td {
    padding-bottom: 15px !important;
}
/*.woocommerce .cart-collaterals .cart_totals table th, .woocommerce-page .cart-collaterals .cart_totals table th {
    width: 130px !important;
}
@media (min-width: 420px) {
    .woocommerce .cart-collaterals .cart_totals table th, .woocommerce-page .cart-collaterals .cart_totals table th {
        width: 63% !important;
    }
}
@media (min-width: 768px) {
    .woocommerce .cart-collaterals .cart_totals table th, .woocommerce-page .cart-collaterals .cart_totals table th {
        width: 150px !important;
    }
}
@media (min-width: 1400px) {
    .woocommerce .cart-collaterals .cart_totals table th, .woocommerce-page .cart-collaterals .cart_totals table th {
        width: 65% !important;
    }
}
*/
body.is-customer.RO56 label.shipping-method-title {
    font-size: 16px !important;
    font-weight: 400 !important;
    color: #000 !important;
}

.woocommerce-page .RO56 table.cart-totals-native tr > td,
.woocommerce-page .RO56 table.cart-totals-native tr.cart-subtotal > td,
.is-customer .RO56 .cart-totals-wrapper tr.shipping.revive-eo-shipping td,
.is-customer
.cart-totals-wrapper
.cart-subtotal
span.woocommerce-Price-amount.amount,
.is-customer .cart-totals-wrapper tr.cart-subtotal span {
    color: #000 !important;
    font-size: 16px !important;
    text-transform: none !important;
    font-weight: 400 !important;
    text-align: right !important;
}
.is-customer .RO56 .cart-totals-wrapper tr.shipping.revive-eo-shipping td {
    text-align: right !important;
}
.is-customer
.RO56
.cart-totals-wrapper
tr.shipping.revive-eo-shipping.free_shipping
td {
    text-align: right !important;
}
.woocommerce-page .RO56 h2.RO56--sidebar-title {
    color: #171c8e !important;
    text-align: left !important;
    font-family: brandon-grotesque, sans-serif !important;
    border-bottom: none !important;
    font-size: 18px !important;
    font-style: normal !important;
    font-weight: 450 !important;
    line-height: normal !important;
    padding-bottom: 0 !important;
    margin-bottom: 30px !important;
}
.woocommerce-page .RO56 h2.RO56--sidebar-title svg {
    position: relative;
    top: 5px;
}
.RO56--cart-toggle {
    padding: 15px;
}
.is-customer .cart-totals-wrapper span.RO56--coupon--sidebar svg {
    position: relative;
    top: 3px;
    margin-right: 7px;
}
.is-customer .cart-totals-wrapper span.RO56--coupon--sidebar {
    border-radius: 4px;
    background: #ededed;
    padding: 4px 7px;
    align-items: center;
    color: #4f4f4f !important;
    font-size: 14px !important;
    font-style: normal !important;
    font-weight: 450 !important;
    line-height: 25px; /* 178.571% */
    text-transform: uppercase !important;
    margin-left: 20px;
}

/* v2.7: When RO84 v2 is active the theme rewrites the coupon label to a
   colon-less "Discount <span.RO84--coupon-label>…CODE</span>" string, so the
   RO56 discount-row restyler (which splits on ":") bails and this theme span is
   left in place. Its gray-pill styling lives only in checkout.css (checkout
   only), so mirror it here so the cart coupon badge matches production — where
   Convert injects the RO84 CSS globally. */
body.RO56 .cart-totals-wrapper tr.cart-discount .RO84--coupon-label {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #ededed;
    border-radius: 4px;
    padding: 3px 7px;
    font-weight: 700;
    margin-left: 10px;
    font-size: 14px;
    color: #4f4f4f;
    position: relative;
    top: 3px;
}

.cart .shop_table > tbody > tr:first-child > td {
    border-top: none !important;
}

.cart .shop_table > tbody > tr:nth-child(n + 2):not(tr:last-child) td {
    padding: 25px 0 !important;
}

.RO56--after-table {
    display: flex;
    justify-content: space-between;
    margin-top: 15px;
    margin-bottom: 20px;
}
.RO56--after-table a {
    border-radius: 100px;
    border: 1px solid #fff;
    background: #fff;
    padding: 5px 0 7px 20px;
    font-family: brandon-grotesque, sans-serif !important;
    color: #171c8e !important;
    font-size: 16px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: normal !important;
    text-decoration: none !important;
    text-wrap: nowrap !important;
}
.RO56--after-table a.continue-shopping {
    padding: 5px 20px 7px 20px;
    border: 1px solid #00237e;
}
.RO56--after-table a.continue-shopping > svg {
    position: relative;
    top: 3px;
    margin-right: 5px;
}
body.RO56 header.entry-header {
    background-color: #f7f7f7 !important;
    padding: 25px 0 20px 0;
}
body.RO56 header.entry-header h1 {
    color: #00237e !important;
    margin-bottom: 0 !important;
}
.woocommerce
table.cart
tr.RO56--cart-item.free-gift.cart-item-has-variations
.RO56--td--bottom {
    margin-left: 0;
    margin-top: -70px;
}
.woocommerce
table.cart
tr.RO56--cart-item.cart-item-id-9676479
.RO56--td--bottom {
    margin-top: -70px;
    /* margin-left: -20px !important; removed 2026-07-09: pulled the free-gift scent
       dropdown ~20px left into the product thumbnail below 768px. Row falls back to the
       generic .free-gift rule (margin-left:0). Desktop +20px override (@media >=768px) unaffected. */
}

.woocommerce table.cart tr.RO56--cart-item .product-name,
.woocommerce #content table.cart tr.RO56--cart-item .product-name {
    width: 260px !important;
}
.cart .shop_table.cart tr td.RO56--td--quantity {
    width: 110px;
    text-align: center;
    vertical-align: middle;
}
tr.upsell_atc_product.RO56--cart-item span.cart-item-qty-label {
    display: none !important;
}
.RO56--td--quantity .cart-item-qty-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
}
.woocommerce-cart.woocommerce table.cart tr.RO56--cart-item .product-subtotal,
.woocommerce-cart.woocommerce
#content
table.cart
tr.RO56--cart-item
.product-subtotal,
.woocommerce-cart.woocommerce-page
table.cart
tr.RO56--cart-item
.product-subtotal,
.woocommerce-cart.woocommerce-page
#content
table.cart
tr.RO56--cart-item
.product-subtotal {
    margin: 0 !important;
}
tr.RO56--cart-item .cart-item-custom-title,
tr.RO56--cart-item .RO56--td--title > strong {
    max-width: 100% !important;
    color: #171c8e !important;
    font-size: 18px !important;
    font-style: normal !important;
    font-weight: 450 !important;
    line-height: normal !important;
}
tr.RO56--cart-item .product-name,
tr.RO56--cart-item .product-remove {
    display: none;
}

.RO56--td--content {
    display: flex;
    flex-direction: column;
    row-gap: 20px;
    width: 100%;
    box-sizing: border-box;
}
/* BUNDLE OPTIMIZATION: Tighten gaps ONLY for bundle items */
.RO56--td--content.is-bundle,
.RO56--cart-item[data-is-bundle="true"] .RO56--td--content {
    row-gap: 5px;
}
.RO56--td--content:has(.upsell-atc-banner) {
    row-gap: 0;
}

/* rows */
.RO56--td--top,
.RO56--td--middle,
.RO56--td--bottom {
    display: flex;
    align-items: center;
    width: 100%;
}
.is-bundle .RO56--td--middle,
.is-bundle .RO56--td--bottom,
.RO56--cart-item[data-is-bundle="true"] .RO56--td--middle,
.RO56--cart-item[data-is-bundle="true"] .RO56--td--bottom {
    margin-top: 0 !important;
}

/* TOP: title left, remove right */
.RO56--td--top {
    justify-content: space-between;
}

.RO56--td--title {
    flex: 1;
}

.RO56--td--remove {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

/* MIDDLE: badge left, quantity center, price right */

.RO56--td--middle > div {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
}

.RO56--td--badge,
.RO56--td--quantity,
.RO56--td--price {
    flex: 1;
    display: flex;
    align-items: center;
}

.RO56--td--badge {
    margin-right: auto;
    justify-content: flex-start;
}
.RO56--td--badge .sp-badge {
    margin-top: 0 !important;
}

.RO56--td--quantity {
    justify-content: center;
}

.RO56--td--price {
    justify-content: flex-end;
    text-align: right;
    white-space: nowrap;
}

/* BOTTOM: full-width row for any extras */
.RO56--td--bottom {
    justify-content: flex-start;
    margin-bottom: 20px;
}

/* Hide bottom section when S&S wrapper is present but has no frequency options (e.g. Vintage Scents) */
/*.RO56--td--bottom:has(.revive-eo-wrapper-cart-subscription):not(:has(.revive-eo-field-subscribe-selected-frequency)) {*/
/*    display: none !important;*/
/*    margin-bottom: 0 !important;*/
/*}*/
.RO56--td--bottom
> .revive-eo-wrapper-cart-subscription:not(
        :has(.revive-eo-field-subscribe-selected-frequency)
    ) {
    display: none !important;
}

.free-price-wrapper {
    flex-direction: column !important;
    gap: 0 !important;
}
.RO56--td--remove .btn-remove-icon > i {
    visibility: hidden;
}
.RO56--td--remove .btn-remove-icon {
    display: block;
    width: 20px;
    height: 20px;
    background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIiBmaWxsPSJub25lIj4KICA8cGF0aCBkPSJNOC4zMzMyNSAxMFYxNC4xNjY3IiBzdHJva2U9IiM3RDdEN0QiIHN0cm9rZS13aWR0aD0iMS42NjY2NyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CiAgPHBhdGggZD0iTTExLjY2NjcgMTBWMTQuMTY2NyIgc3Ryb2tlPSIjN0Q3RDdEIiBzdHJva2Utd2lkdGg9IjEuNjY2NjciIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgogIDxwYXRoIGQ9Ik0zLjMzMzI1IDUuODMzMzRIMTYuNjY2NiIgc3Ryb2tlPSIjN0Q3RDdEIiBzdHJva2Utd2lkdGg9IjEuNjY2NjciIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgogIDxwYXRoIGQ9Ik01IDguMzMzMzRWMTVDNSAxNi4zODA4IDYuMTE5MjkgMTcuNSA3LjUgMTcuNUgxMi41QzEzLjg4MDcgMTcuNSAxNSAxNi4zODA4IDE1IDE1VjguMzMzMzQiIHN0cm9rZT0iIzdEN0Q3RCIgc3Ryb2tlLXdpZHRoPSIxLjY2NjY3IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KICA8cGF0aCBkPSJNNy41IDQuMTY2NjdDNy41IDMuMjQ2MTkgOC4yNDYxOSAyLjUgOS4xNjY2NyAyLjVIMTAuODMzM0MxMS43NTM4IDIuNSAxMi41IDMuMjQ2MTkgMTIuNSA0LjE2NjY3VjUuODMzMzNINy41VjQuMTY2NjdaIiBzdHJva2U9IiM3RDdEN0QiIHN0cm9rZS13aWR0aD0iMS42NjY2NyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPg==);
}

/* Subscription element*/
tr.cart_item.cart-item-subscribe-and-save-unchecked
.RO56--td--bottom
.revive-eo.revive-eo-wrapper.revive-eo-wrapper-cart-subscription {
    border: none !important;
}
tr.cart_item
.RO56--td--bottom
.revive-eo.revive-eo-wrapper.revive-eo-wrapper-cart-subscription {
    width: 340px !important;
    padding: 0 12px 12px 12px;
}
.RO56--td--bottom
.revive-eo.revive-eo-wrapper.revive-eo-wrapper-cart-subscription,
.cart
.free-gift.cart-item-variation
.RO56--td--bottom
.nav-edit-revive-eo-shop-actions-wrapper,
.cart
.free-gift.cart-item-has-variations
.RO56--td--bottom
.nav-edit-revive-eo-shop-actions-wrapper {
    position: relative !important;
    top: auto !important;
    left: auto !important;
}
@media (min-width: 768px) {
    .free-gift.cart-item-has-variations
    .revive-eo-submenu-wrapper.revive-eo-submenu-wrapper-opened {
        margin-left: 0 !important;
    }
    .woocommerce
    table.cart
    tr.RO56--cart-item.cart-item-id-9676479
    .revive-eo-submenu-wrapper.revive-eo-submenu-wrapper-opened {
        margin-left: 20px !important;
    }
    .cart.RO56 .free-gift.cart-item-variation .nav-product-select-button {
        margin-left: 20px !important;
    }
    .cart.RO56 tr.free-gift.dropdown-row-opened {
        background-color: #fff !important;
    }
}
.RO56--td--bottom
.revive-eo.revive-eo-wrapper.revive-eo-wrapper-cart-subscription
> div:not(.RO56--sub-frequency) {
    border: none !important;
}
.RO56--td--bottom
.revive-eo.revive-eo-wrapper.revive-eo-wrapper-cart-subscription
> div.revive-eo-field-subscribe-and-save {
    margin-left: -15px !important;
}
.RO56--td--bottom
.revive-eo.revive-eo-wrapper.revive-eo-wrapper-cart-subscription
> div.revive-eo-field-subscribe-and-save
.subscribe-info {
    display: none !important;
}
tr.cart_item
.RO56--td--bottom
.revive-eo.revive-eo-wrapper.revive-eo-wrapper-cart-subscription.unchecked {
    padding-bottom: 0 !important;
}
.RO56--td--bottom
.revive-eo.revive-eo-wrapper.revive-eo-wrapper-cart-subscription {
    /*:not(.unchecked)*/
    border-radius: 5px !important;
    border: 2px solid #d2d4d6 !important;
    background: #fffaf7 !important;
}
tr.cart_item.cart-item-subscribe-and-save-unchecked
.RO56--td--bottom
.revive-eo.revive-eo-wrapper.revive-eo-wrapper-cart-subscription.unchecked {
    border: 2px solid #d2d4d6 !important;
}
.RO56--td--bottom
.revive-eo.revive-eo-field-wrapper.revive-eo-field-subscribe-and-save:before,
.woocommerce-cart-gray
tr.cart_item.cart-item-subscribe-and-save-checked
.RO56--td--bottom
.revive-eo-field-wrapper.revive-eo-field-subscribe-and-save:before {
    border-color: #000 !important;
    box-shadow: none !important;
    background-color: #fff !important;
}
.woocommerce-cart-gray
tr.cart_item.cart-item-subscribe-and-save-checked
.RO56--td--bottom
.revive-eo-field-wrapper.revive-eo-field-subscribe-and-save
> span,
tr.cart_item.cart-item-subscribe-and-save-unchecked
.revive-eo.revive-eo-wrapper.revive-eo-wrapper-cart-subscription
.revive-eo.revive-eo-field-wrapper.revive-eo-field-subscribe-and-save
span.revive-eo.revive-eo-field {
    border-bottom: none !important;
}
.RO56--td--bottom
.revive-eo.revive-eo-wrapper.revive-eo-wrapper-cart-subscription.checked
.revive-eo.revive-eo-field-wrapper.revive-eo-field-subscribe-and-save:after {
    /*display:none!important;*/
    background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMCIgdmlld0JveD0iMCAwIDEwIDEwIiBmaWxsPSJub25lIj4KICA8cGF0aCBkPSJNOS4yMDg5MSAwLjE5NDMxMkM4LjQ2NTA3IC0wLjIxOTQ4MiA3LjUyODE2IDAuMDQ5NzE0NyA3LjExNjYzIDAuNzkxOTI5TDQuMjYwNTIgNS45MzEyOEwyLjYyNTkyIDQuMjk2ODdDMi4wMjUxNiAzLjY5NjE4IDEuMDUxMzMgMy42OTYxOCAwLjQ1MDU3MSA0LjI5Njg3Qy0wLjE1MDE5IDQuODk3NTcgLTAuMTUwMTkgNS44NzEyOSAwLjQ1MDU3MSA2LjQ3MTk4TDMuNTI3NDUgOS41NDg1MkMzLjgxODIyIDkuODQwMDIgNC4yMTA1MiAxMCA0LjYxNTEzIDEwQzQuNjg1OSAxMCA0Ljc1NzQzIDkuOTk1MzkgNC44MjgyIDkuOTg0NjJDNS4zMDU4OSA5LjkxNzcgNS43MjUxMSA5LjYzMDgyIDUuOTU5NzIgOS4yMDg1Nkw5LjgwNTgyIDIuMjg2MzZDMTAuMjE4OSAxLjU0MzM3IDkuOTUxMjEgMC42MDczMzcgOS4yMDg5MSAwLjE5NDMxMloiIGZpbGw9ImJsYWNrIi8+Cjwvc3ZnPg==) !important;
    height: 10px !important;
    left: 19px !important;
}

.woocommerce-cart-gray
.RO56--td--bottom
.revive-eo-wrapper-cart-subscription.unchecked
span.revive-eo.revive-eo-field {
    color: #00237e !important;
    font-size: 16px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: normal !important;
}
.woocommerce-cart-gray
.RO56--td--bottom
.revive-eo-wrapper-cart-subscription
.revive-eo-field-subscribe-and-save
span.revive-eo.revive-eo-field {
    color: #00237e !important;
    font-size: 14px !important;
    font-style: normal !important;
    font-weight: 450 !important;
    line-height: normal !important;
    border-bottom: 1px solid #d8d8d8 !important;
}

.RO56--td dl.variation {
    display: none;
}

/* coupon box*/
.coupon_code_wrapper.RO56--coupon {
    max-width: 550px !important;
    border-color: #7d7d7d !important;
    border-width: 1px !important;
    background: #fff;
    padding: 16px 24px;
}
.coupon_code_wrapper.RO56--coupon > .RO56--coupon--head > h2 svg {
    position: relative;
    top: 2px;
    margin-right: 7px;
}
.coupon_code_wrapper.RO56--coupon > .RO56--coupon--head > h2 {
    color: #000 !important;
    text-align: left;
    font-family: brandon-grotesque, sans-serif !important;
    font-size: 16px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: normal !important;
    margin: 0 0 10px 0;
    text-transform: none !important;
}

.coupon_code_wrapper.RO56--coupon .revive_apply_coupon,
.coupon_code_wrapper_inner > input.revive_apply_coupon {
    width: 160px !important;
    min-width: 160px !important;
}
.coupon_code_wrapper_inner > input.input-text {
    width: 330px !important;
    min-width: 330px !important;
    font-family: brandon-grotesque, sans-serif !important;
    border: 1px solid #b4b4b4;
    background: #fff;
    color: #7d7d7d;
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}
.RO56--coupon .add-coupon-cart-wrapper {
    margin-bottom: 0;
}
.RO56--coupon .add-coupon-cart-wrapper .add-coupon-cart-message {
    color: #7d7d7d !important;
    font-family: brandon-grotesque, sans-serif !important;
    font-size: 14px !important;
    font-style: italic !important;
    font-weight: 400 !important;
    line-height: normal !important;
}

/* Container: label left, dropdown right */
.RO56--sub-frequency {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

/* Label text */
.RO56--sub-label {
    color: #505050;
    font-family: brandon-grotesque, sans-serif !important;
    font-size: 16px;
    font-style: normal;
    font-weight: 450;
    line-height: 18px; /* 112.5% */
    white-space: nowrap;
}

/* Dropdown wrapper */
.RO56--dropdown {
    position: relative;
    flex: 0 0 auto;
    width: 192px;
    height: 38px;
}

/* Visible "select" */
.RO56--dropdown-toggle {
    position: relative;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 40px;
    padding: 4px 20px 4px 28px; /* leave room for ::before/::after icons */
    border-radius: 4px;
    border: 2px solid #d6d6d6;
    background-color: #ffffff;
    cursor: pointer;
    font: inherit;
    text-align: left;
    text-transform: none !important;
    font-family: brandon-grotesque, sans-serif !important;
    font-size: 14px !important;
    color: #00438a !important;
}
.RO56--dropdown-toggle:hover,
.RO56--dropdown-toggle:focus,
.RO56--dropdown-toggle:active {
    background-color: #fff !important;
}
/* Selected text inside */
.RO56--dropdown-selected {
    color: #00438a; /* match your blue; tweak as needed */
    font-weight: 600;
    white-space: nowrap;
}

/* Left icon (e.g., refresh / cycle) */
.RO56--dropdown-toggle::before {
    content: "";
    position: absolute;
    left: 5px;
    top: 50%;
    transform: translateY(-50%);
    width: 14px;
    height: 14px;
    background-repeat: no-repeat;

    /*background-size: contain;*/
    /* replace with your real icon */
    background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c29kaXBvZGk9Imh0dHA6Ly9zb2RpcG9kaS5zb3VyY2Vmb3JnZS5uZXQvRFREL3NvZGlwb2RpLTAuZHRkIgogICB4bWxuczppbmtzY2FwZT0iaHR0cDovL3d3dy5pbmtzY2FwZS5vcmcvbmFtZXNwYWNlcy9pbmtzY2FwZSIKICAgdmlld0JveD0iMCAwIDE1IDE1IgogICB2ZXJzaW9uPSIxLjEiCiAgIGlkPSJzdmc0IgogICBzb2RpcG9kaTpkb2NuYW1lPSJpbWFnZS1jdXJ2ZWQtZ3JheS5zdmciCiAgIGlua3NjYXBlOnZlcnNpb249IjAuOTIuNSAoMjA2MGVjMWY5ZiwgMjAyMC0wNC0wOCkiPgogIDxtZXRhZGF0YQogICAgIGlkPSJtZXRhZGF0YTEwIj4KICAgIDxyZGY6UkRGPgogICAgICA8Y2M6V29yawogICAgICAgICByZGY6YWJvdXQ9IiI+CiAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9zdmcreG1sPC9kYzpmb3JtYXQ+CiAgICAgICAgPGRjOnR5cGUKICAgICAgICAgICByZGY6cmVzb3VyY2U9Imh0dHA6Ly9wdXJsLm9yZy9kYy9kY21pdHlwZS9TdGlsbEltYWdlIiAvPgogICAgICAgIDxkYzp0aXRsZT48L2RjOnRpdGxlPgogICAgICA8L2NjOldvcms+CiAgICA8L3JkZjpSREY+CiAgPC9tZXRhZGF0YT4KICA8ZGVmcwogICAgIGlkPSJkZWZzOCIgLz4KICA8c29kaXBvZGk6bmFtZWR2aWV3CiAgICAgcGFnZWNvbG9yPSIjZmZmZmZmIgogICAgIGJvcmRlcmNvbG9yPSIjNjY2NjY2IgogICAgIGJvcmRlcm9wYWNpdHk9IjEiCiAgICAgb2JqZWN0dG9sZXJhbmNlPSIxMCIKICAgICBncmlkdG9sZXJhbmNlPSIxMCIKICAgICBndWlkZXRvbGVyYW5jZT0iMTAiCiAgICAgaW5rc2NhcGU6cGFnZW9wYWNpdHk9IjAiCiAgICAgaW5rc2NhcGU6cGFnZXNoYWRvdz0iMiIKICAgICBpbmtzY2FwZTp3aW5kb3ctd2lkdGg9IjE1MTAiCiAgICAgaW5rc2NhcGU6d2luZG93LWhlaWdodD0iMTA4NyIKICAgICBpZD0ibmFtZWR2aWV3NiIKICAgICBzaG93Z3JpZD0iZmFsc2UiCiAgICAgaW5rc2NhcGU6em9vbT0iNDQuNTAwNTg3IgogICAgIGlua3NjYXBlOmN4PSI4Ljk4MTEyMjUiCiAgICAgaW5rc2NhcGU6Y3k9IjkuMjE1MDk5NyIKICAgICBpbmtzY2FwZTp3aW5kb3cteD0iMjM1MiIKICAgICBpbmtzY2FwZTp3aW5kb3cteT0iMTM1IgogICAgIGlua3NjYXBlOndpbmRvdy1tYXhpbWl6ZWQ9IjAiCiAgICAgaW5rc2NhcGU6Y3VycmVudC1sYXllcj0ic3ZnNCIgLz4KICA8cGF0aAogICAgIGQ9Ik0xNC45IDIuOGMtLjEtLjEtLjItLjEtLjQgMGwtMS41LjdDMTEuNyAxLjMgOS41IDAgNyAwIDMuMSAwIDAgMy40IDAgNy41UzMuMiAxNSA3IDE1YzIuMiAwIDQuMy0xLjEgNS42LTIuOS40LS41LjMtMS4yLS4yLTEuNi0uNS0uNC0xLjItLjMtMS41LjItLjkgMS4zLTIuMyAyLTMuOSAyLTIuNyAwLTQuOS0yLjMtNC45LTUuMlM0LjMgMi4zIDcgMi4zYzEuNiAwIDMuMS44IDQgMi4ybC0xLjUuN2MtLjIuMS0uMy4yLS4zLjMgMCAuMS4xLjIuMy4zbDQuNiAyLjVoLjNjLjEgMCAuMi0uMS4yLS4yTDE1IDNzMC0uMS0uMS0uMnoiCiAgICAgZmlsbD0iIzAwMjM3ZSIKICAgICBpZD0icGF0aDIiCiAgICAgc3R5bGU9ImZpbGw6IzdkN2Q3ZCIKICAgICBpbmtzY2FwZTpleHBvcnQteGRwaT0iOTYiCiAgICAgaW5rc2NhcGU6ZXhwb3J0LXlkcGk9Ijk2IiAvPgo8L3N2Zz4K) !important;
    background-position: calc(100% - 15px) 50%;
}

/* Right icon (chevron / arrows) */
.RO56--dropdown-toggle::after {
    content: "";
    position: absolute;
    right: 5px;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;
    height: 12px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    /* replace with your real icon */
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNiIgaGVpZ2h0PSIxMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0tNy01aDIwdjIwSC03eiIvPjxwYXRoIGQ9Ik02IDNIMGwzLTMgMyAzem0tLjEgNEwzIDkuOS4xIDdoNS44eiIgZmlsbD0iIzlDQTBBNiIvPjwvZz48L3N2Zz4=");
}
.cart
.free-gift.cart-item-variation
.RO56--td--bottom
.nav-edit-revive-eo-shop-actions-wrapper {
    z-index: 99 !important;
}
/* Menu panel */
.RO56--dropdown-menu {
    position: absolute;
    top: calc(100% + 2px);
    left: 0;
    right: 0;
    z-index: 8888;
    border-radius: 0px;
    border: 1px solid #d6d6d6;
    background-color: #ffffff;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
    padding: 4px 0;
}

/* Each option */
.RO56--dropdown-option {
    width: 100%;
    padding: 8px 12px;
    background: transparent;
    border: 0;
    text-align: left;
    cursor: pointer;
    text-transform: none !important;
    font-family: brandon-grotesque, sans-serif !important;
    font-size: 14px !important;
    color: #000 !important;
    margin-bottom: 0 !important;
}

.RO56--dropdown-option:hover {
    background-color: #f5f5f5;
}

.RO56--dropdown-option.is-selected {
    background-color: #eef5ff;
    color: #00438a;
    font-weight: 600;
}

/* Open state (optional visual tweak) */
.RO56--dropdown.RO56--dropdown-open .RO56--dropdown-toggle {
    border-color: #b5b5b5;
}

.cart-bundle-title {
    /*display:none!important;*/
}

/* The pill container (button + input + button) */
.RO56--td--quantity .product-item-detail-item--quantity {
    display: inline-flex;
    align-items: stretch;
    justify-content: center;
    box-sizing: border-box;
    height: 32px;
    border-radius: 999px;
    overflow: hidden;
    border: 1px solid #bfbfbf;
    background-color: #f2f2f2;
    font-size: 14px;
}

/* Buttons (- / +) */
.RO56--td--quantity .btn-quantity {
    all: unset; /* reset button styles */
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    padding: 0;
    cursor: pointer;
    user-select: none;
}

/* Icons inside buttons */
.RO56--td--quantity .btn-quantity-icon {
    font-size: 16px;
    line-height: 1;
}

/* Middle input section */
.RO56--td--quantity .item-quantity {
    box-sizing: border-box;
    width: 40px;
    border: 0;
    margin: 0;
    padding: 0;
    text-align: center;
    font-size: 16px;
    background-color: #ffffff;
    /* vertical separators between center and sides */
    border-left: 1px solid #bfbfbf;
    border-right: 1px solid #bfbfbf;
}

/* Focus state for accessibility */
.RO56--td--quantity .item-quantity:focus {
    outline: none;
}

/* Optional hover states */
.RO56--td--quantity .btn-quantity:hover:not(.is-disabled) {
    background-color: #e6e6e6;
}

/* Disabled minus button */
.RO56--td--quantity .btn-quantity.is-disabled {
    opacity: 0.4;
    cursor: default;
}

/* Just in case: keep the label hidden */
.RO56--td--quantity .cart-item-qty-label {
    display: none !important;
}

.RO56--subscribe--item--mobile {
    display: none;
}
.RO56--td--middle2-mobile {
    display: none;
}

@media (min-width: 767px) {
    .cart_left_wrapper .RO56-free-shipping {
        display: none;
    }
}
.free-gift
.revive-eo-submenu-wrapper-opened
.nav-choose-product-.dropdown-opened {
    position: absolute !important;
}
.free-gift .cart-item-qty-wrapper {
    display: none !important;
}
tr.shipping.revive-eo-shipping td .RO56-ship-option input[type="radio"] {
    position: relative;
    top: -4px;
}
.RO56--coupon-right {
    display: flex;
    flex-direction: row;
    gap: 8px;
}
@media (max-width: 768px) {
    .free-gift
    .revive-eo-submenu-wrapper-opened
    .nav-choose-product-.dropdown-opened {
        max-width: 190px;
    }
    .woocommerce .RO56 .cart-collaterals,
    .woocommerce-page .RO56 .cart-collaterals {
        padding: 15px 10px !important;
    }
    .btn-wrap {
        /*display:none;*/
        padding: 0 10px;
    }
    .RO56--after-table {
        display: none;
    }
    #primary .row {
        padding: 0 5px;
    }
    .column,
    .columns {
        padding-left: 5px !important;
        padding-right: 5px !important;
    }
    .RO56--subscribe--item--mobile {
        display: table-row;
    }
    table.RO56--cart-table
    tr.cart_item.cart-item-subscribe-and-save-checked:not(
            .free-gift
        ).sp-badge-parent-row,
    table.RO56--cart-table
    tr.cart_item.cart-item-subscribe-and-save-unchecked:not(
            .free-gift
        ).sp-badge-parent-row,
    table.RO56--cart-table
    tr.cart_item.cart-item-subscribe-and-save-unchecked:not(
            .free-gift
        ).sp-badge-parent-row {
        height: auto !important;
        padding-bottom: 15px;
    }
    .cart .shop_table.cart tr.free-gift.cart-item-variation td.RO56--td {
        width: 100%;
    }
    .woocommerce-page #content table.cart tr.RO56--cart-item .product-name,
    .woocommerce-page #content table.cart tr.RO56--cart-item .product-remove {
        display: none !important;
    }
    .RO56--td--content {
        display: flex;
        flex-direction: column;
        row-gap: 10px;
        width: 100%;
    }
    .RO56--td--content:has(.upsell-atc-banner) {
        row-gap: 0;
    }
    /* Add-on rows have no quantity control, so reclaim that slot rather than only
       hiding its contents: the badge, the empty quantity slot and the price came to
       265px in a 245px row, which wrapped the badge onto its own line. */
    tr.cart_item.upsell_atc_product .RO56--td--quantity {
        display: none;
    }
    tr.cart_item.upsell_atc_product .RO56--td--middle > div.RO56--td--badge {
        display: flex;
        flex-basis: auto;
        margin-bottom: 0;
    }
    tr.cart_item[data-is-sale] .upsell-atc-banner {
        position: static;
        top: auto;
    }

    .RO56--td--top,
    .RO56--td--middle,
    .RO56--td--bottom {
        display: flex;
        width: 100%;
    }

    /* TOP: title + remove (already fine) */
    .RO56--td--top {
        justify-content: space-between;
        align-items: flex-start;
    }

    .RO56--td--middle {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        row-gap: 12px;
    }

    /* reset the desktop flex:1 */
    .RO56--td--badge,
    .RO56--td--quantity,
    .RO56--td--price {
        flex: 0 0 auto;
    }

    .RO56--td--badge {
        flex-basis: 100%; /* full-width line */
        justify-content: flex-start;
        margin-bottom: 6px;
    }

    .cart-item-qty-wrapper {
        margin-right: 0;
    }
    .RO56--td--price {
        margin-left: auto; /* pushes price to the right */
        text-align: right;
        white-space: nowrap;
    }
    /* BOTTOM: subscribe & save etc. stacked under */
    .RO56--td--bottom {
        flex-direction: column;
        align-items: flex-start;
        row-gap: 6px;
        margin-bottom: 16px;
        /*display:none;*/
    }
    tr.cart_item
    .RO56--td--bottom
    .revive-eo.revive-eo-wrapper.revive-eo-wrapper-cart-subscription {
        width: auto !important;
        max-width: 100% !important;
    }
    .woocommerce-page tr.cart_item .revive-eo.revive-eo-wrapper {
        left: auto !important;
    }
    .woocommerce-page #content table.cart .product-quantity-subtotal-wrapper {
        display: none !important;
    }

    /* Subscription element*/
    tr.cart_item.cart-item-subscribe-and-save-unchecked
    + tr
    .RO56--td--bottom
    .revive-eo.revive-eo-wrapper.revive-eo-wrapper-cart-subscription {
        padding: 12px;
        /*margin-left:25%;*/
    }
    tr.cart_item
    + tr
    .RO56--td--bottom
    .revive-eo.revive-eo-wrapper.revive-eo-wrapper-cart-subscription {
        width: 100% !important;
        padding: 12px;
    }
    .RO56--td--bottom
    .revive-eo.revive-eo-wrapper.revive-eo-wrapper-cart-subscription,
    .cart
    .free-gift.cart-item-variation
    .RO56--td--bottom
    .nav-edit-revive-eo-shop-actions-wrapper {
        position: relative !important;
        top: auto !important;
        left: auto !important;
    }
    .RO56--sub-label {
        font-size: 16px !important;
    }
    .RO56--sub-frequency {
        gap: 6px;
        margin-top: 10px;
        align-items: center;
        flex-direction: row;
        border-top: 1px solid #d8d8d8;
        padding-top: 10px;
    }
    .RO56--dropdown {
        width: 190px;
    }
    .RO56--td--bottom
    .revive-eo.revive-eo-wrapper.revive-eo-wrapper-cart-subscription
    > div:not(.RO56--sub-frequency) {
        border: none !important;
    }
    .RO56--td--bottom
    .revive-eo.revive-eo-wrapper.revive-eo-wrapper-cart-subscription
    > div.revive-eo-field-subscribe-and-save {
        margin-left: -15px !important;
    }
    .RO56--td--bottom
    .revive-eo.revive-eo-wrapper.revive-eo-wrapper-cart-subscription
    > div.revive-eo-field-subscribe-and-save
    .subscribe-info {
        display: none !important;
    }
    .RO56--td--bottom
    .revive-eo.revive-eo-wrapper.revive-eo-wrapper-cart-subscription {
        border-radius: 5px !important;
        border: 2px solid #d2d4d6 !important;
        background: #fffaf7 !important;
    }
    .RO56--td--bottom
    .revive-eo.revive-eo-field-wrapper.revive-eo-field-subscribe-and-save:before,
    .woocommerce-cart-gray
    tr.cart_item.cart-item-subscribe-and-save-checked
    .RO56--td--bottom
    .revive-eo-field-wrapper.revive-eo-field-subscribe-and-save:before {
        border-color: #000 !important;
        box-shadow: none !important;
        background-color: #fff !important;
    }
    .woocommerce-cart-gray
    tr.cart_item.cart-item-subscribe-and-save-checked
    .RO56--td--bottom
    .revive-eo-field-wrapper.revive-eo-field-subscribe-and-save
    > span,
    tr.cart_item.cart-item-subscribe-and-save-unchecked
    .revive-eo.revive-eo-wrapper.revive-eo-wrapper-cart-subscription
    .revive-eo.revive-eo-field-wrapper.revive-eo-field-subscribe-and-save
    span.revive-eo.revive-eo-field {
        border-bottom: none !important;
    }
    .RO56--td--bottom
    .revive-eo.revive-eo-wrapper.revive-eo-wrapper-cart-subscription.checked
    .revive-eo.revive-eo-field-wrapper.revive-eo-field-subscribe-and-save:after {
        /*display:none!important;*/
        background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMCIgdmlld0JveD0iMCAwIDEwIDEwIiBmaWxsPSJub25lIj4KICA8cGF0aCBkPSJNOS4yMDg5MSAwLjE5NDMxMkM4LjQ2NTA3IC0wLjIxOTQ4MiA3LjUyODE2IDAuMDQ5NzE0NyA3LjExNjYzIDAuNzkxOTI5TDQuMjYwNTIgNS45MzEyOEwyLjYyNTkyIDQuMjk2ODdDMi4wMjUxNiAzLjY5NjE4IDEuMDUxMzMgMy42OTYxOCAwLjQ1MDU3MSA0LjI5Njg3Qy0wLjE1MDE5IDQuODk3NTcgLTAuMTUwMTkgNS44NzEyOSAwLjQ1MDU3MSA2LjQ3MTk4TDMuNTI3NDUgOS41NDg1MkMzLjgxODIyIDkuODQwMDIgNC4yMTA1MiAxMCA0LjYxNTEzIDEwQzQuNjg1OSAxMCA0Ljc1NzQzIDkuOTk1MzkgNC44MjgyIDkuOTg0NjJDNS4zMDU4OSA5LjkxNzcgNS43MjUxMSA5LjYzMDgyIDUuOTU5NzIgOS4yMDg1Nkw5LjgwNTgyIDIuMjg2MzZDMTAuMjE4OSAxLjU0MzM3IDkuOTUxMjEgMC42MDczMzcgOS4yMDg5MSAwLjE5NDMxMloiIGZpbGw9ImJsYWNrIi8+Cjwvc3ZnPg==) !important;
        height: 10px !important;
        left: 19px !important;
    }

    .nav-edit-revive-eo-shop-actions-wrapper {
        max-width: 220px !important;
        display: block;
        position: relative !important;
        top: 0 !important;
        right: 0;
    }

    .cart .shop_table.cart tr.RO56--subscribe--item--mobile td,
    .cart
    .shop_table
    > tbody
    > tr:nth-child(n + 2):not(tr:last-child).RO56--subscribe--item--mobile
    td {
        border-top: none !important;
        padding: 0 !important;
    }

    .woocommerce-cart-gray
    .RO56--td--bottom
    .revive-eo-wrapper-cart-subscription
    .revive-eo-field-subscribe-and-save
    span.revive-eo.revive-eo-field {
        border-bottom: none !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        font-size: 16px !important;
    }
    .cart_right_wrapper {
        max-width: 450px !important;
        width: 95%;
        margin: 0 auto !important;
    }
    .RO56-free-shipping {
        margin: 10px auto;
        padding: 7px 10px;
    }

    .woocommerce-info-have-a-coupon {
        border: none;
        background: #fff;
    }
    .checkout_coupon-native-cart {
        width: 290px !important;
        margin: 0 auto;
        padding: 0 !important;
    }
    .RO56--coupon--head {
        display: none;
    }
    .coupon_code_wrapper_inner > input.input-text {
        width: 100% !important;
        min-width: 100% !important;
        font-size: 16px !important;
    }
    .coupon_code_wrapper.RO56--coupon .revive_apply_coupon,
    .coupon_code_wrapper_inner > input.revive_apply_coupon {
        width: 100% !important;
        min-width: 100% !important;
    }
    .woocommerce-info-have-a-coupon .woocommerce-info {
        text-align: left;
    }
    .woocommerce-info-have-a-coupon.active {
        border-bottom: none !important;
    }
    .coupon_code_wrapper.RO56--coupon {
        border: none !important;
    }
    .RO56--coupon-global {
        border: 1px dashed #7d7d7d;
        background: #fff;
        padding: 10px;
        max-width: 320px;
        margin-left: auto;
        margin-right: auto;
    }
    .RO56--coupon-global .coupon_code_wrapper {
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: auto !important;
        max-width: 100% !important;
    }
    .coupon_code_wrapper.RO56--coupon {
        max-width: 100% !important;
        margin-bottom: 0 !important;
    }
    .cart .free-gift.cart-item-variation .nav-product-select-button {
        max-width: 190px !important;
    }
    .cart .free-gift.cart-item-has-variations .nav-product-select-button {
        max-width: 190px !important;
    }
    .cart .free-gift.cart-item-has-variations .nav-product-select-button span {
        font-size: 12px !important;
    }
    .cart .free-gift.cart-item-variation .nav-product-select-button span {
        font-size: 16px !important;
    }
    .is-customer.woocommerce .cart-collaterals .cart_totals table th,
    .is-customer.woocommerce-page .cart-collaterals .cart_totals table th {
        width: 70%;
    }
    .RO56--td--middle > div.RO56--td--badge {
        display: none;
    }
    .RO56--td--middle2-mobile {
        display: flex;
    }
    .woocommerce table.cart .product-thumbnail,
    .woocommerce #content table.cart .product-thumbnail,
    .woocommerce-page table.cart .product-thumbnail,
    .woocommerce-page #content table.cart .product-thumbnail {
        width: 25% !important;
    }
    .shop_table.cart tr td.RO56--td {
        width: 75% !important;
    }
    .product-subtotal.cart-item-subtotal
    span:not(.woocommerce-Price-currencySymbol):not(.subscription-details) {
        display: block !important;
    }
    .trigger-footer-widget-area {
        display: none !important;
    }
    .RO56--after-table a.continue-shopping {
        padding: 5px 10px 7px 10px;
    }
    .RO56--after-right > a {
        padding-left: 0;
        padding-right: 10px;
    }
    body.RO56 tr.cart_item.cart-item-subscribe-and-save-checked {
        height: auto !important;
    }

    .cart_right_wrapper .RO56-free-shipping {
        display: none;
    }
    tr.cart_item.free-gift .RO56--td--quantity .cart-item-qty-wrapper,
    tr.cart_item.free-gift .RO56--td--bottom .item_selection {
        display: none !important;
    }
}
tr.cart_item.free-gift .RO56--td--bottom .item_selection {
    display: none !important;
}
@media (max-width: 767px) {
    body.RO56 tr.cart_item.cart-item-subscribe-and-save-unchecked {
        height: 140px !important;height: auto !important;
    }
    body.RO56
    tr.cart_item.cart-item-subscribe-and-save-unchecked.cart-item-has-variations.upsell_atc_product {
        height: auto !important;
    }
}

@media (max-width: 320px) {
    .RO56--coupon--sidebar {
        display: block;
        margin-left: 0 !important;
    }
    .is-customer.woocommerce .cart-collaterals .cart_totals table th,
    .is-customer.woocommerce-page .cart-collaterals .cart_totals table th {
        width: 130px !important;
    }
    body.is-customer.RO56 label.shipping-method-title {
        font-size: 12px !important;
    }
}

.RO56--coupon-cell {
    padding-right: 0 !important;
}
.RO56--coupon-flex {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
}
.RO56--coupon-label {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}
.RO56--coupon--sidebar {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.RO56--coupon--sidebar svg {
    flex: 0 0 auto;
}
.RO56--coupon-remove a {
    white-space: nowrap;
}

/* Push the shipping block to the right, but keep its internal layout left-aligned */
tr.shipping.revive-eo-shipping td {
    text-align: right; /* makes the inline-flex wrapper sit at the right edge */
}

tr.shipping.revive-eo-shipping td .RO56-shipping-right {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start; /* internal alignment */
    gap: 10px;
    text-align: left; /* override text-align:right from td */
    max-width: 100%;
}

/* Each option (radio + label + optional icon) aligned consistently */
tr.shipping.revive-eo-shipping td .RO56-ship-options {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

tr.shipping.revive-eo-shipping td .RO56-ship-option {
    display: flex;
    align-items: center;
    gap: 8px;
}

tr.shipping.revive-eo-shipping td .RO56-ship-option input[type="radio"] {
    margin: 0;
}

tr.shipping.revive-eo-shipping td .RO56-ship-option .shipping-method-title {
    margin: 0;
    white-space: nowrap;
}

tr.shipping.revive-eo-shipping td .RO56-ship-option em[data-toggle="tooltip"] {
    margin-top: -5px;
    top: -13px;
}

/* Keep select2 compact and right-friendly (optional) */
tr.shipping.revive-eo-shipping td .select2-container.shipping_method {
    width: auto !important;
    max-width: 100%;
}
.RO56--coupon-value .amount,
.is-customer .cart-totals-wrapper .RO56--coupon-value span {
    color: #000 !important;
    font-weight: 400 !important;
}
.RO56--coupon-remove {
    display: none;
}

/* FIX v1.0.4: Class-driven coupon form visibility. */
.RO56--coupon-global.RO56--coupon-open .coupon_code_wrapper {
    display: block !important;
}

/* FIX v1.0.6: Two-header approach — CSS controls which header variant is visible.
   Default (no class): closed header shown, open header hidden.
   .RO56--coupon-open: swap — show open header, hide closed header. */
.RO56--header-open {
    display: none !important;
}
.RO56--coupon-global.RO56--coupon-open .RO56--header-closed {
    display: none !important;
}
.RO56--coupon-global.RO56--coupon-open .RO56--header-open {
    display: block !important;
}

@media (min-width: 768px) {
    .cart .shop_table.cart tr td {
        width: auto !important;
    }
}

/* The row's top block keeps a floor so the title, quantity and price do not crowd -- but only
   where the layout actually has room for it. The cart is two columns from 993px up, and the left
   column is 511px at 1024 and 555px at 1100, while this floor plus the 120px image cell holds the
   table at 609px. Between 993 and 1279 the table therefore outgrew its column and ran under the
   order summary (09.17 review). Above 1280 the column is 660px and the floor fits, so it applies
   there and the block is fluid below. */
@media (min-width: 1280px) {
    .RO56--td--top {
        min-width: 460px;
    }
}

/* Releasing that floor is not enough on its own: the row's control strip is a nowrap flex line
   -- badge 144 + quantity 137 + price 118 = 399 -- which with the 120px image cell still held the
   table at 548 against a 491px column at 1024. Letting it wrap between the two-column breakpoint
   and 1280 lets the table track its column exactly; the controls keep their own sizes and simply
   fall to a second line. Measured spill at 1440/1280/1200/1100/1024: 0px. */
@media (min-width: 993px) and (max-width: 1279px) {
    .RO56--td--middle {
        flex-wrap: wrap;
    }
}