/* Momo Jord — editorial classic cart (body.woocommerce-cart). */

.woocommerce-cart .entry-title,
.woocommerce-cart .page-title,
.woocommerce-cart .woocommerce-products-header__title{
  font-family:var(--ff-display); font-weight:var(--display-weight);
  font-size:clamp(36px,4.6vw,60px); letter-spacing:-.02em; line-height:1;
}

/* Two-column: cart table | sticky summary (Shoptimizer wraps both in .shoptimizer-cart-wrapper) */
@media (min-width:981px){
  .woocommerce-cart .shoptimizer-cart-wrapper{
    display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:48px; align-items:start;
  }
  .woocommerce-cart .shoptimizer-cart-wrapper form.woocommerce-cart-form{ grid-column:1; margin:0; }
  .woocommerce-cart .shoptimizer-cart-wrapper .cart-collaterals{
    grid-column:2; width:auto !important; position:sticky; top:108px;
  }
}
.woocommerce-cart .cart-collaterals,
.woocommerce-cart .cart-collaterals .cart_totals{ width:100% !important; float:none !important; }

/* Cart table */
.woocommerce-cart table.cart,
.woocommerce-cart table.shop_table{
  border:1px solid var(--hairline); border-radius:10px; border-collapse:separate; overflow:hidden; background:var(--card);
}
.woocommerce-cart table.cart th{
  font-family:var(--ff-mono); font-size:10px; letter-spacing:.12em; text-transform:uppercase; color:var(--ink-mute);
  background:var(--paper-2);
}
.woocommerce-cart table.cart td{ vertical-align:middle; }
.woocommerce-cart table.cart td.product-thumbnail img{ width:74px; height:74px; object-fit:cover; border-radius:6px; }
.woocommerce-cart table.cart td.product-name a{ font-family:var(--ff-display); font-weight:var(--display-weight); font-size:18px; color:var(--ink); }
.woocommerce-cart table.cart .amount{ font-family:var(--ff-display); font-weight:var(--display-weight); }
.woocommerce-cart table.cart .product-remove a{ color:var(--ink-mute); }

/* Coupon + update buttons */
.woocommerce-cart .coupon .button,
.woocommerce-cart button[name="update_cart"]{
  border-radius:999px !important; background:transparent !important; color:var(--ink) !important;
  border:1px solid var(--hairline-strong) !important; font-family:var(--ff-sans);
}
.woocommerce-cart .coupon input#coupon_code{ border:1px solid var(--hairline-strong); border-radius:999px; padding:10px 16px; }

/* Summary panel */
.woocommerce-cart .cart-collaterals{ background:var(--paper-2); border:1px solid var(--hairline); border-radius:12px; padding:26px; }
.woocommerce-cart .cart_totals h2{ font-family:var(--ff-display); font-weight:var(--display-weight); font-size:26px; letter-spacing:-.01em; margin-bottom:14px; }
.woocommerce-cart .cart_totals table{ border:0; }
.woocommerce-cart .cart_totals .order-total th{ font-family:var(--ff-sans); font-weight:600; }
.woocommerce-cart .cart_totals .order-total .amount{ font-family:var(--ff-display); font-weight:var(--display-weight); font-size:26px; color:var(--ink); }
.woocommerce-cart .checkout-button,
.woocommerce-cart .wc-proceed-to-checkout .button{
  background:var(--brand) !important; color:#fff !important; border:0 !important;
  border-radius:999px !important; font-family:var(--ff-sans); font-weight:500; padding:15px 24px !important;
  width:100%; text-align:center;
}
.woocommerce-cart .checkout-button:hover{ background:var(--brand-deep) !important; }

@media (max-width:980px){
  .woocommerce-cart table.cart td.product-thumbnail img{ width:56px; height:56px; }
}

/* keep prices on one line in the narrow columns */
.woocommerce-cart table.cart td.product-subtotal,
.woocommerce-cart table.cart td.product-price,
.woocommerce-cart .cart_totals .amount{ white-space:nowrap; }
.woocommerce-cart .cart_totals .order-total .amount{ font-size:22px; }

/* ---- Branded empty cart (replaces WooCommerce's bare return-to-shop button) ---- */
.woocommerce-cart .cart-empty.woocommerce-info,
.woocommerce-cart .return-to-shop{ display:none !important; }
.mj-scope.mj-empty-cart{ background:var(--card); border:1px solid var(--hairline); border-radius:12px; padding:72px 24px; text-align:center; max-width:680px; margin:8px auto 48px; }
.mj-scope.mj-empty-cart .mj-empty-eyebrow{ display:block; font-family:var(--ff-mono); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--ink-mute); margin-bottom:14px; }
.mj-scope.mj-empty-cart h2{ font-family:var(--ff-display); font-weight:var(--display-weight); font-size:clamp(30px,4vw,46px); letter-spacing:-.015em; line-height:1.05; margin:0 0 12px; color:var(--ink); }
.mj-scope.mj-empty-cart h2 em{ font-style:italic; color:var(--brand); }
.mj-scope.mj-empty-cart > p{ color:var(--ink-mute); font-size:16px; line-height:1.6; max-width:44ch; margin:0 auto 26px; }
.mj-scope.mj-empty-cart .mj-empty-ctas{ display:flex; gap:10px; justify-content:center; flex-wrap:wrap; }
.mj-scope.mj-empty-cart .mj-btn{ display:inline-flex; align-items:center; justify-content:center; padding:14px 26px; border-radius:999px; font-family:var(--ff-sans); font-weight:600; font-size:15px; cursor:pointer; }
.mj-scope.mj-empty-cart .mj-btn-primary{ background:var(--brand); color:#fff; border:0; }
.mj-scope.mj-empty-cart .mj-btn-primary:hover{ background:var(--brand-deep); color:#fff; }
.mj-scope.mj-empty-cart .mj-btn-ghost{ background:transparent; color:var(--ink); border:1px solid var(--hairline-strong); }
.mj-scope.mj-empty-cart .mj-btn-ghost:hover{ border-color:var(--ink); }
.mj-scope.mj-empty-cart .mj-empty-trust{ margin:26px auto 0; font-family:var(--ff-mono); font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:var(--ink-mute); }
@media (max-width:600px){ .mj-scope.mj-empty-cart{ padding:48px 18px; margin-bottom:32px; } }

/* Cell padding so cart items + coupon row aren't flush against the card edge
   (was 0 → looked edge-to-edge and inconsistent with the padded summary card). */
.woocommerce-cart table.cart th{ padding:12px 16px; }
.woocommerce-cart table.cart td{ padding:14px 16px; }
.woocommerce-cart table.cart td.product-thumbnail{ padding-right:6px; }
.woocommerce-cart table.cart td.actions{ padding:16px; }
.woocommerce-cart .coupon{ display:flex; gap:8px; flex-wrap:wrap; }
.woocommerce-cart .coupon input#coupon_code{ flex:1 1 auto; min-width:0; }
