.woocommerce-checkout #payment ul.payment_methods li input[type="radio"] { position: absolute; top: 20px; left: 17px; width: 17px; height: 17px; accent-color: var(--blue); }
.woocommerce-checkout #payment ul.payment_methods li > label { display: block; padding: 17px 18px 17px 48px; color: var(--navy); font-size: .78rem; font-weight: 800; cursor: pointer; }
.woocommerce-checkout #payment ul.payment_methods li > label img { float: right; max-height: 24px; margin: 0 0 0 8px; }
.woocommerce-checkout #payment div.payment_box { width: auto; margin: 0 14px 14px; padding: 13px 15px; border-radius: 8px; background: var(--blue-light); color: var(--ink-soft); font-size: .7rem; line-height: 1.55; overflow-wrap: anywhere; }
.woocommerce-checkout #payment div.payment_box::before { display: none; }
.woocommerce-checkout #payment,
.woocommerce-checkout #payment ul.payment_methods,
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method,
.woocommerce-checkout #payment ul.payment_methods li > label,
.woocommerce-checkout #payment div.payment_box,
.woocommerce-checkout #payment .place-order { min-width: 0; max-width: 100%; box-sizing: border-box; }
.woocommerce-checkout #payment ul.payment_methods li > label { line-height: 1.35; overflow-wrap: anywhere; }
.woocommerce-checkout #payment ul.payment_methods li > label img { width: auto; max-width: min(112px, 42%); height: auto; object-fit: contain; }
.woocommerce-checkout #payment div.payment_box > :first-child { margin-top: 0; }
.woocommerce-checkout #payment div.payment_box > :last-child { margin-bottom: 0; }
.woocommerce-checkout #payment div.payment_box input,
.woocommerce-checkout #payment div.payment_box select,
.woocommerce-checkout #payment div.payment_box textarea,
.woocommerce-checkout #payment div.payment_box iframe,
.woocommerce-checkout #payment [class*="ppcp"] iframe,
.woocommerce-checkout #payment [class*="paypal"] iframe { width: 100% !important; max-width: 100% !important; box-sizing: border-box; }
.woocommerce-checkout #payment [class*="ppcp"],
.woocommerce-checkout #payment [class*="paypal"],
.woocommerce-checkout #payment [id^="ppc-button"],
.woocommerce-checkout #payment [id^="paypal-button"] { min-width: 0; max-width: 100%; box-sizing: border-box; }
.woocommerce-checkout #payment .place-order { margin-top: 24px; padding: 0; }
.woocommerce-checkout #payment .woocommerce-privacy-policy-text { color: var(--ink-muted); font-size: .68rem; line-height: 1.55; }
.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper { margin-top: 18px; }
.woocommerce-checkout #payment .validate-required,
.woocommerce-checkout #payment .eco-research-confirmation { padding: 13px 14px; border: 1px solid #cbd9e9; border-radius: 8px; background: #fff; }
.woocommerce-checkout #payment .validate-required label,
.woocommerce-checkout #payment .eco-research-confirmation label { color: var(--ink-soft); font-size: .69rem; font-weight: 600; line-height: 1.55; }
.woocommerce-checkout #payment #place_order { float: none; width: 100%; margin-top: 20px; padding: 16px 20px; border-radius: 7px; background: var(--blue); font-size: .9rem; }
.woocommerce-checkout .woocommerce-form-coupon-toggle { margin-bottom: 14px; }
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info { margin: 0; }
.woocommerce-checkout form.checkout_coupon { display: flex; align-items: end; gap: 10px; margin: 0 0 24px; padding: 20px; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
.woocommerce-checkout form.checkout_coupon > p:first-child { flex: 1 1 100%; margin: 0; color: var(--ink-soft); font-size: .74rem; }
.woocommerce-checkout form.checkout_coupon .form-row { flex: 1 1 auto; }
.woocommerce-checkout form.checkout_coupon .form-row-last { flex: 0 0 auto; }
.woocommerce-checkout form.checkout_coupon .button { min-height: 48px; white-space: nowrap; }

@media (max-width: 980px) {
  .woocommerce-checkout .eco-checkout-layout { grid-template-columns: 1fr; }
  .woocommerce-checkout .checkout-sidebar { position: static; }
}

@media (max-width: 700px) {
  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper { grid-template-columns: 1fr; }
  .woocommerce-checkout form .form-row.form-row-wide,
  .woocommerce-checkout form .form-row.address-field { grid-column: auto; }
  .woocommerce-checkout form.checkout_coupon { align-items: stretch; flex-direction: column; }
  .woocommerce-checkout form.checkout_coupon .button { width: 100%; }
}

@media (max-width: 520px) {
  .woocommerce-checkout .checkout-panel { padding: 23px 18px; }
  .woocommerce-checkout .eco-order-line { gap: 12px; }
  .woocommerce-checkout .eco-order-product { font-size: .72rem; }
  .woocommerce-checkout .commerce-step { font-size: .65rem; }
  .woocommerce-checkout #payment ul.payment_methods li input[type="radio"] { top: 18px; left: 14px; }
  .woocommerce-checkout #payment ul.payment_methods li > label { padding: 16px 13px 16px 42px; font-size: .76rem; }
  .woocommerce-checkout #payment ul.payment_methods li > label img { float: none; display: block; max-width: 108px; margin: 8px 0 0; }
  .woocommerce-checkout #payment div.payment_box { margin: 0 10px 10px; padding: 12px; font-size: .72rem; }
  .woocommerce-checkout #payment .place-order { margin-top: 18px; }
  .woocommerce-checkout #payment .woocommerce-privacy-policy-text,
  .woocommerce-checkout #payment .validate-required label,
  .woocommerce-checkout #payment .eco-research-confirmation label { font-size: .71rem; overflow-wrap: anywhere; }
}
