/* Classic cart only; typography and button appearance come from shared styles. */
body.woocommerce-cart #content {
    --cart-border:var(--e-global-color-chlborder,#ededed);
    --cart-green:var(--e-global-color-primary,#183921);
}
body.woocommerce-cart #content > .page-content > .elementor > .e-con {
    width:calc(100% - 64px); max-width:1576px; margin:32px auto 80px;
}
body.woocommerce-cart #content .woocommerce:has(> .woocommerce-cart-form) {
    display:grid; grid-template-columns:minmax(0,1fr) minmax(320px,.48fr);
    gap:32px 48px; align-items:start;
}
body.woocommerce-cart #content .woocommerce:has(> .woocommerce-cart-form)::before,
body.woocommerce-cart #content .woocommerce:has(> .woocommerce-cart-form)::after { display:none; }
body.woocommerce-cart #content .woocommerce > .woocommerce-notices-wrapper { grid-column:1 / -1; }
body.woocommerce-cart #content .woocommerce > .woocommerce-notices-wrapper:empty { display:none; }
body.woocommerce-cart #content :is(.woocommerce-cart-form,.cart-collaterals,.cart_totals) {
    float:none; width:100%; min-width:0; margin:0;
}
body.woocommerce-cart #content table.shop_table { border:0; border-collapse:collapse; border-radius:0; margin:0; }
body.woocommerce-cart #content table.shop_table :is(th,td) {
    background:transparent; border:0; border-bottom:1px solid var(--cart-border);
    padding:20px 12px; vertical-align:middle;
}
body.woocommerce-cart #content table.shop_table th { font-weight:500; }
body.woocommerce-cart #content .product-thumbnail { width:100px; }
body.woocommerce-cart #content .product-thumbnail img { width:80px; max-width:none; height:100px; object-fit:contain; }
body.woocommerce-cart #content .product-name a { color:inherit; text-decoration:none; line-height:1.6; }
body.woocommerce-cart #content :is(.product-price,.product-subtotal) { white-space:nowrap; }
body.woocommerce-cart #content a.remove {
    display:inline-flex; align-items:center; justify-content:center; width:32px; height:32px;
    color:var(--cart-green)!important; background:transparent; font-size:22px; font-weight:400;
}
body.woocommerce-cart #content a.remove:hover { color:#fff!important; background:var(--cart-green); }
body.woocommerce-cart #content :is(input.input-text,select) {
    min-height:50px; border:1px solid var(--cart-border); border-radius:4px;
    padding:12px; color:inherit; background:#fff; font:inherit; box-sizing:border-box; max-width:100%;
}
body.woocommerce-cart #content input.qty { width:76px; text-align:center; }
body.woocommerce-cart #content :is(input,select):focus-visible { outline:2px solid var(--cart-green); outline-offset:2px; }
body.woocommerce-cart #content .cart td.actions { padding:24px 0; border:0; text-align:right; }
body.woocommerce-cart #content .coupon { display:flex; gap:12px; flex-wrap:wrap; float:none; margin-bottom:20px; }
body.woocommerce-cart #content .coupon #coupon_code { width:180px; margin:0; }
body.woocommerce-cart #content .coupon .button { float:none; width:auto; }
body.woocommerce-cart #content .cart_totals { border:1px solid var(--cart-border); padding:28px; box-sizing:border-box; }
body.woocommerce-cart #content .cart_totals h2 { margin:0 0 24px; }
body.woocommerce-cart #content .cart_totals :is(th,td) { padding:16px 0; }
body.woocommerce-cart #content .cart_totals th { width:35%; padding-right:16px; }
body.woocommerce-cart #content .cart_totals td { text-align:right; }
body.woocommerce-cart #content .cart_totals .shipping td { text-align:left; }
body.woocommerce-cart #content .woocommerce-shipping-destination { font-size:.875em; margin:12px 0; }
body.woocommerce-cart #content .shipping-calculator-button { color:var(--cart-green); text-underline-offset:3px; }
body.woocommerce-cart #content .shipping-calculator-form .form-row { padding:0; margin:0 0 16px; }
body.woocommerce-cart #content .order-total { font-size:1.125em; }
body.woocommerce-cart #content .wc-proceed-to-checkout { padding:24px 0 0; }
body.woocommerce-cart #content .wc-proceed-to-checkout .checkout-button { display:flex; width:100%; margin:0; box-sizing:border-box; }
body.woocommerce-cart #content .cross-sells { float:none; width:100%; margin-bottom:32px; }
@media(max-width:1100px) {
    body.woocommerce-cart #content .woocommerce:has(> .woocommerce-cart-form) { grid-template-columns:1fr; gap:32px; }
}
@media(max-width:767px) {
    body.woocommerce-cart #content > .page-content > .elementor > .e-con { width:calc(100% - 32px); margin:24px auto 56px; }
    body.woocommerce-cart #content .cart thead { display:none; }
    body.woocommerce-cart #content .cart tr.cart_item {
        display:grid; grid-template-columns:80px minmax(0,1fr) 32px;
        gap:12px; padding:20px 0; border-bottom:1px solid var(--cart-border);
    }
    body.woocommerce-cart #content .cart tr.cart_item td { border:0; padding:0; background:transparent!important; text-align:left!important; min-width:0; }
    body.woocommerce-cart #content .cart .product-thumbnail { display:block; grid-column:1; grid-row:1 / 5; width:auto; }
    body.woocommerce-cart #content .cart .product-thumbnail::before,
    body.woocommerce-cart #content .cart .product-name::before { display:none; }
    body.woocommerce-cart #content .cart .product-name { grid-column:2; grid-row:1; }
    body.woocommerce-cart #content .cart .product-remove { grid-column:3; grid-row:1; }
    body.woocommerce-cart #content .cart :is(.product-price,.product-quantity,.product-subtotal) { grid-column:2 / 4; display:flex; align-items:center; justify-content:space-between; gap:12px; }
    body.woocommerce-cart #content .cart td::before { font-weight:400; }
    body.woocommerce-cart #content .cart td.actions { display:block; }
    body.woocommerce-cart #content .coupon { display:grid; grid-template-columns:1fr; }
    body.woocommerce-cart #content .coupon #coupon_code,
    body.woocommerce-cart #content .cart .actions .button,
    body.woocommerce-cart #content .woocommerce table.cart td.actions .coupon .button { width:100%; }
    body.woocommerce-cart #content .cart_totals { padding:20px; }
    body.woocommerce-cart #content .cart_totals table tr { display:block; }
    body.woocommerce-cart #content .cart_totals table th { display:none; }
    body.woocommerce-cart #content .cart_totals table td { display:block; text-align:right; background:transparent; }
    body.woocommerce-cart #content .cart_totals table td::before { font-weight:500; margin-right:12px; }
    body.woocommerce-cart #content .cart_totals .shipping td::before { display:block; float:none; margin:0 0 12px; text-align:left; }
}
