.dmx-checkout-optional {
    margin-bottom: 1rem;
}

.dmx-checkout-optional > summary {
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: .15em;
}

.dmx-checkout-optional[open] > summary {
    margin-bottom: .5rem;
}

#checkout-shipping-payment.dmx-checkout-choices,
#fieldset-payment.dmx-checkout-choices {
    min-width: 0;
}

#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice,
#fieldset-payment.dmx-checkout-choices .dmx-checkout-choice {
    position: relative;
    display: block;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    padding: 0;
    margin: 0 0 .75rem;
}

#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice > .custom-control-label,
#fieldset-payment.dmx-checkout-choices .dmx-checkout-choice > .custom-control-label {
    display: block;
    width: 100%;
    min-width: 0;
    min-height: max(3.5rem, var(--dmx-checkout-card-height, 0px));
    margin: 0;
    padding: .95rem 1rem .95rem 2.75rem;
    border: 1px solid #d6dfd1;
    border-radius: .65rem;
    background: #fff;
    color: #25351d;
    font-weight: 600;
    line-height: 1.45;
    text-transform: none;
    cursor: pointer;
    overflow-wrap: break-word;
}

#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice > .custom-control-label::before,
#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice > .custom-control-label::after,
#fieldset-payment.dmx-checkout-choices .dmx-checkout-choice > .custom-control-label::before,
#fieldset-payment.dmx-checkout-choices .dmx-checkout-choice > .custom-control-label::after {
    top: 1.1rem;
    left: 1rem;
}

#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice > input:checked ~ .custom-control-label,
#fieldset-payment.dmx-checkout-choices .dmx-checkout-choice > input:checked ~ .custom-control-label {
    border-color: #345c1c;
    background: #f0f6eb;
    box-shadow: inset 0 0 0 1px #345c1c;
}

#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice > input:focus-visible ~ .custom-control-label,
#fieldset-payment.dmx-checkout-choices .dmx-checkout-choice > input:focus-visible ~ .custom-control-label {
    outline: 3px solid #64874a;
    outline-offset: 2px;
}

/* Native IO temporarily disables fieldsets under .loading; retain layout, never enable inputs. */
#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice:has(> input[disabled]),
#fieldset-payment.dmx-checkout-choices .dmx-checkout-choice:has(> input[disabled]),
#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice:has(> input:disabled):not(#result-wrapper.loading .dmx-checkout-choice),
#fieldset-payment.dmx-checkout-choices .dmx-checkout-choice:has(> input:disabled):not(#result-wrapper.loading .dmx-checkout-choice),
#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice[hidden],
#fieldset-payment.dmx-checkout-choices .dmx-checkout-choice[hidden] {
    display: none !important;
}

#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice > .custom-control-label > .content {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .5rem 1rem;
    margin: 0;
}

#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice .content > .col {
    width: auto;
    min-width: 0;
    max-width: none;
    padding: 0;
}

#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice .price-col {
    grid-column: 2;
    grid-row: 1;
    justify-self: end;
    align-self: start;
    white-space: nowrap;
    font-weight: 700;
    text-align: right;
}

#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice .content > .col:not(.title):not(.price-col) {
    grid-column: 1 / -1;
}

#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice .title > div,
#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice .desc,
#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice .checkout-shipping-form-options-specific-cost,
#fieldset-payment.dmx-checkout-choices .dmx-checkout-choice .checkout-payment-method-note,
#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-shipping-info {
    font-size: .8125rem !important;
    font-weight: 400;
    line-height: 1.5;
    text-transform: none;
    overflow-wrap: break-word;
}

#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice.dmx-checkout-pickup .title {
    font-size: 1rem;
    text-transform: none;
}

#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice.dmx-checkout-pickup .title > div {
    font-size: .8125rem !important;
}

/* NOVA's native localized pickup hint is hidden by legacy Dropper small rules. */
#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice.dmx-checkout-pickup .title > div > small:not([hidden]) {
    display: inline;
}

