/* RIDECO Cart — scoped source-faithful empty-cart presentation */
body.woocommerce-cart,
body.woocommerce-cart #content,
body.woocommerce-cart .page-content {
    background: #4E5161;
}

body.woocommerce-cart .page-header {
    display: none;
}

.rideco-cart-page {
    min-height: calc(100vh - 105px);
    background: #4E5161;
    color: #EAEAEA;
    font-family: Inter, sans-serif;
}

.rideco-cart-page *,
.rideco-cart-page *::before,
.rideco-cart-page *::after {
    box-sizing: border-box;
}

.rideco-cart-page .rideco-cart-container {
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
    padding-inline: 15px;
}

.rideco-cart-page .rideco-cart-breadcrumbs {
    display: inline-flex;
    width: 100%;
    overflow-x: auto;
    padding-block: 15px;
    color: #EAEAEA;
    font-size: 12px;
    line-height: 1.6;
    white-space: nowrap;
}

.rideco-cart-page .rideco-cart-breadcrumbs a {
    color: #EAEAEA;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.rideco-cart-page .rideco-cart-breadcrumb-separator {
    display: inline-block;
    margin-inline: 8px;
    opacity: 0.2;
    font-style: italic;
}

.rideco-cart-page .rideco-cart-header {
    padding-block: 30px;
}

.rideco-cart-page .rideco-cart-header h1 {
    margin: 0;
    color: #FFFFFF;
    font-family: Oswald, sans-serif;
    font-size: 24px;
    font-weight: 600;
    letter-spacing: -0.02em;
    line-height: 1;
}

.rideco-cart-page .rideco-cart-empty {
    width: 100%;
    max-width: 570px;
    margin-inline: auto;
    padding-block: 40px;
    text-align: center;
}

.rideco-cart-page .rideco-cart-empty h2 {
    margin: 0;
    color: #FFFFFF;
    font-family: Oswald, sans-serif;
    font-size: 34px;
    font-weight: 600;
    letter-spacing: -0.02em;
    line-height: 42px;
}

.rideco-cart-page .rideco-cart-empty p {
    max-width: 570px;
    margin: 20px auto 0;
    color: #EAEAEA;
    font-size: 17px;
    line-height: 1.6;
}

.rideco-cart-page .rideco-cart-continue {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    margin-top: 20px;
    padding: 7px 30px;
    border-radius: 6px;
    background: #6C6F81;
    color: #FFFFFF;
    font-family: Inter, sans-serif;
    font-size: 14px;
    font-weight: 600;
    line-height: 1;
    text-align: center;
    text-decoration: none;
    transition: background-color .25s cubic-bezier(.104,.204,.492,1);
}

.rideco-cart-page .rideco-cart-continue:hover,
.rideco-cart-page .rideco-cart-continue:focus-visible {
    background: #5C5E6E;
    color: #FFFFFF;
}

.rideco-cart-page .rideco-cart-continue:focus-visible {
    outline: 2px solid #FFFFFF;
    outline-offset: 3px;
}

@media (max-width: 767px) {
    .rideco-cart-page {
        min-height: calc(100vh - 85px);
    }
}

@media (min-width: 768px) {
    .rideco-cart-page .rideco-cart-container {
        padding-inline: 50px;
    }

    .rideco-cart-page .rideco-cart-empty h2 {
        font-size: 38px;
        line-height: 46px;
    }
}

@media (min-width: 1068px) {
    .rideco-cart-page .rideco-cart-empty {
        padding-block: 100px;
    }

    .rideco-cart-page .rideco-cart-empty h2 {
        font-size: 54px;
        line-height: 62px;
    }
}

