/* Aurora: compact cart on phones */
@media (max-width:768px){
  .woocommerce-cart table.shop_table_responsive.cart thead{display:none!important}
  .woocommerce-cart table.cart{border:0!important; margin:0!important}
  .woocommerce-cart table.cart tr.cart_item{
    display:grid!important; grid-template-columns:54px auto minmax(0,1fr) auto;
    grid-template-areas:"thumb name name remove" "thumb price qty sub";
    gap:2px 10px; align-items:center; padding:8px 10px!important;
    border:1px solid #004B49!important; margin-top:-1px; background:#faf7f2;
  }
  .woocommerce-cart table.cart tr.cart_item:first-of-type{ margin-top:0; }
  .woocommerce-cart table.cart tr.cart_item td{ display:block!important; border:0!important; padding:0!important; margin:0!important; text-align:left!important; width:auto!important; min-width:0; background:transparent!important; }
  .woocommerce-cart table.cart tr.cart_item td::before{ display:none!important; content:none!important; }
  .woocommerce-cart table.cart td.product-remove{ grid-area:remove; justify-self:end; align-self:start; }
  .woocommerce-cart table.cart td.product-remove a.remove{ width:22px!important; height:22px!important; line-height:20px!important; font-size:16px!important; }
  .woocommerce-cart table.cart td.product-thumbnail{ grid-area:thumb; align-self:center; }
  .woocommerce-cart table.cart td.product-thumbnail img{ width:54px!important; height:54px!important; object-fit:cover; max-width:100%; }
  .woocommerce-cart table.cart td.product-name{ grid-area:name; font-weight:600; font-size:.92rem; line-height:1.25; }
  .woocommerce-cart table.cart td.product-price{ grid-area:price; font-size:.8rem; opacity:.75; white-space:nowrap; }
  .woocommerce-cart table.cart td.product-quantity{ grid-area:qty; justify-self:start; }
  .woocommerce-cart table.cart td.product-quantity .quantity{ margin:0!important; }
  .woocommerce-cart table.cart td.product-quantity input.qty{ width:52px!important; height:32px!important; min-height:0!important; padding:2px 4px!important; font-size:.9rem; }
  .woocommerce-cart table.cart td.product-subtotal{ grid-area:sub; justify-self:end; font-weight:700; font-size:.92rem; white-space:nowrap; }
  .woocommerce-cart table.cart td.actions{ display:flex!important; flex-direction:column; gap:8px; padding:10px 0 0!important; border:0!important; width:100%!important; box-sizing:border-box; }
  .woocommerce-cart table.cart td.actions .coupon{ display:flex!important; flex-wrap:nowrap; gap:8px; margin:0!important; padding:0!important; float:none!important; width:100%!important; box-sizing:border-box; }
  .woocommerce-cart table.cart td.actions .coupon label{ display:none!important; }
  .woocommerce-cart table.cart td.actions .coupon input.input-text{ flex:1 1 auto; min-width:0; width:auto!important; height:42px!important; margin:0!important; box-sizing:border-box; }
  .woocommerce-cart table.cart td.actions .coupon .button{ flex:0 0 auto; width:auto!important; height:42px!important; padding:0 16px!important; margin:0!important; white-space:nowrap; font-size:.88rem; line-height:1!important; }
  .woocommerce-cart table.cart td.actions > .button, .woocommerce-cart table.cart td.actions > a.continue-shopping{
    display:flex!important; align-items:center; justify-content:center; width:100%!important; height:42px!important; min-height:0!important;
    padding:0 16px!important; margin:0!important; float:none!important; font-size:.9rem; line-height:1!important; box-sizing:border-box; white-space:nowrap;
  }
  .woocommerce-cart .cart-collaterals .cart_totals{ width:100%!important; float:none!important; }
  .woocommerce-cart .wc-proceed-to-checkout .checkout-button{ width:100%!important; margin:0!important; box-sizing:border-box; }
  .woocommerce-cart table.cart td.actions .coupon::before, .woocommerce-cart table.cart td.actions .coupon::after, .woocommerce-cart table.cart td.actions::before, .woocommerce-cart table.cart td.actions::after{ display:none!important; content:none!important; }
  .woocommerce-cart .cart-collaterals .cart_totals{ padding-left:12px!important; padding-right:12px!important; box-sizing:border-box; }
  .woocommerce-cart .cart-collaterals .cart_totals h2{ margin-left:-12px!important; margin-right:-12px!important; }
  /* Theme makes <body> a CSS grid whose column grows to the widest content (page ~1000px wide on phones). Pin it to the screen. */
  body.woocommerce-cart{ grid-template-columns:minmax(0,1fr)!important; overflow-x:clip; }
  body.woocommerce-cart #page, body.woocommerce-cart #content, body.woocommerce-cart .ast-container, body.woocommerce-cart #primary,
  body.woocommerce-cart .woocommerce, body.woocommerce-cart form.woocommerce-cart-form, body.woocommerce-cart table.cart, body.woocommerce-cart table.cart tbody{ min-width:0; max-width:100%; box-sizing:border-box; }
  .woocommerce-cart table.cart{ width:100%!important; table-layout:fixed; display:block!important; }
  .woocommerce-cart table.cart tbody{ display:block!important; width:100%; }
  .woocommerce-cart table.cart tr.cart_item{ width:100%; box-sizing:border-box; }
  .woocommerce-cart table.cart tr:not(.cart_item){ display:block!important; width:100%; }
  .woocommerce-cart table.cart td.product-name{ min-width:0; overflow-wrap:anywhere; }
  .woocommerce-cart table.cart tr.cart_item > td{ max-width:100%; }
  .woocommerce-cart .woocommerce{ padding-left:0; padding-right:0; }
  /* Gap under the "Cart" title: a site-wide rule adds 115px top padding to the first block in the page content,
     and WooCommerce turns .woocommerce into a grid on phones (which also made the page wider than the screen). */
  body.woocommerce-cart:not(.single-post) .entry-content:not(.wc-tab) > .woocommerce:first-child{ padding-top:0!important; display:block!important; }
  .woocommerce-cart .cart-collaterals{ margin-top:14px!important; }
}