#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice .title > div {
    margin-top: .45rem;
}

#fieldset-payment.dmx-checkout-choices .dmx-checkout-choice .checkout-payment-method-note {
    display: block;
    margin-top: .35rem;
}

#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice .title > div > small,
#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice .checkout-shipping-form-options-specific-cost > small,
#fieldset-payment.dmx-checkout-choices .dmx-checkout-choice .checkout-payment-method-note > small {
    font-size: inherit;
}

#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice .title > img,
#fieldset-payment.dmx-checkout-choices .dmx-checkout-choice > .custom-control-label > .img-sm,
#fieldset-payment.dmx-checkout-choices .dmx-checkout-choice .payment-methods-image-title {
    width: auto;
    height: auto;
    max-width: 8rem;
    max-height: 3rem;
    object-fit: contain;
}

#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice .title > .dmx-checkout-dhl-logo {
    width: 112px !important;
    height: 40px !important;
    max-width: 100%;
    box-sizing: border-box;
    padding: 6px;
    background: #ffcc00;
    object-fit: contain;
}

#fieldset-payment.dmx-checkout-choices .checkout-payment-options,
#fieldset-payment.dmx-checkout-choices .dmx-checkout-choice > .custom-control-label > .row {
    margin-right: 0;
    margin-left: 0;
}

#fieldset-payment.dmx-checkout-choices .checkout-payment-method,
#fieldset-payment.dmx-checkout-choices .dmx-checkout-choice > .custom-control-label > .row > .col {
    min-width: 0;
    padding-right: 0;
    padding-left: 0;
}

#fieldset-payment.dmx-checkout-choices > .checkout-payment-options {
    min-height: var(--dmx-checkout-payment-height, 0px);
    transition: opacity .14s ease-out;
}

/* PayPal owns this spinner and eligibility; every currently visible option stays usable. */
#fieldset-payment.dmx-checkout-choices:has(.jtl-spinner) > .checkout-payment-options:not(:focus-within) {
    opacity: .85;
}

#fieldset-payment.dmx-checkout-choices > .checkout-payment-options:focus-within {
    transition: none;
}

@media (prefers-reduced-motion: reduce) {
    #fieldset-payment.dmx-checkout-choices > .checkout-payment-options {
        transition: none;
    }
}

/* Dropper styles the legacy outer wrapper; only the enhanced label is a card. */
#fieldset-payment.dmx-checkout-choices > .checkout-payment-options > [role="group"] {
    flex: 0 0 100%;
    width: 100%;
    min-width: 0;
    max-width: 100%;
}

#fieldset-payment.dmx-checkout-choices > .checkout-payment-options > [role="group"] > .checkout-payment-method {
    padding: 0;
    margin: 0;
    border: 0;
    background: transparent;
}

#fieldset-payment.dmx-checkout-choices .dmx-checkout-choice > .custom-control-label > .row {
    gap: .5rem;
}

#fieldset-payment.dmx-checkout-choices .dmx-checkout-choice > .custom-control-label > .row > .col {
    margin-top: 0 !important;
}

/* Native rows/positioned Bootstrap columns remain intact beside a separate media column. */
#fieldset-payment.dmx-checkout-choices .dmx-checkout-choice > .dmx-checkout-payment-label {
    display: grid;
    grid-template-columns: 7.5rem minmax(0, 1fr);
    column-gap: .75rem;
    align-content: start;
}

#fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-label > .row,
#fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-title,
#fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-description {
    grid-column: 2;
    min-width: 0;
}

#fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-label > .row {
    grid-row: 3;
    gap: 0;
}

/* Uniform intro first, preserved native text (bank details, legal, fees) after it. */
#fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-description {
    grid-row: 2;
}

#fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-title {
    display: block;
    margin-bottom: .35rem;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.4;
}

#fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-description {
    display: block;
    font-size: .8125rem;
    font-weight: 400;
    line-height: 1.5;
}

#fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-label .title,
#fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-label .checkout-payment-method-note {
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
}