/* RIDECO Cart — populated WooCommerce Cart Block only */
body.woocommerce-cart #content:has(.wp-block-woocommerce-cart) { width: 100%; max-width: 1380px; margin-inline: auto; padding-inline: 15px; }
body.woocommerce-cart .wp-block-woocommerce-cart { width: 100%; margin: 44px 0 56px !important; color: #EAEAEA; font-family: Inter, sans-serif; }
body.woocommerce-cart .wp-block-woocommerce-cart *, body.woocommerce-cart .wp-block-woocommerce-cart *::before, body.woocommerce-cart .wp-block-woocommerce-cart *::after { box-sizing: border-box; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart, body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__main, body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__sidebar { color: #EAEAEA; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-items { width: 100%; margin: 0; border-collapse: collapse; background: transparent; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-items__header { border-bottom: 1px solid #454545; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-items__header th { padding: 0 0 14px; color: #AAAEB6; font-family: Inter, sans-serif; font-size: 12px; font-weight: 600; letter-spacing: .08em; line-height: 1.3; text-align: left; text-transform: uppercase; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-items__header-total { text-align: right; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-items__row { border-bottom: 1px solid #454545; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-items__row > td { padding-block: 24px; vertical-align: top; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__image { width: 128px; padding-right: 18px; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__image a { display: flex; align-items: center; justify-content: center; width: 110px; height: 110px; overflow: hidden; background: #616478; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__image img { display: block; width: 100%; height: 100%; max-width: none; object-fit: contain; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-product-name { color: #FFFFFF; font-family: Inter, sans-serif; font-size: 16px; font-weight: 600; line-height: 1.35; text-decoration: none; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-product-name:hover, body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-product-name:focus-visible { color: #FE4713; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__prices { margin-top: 7px; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-product-price, body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__total .wc-block-components-product-price { color: #EAEAEA; font-family: Inter, sans-serif; font-size: 15px; font-weight: 600; line-height: 1.4; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-product-metadata, body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-product-metadata p, body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-product-metadata__description { margin: 8px 0 0; color: #AAAEB6; font-family: Inter, sans-serif; font-size: 13px; line-height: 1.45; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__quantity { display: flex; align-items: center; gap: 12px; margin-top: 16px; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector { display: grid; grid-template-columns: 44px 44px 44px; align-items: center; width: 132px; height: 44px; border: 1px solid #454545; border-radius: 0; background: #28282E; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector__button, body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector__input { min-width: 0; width: 44px; height: 42px; margin: 0; padding: 0; border: 0; background: transparent; color: #EAEAEA; font-family: Inter, sans-serif; font-size: 18px; line-height: 42px; text-align: center; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector__button { cursor: pointer; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector__button:hover:not(:disabled), body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector__button:focus-visible { background: #616478; color: #FFFFFF; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector__button:disabled { color: #6C6F81; opacity: 1; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector__input { border-inline: 1px solid #454545; font-size: 14px; font-weight: 600; appearance: textfield; -moz-appearance: textfield; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector__input::-webkit-outer-spin-button, body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector__input::-webkit-inner-spin-button { margin: 0; appearance: none; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__remove-link { display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; margin: 0; padding: 8px; border: 0; border-radius: 0; background: transparent; color: #AAAEB6; cursor: pointer; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__remove-link svg { width: 17px; height: 17px; fill: currentColor; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__remove-link:hover, body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__remove-link:focus-visible { color: #FE4713; outline: 1px solid #FE4713; outline-offset: 2px; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__total { width: 140px; color: #EAEAEA; text-align: right; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__sidebar { padding: 30px; border: 1px solid #454545; border-radius: 0; background: #222227; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__totals-title { margin: 0 0 22px; color: #FFFFFF; font-family: Oswald, sans-serif; font-size: 28px; font-weight: 600; letter-spacing: -0.02em; line-height: 1.1; text-transform: uppercase; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-totals-wrapper { margin: 0; padding: 0; border: 0; background: transparent; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-totals-coupon { border-top: 1px solid #454545; border-bottom: 1px solid #454545; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-panel__button { display: flex; align-items: center; min-height: 48px; padding: 0; color: #EAEAEA; font-family: Inter, sans-serif; font-size: 14px; font-weight: 600; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-panel__button:hover, body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-panel__button:focus-visible { color: #FFFFFF; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-panel__button-icon { fill: currentColor; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-totals-coupon__content { padding: 0 0 18px; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-totals-coupon__form { display: flex; gap: 10px; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-totals-coupon__input { flex: 1 1 auto; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-totals-coupon__input input { min-height: 44px; border: 1px solid #454545; border-radius: 0; background: #28282E; color: #EAEAEA; font-family: Inter, sans-serif; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-totals-coupon__input label { color: #AAAEB6; font-family: Inter, sans-serif; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-totals-coupon__button { min-height: 44px; border: 0; border-radius: 0; background: #6C6F81; color: #FFFFFF; font-family: Inter, sans-serif; font-size: 13px; font-weight: 600; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-totals-coupon__button:not(:disabled):hover, body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-totals-coupon__button:not(:disabled):focus-visible { background: #FE4713; color: #FFFFFF; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-totals-footer-item { display: flex; align-items: center; justify-content: space-between; padding: 22px 0; border-bottom: 1px solid #454545; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-totals-item__label { color: #EAEAEA; font-family: Inter, sans-serif; font-size: 19px; font-weight: 600; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-totals-item__value, body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-totals-footer-item-tax-value { color: #FFFFFF; font-family: Inter, sans-serif; font-size: 24px; font-weight: 600; line-height: 1.2; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__payment-options { min-height: 0; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__submit { margin-top: 24px; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__submit-button { display: inline-flex; align-items: center; justify-content: center; width: 100%; min-height: 54px; margin: 0; border: 0; border-radius: 0; background: #FE4713; color: #FFFFFF; font-family: Inter, sans-serif; font-size: 15px; font-weight: 600; line-height: 1; text-decoration: none; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__submit-button { min-height: 54px !important; height: 54px; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__submit-button:hover, body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__submit-button:focus-visible { background: #EC3501; color: #FFFFFF; }
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__submit-button:focus-visible, body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-panel__button:focus-visible, body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector__button:focus-visible, body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-product-name:focus-visible { outline: 2px solid #FFFFFF; outline-offset: 3px; }
@media (min-width: 768px) { body.woocommerce-cart #content:has(.wp-block-woocommerce-cart) { padding-inline: 50px; } }
@media (min-width: 1068px) { body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(340px, .95fr); gap: 64px; align-items: start; margin-bottom: 0; } body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__main, body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__sidebar { width: auto; margin: 0; } body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__main { padding: 0; } body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__sidebar { padding: 30px; } }
@media (max-width: 1067px) { body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__sidebar { margin-top: 32px; } }
@media (max-width: 767px) { body.woocommerce-cart .wp-block-woocommerce-cart { margin: 28px 0 32px !important; } body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-items__header { display: none; } body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-items, body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-items tbody, body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-items__row, body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-items__row > td { display: block !important; width: 100% !important; } body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-items__row { position: relative; padding: 20px 0; border-bottom: 1px solid #454545; } body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-items__row > td { padding: 0; } body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__image { float: left; width: 96px; margin: 0 16px 16px 0; padding: 0; } body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__image a { width: 96px; height: 96px; } body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__total { width: auto; padding-left: 112px !important; text-align: left; } body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__total .wc-block-components-product-price { font-size: 15px; } body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__quantity { clear: both; margin-top: 16px; } body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__sidebar { padding: 24px 20px; } body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__totals-title { font-size: 26px; } }
@media (max-width: 767px) { body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__image { float: left !important; width: 96px !important; height: 96px !important; margin: 0 16px 16px 0 !important; padding: 0 !important; } body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__image a { width: 96px !important; height: 96px !important; } body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__wrap { display: block !important; width: calc(100% - 112px) !important; min-width: 0 !important; margin-left: 112px !important; } body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__prices, body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-product-metadata { display: block !important; width: auto !important; } body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__quantity { clear: both; } body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__total { clear: both; width: 100% !important; padding: 16px 0 0 !important; text-align: left; } }

/* Compact populated-cart item composition on mobile only. */
@media (max-width: 767px) {
    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-items__row {
        display: grid !important;
        grid-template-columns: 96px minmax(0, 1fr) !important;
        column-gap: 16px;
        row-gap: 12px;
        padding: 20px 0 22px;
        align-items: start;
    }

    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-items__row > td.wc-block-cart-item__image {
        grid-column: 1;
        grid-row: 1;
        display: block !important;
        float: none !important;
        width: 96px !important;
        height: 96px !important;
        margin: 0 !important;
        padding: 0 !important;
        align-self: start;
    }

    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-items__row > td.wc-block-cart-item__image a,
    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-items__row > td.wc-block-cart-item__image img {
        width: 96px !important;
        height: 96px !important;
    }

    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-items__row > td.wc-block-cart-item__product {
        grid-column: 2;
        grid-row: 1;
        display: block !important;
        width: auto !important;
        min-width: 0;
        padding: 0 !important;
        text-align: left;
    }

    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__wrap {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-product-name,
    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__prices,
    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-product-metadata {
        display: block !important;
        width: 100% !important;
        margin-left: 0 !important;
        text-align: left;
    }

    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-product-name {
        font-size: 16px;
        line-height: 1.3;
    }

    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__prices {
        margin-top: 5px;
    }

    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-product-metadata,
    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-product-metadata p {
        margin-top: 5px;
        font-size: 13px;
        line-height: 1.45;
    }

    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__quantity {
        display: flex !important;
        align-items: center;
        gap: 10px;
        width: auto !important;
        margin-top: 14px;
        clear: none;
        grid-column: auto !important;
        grid-row: auto !important;
    }

    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector {
        grid-template-columns: 40px 40px 40px;
        width: 120px;
        height: 42px;
    }

    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector__button,
    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-quantity-selector__input {
        width: 40px;
        height: 40px;
        line-height: 40px;
    }

    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__remove-link {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        flex: 0 0 38px;
        width: 38px !important;
        min-width: 38px !important;
        height: 38px !important;
        min-height: 38px !important;
        padding: 8px !important;
    }

    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-items__row > td.wc-block-cart-item__total {
        grid-column: 1 / -1;
        grid-row: 2;
        display: block !important;
        clear: none;
        width: 100% !important;
        margin: 0;
        padding: 2px 0 0 !important;
        text-align: right;
    }

    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-item__total .wc-block-components-product-price {
        font-size: 17px;
        font-weight: 600;
    }

    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__sidebar {
        margin-top: 22px;
        padding: 20px;
    }

    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__totals-title {
        display: none;
    }

    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-panel__button {
        min-height: 52px;
        font-size: 15px;
    }

    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-totals-footer-item {
        padding: 18px 0;
    }

    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-totals-item__label {
        font-size: 18px;
    }

    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-totals-item__value,
    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-totals-footer-item-tax-value {
        font-size: 25px;
    }

    body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__submit {
        margin-top: 20px;
    }
}