.cg-cart-page { box-sizing: border-box; width: 100%; min-width: 0; padding-block: var(--cg-space-6); background: var(--cg-cream); color: var(--cg-forest); }
.cg-cart-page *, .cg-cart-page *::before, .cg-cart-page *::after { box-sizing: border-box; }
.cg-cart-page h1 { font-size: var(--cg-text-title); margin: 0 0 var(--cg-space-5); }
.cg-cart-layout { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr); gap: var(--cg-space-6); align-items: start; }
.cg-cart-page .woocommerce-cart-form, .cg-cart-page .cart-collaterals { min-width: 0; }
.cg-cart-page .cart-collaterals .cart_totals { float: none; width: 100%; }
.cg-cart-count { margin: 0 0 var(--cg-space-4); }
.cg-cart-items, .cg-cart-items tbody { display: block; width: 100%; border: 0; border-collapse: collapse; }
.cg-cart-item { display: grid; grid-template-columns: minmax(7rem, .75fr) minmax(0, 1.5fr) minmax(7rem, 1fr); gap: var(--cg-space-3) var(--cg-space-4); padding-block: var(--cg-space-5); border-top: var(--cg-border-fine) solid var(--cg-sand); align-items: start; }
.cg-cart-item td { padding: 0; min-width: 0; border: 0; overflow-wrap: anywhere; }
.cg-cart-item__image { grid-row: 1 / 4; }
.cg-cart-item__image img { display: block; width: 100%; height: auto; aspect-ratio: 1.2; object-fit: contain; mix-blend-mode: multiply; }
.cg-cart-item__info { grid-column: 2 / -1; }
.cg-cart-item__info h2 { margin: 0 0 var(--cg-space-2); }
.cg-cart-item__info p { margin: var(--cg-space-1) 0; font-size: var(--cg-text-small); }
.cg-cart-page a { color: var(--cg-forest); }
.cg-cart-item__info dl { display: flex; flex-wrap: wrap; gap: var(--cg-space-1) var(--cg-space-2); font-size: var(--cg-text-small); margin: var(--cg-space-2) 0; }
.cg-cart-item__info dd { margin: 0; }
.cg-cart-item__quantity { grid-column: 2; }
.cg-cart-item__subtotal { grid-column: 3; align-self: center; font-weight: var(--cg-weight-section); }
.cg-cart-item__subtotal > span:first-child { display: block; font-size: var(--cg-text-caption); font-weight: var(--cg-weight-body); }
.cg-cart-item__remove { grid-column: 2 / -1; }
.cg-cart-page .woocommerce a.remove.cg-cart-remove { display: inline-flex; align-items: center; width: auto; height: var(--cg-button-height); border-radius: 0; font-size: var(--cg-text-small); font-weight: var(--cg-weight-body); color: var(--cg-forest) !important; background: transparent; text-decoration: underline; }
.cg-cart-quantity { display: inline-flex; align-items: center; max-width: 100%; gap: var(--cg-space-1); }
.cg-cart-quantity .quantity { float: none; margin: 0; }
.cg-cart-page .woocommerce .quantity input.qty { width: 3.5rem; min-height: var(--cg-button-height); font: inherit; background: var(--cg-cream); border: var(--cg-border-fine) solid var(--cg-forest); border-radius: var(--cg-radius-control); color: var(--cg-forest); }
.cg-quantity-step { display: inline-flex; align-items: center; justify-content: center; width: var(--cg-button-height); height: var(--cg-button-height); padding: 0; flex: none; border: var(--cg-border-fine) solid var(--cg-forest); border-radius: var(--cg-radius-pill); background: var(--cg-cream); color: var(--cg-forest); font: inherit; cursor: pointer; }
.cg-quantity-step[hidden] { display: none; }
.cg-cart-form-actions { display: flex; flex-wrap: wrap; gap: var(--cg-space-4); margin-block: var(--cg-space-4); }
.cg-cart-page .cg-button--secondary { --cg-button-bg: var(--cg-cream); --cg-button-fg: var(--cg-forest); --cg-button-border: var(--cg-forest); }
.cg-cart-page .cg-empty-cart-form .cg-button--tertiary,
.cg-cart-page .cg-cart-form-actions > .cg-button--tertiary { --cg-button-border: var(--cg-forest); }
.cg-cart-coupon { margin-block: var(--cg-space-5); }
.cg-cart-coupon summary { min-height: var(--cg-button-height); cursor: pointer; }
.cg-cart-coupon input { margin-block: var(--cg-space-2); }
.cg-cart-summary { padding: var(--cg-space-5); border: var(--cg-border-fine) solid var(--cg-sand); border-radius: var(--cg-radius-control); }
.cg-cart-summary h2 { margin: 0 0 var(--cg-space-5); }
.cg-cart-summary dl > div { display: flex; justify-content: space-between; gap: var(--cg-space-4); margin-block: var(--cg-space-3); }
.cg-cart-summary dd { margin: 0; text-align: right; }
.cg-cart-summary .cg-cart-total { border-top: var(--cg-border-fine) solid var(--cg-sand); padding-top: var(--cg-space-4); font-weight: var(--cg-weight-title); }
.cg-whatsapp-order-form .cg-button, .cg-empty-cart-form .cg-button { width: 100%; }
.cg-cart-summary .cg-empty-cart-form { margin-top: var(--cg-space-4); }
.cg-cart-summary p { font-size: var(--cg-text-small); }
.cg-cart-page :is(a, button, input, summary):focus-visible { outline: var(--cg-focus-width) solid var(--cg-sea); outline-offset: var(--cg-focus-offset); }
@media (max-width: 64rem) { .cg-cart-layout { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 40rem) {
  .cg-cart-item { grid-template-columns: minmax(5rem, .6fr) minmax(0, 1.4fr); }
  .cg-cart-item__image { grid-row: 1; }
  .cg-cart-item__info { grid-column: 2; }
  .cg-cart-item__quantity { grid-column: 1 / -1; }
  .cg-cart-item__subtotal { grid-column: 1 / -1; }
  .cg-cart-item__subtotal > span:first-child { display: inline; }
  .cg-cart-item__remove { grid-column: 1 / -1; }
  .cg-cart-summary { padding: var(--cg-space-4); }
}

.cg-empty-cart-form { margin-top: var(--cg-space-4); }

.cg-cart-page .cart-collaterals, .cg-cart-summary, .cg-whatsapp-order-form { width: 100%; max-width: 100%; min-width: 0; }
.cg-cart-summary dl > div { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.cg-cart-summary :is(dt, dd, .amount) { min-width: 0; overflow-wrap: anywhere; }
.cg-cart-summary .cg-button { max-width: 100%; --cg-button-padding-x: var(--cg-space-2); }

.cg-cart-summary .amount { white-space: normal; }
