/* LACORDE · native WooCommerce cart and checkout. Payment fields remain provider-owned. */
.header-tools { grid-column: 3; grid-row: 1; justify-self: end; display: flex; align-items: center; gap: 26px; }
.header-tools .language-picker { justify-self: auto; }
.header-cart { display: inline-flex; min-height: 44px; gap: 9px; align-items: center; font: 12px/1.5 var(--sans); }
.header-cart svg { flex: 0 0 auto; }
.header-cart:hover .header-cart-label { text-decoration: underline; text-underline-offset: 5px; }
.site-header--checkout { grid-template-rows: 90px; position: relative; top: auto; }
.admin-bar .site-header--checkout { top: auto; }
.checkout-back { grid-column: 1; grid-row: 1; display: inline-flex; gap: 12px; align-items: center; min-height: 44px; width: fit-content; font: 12px/1.5 var(--sans); }
.checkout-back:hover { text-decoration: underline; text-underline-offset: 5px; }
.site-footer--checkout { padding-top: 24px; }
.site-footer--checkout .footer-bottom { border-top: 0; padding-top: 0; }
.lc-product-info .lc-product-delivery { font: 12px/1.9 var(--sans); color: var(--muted); margin-top: 24px; }
.lc-product-info form.cart { display: flex; flex-wrap: wrap; gap: 14px; align-items: center; margin: 0 0 20px; }
.lc-product-info form.cart::before, .lc-product-info form.cart::after { display: none; }
.lc-product-info form.cart .quantity { margin: 0; }
.lc-product-info form.cart .quantity .qty { width: 66px; min-height: 51px; border: 1px solid #bababa; border-radius: 0; background: #fff; color: var(--ink); padding: 10px 6px; font: 16px/1.6 var(--sans); }
.lc-product-info form.cart .single_add_to_cart_button { min-height: 51px; flex: 1 1 210px; font-weight: 400; }
.lc-site.woocommerce .lc-product-info form.cart .single_add_to_cart_button { background:#151515; color:#fff; border:1px solid #151515; border-radius:0; transition:background .2s,color .2s; }
.lc-site.woocommerce .lc-product-info form.cart .single_add_to_cart_button:hover { background:#fff; color:#151515; }
.lc-site.woocommerce .lc-product-info form.cart .single_add_to_cart_button:focus-visible { outline:2px solid #151515; outline-offset:4px; }
.lc-product-info .stock { font-size: 12px; }

body.woocommerce-cart,
body.woocommerce-checkout {
  --lc-field-border: #bababa;
  --lc-commerce-tint: #f7f7f5;
}

:is(body.woocommerce-cart, body.woocommerce-checkout) .page-content,
.lc-commerce {
  max-width: 1400px;
  margin-inline: auto;
  padding: 0 var(--gutter) 90px;
}

.lc-commerce-intro { padding: 52px 0 36px; }
.lc-commerce-intro h1,
:is(body.woocommerce-cart, body.woocommerce-checkout) .page-heading h1 {
  font-size: clamp(38px, 4.4vw, 60px);
  line-height: 1.14;
  margin-bottom: 16px;
  text-wrap: balance;
}
.lc-commerce-kicker { font: 11px/1.6 var(--sans); letter-spacing: .15em; text-transform: uppercase; color: var(--muted); margin: 0 0 16px; }
.lc-commerce-note { max-width: 62ch; font: 14px/1.75 var(--sans); color: var(--muted); margin: 0; }
.lc-commerce-back { display: inline-flex; align-items: center; gap: 10px; font: 12px/1.5 var(--sans); min-height: 44px; text-decoration: underline; text-underline-offset: 5px; }
.lc-test-notice { padding: 14px 18px; border: 1px solid var(--line); background: var(--lc-commerce-tint, #f7f7f5); font: 13px/1.7 var(--sans); margin: 0 0 28px; }
.lc-test-notice p:last-child { margin-bottom: 0; }
body > .lc-test-notice { margin: 0; padding: 10px 20px; text-align: center; font-size: 12px; }

/* Full legal texts stay on their own pages, with readable, quiet navigation. */
.lc-legal-links { display: flex; flex-wrap: wrap; gap: 4px 22px; align-items: center; font: 12px/1.65 var(--sans); }
.lc-legal-links a { display: inline-flex; align-items: center; min-height: 44px; text-decoration: underline; text-underline-offset: 4px; }
.lc-legal-links a:hover { text-decoration-thickness: 2px; }
.site-footer .lc-legal-links { color: #c8c8c8; max-width: 1456px; margin: 16px auto 0; }

/* Visible feedback and focus, including server-side checkout errors. */
:is(body.woocommerce-cart, body.woocommerce-checkout) :is(.woocommerce-error, .woocommerce-info, .woocommerce-message) {
  background: var(--lc-commerce-tint);
  color: var(--ink);
  border-top: 1px solid var(--ink);
  padding: 18px 22px 18px 48px;
  font: 14px/1.7 var(--sans);
  margin-bottom: 28px;
  width: 100%;
}
:is(body.woocommerce-cart, body.woocommerce-checkout) :is(.woocommerce-info, .woocommerce-message)::before { color: var(--ink); top: 19px; left: 20px; }
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce-error { border-top-color: #9b3030; }
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce-error::before { color: #9b3030; top: 19px; left: 20px; }
:is(body.woocommerce-cart, body.woocommerce-checkout) :is(.woocommerce-error, .woocommerce-info, .woocommerce-message) a { text-decoration: underline; text-underline-offset: 3px; }
:is(body.woocommerce-cart, body.woocommerce-checkout) :is(a, button, input, select, textarea):focus-visible { outline: 2px solid var(--ink); outline-offset: 4px; }

/* Controls: native browser autofill, no address API or extra account step. */
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce :is(input.input-text, select, textarea) {
  width: 100%;
  min-height: 50px;
  padding: 12px 14px;
  border: 1px solid var(--lc-field-border);
  border-radius: 0;
  background: #fff;
  color: var(--ink);
  font: 16px/1.5 var(--sans);
  box-shadow: none;
}
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce input::placeholder,
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce textarea::placeholder { color: #747474; opacity: 1; }
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce textarea { min-height: 100px; resize: vertical; }
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce input[type="checkbox"],
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce input[type="radio"] { accent-color: var(--ink); min-width: 18px; min-height: 18px; vertical-align: middle; }
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce .form-row { display: block; padding: 0; margin: 0 0 22px; }
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce .form-row label { font: 13px/1.6 var(--sans); margin-bottom: 8px; color: var(--ink); }
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce .form-row .optional { font-size: 11px; color: var(--muted); }
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce .lc-destination-warning { display: block; color: #9b3030; font: 12px/1.65 var(--sans); }
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce .lc-destination-warning:not(:empty) { margin-top: 8px; }
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce .form-row .required { color: inherit; text-decoration: none; font-weight: 400; }
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce .form-row.woocommerce-invalid :is(input.input-text, select) { border-color: #9b3030; }
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce .form-row.woocommerce-invalid label { color: #9b3030; }
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce .form-row.woocommerce-validated :is(input.input-text, select) { border-color: #71796f; }
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce .select2-container .select2-selection--single { height: 50px; border: 1px solid var(--lc-field-border); border-radius: 0; background: #fff; }
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce .select2-container .select2-selection__rendered { line-height: 48px; padding: 0 38px 0 14px; color: var(--ink); font-size: 16px; }
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce .select2-container .select2-selection__arrow { height: 48px; right: 12px; }
:is(body.woocommerce-cart, body.woocommerce-checkout) .select2-dropdown { border-radius: 0; border-color: var(--lc-field-border); font-size: 14px; }
:is(body.woocommerce-cart, body.woocommerce-checkout) .select2-container--default .select2-results__option--highlighted[aria-selected] { background: var(--ink); }
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce :is(button.button, a.button, input.button) {
  min-height: 50px;
  padding: 16px 24px !important;
  border: 1px solid var(--ink);
  background: var(--ink);
  color: #fff;
  font: 13px/1.4 var(--sans) !important;
  letter-spacing: .025em;
  font-weight: 400;
  border-radius: 0;
  white-space: normal;
  text-align: center;
}
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce :is(button.button, a.button, input.button):hover { background: #fff; color: var(--ink); }
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce button.button:disabled,
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce button.button:disabled[disabled] { opacity: .5; color: #fff; cursor: not-allowed; padding: 16px 24px !important; }
:is(body.woocommerce-cart, body.woocommerce-checkout) .woocommerce :is(button.button, a.button).lc-destination-blocked { opacity: .5; cursor: not-allowed; background: var(--ink); color: #fff; }

/* Checkout: delivery details beside an editorial product and payment summary. */
body.woocommerce-checkout form.checkout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-areas: "notices notices" "customer heading" "customer review"; gap: 0 clamp(36px, 5.5vw, 88px); align-items: start; }
body.woocommerce-checkout form.checkout::before,
body.woocommerce-checkout form.checkout::after { display: none; }
body.woocommerce-checkout form.checkout > .woocommerce-NoticeGroup { grid-area: notices; }
body.woocommerce-checkout #customer_details { grid-area: customer; width: 100%; min-width: 0; }
body.woocommerce-checkout #customer_details .col-1,
body.woocommerce-checkout #customer_details .col-2 { width: 100%; float: none; }
body.woocommerce-checkout #customer_details h3,
body.woocommerce-checkout #order_review_heading { font: 30px/1.3 var(--serif); letter-spacing: -.015em; margin: 0 0 28px; }
body.woocommerce-checkout #order_review_heading { grid-area: heading; padding: 26px 28px 0; margin: 0; background: var(--lc-commerce-tint); }
body.woocommerce-checkout #order_review { grid-area: review; min-width: 0; background: var(--lc-commerce-tint); padding: 6px 28px 28px; }
body.woocommerce-checkout form.checkout:has(> .lc-order-column) { grid-template-areas: "notices notices" "customer summary"; }
body.woocommerce-checkout .lc-order-column { grid-area: summary; min-width: 0; }
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper { display: flow-root; }
body.woocommerce-checkout .woocommerce form .form-row-first,
body.woocommerce-checkout .woocommerce form .form-row-last { width: calc(50% - 10px); }
body.woocommerce-checkout #ship-to-different-address { padding-top: 12px; }
body.woocommerce-checkout #ship-to-different-address label { display: flex; gap: 12px; align-items: center; cursor: pointer; font: 14px/1.6 var(--sans); }
body.woocommerce-checkout #ship-to-different-address input { flex: 0 0 18px; margin: 0; }
body.woocommerce-checkout .woocommerce-additional-fields { margin-top: 26px; }
body.woocommerce-checkout .woocommerce-checkout-review-order-table { width: 100%; border: 0; border-collapse: collapse; border-radius: 0; margin: 0 0 24px; background: transparent; }
body.woocommerce-checkout .woocommerce table.shop_table th,
body.woocommerce-checkout .woocommerce table.shop_table td { padding: 18px 0; border-color: #d9d9d5; vertical-align: middle; }
body.woocommerce-checkout .woocommerce table.shop_table thead th { color: var(--muted); font: 11px/1.6 var(--sans); text-transform: uppercase; letter-spacing: .08em; padding-top: 20px; padding-bottom: 12px; }
body.woocommerce-checkout .woocommerce table.shop_table .product-total { text-align: right; width: 38%; padding-left: 12px; white-space: nowrap; font: 15px/1.6 var(--sans); }
body.woocommerce-checkout .woocommerce table.shop_table td.product-name { font: 20px/1.4 var(--serif); }
body.woocommerce-checkout .woocommerce table.shop_table .product-quantity { font: 12px/1.5 var(--sans); color: var(--muted); display: inline-block; margin-top: 8px; }
body.woocommerce-checkout .woocommerce table.shop_table tfoot th { font: 13px/1.7 var(--sans); font-weight: 400; }
body.woocommerce-checkout .woocommerce table.shop_table tfoot td { text-align: right; font: 14px/1.7 var(--sans); font-weight: 400; padding-left: 16px; }
body.woocommerce-checkout .woocommerce table.shop_table tr.order-total th { font-size: 16px; }
body.woocommerce-checkout .woocommerce table.shop_table tr.order-total td { font: 25px/1.4 var(--serif); }
body.woocommerce-checkout .woocommerce table.shop_table tr.order-total strong { font-weight: 400; }
body.woocommerce-checkout .woocommerce table.shop_table .includes_tax { display: block; color: var(--muted); font: 11px/1.7 var(--sans); margin-top: 5px; }
.lc-order-item { display: grid; grid-template-columns: 104px minmax(0, 1fr); gap: 18px; align-items: center; }
.lc-order-item__image,
.lc-order-item img { display: block; width: 104px; height: 132px; object-fit: contain; background: #eeefeb; }
.lc-order-item__name { font: 24px/1.35 var(--serif); overflow-wrap: anywhere; }
.lc-order-item__meta { display: block; font: 11px/1.6 var(--sans); color: var(--muted); margin-top: 8px; }
.lc-checkout-assurance { font: 12px/1.8 var(--sans); color: var(--muted); margin: 20px 0 0; }
.lc-checkout-assurance a { text-decoration: underline; text-underline-offset: 4px; }
body.woocommerce-checkout .woocommerce ul#shipping_method { margin: 0; padding: 0; }
body.woocommerce-checkout .woocommerce ul#shipping_method li { margin: 0; line-height: 1.7; }
body.woocommerce-checkout .woocommerce ul#shipping_method li label { font-size: 13px; }
body.woocommerce-checkout #payment { background: transparent; border-radius: 0; }
body.woocommerce-checkout #payment ul.payment_methods { border-bottom: 0; padding: 0; }
body.woocommerce-checkout #payment ul.payment_methods li { padding: 0; margin: 0 0 18px; font: 14px/1.7 var(--sans); }
body.woocommerce-checkout #payment ul.payment_methods li > label { display: inline; font: 14px/1.7 var(--sans); }
body.woocommerce-checkout #payment ul.payment_methods li img { display: inline-block; max-height: 24px; width: auto; vertical-align: middle; }
body.woocommerce-checkout #payment div.payment_box { background: #fff; color: var(--ink); border: 1px solid var(--line); border-radius: 0; margin: 14px 0 0; padding: 18px; font: 13px/1.7 var(--sans); }
body.woocommerce-checkout #payment div.payment_box::before { display: none; }
body.woocommerce-checkout #payment div.payment_box p:last-child { margin-bottom: 0; }
body.woocommerce-checkout #payment div.form-row { padding: 0; margin: 0; }
body.woocommerce-checkout #payment .woocommerce-privacy-policy-text,
body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper { font: 12px/1.75 var(--sans); color: var(--muted); }
body.woocommerce-checkout #payment .woocommerce-privacy-policy-text p { margin-bottom: 16px; }
body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper a { text-decoration: underline; text-underline-offset: 3px; }
body.woocommerce-checkout #payment .woocommerce-terms-and-conditions-checkbox-text { font: 12px/1.75 var(--sans); }
body.woocommerce-checkout #payment .woocommerce-terms-and-conditions { max-height: 280px; font: 13px/1.8 var(--sans); background: #fff; border: 1px solid var(--line); margin-bottom: 16px; }
body.woocommerce-checkout #payment .woocommerce-terms-and-conditions :is(h1, h2, h3) { font: 24px/1.35 var(--serif); margin: 18px 0 12px; }
body.woocommerce-checkout #payment .validate-required { margin: 4px 0 22px; }
body.woocommerce-checkout #payment .validate-required .woocommerce-form__label-for-checkbox { display: block; cursor: pointer; }
body.woocommerce-checkout #payment .validate-required input { margin-right: 9px; }
body.woocommerce-checkout #payment #place_order { width: 100%; float: none; min-height: 56px; margin-top: 22px; }

/* Cart: quiet product rows and an unambiguous total, including shipping. */
body.woocommerce-cart .woocommerce:has(> .woocommerce-cart-form) { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(290px, 1fr); align-items: start; gap: 0 clamp(28px, 4vw, 66px); }
body.woocommerce-cart .woocommerce > .woocommerce-notices-wrapper,
body.woocommerce-cart .woocommerce > .lc-test-notice,
body.woocommerce-cart .woocommerce > .lc-commerce-intro { grid-column: 1 / -1; }
body.woocommerce-cart .woocommerce-cart-form { min-width: 0; }
body.woocommerce-cart .woocommerce table.shop_table { border: 0; border-collapse: collapse; border-radius: 0; margin-bottom: 28px; font-size: 14px; }
body.woocommerce-cart .woocommerce table.shop_table thead th { color: var(--muted); font: 11px/1.6 var(--sans); text-transform: uppercase; letter-spacing: .07em; padding: 12px 8px; }
body.woocommerce-cart .woocommerce table.shop_table th,
body.woocommerce-cart .woocommerce table.shop_table td { border-color: var(--line); padding: 24px 8px; }
body.woocommerce-cart .woocommerce table.shop_table td.product-thumbnail { width: 112px; padding-left: 0; }
body.woocommerce-cart .woocommerce table.shop_table td.product-thumbnail img { width: 104px; height: 132px; object-fit: contain; background: var(--photo); max-width: none; }
body.woocommerce-cart .woocommerce table.shop_table td.product-name { font: 23px/1.4 var(--serif); }
body.woocommerce-cart .woocommerce table.shop_table td.product-name a:hover { text-decoration: underline; text-underline-offset: 5px; }
body.woocommerce-cart .woocommerce table.shop_table :is(td.product-price, td.product-subtotal) { white-space: nowrap; font: 13px/1.6 var(--sans); }
body.woocommerce-cart .woocommerce table.shop_table td.product-remove { width: 28px; padding-inline: 0 8px; }
body.woocommerce-cart .woocommerce a.remove { color: var(--muted) !important; font: 24px/1 var(--sans); border-radius: 0; width: 36px; height: 44px; display: inline-flex; align-items: center; justify-content: center; }
body.woocommerce-cart .woocommerce a.remove:hover { color: var(--ink) !important; background: #eeeeeb; }
body.woocommerce-cart .woocommerce .quantity .qty { width: 64px; min-height: 44px; padding: 8px 4px 8px 8px; border: 1px solid var(--lc-field-border); border-radius: 0; font-size: 16px; }
body.woocommerce-cart .woocommerce table.shop_table td.actions { padding: 20px 0 0; }
body.woocommerce-cart .woocommerce table.shop_table td.actions .button { font-size: 12px !important; }
body.woocommerce-cart .woocommerce table.shop_table td.actions .coupon .input-text { width: 150px; margin-right: 10px; }
body.woocommerce-cart .cart-collaterals { width: 100%; min-width: 0; }
body.woocommerce-cart .cart-collaterals .cart_totals { float: none; width: 100%; padding: 28px; background: var(--lc-commerce-tint); }
body.woocommerce-cart .cart-collaterals .cart_totals h2 { font: 30px/1.3 var(--serif); margin: 0 0 22px; }
body.woocommerce-cart .cart-collaterals .cart_totals table { width: 100%; }
body.woocommerce-cart .cart-collaterals .cart_totals th { width: 34%; font-weight: 400; font-size: 13px; vertical-align: top; }
body.woocommerce-cart .cart-collaterals .cart_totals :is(th, td) { padding: 18px 0; font-size: 13px; border-top: 1px solid #d9d9d5; }
body.woocommerce-cart .cart-collaterals .cart_totals td { text-align: right; padding-left: 14px; }
body.woocommerce-cart .cart-collaterals .cart_totals .order-total th { font-size: 16px; }
body.woocommerce-cart .cart-collaterals .cart_totals .order-total td { font: 25px/1.4 var(--serif); }
body.woocommerce-cart .cart-collaterals .cart_totals .order-total strong { font-weight: 400; }
body.woocommerce-cart .cart-collaterals .cart_totals .includes_tax { display: block; font: 11px/1.7 var(--sans); color: var(--muted); margin-top: 5px; }
body.woocommerce-cart .woocommerce-shipping-destination { font: 12px/1.7 var(--sans); color: var(--muted); margin-top: 12px; }
body.woocommerce-cart .shipping-calculator-button { text-decoration: underline; text-underline-offset: 4px; font-size: 12px; }
body.woocommerce-cart .wc-proceed-to-checkout { padding: 6px 0 0; }
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button { margin-bottom: 0; display: block; }

/* Order received: keep the same composition after a successful test or purchase. */
body.woocommerce-order-received .woocommerce-order { max-width: 960px; margin-inline: auto; }
body.woocommerce-order-received .woocommerce-thankyou-order-received { font: clamp(28px, 3vw, 42px)/1.35 var(--serif); margin: 0 0 30px; }
body.woocommerce-order-received .lc-confirmation-note { display: block; max-width: 680px; margin-top: 20px; font: 15px/1.75 var(--sans); color: #555; }
body.woocommerce-order-received .woocommerce ul.order_details { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 30px; background: var(--lc-commerce-tint); padding: 28px; margin: 0 0 42px; }
body.woocommerce-order-received .woocommerce ul.order_details::before,
body.woocommerce-order-received .woocommerce ul.order_details::after { display: none; }
body.woocommerce-order-received .woocommerce ul.order_details li { float: none; border: 0; padding: 0; margin: 0; font: 11px/1.65 var(--sans); letter-spacing: .045em; overflow-wrap: anywhere; }
body.woocommerce-order-received .woocommerce ul.order_details li strong { font: 16px/1.6 var(--sans); letter-spacing: 0; text-transform: none; margin-top: 5px; }
body.woocommerce-order-received .woocommerce-order-details h2,
body.woocommerce-order-received .woocommerce-customer-details h2 { font: 30px/1.3 var(--serif); margin-bottom: 22px; }
body.woocommerce-order-received .woocommerce-customer-details address { padding: 22px; border: 1px solid var(--line); border-radius: 0; font: 14px/1.9 var(--sans); min-height: 100%; }
body.woocommerce-order-received .woocommerce-order-details { margin-bottom: 44px; }
body.woocommerce-order-received .woocommerce .woocommerce-order-details table.shop_table th,
body.woocommerce-order-received .woocommerce .woocommerce-order-details table.shop_table td { padding-inline: 18px; }

@media (max-width: 1050px) {
  body.woocommerce-checkout form.checkout { gap: 0 32px; }
  body.woocommerce-checkout #order_review_heading { padding: 24px 20px 0; }
  body.woocommerce-checkout #order_review { padding: 6px 20px 22px; }
  .lc-order-item { grid-template-columns: 78px minmax(0, 1fr); gap: 12px; }
  .lc-order-item__image, .lc-order-item img { width: 78px; height: 104px; }
  .lc-order-item__name { font-size: 21px; }
  body.woocommerce-cart .woocommerce:has(> .woocommerce-cart-form) { grid-template-columns: minmax(0, 1fr); }
  body.woocommerce-cart .cart-collaterals .cart_totals { max-width: 580px; margin-left: auto; }
}

@media (max-width: 781px) {
  .header-tools { gap: 8px; }
  .header-cart { justify-content: flex-end; width: 28px; }
  .header-cart-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; }
  .header-tools .language-picker summary { min-width: 36px; gap: 6px; font-size: 12px; }
  .site-header--checkout { grid-template-rows: 80px; }
  .checkout-back { font-size: 11px; gap: 7px; line-height: 1.5; }
  .checkout-back span:last-child { max-width: 64px; }
  :is(body.woocommerce-cart, body.woocommerce-checkout) .page-content,
  .lc-commerce { padding-bottom: 60px; }
  .lc-commerce-intro { padding: 34px 0 28px; }
  body.woocommerce-checkout form.checkout { display: block; }
  body.woocommerce-checkout #customer_details { margin-bottom: 36px; }
  body.woocommerce-checkout #customer_details h3,
  body.woocommerce-checkout #order_review_heading { font-size: 28px; }
  body.woocommerce-checkout #order_review_heading { padding: 24px 22px 0; }
  body.woocommerce-checkout #order_review { padding: 6px 22px 26px; }
  .lc-order-item { grid-template-columns: 104px minmax(0, 1fr); gap: 18px; }
  .lc-order-item__image, .lc-order-item img { width: 104px; height: 132px; }
  .lc-order-item__name { font-size: 24px; }
  body.woocommerce-cart .woocommerce table.cart { display: block; width: 100%; }
  body.woocommerce-cart .woocommerce table.cart tbody { display: block; }
  body.woocommerce-cart .woocommerce table.cart tr.cart_item { display: grid; position: relative; grid-template-columns: 112px minmax(0, 1fr); gap: 10px 18px; padding: 24px 36px 24px 0; border-top: 1px solid var(--line); }
  body.woocommerce-cart .woocommerce table.cart tr.cart_item td { background: transparent; display: block; padding: 0; border: 0; text-align: left !important; width: auto; }
  body.woocommerce-cart .woocommerce table.cart tr.cart_item td.product-remove { position: absolute; right: -6px; top: 19px; }
  body.woocommerce-cart .woocommerce table.cart tr.cart_item td.product-thumbnail { display: block; grid-column: 1; grid-row: 1 / span 4; }
  body.woocommerce-cart .woocommerce table.cart tr.cart_item td.product-thumbnail::before,
  body.woocommerce-cart .woocommerce table.cart tr.cart_item td.product-name::before,
  body.woocommerce-cart .woocommerce table.cart tr.cart_item td.product-remove::before { display: none; }
  body.woocommerce-cart .woocommerce table.cart tr.cart_item td:is(.product-name, .product-price, .product-quantity, .product-subtotal) { grid-column: 2; }
  body.woocommerce-cart .woocommerce table.cart tr.cart_item td.product-name { font-size: 24px; padding-right: 4px; }
  body.woocommerce-cart .woocommerce table.cart tr.cart_item td.product-price::before,
  body.woocommerce-cart .woocommerce table.cart tr.cart_item td.product-subtotal::before { float: none; font: 12px/1.7 var(--sans); color: var(--muted); margin-right: 10px; }
  body.woocommerce-cart .woocommerce table.cart tr.cart_item td.product-quantity { display: flex; gap: 14px; align-items: center; }
  body.woocommerce-cart .woocommerce table.cart tr.cart_item td.product-quantity::before { float: none; font: 12px/1.7 var(--sans); color: var(--muted); }
  body.woocommerce-cart .woocommerce table.cart tr:not(.cart_item) { display: block; }
  body.woocommerce-cart .woocommerce table.cart td.actions { display: block; padding-top: 10px; background: transparent; }
  body.woocommerce-cart .woocommerce table.cart td.actions > .button { width: 100%; }
  body.woocommerce-cart .cart-collaterals .cart_totals { max-width: none; padding: 24px 22px; }
  body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr { background: transparent; }
  body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table td { padding: 18px 0; }
  body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table td::before { font-size: 13px; font-weight: 400; }
  .lc-legal-links { gap: 0 18px; }
}

@media (max-width: 420px) {
  .site-header { padding-inline: 18px; }
  .header-tools { gap: 6px; }
  .header-tools .language-picker summary { min-width: 32px; }
  .checkout-back { gap: 5px; }
  :is(body.woocommerce-cart, body.woocommerce-checkout) .page-content,
  .lc-commerce { padding-inline: 20px; }
  body.woocommerce-checkout .woocommerce form .form-row-first,
  body.woocommerce-checkout .woocommerce form .form-row-last { width: 100%; float: none; }
  body.woocommerce-checkout #order_review_heading { padding: 22px 16px 0; }
  body.woocommerce-checkout #order_review { padding: 6px 16px 22px; }
  body.woocommerce-checkout .woocommerce table.shop_table .product-total { width: 38%; padding-left: 8px; font-size: 13px; }
  .lc-order-item { grid-template-columns: 70px minmax(0, 1fr); gap: 10px; }
  .lc-order-item__image, .lc-order-item img { width: 70px; height: 94px; }
  .lc-order-item__name { font-size: 20px; }
  body.woocommerce-cart .woocommerce table.cart tr.cart_item { grid-template-columns: 90px minmax(0, 1fr); gap: 10px 14px; }
  body.woocommerce-cart .woocommerce table.cart td.product-thumbnail img { width: 90px; height: 120px; }
  body.woocommerce-cart .woocommerce table.cart tr.cart_item td.product-name { font-size: 22px; }
  body.woocommerce-order-received .woocommerce ul.order_details { grid-template-columns: 1fr; padding: 22px; }
}

@media (prefers-reduced-motion: reduce) {
  :is(body.woocommerce-cart, body.woocommerce-checkout) *,
  :is(body.woocommerce-cart, body.woocommerce-checkout) *::before,
  :is(body.woocommerce-cart, body.woocommerce-checkout) *::after { scroll-behavior: auto !important; transition: none !important; }
}
