/* CART & CHECKOUT */
.cart-wrap{padding:48px 0 80px}
.cart-grid{display:grid;grid-template-columns:1fr 380px;gap:48px;align-items:start}
.cart-section h2{font-family:var(--serif);font-size:28px;font-weight:300;margin-bottom:8px}
.cart-section .sub{color:var(--stone);font-size:13px;margin-bottom:28px}
.cart-list{border-top:1px solid var(--stone-ll)}
.cart-item{display:grid;grid-template-columns:120px 1fr auto;gap:24px;padding:28px 0;border-bottom:1px solid var(--stone-ll);align-items:center}
.cart-item-img{aspect-ratio:1/1;border-radius:var(--r);overflow:hidden;background:var(--ivory-d)}
.cart-item-img img{width:100%;height:100%}
.cart-item-info .brand{font-family:var(--serif);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px}
.cart-item-info .name{font-size:14px;color:var(--ink);line-height:1.5;margin-bottom:6px}
.cart-item-info .cond{font-size:12px;color:var(--stone);margin-bottom:8px}
.cart-item-info .price{font-family:var(--serif);font-size:18px;font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:.005em}
.cart-item-actions{display:flex;flex-direction:column;align-items:flex-end;gap:14px}
.qty-ctrl{display:flex;align-items:center;border:1px solid var(--stone-ll);border-radius:var(--r);overflow:hidden}
.qty-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--ink-3);transition:background var(--tr)}
.qty-btn:hover{background:var(--ivory)}
.qty-val{width:36px;text-align:center;font-size:14px;font-weight:500}
.cart-rm{font-size:12px;color:var(--stone);text-decoration:underline;text-underline-offset:3px}
.cart-rm:hover{color:var(--burgundy)}
.cart-empty{text-align:center;padding:80px 0;color:var(--stone)}
.cart-empty h3{font-family:var(--serif);font-size:24px;color:var(--ink-2);font-weight:400;margin-bottom:14px}
.cart-empty a{display:inline-block;margin-top:24px;padding:14px 32px;background:var(--ink);color:var(--gold-l);font-size:13px;letter-spacing:.12em;text-transform:uppercase;border-radius:var(--r)}

.cart-summary{position:sticky;top:90px;background:var(--ivory);border-radius:var(--r);padding:32px}
.cart-summary h3{font-family:var(--serif);font-size:22px;font-weight:400;margin-bottom:24px;padding-bottom:18px;border-bottom:1px solid var(--stone-ll)}
.sum-row{display:flex;justify-content:space-between;align-items:baseline;padding:12px 0;font-size:14px;color:var(--ink-2)}
.sum-row > span:last-child{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}
.sum-row.total{padding-top:18px;margin-top:8px;border-top:1px solid var(--stone-ll);font-family:var(--serif);font-size:22px;font-weight:600;color:var(--ink)}
.sum-row.total .price{color:var(--burgundy);font-variant-numeric:tabular-nums;letter-spacing:.005em}
.checkout-btn{display:block;width:100%;padding:18px;margin-top:24px;background:var(--ink);color:var(--gold-l);font-size:14px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;border-radius:var(--r);text-align:center;transition:all var(--tr)}
.checkout-btn:hover{background:var(--gold);color:var(--ink)}
.coupon-row{display:flex;gap:8px;margin:18px 0}
.coupon-row input{flex:1;padding:12px 14px;border:1px solid var(--stone-ll);border-radius:var(--r);font-size:13px;font-family:inherit}
.coupon-row button{padding:12px 18px;border:1px solid var(--ink);font-size:12px;letter-spacing:.08em;text-transform:uppercase;border-radius:var(--r);transition:all var(--tr)}
.coupon-row button:hover{background:var(--ink);color:var(--gold-l)}

@media(max-width:900px){
  .cart-grid{grid-template-columns:1fr}
  .cart-summary{position:static}
  .cart-item{grid-template-columns:90px 1fr;gap:14px}
  .cart-item-actions{grid-column:1/-1;flex-direction:row;justify-content:space-between}
}