/* One normalized badge for every provider logo: fixed box, aspect preserved (contain), never cropped or stretched. */
#fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-media {
    grid-column: 1;
    grid-row: 1 / span 3;
    position: relative;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 7.5rem;
    height: 3.5rem;
    min-width: 0;
    padding: .375rem .5rem;
    overflow: hidden;
    border: 1px solid #d9ddd5;
    border-radius: .5rem;
    background: #fff;
    color: #25351d;
}

#fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-media > .dmx-checkout-payment-logo,
#fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-media > .dmx-checkout-brand-mark {
    position: static;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    margin: 0;
    padding: 0;
    object-fit: contain;
    font-size: 1.75rem;
    line-height: 1;
    text-align: center;
}

#fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-media > .dmx-checkout-payment-fallback {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

#fieldset-payment.dmx-checkout-choices .dmx-checkout-brand-mark[hidden] {
    display: none !important;
}

#fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-media .paypal-marks,
#fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-media img,
#fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-media svg {
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain;
}

/* Native SDK mark stays in the DOM (node, ID, listeners); only its presentation is replaced by the owned wordmark. */
#fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-media > .dmx-checkout-payment-native-mark {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip-path: inset(50%) !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

#fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-duplicate {
    display: none !important;
}

#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-pickup .dmx-checkout-pickup-notice {
    display: block;
    margin-top: .45rem;
    font-size: .8125rem;
    font-weight: 400;
    line-height: 1.5;
    text-transform: none;
    overflow-wrap: anywhere;
}

#checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-pickup-icon {
    display: block;
    margin-bottom: .4rem;
    font-size: 1.75rem;
}

@media (hover: hover) and (pointer: fine) {
    #checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice > input:enabled ~ .custom-control-label:hover {
        border-color: #64874a;
        box-shadow: 0 2px 8px #25351d26;
    }
    #checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice > input:enabled:checked ~ .custom-control-label:hover {
        box-shadow: inset 0 0 0 1px #345c1c, 0 2px 8px #25351d26;
    }
    #fieldset-payment.dmx-checkout-choices .dmx-checkout-choice > input:enabled ~ .dmx-checkout-payment-label:hover {
        border-color: #64874a;
        box-shadow: 0 2px 8px #25351d26;
    }
    #fieldset-payment.dmx-checkout-choices .dmx-checkout-choice > input:enabled:checked ~ .dmx-checkout-payment-label:hover {
        box-shadow: inset 0 0 0 1px #345c1c, 0 2px 8px #25351d26;
    }
}

@media (prefers-reduced-motion: no-preference) and (hover: hover) and (pointer: fine) {
    #checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice > .custom-control-label,
    #fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-label {
        transition: border-color .12s ease-out, box-shadow .12s ease-out;
    }
}

@media (max-width: 575.98px) {
    /* Mobile: every card keeps its own natural height (no shared minimum), tighter padding/gaps. */
    #checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice > .custom-control-label,
    #fieldset-payment.dmx-checkout-choices .dmx-checkout-choice > .custom-control-label {
        min-height: 0;
        padding: .6rem .75rem .6rem 2.25rem;
    }

    #checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice > .custom-control-label::before,
    #checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice > .custom-control-label::after,
    #fieldset-payment.dmx-checkout-choices .dmx-checkout-choice > .custom-control-label::before,
    #fieldset-payment.dmx-checkout-choices .dmx-checkout-choice > .custom-control-label::after {
        top: .8rem;
        left: .75rem;
    }

    #checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice,
    #fieldset-payment.dmx-checkout-choices .dmx-checkout-choice {
        margin-bottom: .5rem;
    }

    #fieldset-payment.dmx-checkout-choices .dmx-checkout-choice > .dmx-checkout-payment-label {
        grid-template-columns: 5rem minmax(0, 1fr);
        column-gap: .625rem;
        row-gap: .25rem;
        align-items: center;
    }

    /* Badge + title share the first row; notes use the full card width below. */
    #fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-media {
        grid-column: 1;
        grid-row: 1;
        width: 5rem;
        height: 2.5rem;
        padding: .25rem .375rem;
    }

    #fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-title {
        grid-column: 2;
        grid-row: 1;
        margin: 0;
    }

    #fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-label > .row,
    #fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-description {
        grid-column: 1 / -1;
    }

    #fieldset-payment.dmx-checkout-choices .dmx-checkout-payment-media > .dmx-checkout-payment-logo {
        font-size: 1.25rem;
    }

    #checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice > .custom-control-label > .content {
        grid-template-columns: minmax(0, 1fr);
    }

    #checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice .price-col {
        grid-column: 1;
        grid-row: auto;
        justify-self: start;
        text-align: left;
    }
}

