@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@500;600;700&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');

/* =========================================================
   UNDERCONFIDENT — WOOCOMMERCE CART
   Consolidated premium editorial design
   Scope: Cart page only
========================================================= */

body.woocommerce-cart {
    --uc-bg: #f5efe9;
    --uc-card: #fffdfb;
    --uc-ink: #28211f;
    --uc-muted: #82766e;
    --uc-wine: #74384a;
    --uc-wine-dark: #512536;
    --uc-coral: #d98270;
    --uc-border: #e8ddd4;
    --uc-soft: #f8eeea;
    --uc-shadow: 0 14px 40px rgba(55, 37, 32, .055);

    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
    background: var(--uc-bg) !important;
    color: var(--uc-ink) !important;
    font-family: "Plus Jakarta Sans", sans-serif !important;
}

body.woocommerce-cart *,
body.woocommerce-cart *::before,
body.woocommerce-cart *::after {
    box-sizing: border-box;
}

body.woocommerce-cart h1,
body.woocommerce-cart h2,
body.woocommerce-cart h3,
body.woocommerce-cart p {
    margin-top: 0;
}

body.woocommerce-cart a,
body.woocommerce-cart button {
    -webkit-tap-highlight-color: transparent;
}

/* =========================================================
   1. REMOVE THEME ELEMENTS
========================================================= */

body.woocommerce-cart #masthead,
body.woocommerce-cart .site-header,
body.woocommerce-cart .header-image,
body.woocommerce-cart .page-header-image,
body.woocommerce-cart .custom-header,
body.woocommerce-cart #colophon,
body.woocommerce-cart .site-footer,
body.woocommerce-cart #secondary,
body.woocommerce-cart #tertiary,
body.woocommerce-cart aside.widget-area,
body.woocommerce-cart .edit-link,
body.woocommerce-cart .entry-footer,
body.woocommerce-cart .post-navigation,
body.woocommerce-cart .comments-area {
    display: none !important;
}

body.woocommerce-cart #page,
body.woocommerce-cart #content,
body.woocommerce-cart #content.site-content,
body.woocommerce-cart .site-content,
body.woocommerce-cart .site-content-wrapper,
body.woocommerce-cart .content-area,
body.woocommerce-cart #primary,
body.woocommerce-cart #main,
body.woocommerce-cart article,
body.woocommerce-cart .hentry-wrapper,
body.woocommerce-cart .entry-content {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    float: none !important;
    margin: 0 !important;
    background: var(--uc-bg) !important;
    border: 0 !important;
    box-shadow: none !important;
}

body.woocommerce-cart #content.site-content > .site-content-wrapper {
    display: block !important;
    padding: 0 !important;
}

body.woocommerce-cart #primary,
body.woocommerce-cart #primary.content-area {
    display: block !important;
    padding: 30px 5% 100px !important;
}

body.woocommerce-cart #main,
body.woocommerce-cart article,
body.woocommerce-cart .hentry-wrapper,
body.woocommerce-cart .entry-content {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* =========================================================
   2. PAGE TITLE
========================================================= */

body.woocommerce-cart h1.entry-title,
body.woocommerce-cart .entry-title {
    display: block !important;
    width: 100% !important;
    max-width: 1420px !important;
    margin: 0 auto 35px !important;
    padding: 8px 0 0 !important;

    color: var(--uc-ink) !important;
    font-family: "Playfair Display", Georgia, serif !important;
    font-size: clamp(48px, 5.5vw, 76px) !important;
    font-weight: 700 !important;
    letter-spacing: -2.5px !important;
    line-height: 1.08 !important;
    text-align: left !important;
}

/* =========================================================
   3. MAIN CART GRID

   Expected direct children:
   - WooCommerce notices wrapper
   - .uc-cart-upsell
   - .woocommerce-cart-form
   - .cart-collaterals

   The promotional banner occupies a full-width row.
   Book and summary appear side by side below it.
========================================================= */

body.woocommerce-cart #primary .woocommerce {
    display: grid !important;

    grid-template-columns:
        minmax(0, 1.7fr)
        minmax(320px, .9fr) !important;

    grid-template-areas:
        "notices notices"
        "upsell upsell"
        "cart summary" !important;

    align-items: start !important;
    gap: 20px 26px !important;

    width: 100% !important;
    max-width: 1420px !important;
    min-width: 0 !important;

    margin: 0 auto !important;
    padding: 0 !important;

    background: transparent !important;
}

