.cart-page__header{margin-bottom:var(--space-8)}
.cart-page__header .eyebrow{margin-bottom:var(--space-2)}
.cart-page__header h1{margin-bottom:.875rem}
.cart-page__intro{margin:0;color:var(--color-charcoal-650);font-family:var(--font-body);font-size:1.1875rem;font-weight:400;line-height:1.45}
.cart-form{display:grid;grid-template-columns:minmax(0,2fr) minmax(18rem,1fr);gap:clamp(var(--space-8),4vw,var(--space-12));align-items:start;max-width:80rem;margin-inline:auto}
.cart-items{display:grid;gap:1.25rem;min-width:0}
.cart-item{display:grid;grid-template-columns:8.25rem minmax(0,1fr) auto;gap:1.25rem;align-items:start;padding:1.25rem;border:1px solid var(--color-sand-300);border-radius:var(--radius-card);background:var(--color-cream-50)}
.cart-item__media{display:block;width:8.25rem;aspect-ratio:1;border-radius:var(--radius-card);background:var(--color-cream-100);overflow:hidden}
.cart-item__media img{width:100%;height:100%;object-fit:contain}
.cart-item__placeholder{display:block;width:100%;height:100%;background:linear-gradient(135deg,var(--color-cream-100),var(--momo-soft-sage))}
.cart-item__details{min-width:0}
.cart-item__title{margin:0 0 var(--space-2);font-family:var(--font-body);font-size:1.2rem;font-weight:600;line-height:1.35}
.cart-item__title a{text-decoration:none}
.cart-item__title a:hover{text-decoration:underline;text-decoration-thickness:1px}
.cart-item__variant,.cart-item__unit-price{margin:0;color:var(--color-charcoal-650);font-size:.9rem;line-height:1.5}
.cart-item__variant{margin-bottom:var(--space-1)}
.cart-item__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin-top:var(--space-4)}
.cart-quantity{display:grid;grid-template-columns:2.75rem 2.75rem 2.75rem;align-items:center;border:1px solid var(--color-sand-300);border-radius:var(--radius-control);background:white;overflow:hidden}
.cart-quantity button,.cart-quantity input{width:2.75rem;height:2.75rem;border:0;background:transparent;color:var(--color-charcoal-900);text-align:center}
.cart-quantity button{cursor:pointer;font-size:1.15rem}
.cart-quantity button:hover{background:var(--momo-soft-sage)}
.cart-quantity input{border-inline:1px solid var(--color-sand-300);appearance:textfield;-moz-appearance:textfield}
.cart-quantity input::-webkit-inner-spin-button,.cart-quantity input::-webkit-outer-spin-button{margin:0;appearance:none}
.cart-item__remove{min-height:44px;display:inline-flex;align-items:center;color:var(--color-charcoal-650);font-size:.88rem;text-underline-offset:.2em}
.cart-item__line-total{display:grid;gap:var(--space-1);margin:0;text-align:right;white-space:nowrap}
.cart-item__line-total span{font-size:.75rem;color:var(--color-charcoal-650)}
.cart-item__line-total strong{font-size:1.05rem}
.cart-summary{position:sticky;top:var(--space-6);padding:1.5rem;border:1px solid var(--color-sand-300);border-radius:var(--radius-card);background:color-mix(in srgb,var(--momo-soft-sage) 28%,var(--color-cream-50));box-shadow:0 12px 30px rgba(41,43,39,.06)}
.cart-summary h2{margin-bottom:var(--space-6);font-size:clamp(1.55rem,2.5vw,2rem)}
.cart-summary__subtotal{display:flex;justify-content:space-between;gap:var(--space-4);padding-block:var(--space-4);border-block:1px solid var(--color-sand-300)}
.cart-summary__subtotal strong{font-size:1.15rem}
.cart-summary__note{margin:var(--space-4) 0;color:var(--color-charcoal-650);font-size:.88rem;line-height:1.5}
.cart-summary__checkout{width:100%;min-height:3.25rem;background:var(--color-sage-700)}
.cart-summary__checkout:hover{background:var(--color-charcoal-900)}
.cart-summary__continue{display:flex;min-height:44px;align-items:center;justify-content:center;margin-top:var(--space-3);font-weight:600;text-underline-offset:.2em}
@media(max-width:47.99rem){.cart-page__header{margin-bottom:var(--space-6)}.cart-form{grid-template-columns:1fr;gap:var(--space-8)}.cart-item{grid-template-columns:6rem minmax(0,1fr);gap:var(--space-4);padding:var(--space-4)}.cart-item__media{width:6rem}.cart-item__line-total{grid-column:2;text-align:left}.cart-item__line-total span{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.cart-item__actions{gap:var(--space-3)}.cart-summary{position:static;padding:1.25rem}.cart-summary__checkout{min-height:3.25rem}}
@media(max-width:23rem){.cart-item{grid-template-columns:5.5rem minmax(0,1fr);padding:.875rem}.cart-item__media{width:5.5rem}.cart-item__actions{align-items:flex-start;flex-direction:column;gap:var(--space-1)}}
@media(max-width:47.99rem){.cart-page__intro{font-size:1.125rem}}