/* Payment-provider consent only: keep the vendor's controls and consent behaviour intact. */
#ws_eu-cookie-container ._container_193qt_1 {
    box-sizing: border-box;
    width: min(45rem, calc(100vw - 1rem));
    min-width: 0;
    max-width: calc(100vw - 1rem);
    max-height: calc(100vh - 1rem);
    max-height: calc(100dvh - 1rem);
    padding: 1rem;
    margin: .5rem auto;
    border-radius: .75rem;
    overflow: auto;
    overscroll-behavior: contain;
}

#ws_eu-cookie-container ._container_193qt_1 #eu-cookie-banner-header[aria-label="Payment Cookie Banner"] {
    padding-right: 1.5rem;
    padding-left: 1.5rem;
    font-size: 1.25rem !important;
    line-height: 1.35;
    text-align: center;
    overflow-wrap: break-word;
}

#ws_eu-cookie-container ._container_193qt_1 span[data-nosnippet="true"] {
    display: block;
    font-size: .9375rem !important;
    line-height: 1.5;
    text-align: left;
    overflow-wrap: break-word;
}

#ws_eu-cookie-container ._container_193qt_1 ._table_193qt_46 {
    width: 100%;
    table-layout: fixed;
}

#ws_eu-cookie-container ._container_193qt_1 ._table_193qt_46 col:first-child {
    width: 27% !important;
}

#ws_eu-cookie-container ._container_193qt_1 ._table_193qt_46 col:last-child {
    width: 7rem !important;
}

#ws_eu-cookie-container ._container_193qt_1 ._table_193qt_46 th,
#ws_eu-cookie-container ._container_193qt_1 ._table_193qt_46 td {
    padding: .5rem .35rem;
    vertical-align: top;
    overflow-wrap: anywhere;
}

#ws_eu-cookie-container ._container_193qt_1 ._listItemName_193qt_36,
#ws_eu-cookie-container ._container_193qt_1 ._listItemDescription_193qt_40 {
    font-size: .875rem;
    line-height: 1.5;
}

#ws_eu-cookie-container ._container_193qt_1 ._listItemName_193qt_36 span,
#ws_eu-cookie-container ._container_193qt_1 ._listItemDescription_193qt_40 span {
    font-size: inherit !important;
    line-height: inherit;
}

#ws_eu-cookie-container ._container_193qt_1 ._table_193qt_46 td:last-child > div {
    flex-wrap: wrap;
    justify-content: center;
    gap: .25rem;
}

#ws_eu-cookie-container ._container_193qt_1 ._table_193qt_46 td:last-child button,
#ws_eu-cookie-container ._container_193qt_1 ._closeButtonAbsoluteTopRight_1mpyw_229 {
    min-width: 44px;
    min-height: 44px;
}

#ws_eu-cookie-container ._container_193qt_1 ._switch_yugqf_1 {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 10px 0;
}

#ws_eu-cookie-container ._container_193qt_1 ._closeButtonAbsoluteTopRight_1mpyw_229 {
    color: #24311c !important;
    background: transparent !important;
    opacity: 1 !important;
    text-shadow: none;
}

