/* Classic WoodMart/WooCommerce pages. Responsive styles; no payment or validation changes. */
@media (min-width:1025px) {
 body:is(.woocommerce-cart,.woocommerce-checkout) .site-content {
  max-width:1240px!important;
  width:100%;
  min-width:0;
  margin-inline:auto;
  font-size:14px;
 }
 body:is(.woocommerce-cart,.woocommerce-checkout) .main-page-wrapper {padding-top:28px}
 body:is(.woocommerce-cart,.woocommerce-checkout) .woocommerce {min-width:0}

 /* Order summary cards */
 body.woocommerce-checkout .checkout-order-review,
 body.woocommerce-cart .cart-totals-inner {
  padding:24px!important;
  border:1px solid #e2e7ee!important;
  border-radius:12px;
  background:#f8fafc!important;
  box-shadow:none!important;
 }
 body.woocommerce-checkout .checkout-order-review:before,
 body.woocommerce-checkout .checkout-order-review:after {content:none!important;display:none!important}
 body.woocommerce-cart .cart_totals {min-width:0}
 body:is(.woocommerce-cart,.woocommerce-checkout) :is(.cart_totals h2,#order_review_heading,.woocommerce-billing-fields h3,.woocommerce-additional-fields h3) {
  margin:0 0 18px;
  color:#0b2147;
  font-size:19px!important;
  font-weight:600!important;
  line-height:1.35;
  text-transform:none!important;
 }
 body:is(.woocommerce-cart,.woocommerce-checkout) :is(.cart_totals,.checkout-order-review) table {margin-bottom:16px;font-size:13px}
 body:is(.woocommerce-cart,.woocommerce-checkout) :is(.cart_totals,.checkout-order-review) table th,
 body:is(.woocommerce-cart,.woocommerce-checkout) :is(.cart_totals,.checkout-order-review) table td {padding:12px 0;line-height:1.5}
 body.woocommerce-cart .cart_totals table th {width:28%;white-space:normal}
 body.woocommerce-checkout .woocommerce-checkout-review-order-table th.product-total,
 body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-total {white-space:nowrap;padding-left:12px}
 body:is(.woocommerce-cart,.woocommerce-checkout) .order-total :is(th,td) {padding-top:16px!important;color:#0b2147;font-size:16px!important}
 body:is(.woocommerce-cart,.woocommerce-checkout) .order-total .amount {font-size:21px!important;font-weight:600;color:#0b2147}
 body.woocommerce-cart .woocommerce-shipping-destination {margin:8px 0;font-size:12px;line-height:1.5;color:#718093}

 /* Billing fields: known pairs only. Custom fields keep their full row and visibility rules. */
 body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  column-gap:16px;
  align-items:start;
 }
 body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper:before,
 body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper:after {display:none}
 body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row {
  grid-column:1 / -1;
  float:none!important;
  width:auto!important;
  min-width:0;
  margin:0 0 14px!important;
  padding:0!important;
 }
 body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > :is(#billing_first_name_field,#billing_last_name_field,#billing_city_field,#billing_state_field,#billing_postcode_field,#billing_phone_field) {grid-column:auto}
 body.woocommerce-checkout form.checkout .form-row label {margin-bottom:5px;color:#34445a;font-size:12px!important;font-weight:500;line-height:1.5}
 body.woocommerce-checkout form.checkout .form-row input:is([type=text],[type=email],[type=tel],[type=number],[type=password]),
 body.woocommerce-checkout form.checkout .form-row select {
  height:42px!important;min-height:42px;
  padding:9px 12px!important;
  border-radius:7px!important;
  font-size:14px!important;
  line-height:1.5;
  background-color:#fff;
 }
 body.woocommerce-checkout form.checkout .form-row :is(input,textarea,select) {box-sizing:border-box}
 body.woocommerce-checkout form.checkout .select2-container--default .select2-selection--single {height:42px;border-radius:7px}
 body.woocommerce-checkout form.checkout .select2-container--default .select2-selection--single .select2-selection__rendered {line-height:40px;font-size:14px}
 body.woocommerce-checkout form.checkout .select2-container--default .select2-selection--single .select2-selection__arrow {height:40px}
 body.woocommerce-checkout form.checkout textarea {min-height:80px;height:80px;padding:10px 12px;border-radius:7px;font-size:13px}
 body.woocommerce-checkout #ship-to-different-address {margin:10px 0 16px;font-size:14px!important}
 body.woocommerce-checkout #ship-to-different-address label {font-size:13px!important}
 body.woocommerce-checkout .wc_payment_methods > li {padding-top:10px;padding-bottom:10px}
 body.woocommerce-checkout .wc_payment_methods > li > label {font-size:13px!important;line-height:1.5}
 body.woocommerce-checkout .woocommerce-privacy-policy-text {font-size:11.5px!important;line-height:1.6;color:#748093}
 body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label {font-size:12px;line-height:1.6}

 /* Cart table: compact rows, readable names and amounts. */
 body.woocommerce-cart .woocommerce-cart-form table.shop_table {font-size:13px}
 body.woocommerce-cart .woocommerce-cart-form table.shop_table thead th {padding:14px 10px;font-size:12px!important;font-weight:600;line-height:1.4;color:#697688;text-transform:none}
 body.woocommerce-cart .woocommerce-cart-form table.shop_table tbody td {padding:18px 10px;font-size:13px;line-height:1.5}
 body.woocommerce-cart .woocommerce-cart-form td.product-thumbnail {width:76px}
 body.woocommerce-cart .woocommerce-cart-form td.product-thumbnail img {width:60px!important;max-width:60px!important;height:70px!important;object-fit:contain}
 body.woocommerce-cart .woocommerce-cart-form td.product-name a {font-size:13px!important;font-weight:500;line-height:1.5;color:#0b2147}
 body.woocommerce-cart .woocommerce-cart-form :is(td.product-price,td.product-subtotal) {white-space:nowrap}
 body.woocommerce-cart .woocommerce-cart-form td.product-subtotal .amount {font-size:14px;font-weight:600}
 body.woocommerce-cart .woocommerce-cart-form .quantity {height:36px}
 body.woocommerce-cart .woocommerce-cart-form .quantity :is(input,button) {height:36px!important;min-height:0; font-size:13px}
 body.woocommerce-cart .woocommerce-cart-form .quantity .qty {width:38px}
 body.woocommerce-cart .woocommerce-cart-form .coupon #coupon_code {height:40px;font-size:13px;border-radius:7px}
 body.woocommerce-cart .woocommerce-cart-form .coupon button {min-height:40px;padding:10px 14px;font-size:12px;border-radius:7px}

 /* Free shipping message: a calm compact treatment, without animated stripes. */
 body:is(.woocommerce-cart,.woocommerce-checkout) .wd-free-progress-bar {
  margin-bottom:20px;padding:13px 15px!important;
  border:1px solid #e3ebe6!important;border-radius:8px;
  background:#f7faf8;color:#41644e;font-size:12px!important;line-height:1.5;
 }
 body:is(.woocommerce-cart,.woocommerce-checkout) .wd-free-progress-bar .progress-area {height:4px!important;margin-top:9px;border-radius:4px;overflow:hidden}
 body:is(.woocommerce-cart,.woocommerce-checkout) .wd-free-progress-bar .progress-bar {background:#7b9d87!important;background-image:none!important;animation:none!important}

 /* Primary actions: clear, compact, without truncating the label. */
 body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
 body.woocommerce-checkout #place_order {
  display:block;width:100%;box-sizing:border-box;
  min-height:46px!important;height:auto!important;
  padding:12px 16px!important;border:1px solid #0b2147!important;border-radius:8px!important;
  background:#0b2147!important;color:#fff!important;
  font-size:13px!important;font-weight:600!important;line-height:1.5;
  text-transform:none!important;white-space:normal;
 }
 body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
 body.woocommerce-checkout #place_order:hover {background:#173b68!important;border-color:#173b68!important}
 body.woocommerce-checkout form.checkout :is(input,textarea,select):focus-visible {outline:2px solid #8298b3;outline-offset:1px}
}

/* Phone and tablet: readable controls and a single-column checkout. */
@media (max-width:1024px) {
 body:is(.woocommerce-cart,.woocommerce-checkout) .site-content {min-width:0;font-size:14px}
 body:is(.woocommerce-cart,.woocommerce-checkout) .main-page-wrapper {padding-top:18px}
 body.woocommerce-checkout form.woocommerce-checkout > :is(.customer-details,.checkout-order-review) {
  float:none!important;flex:0 0 100%!important;width:100%!important;max-width:100%!important;min-width:0;
 }
 body.woocommerce-checkout .checkout-order-review,
 body.woocommerce-cart .cart-totals-inner {
  padding:18px!important;border:1px solid #e2e7ee!important;border-radius:10px;
  background:#f8fafc!important;box-shadow:none!important;
 }
 body.woocommerce-checkout .checkout-order-review {margin-top:22px}
 body.woocommerce-checkout .checkout-order-review:before,
 body.woocommerce-checkout .checkout-order-review:after {content:none!important;display:none!important}
 body:is(.woocommerce-cart,.woocommerce-checkout) :is(.cart_totals h2,#order_review_heading,.woocommerce-billing-fields h3,.woocommerce-additional-fields h3) {
  margin:0 0 16px;color:#0b2147;font-size:18px!important;font-weight:600!important;line-height:1.4;text-transform:none!important;
 }
 body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {display:block}
 body.woocommerce-checkout form.checkout .form-row {margin-bottom:14px;padding:0;min-width:0}
 body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row {
  float:none!important;width:100%!important;max-width:100%;margin:0 0 14px!important;
 }
 body.woocommerce-checkout form.checkout .form-row label {margin-bottom:6px;color:#34445a;font-size:13px!important;font-weight:500;line-height:1.5}
 body.woocommerce-checkout form.checkout .form-row input:is([type=text],[type=email],[type=tel],[type=number],[type=password]),
 body.woocommerce-checkout form.checkout .form-row select {
  box-sizing:border-box;width:100%;max-width:100%;height:46px!important;min-height:46px;
  padding:10px 12px!important;border-radius:8px!important;font-size:16px!important;line-height:1.5;background-color:#fff;
 }
 body.woocommerce-checkout form.checkout .select2-container {max-width:100%}
 body.woocommerce-checkout form.checkout .select2-container--default .select2-selection--single {height:46px;border-radius:8px}
 body.woocommerce-checkout form.checkout .select2-container--default .select2-selection--single .select2-selection__rendered {line-height:44px;font-size:16px}
 body.woocommerce-checkout form.checkout .select2-container--default .select2-selection--single .select2-selection__arrow {height:44px}
 body.woocommerce-checkout form.checkout textarea {box-sizing:border-box;min-height:88px;height:88px;padding:11px 12px;border-radius:8px;font-size:16px}
 body.woocommerce-checkout #ship-to-different-address {margin:12px 0 18px;font-size:14px!important;line-height:1.6}
 body.woocommerce-checkout #ship-to-different-address label {font-size:14px!important}
 body.woocommerce-checkout .wc_payment_methods > li {padding-top:12px;padding-bottom:12px}
 body.woocommerce-checkout .wc_payment_methods > li > label {font-size:13px!important;line-height:1.6;white-space:normal}
 body.woocommerce-checkout .wc_payment_methods .payment_box {max-width:100%;box-sizing:border-box;overflow-wrap:anywhere}
 body.woocommerce-checkout .woocommerce-privacy-policy-text {font-size:12px!important;line-height:1.65;color:#647184}
 body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label {font-size:13px;line-height:1.65}
 body:is(.woocommerce-cart,.woocommerce-checkout) :is(.cart_totals,.checkout-order-review) table {width:100%;font-size:13px}
 body:is(.woocommerce-cart,.woocommerce-checkout) :is(.cart_totals,.checkout-order-review) table :is(th,td) {padding-top:12px;padding-bottom:12px;line-height:1.5}
 body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name {overflow-wrap:anywhere}
 body.woocommerce-checkout .woocommerce-checkout-review-order-table :is(th.product-total,td.product-total) {padding-left:10px;white-space:nowrap}
 body:is(.woocommerce-cart,.woocommerce-checkout) .order-total .amount {font-size:19px!important;font-weight:600;color:#0b2147}
 body.woocommerce-cart .cart_totals table th {width:30%;white-space:normal}
 body.woocommerce-cart .cart_totals td {overflow-wrap:anywhere}
 body.woocommerce-cart .woocommerce-shipping-destination {margin:8px 0;font-size:12px;line-height:1.6;color:#718093}
 body.woocommerce-cart .woocommerce-cart-form table.shop_table {font-size:13px}
 body.woocommerce-cart .woocommerce-cart-form td.product-name a {color:#0b2147;font-size:14px!important;font-weight:500;line-height:1.5;overflow-wrap:anywhere}
 body.woocommerce-cart .woocommerce-cart-form td.product-thumbnail img {width:56px!important;max-width:56px!important;height:64px!important;object-fit:contain}
 body.woocommerce-cart .woocommerce-cart-form .quantity {min-height:44px}
 body.woocommerce-cart .woocommerce-cart-form .quantity :is(input,button) {height:44px!important;min-height:44px;font-size:16px}
 body.woocommerce-cart .woocommerce-cart-form .quantity .qty {width:40px}
 body.woocommerce-cart .woocommerce-cart-form .quantity :is(.minus,.plus) {min-width:32px}
 body.woocommerce-cart .woocommerce-cart-form .coupon {display:flex;flex-wrap:wrap;align-items:center;gap:8px}
 body.woocommerce-cart .woocommerce-cart-form .coupon #coupon_code {flex:1 1 140px;width:auto;min-width:0;height:46px;margin:0;border-radius:8px;font-size:16px}
 body.woocommerce-cart .woocommerce-cart-form .coupon button {flex:0 1 auto;min-height:46px;margin:0;padding:11px 14px;border-radius:8px;font-size:12px;white-space:normal}
 body:is(.woocommerce-cart,.woocommerce-checkout) .wd-free-progress-bar {
  margin-bottom:18px;padding:12px!important;border:1px solid #e3ebe6!important;border-radius:8px;
  background:#f7faf8;color:#41644e;font-size:12px!important;line-height:1.6;
 }
 body:is(.woocommerce-cart,.woocommerce-checkout) .wd-free-progress-bar .progress-area {height:4px!important;margin-top:8px;border-radius:4px;overflow:hidden}
 body:is(.woocommerce-cart,.woocommerce-checkout) .wd-free-progress-bar .progress-bar {background:#7b9d87!important;background-image:none!important;animation:none!important}
 body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
 body.woocommerce-checkout #place_order {
  display:block;width:100%;box-sizing:border-box;min-height:48px!important;height:auto!important;
  padding:13px 14px!important;border:1px solid #0b2147!important;border-radius:8px!important;
  background:#0b2147!important;color:#fff!important;font-size:14px!important;font-weight:600!important;
  line-height:1.5;text-transform:none!important;white-space:normal;text-align:center;
 }
 body.woocommerce-checkout form.checkout :is(input,textarea,select):focus-visible {outline:2px solid #8298b3;outline-offset:1px}
 body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:focus-visible,
 body.woocommerce-checkout #place_order:focus-visible {outline:2px solid #ff7900;outline-offset:3px}
}
@media (max-width:380px) {
 body.woocommerce-checkout .checkout-order-review,
 body.woocommerce-cart .cart-totals-inner {padding:13px!important}
 body.woocommerce-cart .woocommerce-cart-form .coupon button {flex-basis:100%}
}