/* Assign each section its own grid position */

body.woocommerce-cart #primary .woocommerce > .woocommerce-notices-wrapper {
    grid-area: notices !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.woocommerce-cart #primary .woocommerce > .uc-cart-upsell {
    grid-area: upsell !important;
}

body.woocommerce-cart #primary .woocommerce > form.woocommerce-cart-form {
    grid-area: cart !important;
}

body.woocommerce-cart #primary .woocommerce > .cart-collaterals {
    grid-area: summary !important;
}

/* =========================================================
   4. WOOCOMMERCE NOTICES
   Cart updated / coupon / error messages
========================================================= */

body.woocommerce-cart .woocommerce-notices-wrapper {
    position: relative !important;
    z-index: 1 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.woocommerce-cart .woocommerce-message,
body.woocommerce-cart .woocommerce-info,
body.woocommerce-cart .woocommerce-error {
    position: relative !important;
    display: block !important;

    width: 100% !important;
    min-height: 0 !important;

    margin: 0 0 0 !important;
    padding: 18px 22px 18px 62px !important;

    background: #fff9f5 !important;
    color: #493b37 !important;

    border: 1px solid #ead8d0 !important;
    border-left: 4px solid var(--uc-wine) !important;
    border-radius: 7px !important;

    font-family: "Plus Jakarta Sans", sans-serif !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.7 !important;

    box-shadow: none !important;
}

/* Notification icon */

body.woocommerce-cart .woocommerce-info::before,
body.woocommerce-cart .woocommerce-message::before {
    content: "✦" !important;

    position: absolute !important;
    top: 50% !important;
    left: 18px !important;
    transform: translateY(-50%) !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 27px !important;
    height: 27px !important;

    border: 0 !important;
    border-radius: 50% !important;

    background: var(--uc-wine) !important;
    color: #fff !important;

    font-family: Georgia, serif !important;
    font-size: 15px !important;
    line-height: 1 !important;
}

body.woocommerce-cart .woocommerce-error::before {
    color: #fff !important;
}

body.woocommerce-cart .woocommerce-message a,
body.woocommerce-cart .woocommerce-info a,
body.woocommerce-cart .woocommerce-error a {
    color: var(--uc-wine) !important;
    font-weight: 700 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
}

/* =========================================================
   5. PROMOTIONAL BANNER — ADD MORE COPIES
========================================================= */

body.woocommerce-cart .uc-cart-upsell {
    position: relative !important;
    z-index: 0 !important;

    display: flex !important;
    align-items: center !important;
    gap: 20px !important;

    width: 100% !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 25px 30px !important;

    background: linear-gradient(
        110deg,
        #f2e6eb 0%,
        #fbf1ed 55%,
        #f6e9e2 100%
    ) !important;

    border: 1px solid #e8d5df !important;
    border-left: 5px solid var(--uc-wine) !important;
    border-radius: 9px !important;

    box-shadow: 0 8px 24px rgba(75, 43, 43, .035) !important;
}

.uc-upsell-symbol {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 48px !important;

    width: 48px !important;
    height: 48px !important;

    border-radius: 50% !important;
    background: var(--uc-wine) !important;
    color: #fff !important;

    font-size: 25px !important;
}

.uc-upsell-content {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

.uc-upsell-eyebrow {
    display: block !important;
    margin-bottom: 5px !important;

    color: #986879 !important;
    font-family: "Plus Jakarta Sans", sans-serif !important;
    font-size: 9px !important;
    font-weight: 800 !important;
    letter-spacing: 1.8px !important;
}

.uc-upsell-content h3 {
    margin: 0 0 7px !important;

    color: var(--uc-ink) !important;
    font-family: "Playfair Display", Georgia, serif !important;
    font-size: clamp(23px, 2.3vw, 31px) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

.uc-upsell-content p {
    margin: 0 !important;

    color: #624d56 !important;
    font-family: "Plus Jakarta Sans", sans-serif !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.8 !important;
}

.uc-upsell-tier {
    flex: 0 0 auto !important;

    padding: 11px 14px !important;

    border: 1px solid #d9bbc9 !important;
    border-radius: 5px !important;

    background: rgba(255,255,255,.6) !important;
    color: var(--uc-wine) !important;

    font-family: "Plus Jakarta Sans", sans-serif !important;
    font-size: 9px !important;
    font-weight: 800 !important;
    letter-spacing: .8px !important;
    text-align: center !important;
}

/* =========================================================
   6. BOOK DETAILS CARD — LEFT COLUMN
========================================================= */

body.woocommerce-cart .woocommerce-cart-form {
    display: block !important;

    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    background: var(--uc-card) !important;
    border: 1px solid var(--uc-border) !important;
    border-radius: 10px !important;

    box-shadow: var(--uc-shadow) !important;
    overflow: hidden !important;
}

body.woocommerce-cart .woocommerce-cart-form table.shop_table {
    display: table !important;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    border-collapse: collapse !important;
    border-spacing: 0 !important;

    table-layout: auto !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.woocommerce-cart .woocommerce-cart-form table.shop_table thead {
    display: none !important;
}

body.woocommerce-cart .woocommerce-cart-form table.shop_table tbody {
    display: table-row-group !important;
}

body.woocommerce-cart .woocommerce-cart-form table.shop_table tbody tr.cart_item {
    display: table-row !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

body.woocommerce-cart .woocommerce-cart-form table.shop_table tbody tr.cart_item td {
    display: table-cell !important;
    position: static !important;
    float: none !important;

    padding: 30px 9px !important;
    vertical-align: middle !important;

    background: transparent !important;
    color: var(--uc-ink) !important;

    border: 0 !important;
    border-bottom: 1px solid var(--uc-border) !important;

    font-family: "Plus Jakarta Sans", sans-serif !important;
    font-size: 12px !important;
    box-sizing: border-box !important;
}

/* Remove column */

body.woocommerce-cart td.product-remove {
    width: 42px !important;
    min-width: 42px !important;
    padding-left: 15px !important;
    padding-right: 5px !important;
    text-align: center !important;
}

body.woocommerce-cart td.product-remove a.remove {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 27px !important;
    height: 27px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    border-radius: 50% !important;

    background: #f2e5e8 !important;
    color: var(--uc-wine) !important;

    font-size: 17px !important;
    line-height: 1 !important;
    text-decoration: none !important;

    transition: all .25s ease !important;
}

body.woocommerce-cart td.product-remove a.remove:hover {
    transform: rotate(90deg) !important;
    background: var(--uc-wine) !important;
    color: #fff !important;
}

/* Book image */

body.woocommerce-cart td.product-thumbnail {
    width: 115px !important;
    min-width: 95px !important;
    text-align: center !important;
}

body.woocommerce-cart td.product-thumbnail img {
    display: block !important;

    width: 105px !important;
    height: 145px !important;
    max-width: 100% !important;

    margin: 0 auto !important;
    padding: 0 !important;

    object-fit: cover !important;
    object-position: center !important;

    border: 0 !important;
    border-radius: 3px !important;
    background: #eee8e3 !important;

    box-shadow: 0 12px 25px rgba(40,30,25,.12) !important;
    transition: transform .4s ease, box-shadow .4s ease !important;
}

body.woocommerce-cart td.product-thumbnail img:hover {
    transform: translateY(-5px) rotate(-1deg) !important;
    box-shadow: 0 18px 30px rgba(40,30,25,.18) !important;
}

/* Product name */

body.woocommerce-cart td.product-name {
    min-width: 120px !important;
    text-align: left !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
}

body.woocommerce-cart td.product-name a {
    display: inline-block !important;

    color: var(--uc-ink) !important;
    font-family: "Playfair Display", Georgia, serif !important;
    font-size: clamp(19px, 1.8vw, 27px) !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;

    text-decoration: none !important;
    transition: color .25s ease !important;
}

body.woocommerce-cart td.product-name a:hover {
    color: var(--uc-wine) !important;
}

/* Product price */

body.woocommerce-cart td.product-price {
    min-width: 75px !important;
    color: var(--uc-wine) !important;
    text-align: center !important;
    white-space: nowrap !important;
    font-size: 12px !important;
    font-weight: 700 !important;
}

/* Quantity */

body.woocommerce-cart td.product-quantity {
    min-width: 70px !important;
    text-align: center !important;
}

body.woocommerce-cart td.product-quantity .quantity {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    max-width: 100% !important;
}

body.woocommerce-cart td.product-quantity input.qty {
    display: inline-block !important;

    width: 56px !important;
    min-width: 56px !important;
    height: 42px !important;

    margin: 0 !important;
    padding: 5px !important;

    border: 1px solid var(--uc-border) !important;
    border-radius: 6px !important;

    background: #fff !important;
    color: var(--uc-ink) !important;

    font-family: "Plus Jakarta Sans", sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-align: center !important;

    box-shadow: none !important;
    outline: none !important;
    transition: all .25s ease !important;
}

body.woocommerce-cart td.product-quantity input.qty:focus {
    border-color: var(--uc-wine) !important;
    box-shadow: 0 0 0 3px rgba(116,56,74,.1) !important;
}

/* Subtotal */

body.woocommerce-cart td.product-subtotal {
    min-width: 75px !important;
    color: var(--uc-ink) !important;
    text-align: right !important;
    white-space: nowrap !important;
    font-size: 12px !important;
    font-weight: 800 !important;
}

/* =========================================================
   7. COUPON AND UPDATE CART
========================================================= */

body.woocommerce-cart .woocommerce-cart-form table.shop_table td.actions {
    display: table-cell !important;
    width: 100% !important;
    padding: 20px !important;
    background: transparent !important;
    border: 0 !important;
    text-align: left !important;
}

body.woocommerce-cart td.actions .coupon {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 9px !important;

    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

body.woocommerce-cart td.actions .coupon input.input-text {
    flex: 1 1 140px !important;
    width: auto !important;
    min-width: 0 !important;
    height: 44px !important;

    margin: 0 !important;
    padding: 0 15px !important;

    border: 1px solid var(--uc-border) !important;
    border-radius: 5px !important;

    background: #fff !important;
    color: var(--uc-ink) !important;

    font-family: "Plus Jakarta Sans", sans-serif !important;
    font-size: 12px !important;
    box-shadow: none !important;
}

body.woocommerce-cart button[name="apply_coupon"],
body.woocommerce-cart td.actions .coupon button.button {
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 20px !important;

    border: 1px solid var(--uc-wine) !important;
    border-radius: 5px !important;

    background: var(--uc-wine) !important;
    color: #fff !important;

    font-family: "Plus Jakarta Sans", sans-serif !important;
    font-size: 11px !important;
    font-weight: 700 !important;

    cursor: pointer !important;
    transition: all .25s ease !important;
}

body.woocommerce-cart button[name="apply_coupon"]:hover {
    background: var(--uc-wine-dark) !important;
}

body.woocommerce-cart button[name="update_cart"] {
    display: block !important;
    float: none !important;

    width: 100% !important;
    min-height: 44px !important;

    margin: 12px 0 0 !important;
    padding: 10px 18px !important;

    border: 1px solid #c9aeb5 !important;
    border-radius: 5px !important;

    background: transparent !important;
    color: var(--uc-wine) !important;

    font-family: "Plus Jakarta Sans", sans-serif !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;

    cursor: pointer !important;
    transition: all .25s ease !important;
}

body.woocommerce-cart button[name="update_cart"]:hover:not(:disabled) {
    background: var(--uc-wine) !important;
    color: #fff !important;
}

/* =========================================================
   8. RIGHT COLUMN — WHAT YOU GET
========================================================= */

.uc-cart-goodies {
    width: 100% !important;
    box-sizing: border-box !important;

    margin: 0 0 18px !important;
    padding: 24px 22px !important;

    border: 1px solid var(--uc-border) !important;
    border-left: 4px solid var(--uc-wine) !important;
    border-radius: 10px !important;

    background: var(--uc-card) !important;
    box-shadow: 0 7px 22px rgba(50,30,25,.035) !important;
}

.uc-goodies-heading {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
}

.uc-goodies-symbol {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 39px !important;

    width: 39px !important;
    height: 39px !important;

    border-radius: 50% !important;
    background: var(--uc-wine) !important;
    color: #fff !important;
    font-size: 20px !important;
}

.uc-goodies-eyebrow {
    display: block !important;
    margin-bottom: 4px !important;

    color: #986879 !important;
    font-family: "Plus Jakarta Sans", sans-serif !important;
    font-size: 9px !important;
    font-weight: 800 !important;
    letter-spacing: 1.4px !important;
}

.uc-goodies-heading h3 {
    margin: 0 !important;
    color: var(--uc-ink) !important;
    font-family: "Playfair Display", Georgia, serif !important;
    font-size: 25px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

.uc-goodies-divider {
    width: 100% !important;
    height: 1px !important;
    margin: 17px 0 !important;
    background: var(--uc-border) !important;
}

.uc-goodies-items {
    display: flex !important;
    flex-direction: column !important;
    gap: 11px !important;

    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.uc-goodies-items li {
    display: flex !important;
    align-items: flex-start !important;
    gap: 9px !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #403632 !important;
    font-family: "Plus Jakarta Sans", sans-serif !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    line-height: 1.65 !important;
    list-style: none !important;
}

.uc-goodies-items li::before,
.uc-goodies-items li::marker {
    display: none !important;
    content: none !important;
}

.uc-goodies-check {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 19px !important;

    width: 19px !important;
    height: 19px !important;
    margin-top: 1px !important;

    border-radius: 50% !important;
    background: #f1e6e8 !important;
    color: var(--uc-wine) !important;

    font-size: 11px !important;
    font-weight: 800 !important;
}

/* =========================================================
   9. CART TOTALS CARD
========================================================= */

body.woocommerce-cart .cart-collaterals {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals {
    position: sticky !important;
    top: 25px !important;
    float: none !important;

    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 27px 24px !important;

    background: var(--uc-card) !important;
    border: 1px solid var(--uc-border) !important;
    border-radius: 10px !important;

    box-shadow: var(--uc-shadow) !important;
}

body.woocommerce-cart .cart_totals h2 {
    margin: 0 0 23px !important;
    padding: 0 !important;

    color: var(--uc-ink) !important;
    font-family: "Playfair Display", Georgia, serif !important;
    font-size: 29px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: -.5px !important;
}

body.woocommerce-cart .cart_totals table {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    border-collapse: collapse !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.woocommerce-cart .cart_totals table th,
body.woocommerce-cart .cart_totals table td {
    padding: 15px 0 !important;

    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid var(--uc-border) !important;

    font-family: "Plus Jakarta Sans", sans-serif !important;
    font-size: 12px !important;
    line-height: 1.6 !important;
}

body.woocommerce-cart .cart_totals table th {
    color: var(--uc-muted) !important;
    font-weight: 500 !important;
    text-align: left !important;
}

body.woocommerce-cart .cart_totals table td {
    color: var(--uc-ink) !important;
    font-weight: 700 !important;
    text-align: right !important;
}

body.woocommerce-cart .cart_totals tr.order-total th,
body.woocommerce-cart .cart_totals tr.order-total td {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
    color: var(--uc-wine) !important;
    font-size: 15px !important;
    font-weight: 800 !important;
}

/* Shipping details */

body.woocommerce-cart .cart_totals .woocommerce-shipping-destination {
    color: var(--uc-muted) !important;
    font-size: 11px !important;
    line-height: 1.7 !important;
}

body.woocommerce-cart .cart_totals .shipping-calculator-button {
    color: var(--uc-wine) !important;
    font-size: 11px !important;
    text-decoration: underline !important;
}

/* =========================================================
   10. CHECKOUT BUTTON
========================================================= */

body.woocommerce-cart .wc-proceed-to-checkout {
    margin: 24px 0 0 !important;
    padding: 0 !important;
}

body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    min-height: 54px !important;

    margin: 0 !important;
    padding: 15px 20px !important;

    background: var(--uc-wine) !important;
    color: #fff !important;

    border: 1px solid var(--uc-wine) !important;
    border-radius: 5px !important;

    font-family: "Plus Jakarta Sans", sans-serif !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: 1.2px !important;
    text-transform: uppercase !important;
    text-decoration: none !important;

    box-shadow: none !important;
    transition: all .25s ease !important;
}

body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
    background: var(--uc-wine-dark) !important;
    border-color: var(--uc-wine-dark) !important;
    color: #fff !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 22px rgba(116,56,74,.17) !important;
}

/* =========================================================
   11. EMPTY CART
========================================================= */

body.woocommerce-cart .cart-empty {
    margin: 0 !important;
    padding: 45px 25px !important;

    background: var(--uc-card) !important;
    color: var(--uc-ink) !important;

    border: 1px solid var(--uc-border) !important;
    border-radius: 9px !important;

    font-family: "Playfair Display", Georgia, serif !important;
    font-size: 27px !important;
    text-align: center !important;
}

body.woocommerce-cart .return-to-shop {
    margin: 22px 0 !important;
    text-align: center !important;
}

body.woocommerce-cart .return-to-shop a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    padding: 14px 24px !important;

    background: var(--uc-wine) !important;
    color: #fff !important;
    border-radius: 5px !important;

    font-family: "Plus Jakarta Sans", sans-serif !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

/* =========================================================
   12. TABLET
========================================================= */

@media (max-width: 1000px) {

    body.woocommerce-cart #primary,
    body.woocommerce-cart #primary.content-area {
        padding: 28px 24px 70px !important;
    }

    body.woocommerce-cart #primary .woocommerce {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-areas:
            "notices"
            "upsell"
            "cart"
            "summary" !important;
        gap: 18px !important;
    }

    body.woocommerce-cart .cart-collaterals .cart_totals {
        position: relative !important;
        top: auto !important;
    }

    body.woocommerce-cart .woocommerce-cart-form {
        border-radius: 9px !important;
    }
}

/* =========================================================
   13. MOBILE
========================================================= */

@media (max-width: 600px) {

    body.woocommerce-cart #primary,
    body.woocommerce-cart #primary.content-area {
        padding: 20px 14px 50px !important;
    }

    body.woocommerce-cart .entry-title {
        margin-bottom: 25px !important;
        font-size: 48px !important;
        letter-spacing: -1.5px !important;
    }

    body.woocommerce-cart #primary .woocommerce {
        display: flex !important;
        flex-direction: column !important;
        gap: 15px !important;
    }

    body.woocommerce-cart #primary .woocommerce > * {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
    }

    /* Notification */

    body.woocommerce-cart .woocommerce-message,
    body.woocommerce-cart .woocommerce-info,
    body.woocommerce-cart .woocommerce-error {
        padding: 15px 14px 15px 52px !important;
        font-size: 11px !important;
    }

    body.woocommerce-cart .woocommerce-info::before,
    body.woocommerce-cart .woocommerce-message::before {
        left: 13px !important;
        width: 25px !important;
        height: 25px !important;
    }

    /* Promotional banner */

    body.woocommerce-cart .uc-cart-upsell {
        flex-wrap: wrap !important;
        align-items: flex-start !important;
        gap: 12px !important;
        padding: 19px 16px !important;
    }

    .uc-upsell-symbol {
        flex-basis: 39px !important;
        width: 39px !important;
        height: 39px !important;
        font-size: 21px !important;
    }

    .uc-upsell-content {
        flex: 1 1 calc(100% - 55px) !important;
    }

    .uc-upsell-content h3 {
        font-size: 23px !important;
    }

    .uc-upsell-content p {
        font-size: 11px !important;
    }

    .uc-upsell-tier {
        margin-left: 51px !important;
        font-size: 8px !important;
    }

    /* Cart product table: horizontal scroll instead of overlap */

    body.woocommerce-cart .woocommerce-cart-form {
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }

    body.woocommerce-cart .woocommerce-cart-form table.shop_table {
        min-width: 570px !important;
    }

    body.woocommerce-cart .woocommerce-cart-form table.shop_table tbody tr.cart_item td {
        padding: 17px 8px !important;
    }

    body.woocommerce-cart td.product-thumbnail img {
        width: 65px !important;
        height: 88px !important;
    }

    body.woocommerce-cart td.product-name a {
        font-size: 20px !important;
    }

    body.woocommerce-cart td.product-quantity input.qty {
        width: 48px !important;
        min-width: 48px !important;
        height: 38px !important;
    }

    /* Coupon */

    body.woocommerce-cart .woocommerce-cart-form table.shop_table td.actions {
        padding: 15px !important;
    }

    body.woocommerce-cart td.actions .coupon {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    body.woocommerce-cart td.actions .coupon input.input-text,
    body.woocommerce-cart button[name="apply_coupon"] {
        width: 100% !important;
        flex: 1 1 auto !important;
    }

    /* Goodies */

    .uc-cart-goodies {
        padding: 20px 17px !important;
    }

    .uc-goodies-heading h3 {
        font-size: 24px !important;
    }

    .uc-goodies-items li {
        font-size: 11px !important;
    }

    /* Cart totals */

    body.woocommerce-cart .cart-collaterals .cart_totals {
        padding: 22px 18px !important;
    }

    body.woocommerce-cart .cart_totals h2 {
        font-size: 27px !important;
    }
}

/* =========================================================
   14. ACCESSIBILITY
========================================================= */

body.woocommerce-cart a:focus-visible,
body.woocommerce-cart button:focus-visible,
body.woocommerce-cart input:focus-visible {
    outline: 2px solid var(--uc-coral) !important;
    outline-offset: 3px !important;
}

@media (prefers-reduced-motion: reduce) {
    body.woocommerce-cart *,
    body.woocommerce-cart *::before,
    body.woocommerce-cart *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
    }
}




















































/* Remove unwanted white outline from checkout button */

body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:focus,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:active,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:focus-visible {
    outline: none !important;
    border: 1px solid #74384a !important;
    border-radius: 5px !important;
    box-shadow: none !important;
    background: #74384a !important;
    color: #ffffff !important;
}

/* Remove theme-generated decorative borders */

body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button::before,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button::after {
    content: none !important;
    display: none !important;
}

/* Keep hover clean */

body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
    background: #512536 !important;
    border-color: #512536 !important;
    transform: translateY(-2px) !important;
}