#ws_eu-cookie-container ._container_193qt_1 ._closeButtonAbsoluteTopRight_1mpyw_229 > span {
    color: inherit !important;
    opacity: 1 !important;
    text-shadow: none;
}

#ws_eu-cookie-container ._container_193qt_1 ._footer_193qt_30 > ._buttonContainer_1xezp_106 {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .5rem;
    width: 100%;
}

#ws_eu-cookie-container ._container_193qt_1 ._footer_193qt_30 button._paymentModalButton_193qt_11 {
    width: 100%;
    min-width: 0;
    min-height: 44px;
    height: auto;
    max-height: none;
    margin: 0;
    padding: .65rem .75rem;
    border: 2px solid #31571c !important;
    border-radius: .4rem !important;
    background: #31571c !important;
    color: #fff !important;
    font-size: .9375rem !important;
    font-weight: 600;
    line-height: 1.4;
    text-align: center;
    white-space: normal;
    overflow-wrap: break-word;
}

#ws_eu-cookie-container ._container_193qt_1 ._footer_193qt_30 button._paymentModalButton_193qt_11 span {
    color: inherit !important;
    font-size: inherit !important;
}

#ws_eu-cookie-container ._container_193qt_1 ._footer_193qt_30 button._paymentModalButton_193qt_11:focus-visible,
#ws_eu-cookie-container ._container_193qt_1 #eu-cookie-banner-header[aria-label="Payment Cookie Banner"]:focus-visible,
#ws_eu-cookie-container ._container_193qt_1 ._table_193qt_46 button:focus-visible,
#ws_eu-cookie-container ._container_193qt_1 ._closeButtonAbsoluteTopRight_1mpyw_229:focus-visible,
#ws_eu-cookie-container ._container_193qt_1 [role="switch"]:focus-visible {
    outline: 3px solid #64874a !important;
    outline-offset: 2px !important;
}

@media (max-width: 599.98px) {
    #ws_eu-cookie-container ._container_193qt_1 {
        padding: .75rem;
    }

    #ws_eu-cookie-container ._container_193qt_1 ._footer_193qt_30 > ._buttonContainer_1xezp_106 {
        grid-template-columns: minmax(0, 1fr);
    }

    #ws_eu-cookie-container ._container_193qt_1 ._table_193qt_46 col:first-child {
        width: auto !important;
    }

    #ws_eu-cookie-container ._container_193qt_1 ._table_193qt_46 col:last-child {
        width: 7rem !important;
    }
}

/* Keep the delivery qualifier together even inside theme text with automatic hyphenation. */
@media (max-width: 991.98px) {
    #checkout-shipping-payment.dmx-checkout-choices .dmx-checkout-choice .title > .dmx-checkout-dhl-logo {
        width: 96px !important;
        height: 34px !important;
        padding: 5px;
    }

    #form-register > .dmx-checkout-mobile-address-card {
        padding: .75rem;
        margin-bottom: .75rem;
    }

    #form-register > .dmx-checkout-mobile-address-card label[for="checkout_create_account_unreg"],
    #form-register > .dmx-checkout-mobile-address-card label[for="checkout_register_shipping_address"] {
        display: inline-block;
        box-sizing: border-box;
        min-height: 44px;
        padding-top: .65rem;
        padding-bottom: .65rem;
    }

    #form-register > .dmx-checkout-mobile-address-card label[for="checkout_create_account_unreg"]::before,
    #form-register > .dmx-checkout-mobile-address-card label[for="checkout_create_account_unreg"]::after,
    #form-register > .dmx-checkout-mobile-address-card label[for="checkout_register_shipping_address"]::before,
    #form-register > .dmx-checkout-mobile-address-card label[for="checkout_register_shipping_address"]::after {
        top: .85rem;
    }

    .row.basket.dmx-checkout-mobile-cart-layout {
        display: flex;
        flex-direction: column;
        box-sizing: border-box;
        padding-right: 15px;
        padding-left: 15px;
    }

    .row.basket.dmx-checkout-mobile-cart-layout > .dmx-checkout-mobile-cart-main,
    .row.basket.dmx-checkout-mobile-cart-layout > .dmx-checkout-mobile-cart-main > .dmx-checkout-mobile-cart-wrapper {
        display: contents;
    }

    .row.basket.dmx-checkout-mobile-cart-layout > .dmx-checkout-mobile-cart-main > *,
    .row.basket.dmx-checkout-mobile-cart-layout > .dmx-checkout-mobile-cart-main > .dmx-checkout-mobile-cart-wrapper > *,
    .row.basket.dmx-checkout-mobile-cart-layout > .dmx-checkout-mobile-cart-sidebar {
        flex: 0 0 auto;
        width: 100%;
        min-width: 0;
        max-width: 100%;
    }

    .row.basket.dmx-checkout-mobile-cart-layout > .dmx-checkout-mobile-cart-main > .et-basket-goto-checkout {
        display: none !important;
    }

    .row.basket.dmx-checkout-mobile-cart-layout .dmx-checkout-mobile-cart-green { order: 1; }
    .row.basket.dmx-checkout-mobile-cart-layout > .dmx-checkout-mobile-cart-sidebar { order: 2; }
    .row.basket.dmx-checkout-mobile-cart-layout .dmx-checkout-mobile-cart-callback { order: 3; }
    .row.basket.dmx-checkout-mobile-cart-layout .dmx-checkout-mobile-cart-tail { order: 4; }

    .row.basket.dmx-checkout-mobile-cart-layout > .dmx-checkout-mobile-cart-sidebar {
        padding-right: 0;
        padding-left: 0;
        margin: .75rem 0;
    }

    .row.basket.dmx-checkout-mobile-cart-layout > .dmx-checkout-mobile-cart-sidebar > .cart-summary {
        position: static !important;
        width: 100% !important;
        max-width: 100%;
    }
}

.dmx-cart-delivery-date .dmx-checkout-earlier-note {
    white-space: nowrap;
    word-break: normal;
    overflow-wrap: normal;
    hyphens: none;
}

/* Order confirmation: compact native variant list, shipping weight hidden, generated configuration image bounded.
   The image plugin hides a failed async figure via inline display:none, so display is never forced here. */
#order-confirm .checkout-items-item-main > ul.order-items-product-data {
    margin-bottom: .35rem;
}

#order-confirm .checkout-items-item-main > ul.order-items-product-data > li.variation {
    margin: 0;
    padding: 0;
    font-size: .8125rem;
    font-weight: 400;
    line-height: 1.35;
}

#order-confirm .checkout-items-item-main > ul.order-items-product-data > li.variation .et-product-data-label {
    font-weight: 600;
}

#order-confirm .checkout-items-item-main > ul.order-items-product-data > li.weight {
    display: none;
}

#order-confirm .checkout-items-item-main > figure.dmx-configuration-image {
    max-width: 10rem;
    margin: .4rem 0 .5rem !important;
}

#order-confirm .checkout-items-item-main > figure.dmx-configuration-image > img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    aspect-ratio: 420 / 319;
    object-fit: contain;
}

#order-confirm .checkout-items-item-image-wrapper img {
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

@media (max-width: 575.98px) {
    #order-confirm .checkout-items-item-main > figure.dmx-configuration-image {
        max-width: 6.5rem;
    }
}

/* Optional item notices: native cart and final summary only. */
:is(.cart-items-product-data, .order-items-product-data) > .dmx-cart-trial.dmx-item-notice {
    display:flex; align-items:flex-start; gap:.45rem; margin:.35rem 0 0; padding:0; border:0; background:transparent; color:#17523d;
    font-size:.8125rem; font-weight:400; line-height:1.35; overflow-wrap:anywhere; min-width:0;
}
:is(.cart-items-product-data, .order-items-product-data) > .dmx-cart-trial.dmx-item-notice--custom {
    padding:.5rem .65rem; border:1px solid #117e61; border-left-width:3px; border-radius:.25rem; background:#edf8f1;
}
:is(.cart-items-product-data, .order-items-product-data) .dmx-item-notice__icon { flex:0 0 auto; font-size:1em; line-height:1.35; }
:is(.cart-items-product-data, .order-items-product-data) .dmx-item-notice__content { min-width:0; }
:is(.cart-items-product-data, .order-items-product-data) .dmx-item-notice__line { display:block; }
:is(.cart-items-product-data, .order-items-product-data) .dmx-item-notice a { color:inherit; text-decoration:underline; font-weight:400; }
:is(.cart-items-product-data, .order-items-product-data) .dmx-item-notice a:focus-visible { outline:2px solid currentColor; outline-offset:2px; }

.order-items-product-data > .dmx-cart-item-route { font-size:.8125rem; font-weight:400; line-height:1.35; }

/* Final summary only: keep native parents, DOM order and controls. Name and amounts share row 1; the remaining native
   main children (configuration image, rating, data, configuration/part lists) follow in DOM order; spare image height
   belongs to the last explicit row. A fixed 10px track replaces child margins, so the configuration image's existing
   margin !important cannot shift it. An image column exists only for a visible native article image. */
@media (min-width: 1232px) {
    #order-confirm .basket-final .checkout-items-item.type-1:has(> div.checkout-items-item-main:not([role],[tabindex],[aria-label],[aria-labelledby],[aria-describedby],[aria-live]) > ul.order-items-product-data) {
        --dmx-summary-content: 2;
        --dmx-summary-quantity: 3;
        --dmx-summary-unit: 4;
        --dmx-summary-total: 4;
        display: grid;
        grid-template-columns: 10px minmax(0, 1fr) minmax(3rem, max-content) max-content;
        grid-template-rows: repeat(6, max-content) 1fr;
        gap: 0;
        align-items: start;
    }
    #order-confirm .basket-final .checkout-items-item.type-1:has(> div.checkout-items-item-main:not([role],[tabindex],[aria-label],[aria-labelledby],[aria-describedby],[aria-live]) > ul.order-items-product-data):has(> .checkout-items-item-price-single) {
        --dmx-summary-total: 5;
        grid-template-columns: 10px minmax(0, 1fr) minmax(3rem, max-content) max-content max-content;
    }
    #order-confirm .basket-final .checkout-items-item.type-1:has(> div.checkout-items-item-main:not([role],[tabindex],[aria-label],[aria-labelledby],[aria-describedby],[aria-live]) > ul.order-items-product-data):has(> .checkout-items-item-image-wrapper img:not([hidden],[style*="display:none" i],[style*="display: none" i])) {
        --dmx-summary-content: 3;
        --dmx-summary-quantity: 4;
        --dmx-summary-unit: 5;
        --dmx-summary-total: 5;
        grid-template-columns: 15% 10px minmax(0, 1fr) minmax(3rem, max-content) max-content;
    }
    #order-confirm .basket-final .checkout-items-item.type-1:has(> div.checkout-items-item-main:not([role],[tabindex],[aria-label],[aria-labelledby],[aria-describedby],[aria-live]) > ul.order-items-product-data):has(> .checkout-items-item-image-wrapper img:not([hidden],[style*="display:none" i],[style*="display: none" i])):has(> .checkout-items-item-price-single) {
        --dmx-summary-total: 6;
        grid-template-columns: 15% 10px minmax(0, 1fr) minmax(3rem, max-content) max-content max-content;
    }
    #order-confirm .basket-final .checkout-items-item.type-1:has(> div.checkout-items-item-main:not([role],[tabindex],[aria-label],[aria-labelledby],[aria-describedby],[aria-live]) > ul.order-items-product-data) > .checkout-items-item-main {
        display: contents;
    }
    #order-confirm .basket-final .checkout-items-item.type-1:has(> div.checkout-items-item-main:not([role],[tabindex],[aria-label],[aria-labelledby],[aria-describedby],[aria-live]) > ul.order-items-product-data) > .checkout-items-item-main > * {
        grid-column: var(--dmx-summary-content) / -1;
        min-width: 0;
        margin-inline: 0 10px;
    }
    #order-confirm .basket-final .checkout-items-item.type-1:has(> div.checkout-items-item-main:not([role],[tabindex],[aria-label],[aria-labelledby],[aria-describedby],[aria-live]) > ul.order-items-product-data) > .checkout-items-item-main > .order-items-name {
        grid-column: var(--dmx-summary-content);
        grid-row: 1;
        height: auto;
        min-height: 0;
    }
    #order-confirm .basket-final .checkout-items-item.type-1:has(> div.checkout-items-item-main:not([role],[tabindex],[aria-label],[aria-labelledby],[aria-describedby],[aria-live]) > ul.order-items-product-data) > .checkout-items-item-main > ul.order-items-product-data {
        margin-top: 0;
    }
    #order-confirm .basket-final .checkout-items-item.type-1:has(> div.checkout-items-item-main:not([role],[tabindex],[aria-label],[aria-labelledby],[aria-describedby],[aria-live]) > ul.order-items-product-data) > .checkout-items-item-image-wrapper {
        grid-column: 1;
        grid-row: 1 / -1;
        width: auto;
        max-width: none;
        align-self: start;
    }
    #order-confirm .basket-final .checkout-items-item.type-1:has(> div.checkout-items-item-main:not([role],[tabindex],[aria-label],[aria-labelledby],[aria-describedby],[aria-live]) > ul.order-items-product-data) > .checkout-items-item-image-wrapper:not(:has(img:not([hidden],[style*="display:none" i],[style*="display: none" i]))) {
        display: none !important;
    }
    #order-confirm .basket-final .checkout-items-item.type-1:has(> div.checkout-items-item-main:not([role],[tabindex],[aria-label],[aria-labelledby],[aria-describedby],[aria-live]) > ul.order-items-product-data) > :is(.checkout-items-item-quantity, .checkout-items-item-price-single, .checkout-items-item-price) {
        grid-row: 1;
        width: auto;
        max-width: none;
        min-width: 0;
        margin-left: 0;
    }
    #order-confirm .basket-final .checkout-items-item.type-1:has(> div.checkout-items-item-main:not([role],[tabindex],[aria-label],[aria-labelledby],[aria-describedby],[aria-live]) > ul.order-items-product-data) > .checkout-items-item-quantity {
        grid-column: var(--dmx-summary-quantity);
    }
    #order-confirm .basket-final .checkout-items-item.type-1:has(> div.checkout-items-item-main:not([role],[tabindex],[aria-label],[aria-labelledby],[aria-describedby],[aria-live]) > ul.order-items-product-data) > .checkout-items-item-price-single {
        grid-column: var(--dmx-summary-unit);
    }
    #order-confirm .basket-final .checkout-items-item.type-1:has(> div.checkout-items-item-main:not([role],[tabindex],[aria-label],[aria-labelledby],[aria-describedby],[aria-live]) > ul.order-items-product-data) > .checkout-items-item-price {
        grid-column: var(--dmx-summary-total);
    }
    #order-confirm .basket-final .checkout-items-item.type-1:has(> div.checkout-items-item-main:not([role],[tabindex],[aria-label],[aria-labelledby],[aria-describedby],[aria-live]) > ul.order-items-product-data) > .col-12 {
        grid-column: 1 / -1;
        width: auto;
        max-width: none;
    }
}

@media (max-width: 1231.98px) {
    #order-confirm .basket-final .checkout-items-item.type-1:has(> div.checkout-items-item-main:not([role],[tabindex],[aria-label],[aria-labelledby],[aria-describedby],[aria-live]) > ul.order-items-product-data) > .checkout-items-item-main {
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        min-width: 0;
    }
    #order-confirm .basket-final .checkout-items-item.type-1:has(> div.checkout-items-item-main:not([role],[tabindex],[aria-label],[aria-labelledby],[aria-describedby],[aria-live]) > ul.order-items-product-data) > :is(.checkout-items-item-quantity, .checkout-items-item-price) {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%;
    }
}
