/* --------------------------------------------------------------------------
 * CraftArt Flow Shared Styles v1.5.4
 * Split from craftart-flow.css in v1.5.4. Keep load order from functions.php.
 * -------------------------------------------------------------------------- */

:root {
  --casf-primary:var(--casf-config-primary, #1B9C85);
  --casf-primary-dark:var(--casf-config-primary-dark, #147A69);
  --casf-primary-deep:var(--casf-config-primary-deep, #0F5F53);
  --casf-bg:#F6FAF7;
  --casf-card:#FFFFFF;
  --casf-card-soft:#F9FCFA;
  --casf-text:#111827;
  --casf-muted:#6B7280;
  --casf-border:#E5E7EB;
  --casf-radius:18px;
  --casf-radius-lg:24px;
  --casf-shadow:0 14px 34px rgba(15,23,42,.08);
}

body.casf-woo-flow {
  background: var(--casf-bg);
}

/* Reduce huge gap under site header and center flow */
body.casf-woo-flow .site-content,
body.casf-woo-flow .content-area,
body.casf-woo-flow .entry-content,
body.casf-woo-flow .woocommerce {
  width: 100%;
}

body.casf-woo-flow .ast-container,
body.casf-woo-flow .site-content > .ast-container,
body.casf-woo-flow #primary {
  max-width: 100% !important;
  width: 100% !important;
}

/* Thank you/cart centering too */
body.casf-cart-page .entry-content > .woocommerce,
body.casf-order-received-page .entry-content > .woocommerce,
body.casf-cart-page article .woocommerce,
body.casf-order-received-page article .woocommerce,
body.casf-cart-page .site-main > .woocommerce,
body.casf-order-received-page .site-main > .woocommerce {
  max-width: 1200px;
  width: calc(100% - 48px);
  margin-left: auto !important;
  margin-right: auto !important;
}

body.casf-checkout-page .casf-checkout-before-form .woocommerce-form-coupon-toggle,
body.casf-checkout-page .casf-checkout-before-form .woocommerce-form-login-toggle,
body.casf-checkout-page .casf-checkout-before-form .ywgc_have_code,
body.casf-checkout-page .casf-checkout-before-form .ywgc_enter_code,
body.casf-checkout-page .casf-checkout-before-form .yith-ywgc-gift-card-message,
body.casf-checkout-page .casf-checkout-before-form #yith-par-message-cart.casf-visible-notice,
body.casf-checkout-page .casf-checkout-before-form .woocommerce-cart-notice.casf-visible-notice,
body.casf-checkout-page .casf-checkout-before-form .woocommerce-notices-wrapper:not(:empty) {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

body.casf-checkout-page .casf-checkout-before-form #yith-par-message-cart.casf-visible-notice,
body.casf-checkout-page .casf-checkout-before-form .woocommerce-cart-notice.casf-visible-notice {
  background: #ECFDF5 !important;
  border: 1px solid rgba(27, 156, 133, .18) !important;
  border-left: 4px solid var(--casf-primary, #1B9C85) !important;
  border-radius: 14px !important;
  color: var(--casf-text, #111827) !important;
  padding: 12px 14px !important;
  box-shadow: none !important;
}

body.casf-checkout-page .casf-checkout-before-form #yith-par-message-cart.casf-visible-notice img,
body.casf-checkout-page .casf-checkout-before-form .woocommerce-cart-notice.casf-visible-notice img {
  display: inline-block !important;
  vertical-align: middle !important;
  max-width: 28px !important;
  height: auto !important;
  margin-right: 8px !important;
}

/* v1.0.8 — cart flow/cards styling and global flow header parity */
body.casf-woo-flow .entry-header,
body.casf-woo-flow .page-header,
body.casf-woo-flow .ast-archive-description,
body.casf-woo-flow .ast-single-entry-banner,
body.casf-woo-flow h1.entry-title,
body.casf-woo-flow .entry-title,
body.casf-woo-flow .page-title,
body.casf-woo-flow .wp-block-post-title {
  display: none !important;
}

body.casf-woo-flow .site-content,
body.casf-woo-flow .content-area,
body.casf-woo-flow #primary,
body.casf-woo-flow .site-main {
  padding-top: 10px !important;
}

body.casf-woo-flow .entry-content > .woocommerce,
body.casf-woo-flow article .woocommerce,
body.casf-woo-flow .site-main > .woocommerce,
body.casf-woo-flow main .woocommerce {
  width: min(1200px, calc(100vw - 48px)) !important;
  max-width: min(1200px, calc(100vw - 48px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

body.casf-woo-flow .casf-flow-header {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto 18px !important;
  padding: 16px !important;
  background: linear-gradient(180deg, #FFFFFF 0%, #F9FCFA 100%) !important;
  border: 1px solid rgba(27, 156, 133, .16) !important;
  border-radius: 24px !important;
  box-shadow: 0 14px 34px rgba(15, 23, 42, .08) !important;
  box-sizing: border-box !important;
}

body.casf-woo-flow .casf-flow-main {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  margin-bottom: 12px !important;
}

body.casf-woo-flow .casf-flow-brand {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  min-width: 0 !important;
}

body.casf-woo-flow .casf-flow-brand img,
body.casf-woo-flow .casf-flow-mark {
  width: 54px !important;
  height: 54px !important;
  min-width: 54px !important;
  object-fit: contain !important;
  border-radius: 16px !important;
  background: #ECFDF5 !important;
  border: 1px solid #BDEBE3 !important;
  box-shadow: 0 8px 18px rgba(27, 156, 133, .12) !important;
}

body.casf-woo-flow .casf-flow-mark {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--casf-primary) !important;
  font-weight: 900 !important;
  font-size: 13px !important;
}

body.casf-woo-flow .casf-flow-copy {
  display: flex !important;
  flex-direction: column !important;
  gap: 1px !important;
  line-height: 1.2 !important;
}

body.casf-woo-flow .casf-flow-copy span {
  color: var(--casf-primary) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .05em !important;
}

body.casf-woo-flow .casf-flow-copy strong {
  color: var(--casf-text) !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  letter-spacing: -.03em !important;
}

body.casf-woo-flow .casf-flow-copy small {
  color: var(--casf-muted) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
}

body.casf-woo-flow .casf-flow-meta {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-end !important;
  align-items: center !important;
  gap: 8px !important;
}

body.casf-woo-flow .casf-flow-badge,
body.casf-woo-flow .casf-flow-trust {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  min-height: 28px !important;
  padding: 6px 12px !important;
  border-radius: 999px !important;
  background: #ECFDF5 !important;
  border: 1px solid rgba(27, 156, 133, .18) !important;
  color: var(--casf-primary-deep) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

body.casf-woo-flow .casf-flow-steps ol {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  list-style: none !important;
  padding: 6px !important;
  margin: 0 !important;
  background: #F6FAF7 !important;
  border: 1px solid var(--casf-border) !important;
  border-radius: 999px !important;
}

body.casf-woo-flow .casf-flow-step {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.casf-woo-flow .casf-flow-step > a,
body.casf-woo-flow .casf-flow-step > span {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  min-height: 30px !important;
  border-radius: 999px !important;
  color: var(--casf-muted) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}

body.casf-woo-flow .casf-flow-step.is-active > a,
body.casf-woo-flow .casf-flow-step.is-active > span,
body.casf-woo-flow .casf-flow-step.is-complete > a,
body.casf-woo-flow .casf-flow-step.is-complete > span {
  color: var(--casf-primary-deep) !important;
}

body.casf-woo-flow .casf-flow-number {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 22px !important;
  height: 22px !important;
  min-width: 22px !important;
  border-radius: 999px !important;
  background: #EEF2F7 !important;
  color: #64748B !important;
  font-size: 11px !important;
  font-weight: 900 !important;
}

body.casf-woo-flow .casf-flow-step.is-active .casf-flow-number,
body.casf-woo-flow .casf-flow-step.is-complete .casf-flow-number {
  background: var(--casf-primary) !important;
  color: #fff !important;
}

body.casf-cart-page .button,
body.casf-cart-page button.button,
body.casf-cart-page .checkout-button {
  border-radius: 999px !important;
  background: linear-gradient(135deg, var(--casf-primary), var(--casf-primary-dark)) !important;
  border: 0 !important;
  color: #fff !important;
  font-weight: 900 !important;
  min-height: 44px !important;
  padding: 0 20px !important;
  box-shadow: 0 12px 24px rgba(27,156,133,.18) !important;
}

body.casf-cart-page .wc-proceed-to-checkout {
  padding: 0 !important;
  margin: 16px 0 0 !important;
}

body.casf-cart-page .wc-proceed-to-checkout .checkout-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 54px !important;
  margin: 0 !important;
}

body.casf-cart-page .wc-proceed-to-checkout {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
}

body.casf-cart-page .wc-proceed-to-checkout .checkout-button {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 52px !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  padding: 0 18px !important;
  white-space: normal !important;
}

body.casf-cart-page .wc-proceed-to-checkout [id*="paypal"],
body.casf-cart-page .wc-proceed-to-checkout [class*="paypal"],
body.casf-cart-page .wc-proceed-to-checkout [class*="ppc"],
body.casf-cart-page .wc-proceed-to-checkout [id*="ppc"],
body.casf-cart-page .wc-proceed-to-checkout [class*="express"],
body.casf-cart-page .wc-proceed-to-checkout iframe,
body.casf-cart-page .cart_totals [id*="paypal"],
body.casf-cart-page .cart_totals [class*="paypal"],
body.casf-cart-page .cart_totals [class*="ppc"],
body.casf-cart-page .cart_totals [id*="ppc"],
body.casf-cart-page .cart_totals iframe {
  max-width: 100% !important;
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

/* v1.0.10 — unified 1200px shell + neutral pre-checkout message style */
body.casf-woo-flow .entry-content > .woocommerce,
body.casf-woo-flow article .woocommerce,
body.casf-woo-flow .site-main > .woocommerce,
body.casf-woo-flow main .woocommerce,
body.casf-checkout-page .entry-content > .woocommerce,
body.casf-checkout-page article .woocommerce,
body.casf-checkout-page .site-main > .woocommerce,
body.casf-checkout-page main .woocommerce,
body.casf-cart-page .entry-content > .woocommerce,
body.casf-cart-page article .woocommerce,
body.casf-cart-page .site-main > .woocommerce,
body.casf-cart-page main .woocommerce,
body.casf-order-received-page .entry-content > .woocommerce,
body.casf-order-received-page article .woocommerce,
body.casf-order-received-page .site-main > .woocommerce,
body.casf-order-received-page main .woocommerce {
  width: min(1200px, calc(100vw - 48px)) !important;
  max-width: min(1200px, calc(100vw - 48px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* Make coupon, gift card and YITH points look like the same neutral row/card, not Woo info notices. */
body.casf-checkout-page .casf-checkout-before-form .woocommerce-form-coupon-toggle,
body.casf-checkout-page .casf-checkout-before-form .woocommerce-form-coupon-toggle .woocommerce-info,
body.casf-checkout-page .casf-checkout-before-form .ywgc_have_code,
body.casf-checkout-page .casf-checkout-before-form .ywgc_enter_code,
body.casf-checkout-page .casf-checkout-before-form .yith-ywgc-gift-card-message,
body.casf-checkout-page .casf-checkout-before-form #yith-par-message-cart.casf-visible-notice,
body.casf-checkout-page .casf-checkout-before-form #yith-par-message-reward-cart.casf-visible-notice,
body.casf-checkout-page .casf-checkout-before-form .woocommerce-cart-notice.casf-visible-notice,
body.casf-checkout-page .casf-combined-promos .woocommerce-form-coupon-toggle,
body.casf-checkout-page .casf-combined-promos .woocommerce-form-coupon-toggle .woocommerce-info,
body.casf-checkout-page .casf-combined-promos .ywgc_have_code,
body.casf-checkout-page .casf-combined-promos .ywgc_enter_code,
body.casf-checkout-page .casf-combined-promos .yith-ywgc-gift-card-message,
body.casf-checkout-page .casf-combined-promos #yith-par-message-cart.casf-visible-notice,
body.casf-checkout-page .casf-combined-promos #yith-par-message-reward-cart.casf-visible-notice,
body.casf-checkout-page .casf-combined-promos .woocommerce-cart-notice.casf-visible-notice {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 12px 14px !important;
  box-sizing: border-box !important;
  background: #fff !important;
  border: 1px solid var(--casf-border, #E5E7EB) !important;
  border-left: 0 !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  color: var(--casf-text, #111827) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

body.casf-checkout-page .casf-checkout-before-form .woocommerce-form-coupon-toggle .woocommerce-info::before,
body.casf-checkout-page .casf-checkout-before-form .woocommerce-info::before,
body.casf-checkout-page .casf-checkout-before-form .woocommerce-message::before,
body.casf-checkout-page .casf-checkout-before-form .woocommerce-cart-notice::before,
body.casf-checkout-page .casf-combined-promos .woocommerce-form-coupon-toggle .woocommerce-info::before,
body.casf-checkout-page .casf-combined-promos .woocommerce-info::before,
body.casf-checkout-page .casf-combined-promos .woocommerce-message::before,
body.casf-checkout-page .casf-combined-promos .woocommerce-cart-notice::before {
  display: none !important;
  content: none !important;
}

body.casf-checkout-page .casf-checkout-before-form #yith-par-message-cart.casf-visible-notice img,
body.casf-checkout-page .casf-checkout-before-form #yith-par-message-reward-cart.casf-visible-notice img,
body.casf-checkout-page .casf-checkout-before-form .woocommerce-cart-notice.casf-visible-notice img,
body.casf-checkout-page .casf-combined-promos #yith-par-message-cart.casf-visible-notice img,
body.casf-checkout-page .casf-combined-promos #yith-par-message-reward-cart.casf-visible-notice img,
body.casf-checkout-page .casf-combined-promos .woocommerce-cart-notice.casf-visible-notice img {
  display: inline-block !important;
  vertical-align: middle !important;
  max-width: 24px !important;
  height: auto !important;
  margin: 0 8px 0 0 !important;
}

body.casf-woo-flow .site-main,
body.casf-woo-flow article,
body.casf-woo-flow .entry-content,
body.casf-woo-flow .entry-content > .woocommerce,
body.casf-woo-flow article .woocommerce,
body.casf-woo-flow .site-main > .woocommerce,
body.casf-woo-flow main .woocommerce {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

body.casf-woo-flow .entry-content > .woocommerce,
body.casf-woo-flow article .woocommerce,
body.casf-woo-flow .site-main > .woocommerce,
body.casf-woo-flow main .woocommerce {
  width: min(1200px, calc(100vw - 48px)) !important;
  max-width: min(1200px, calc(100vw - 48px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  align-self: center !important;
  transform: none !important;
  left: auto !important;
  right: auto !important;
}

body.casf-checkout-page .casf-flow-header,
body.casf-checkout-page .casf-checkout-before-form,
body.casf-checkout-page .casf-combined-promos,
body.casf-checkout-page form.checkout,
body.casf-checkout-page form.woocommerce-checkout,
body.casf-checkout-page form.checkout.casf-checkout-shell,
body.casf-checkout-page form.woocommerce-checkout.casf-checkout-shell,
body.casf-checkout-page .casf-checkout-shell,
body.casf-cart-page .casf-flow-header,
body.casf-cart-page .casf-cart-shell,
body.casf-order-received-page .casf-flow-header,
body.casf-order-received-page .woocommerce-order,
body.casf-order-received-page .casf-order-shell {
  width: min(1200px, calc(100vw - 48px)) !important;
  max-width: min(1200px, calc(100vw - 48px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  align-self: center !important;
  box-sizing: border-box !important;
}

@media (max-width: 700px) {
  body.casf-woo-flow .entry-content > .woocommerce,
  body.casf-woo-flow article .woocommerce,
  body.casf-woo-flow .site-main > .woocommerce,
  body.casf-woo-flow main .woocommerce,
  body.casf-checkout-page .casf-flow-header,
  body.casf-checkout-page .casf-checkout-before-form,
  body.casf-checkout-page .casf-combined-promos,
  body.casf-checkout-page form.checkout,
  body.casf-checkout-page form.woocommerce-checkout,
  body.casf-cart-page .casf-flow-header,
  body.casf-cart-page .casf-cart-shell {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
  }
}

/* v1.0.13 — single visual axis for cart and thank you too */
body.casf-cart-page .entry-content > .woocommerce,
body.casf-cart-page article .woocommerce,
body.casf-cart-page .site-main > .woocommerce,
body.casf-cart-page main .woocommerce,
body.casf-order-received-page .entry-content > .woocommerce,
body.casf-order-received-page article .woocommerce,
body.casf-order-received-page .site-main > .woocommerce,
body.casf-order-received-page main .woocommerce {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  box-sizing: border-box !important;
  transform: none !important;
}

body.casf-cart-page .casf-cart-axis,
body.casf-order-received-page .casf-thankyou-axis {
  --casf-flow-shell: min(1200px, calc(100vw - 48px));
  width: var(--casf-flow-shell) !important;
  max-width: var(--casf-flow-shell) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: 16px !important;
  box-sizing: border-box !important;
  float: none !important;
  clear: both !important;
  transform: none !important;
  left: auto !important;
  right: auto !important;
}

body.casf-cart-page .casf-cart-axis > .casf-flow-header,
body.casf-cart-page .casf-cart-axis > .casf-cart-shell,
body.casf-cart-page .casf-cart-axis > .woocommerce-notices-wrapper,
body.casf-cart-page .casf-cart-axis > .woocommerce-message,
body.casf-cart-page .casf-cart-axis > .woocommerce-info,
body.casf-cart-page .casf-cart-axis > .woocommerce-error,
body.casf-cart-page .casf-cart-axis > .woocommerce-cart-notice,
body.casf-order-received-page .casf-thankyou-axis > .casf-flow-header,
body.casf-order-received-page .casf-thankyou-axis > .casf-thankyou-shell,
body.casf-order-received-page .casf-thankyou-axis > .woocommerce-order,
body.casf-order-received-page .casf-thankyou-axis > .woocommerce-notices-wrapper,
body.casf-order-received-page .casf-thankyou-axis > .woocommerce-message,
body.casf-order-received-page .casf-thankyou-axis > .woocommerce-info,
body.casf-order-received-page .casf-thankyou-axis > .woocommerce-error {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  align-self: stretch !important;
  box-sizing: border-box !important;
  transform: none !important;
  left: auto !important;
  right: auto !important;
}

@media (max-width: 700px) {
  body.casf-cart-page .casf-cart-axis,
  body.casf-order-received-page .casf-thankyou-axis {
    --casf-flow-shell: calc(100vw - 24px);
  }
}

/* v1.0.22 — hard center the thank you page on the same visual axis as cart/checkout */
body.casf-order-received-page #page,
body.casf-order-received-page #content,
body.casf-order-received-page .site-content,
body.casf-order-received-page .ast-container,
body.casf-order-received-page #primary,
body.casf-order-received-page .content-area,
body.casf-order-received-page .site-main,
body.casf-order-received-page article,
body.casf-order-received-page .entry-content,
body.casf-order-received-page .entry-content > .woocommerce,
body.casf-order-received-page article .woocommerce,
body.casf-order-received-page .site-main > .woocommerce,
body.casf-order-received-page main .woocommerce {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  float: none !important;
  clear: both !important;
  box-sizing: border-box !important;
  transform: none !important;
  left: auto !important;
  right: auto !important;
}

.pac-container .pac-item {
  min-height: 38px !important;
  padding: 8px 12px !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
}

@media (max-width: 767px) {
  body.casf-cart-page,
  body.casf-checkout-page {
    overflow-x: hidden !important;
  }

  body.casf-cart-page .site-content,
  body.casf-checkout-page .site-content,
  body.casf-cart-page .content-area,
  body.casf-checkout-page .content-area,
  body.casf-cart-page .entry-content,
  body.casf-checkout-page .entry-content,
  body.casf-cart-page .woocommerce,
  body.casf-checkout-page .woocommerce {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  body.casf-cart-page .casf-cart-axis,
  body.casf-checkout-page .casf-checkout-axis {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  body.casf-cart-page .casf-flow-header,
  body.casf-checkout-page .casf-flow-header {
    width: 100% !important;
    max-width: 100% !important;
    padding: 14px !important;
    border-radius: 20px !important;
  }

  body.casf-cart-page .casf-flow-steps,
  body.casf-checkout-page .casf-flow-steps {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
    width: 100% !important;
  }

  body.casf-cart-page .casf-flow-step,
  body.casf-checkout-page .casf-flow-step {
    min-width: 0 !important;
    padding-inline: 8px !important;
    font-size: 11px !important;
    white-space: normal !important;
    text-align: center !important;
  }

  body.casf-checkout-page form.checkout,
  body.casf-checkout-page form.woocommerce-checkout,
  body.casf-checkout-page form.checkout.casf-checkout-shell,
  body.casf-checkout-page form.woocommerce-checkout.casf-checkout-shell,
  body.casf-checkout-page .casf-checkout-layout,
  body.casf-checkout-page .casf-checkout-main,
  body.casf-checkout-page .casf-checkout-review,
  body.casf-checkout-page #customer_details,
  body.casf-checkout-page #order_review,
  body.casf-checkout-page .woocommerce-billing-fields,
  body.casf-checkout-page .woocommerce-shipping-fields,
  body.casf-checkout-page .woocommerce-additional-fields,
  body.casf-cart-page .casf-cart-shell,
  body.casf-cart-page .casf-cart-main,
  body.casf-cart-page .cart-collaterals,
  body.casf-cart-page .cart_totals,
  body.casf-cart-page form.woocommerce-cart-form {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  body.casf-checkout-page .casf-checkout-card,
  body.casf-checkout-page .casf-checkout-review,
  body.casf-cart-page .casf-cart-main,
  body.casf-cart-page .cart_totals,
  body.casf-cart-page .cart-collaterals {
    padding: 14px !important;
    border-radius: 20px !important;
  }

  body.casf-checkout-page .form-row,
  body.casf-checkout-page .woocommerce form .form-row,
  body.casf-checkout-page p.form-row,
  body.casf-cart-page .form-row,
  body.casf-cart-page .woocommerce form .form-row,
  body.casf-cart-page p.form-row {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    clear: both !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  body.casf-checkout-page input,
  body.casf-checkout-page select,
  body.casf-checkout-page textarea,
  body.casf-checkout-page .select2-container,
  body.casf-cart-page input,
  body.casf-cart-page select,
  body.casf-cart-page textarea,
  body.casf-cart-page .select2-container {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  body.casf-checkout-page .woocommerce-checkout-review-order-table,
  body.casf-checkout-page table.shop_table,
  body.casf-cart-page table.shop_table,
  body.casf-cart-page .woocommerce-cart-form__contents {
    width: 100% !important;
    max-width: 100% !important;
    table-layout: auto !important;
  }

  body.casf-checkout-page .woocommerce-checkout-review-order-table th,
  body.casf-checkout-page .woocommerce-checkout-review-order-table td,
  body.casf-cart-page table.shop_table th,
  body.casf-cart-page table.shop_table td {
    word-break: break-word !important;
  }

  body.casf-cart-page .coupon,
  body.casf-cart-page .actions,
  body.casf-cart-page .cart_totals .wc-proceed-to-checkout,
  body.casf-checkout-page .place-order {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
  }

  body.casf-cart-page .coupon .button,
  body.casf-cart-page .actions .button,
  body.casf-cart-page .checkout-button,
  body.casf-checkout-page #place_order,
  body.casf-checkout-page .place-order .button {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* v1.0.97 — hard mobile containment for cart + checkout */
@media (max-width: 767px) {
  html,
  body.casf-cart-page,
  body.casf-checkout-page,
  body.casf-cart-page #page,
  body.casf-checkout-page #page,
  body.casf-cart-page .site,
  body.casf-checkout-page .site {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  body.casf-cart-page *,
  body.casf-checkout-page * {
    box-sizing: border-box !important;
  }

  body.casf-cart-page .ast-container,
  body.casf-checkout-page .ast-container,
  body.casf-cart-page .site-content > .ast-container,
  body.casf-checkout-page .site-content > .ast-container,
  body.casf-cart-page #primary,
  body.casf-checkout-page #primary,
  body.casf-cart-page .site-main,
  body.casf-checkout-page .site-main,
  body.casf-cart-page article,
  body.casf-checkout-page article,
  body.casf-cart-page .entry-content,
  body.casf-checkout-page .entry-content {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow-x: hidden !important;
  }

  body.casf-cart-page .entry-content > .woocommerce,
  body.casf-checkout-page .entry-content > .woocommerce,
  body.casf-cart-page article .woocommerce,
  body.casf-checkout-page article .woocommerce,
  body.casf-cart-page .site-main > .woocommerce,
  body.casf-checkout-page .site-main > .woocommerce,
  body.casf-cart-page main .woocommerce,
  body.casf-checkout-page main .woocommerce {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
    overflow-x: hidden !important;
  }

  body.casf-cart-page .casf-cart-axis,
  body.casf-checkout-page .casf-checkout-axis {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 auto !important;
    padding: 0 !important;
    gap: 12px !important;
    overflow: hidden !important;
  }

  body.casf-cart-page .casf-flow-header,
  body.casf-checkout-page .casf-flow-header {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 12px !important;
    border-radius: 18px !important;
    overflow: hidden !important;
  }

  body.casf-cart-page .casf-flow-main,
  body.casf-checkout-page .casf-flow-main {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    align-items: start !important;
  }

  body.casf-cart-page .casf-flow-meta,
  body.casf-checkout-page .casf-flow-meta {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
  }

  body.casf-cart-page .casf-flow-badge,
  body.casf-cart-page .casf-flow-trust,
  body.casf-checkout-page .casf-flow-badge,
  body.casf-checkout-page .casf-flow-trust {
    justify-content: center !important;
    width: 100% !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
    white-space: normal !important;
    text-align: center !important;
  }

  body.casf-cart-page .casf-flow-steps ol,
  body.casf-checkout-page .casf-flow-steps ol {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
    padding: 6px !important;
  }

  body.casf-cart-page .casf-flow-step > a,
  body.casf-cart-page .casf-flow-step > span,
  body.casf-checkout-page .casf-flow-step > a,
  body.casf-checkout-page .casf-flow-step > span {
    min-width: 0 !important;
    width: 100% !important;
    justify-content: center !important;
    gap: 5px !important;
    padding: 8px 4px !important;
    font-size: 10px !important;
    line-height: 1.15 !important;
    white-space: normal !important;
    text-align: center !important;
  }

  body.casf-cart-page .casf-flow-number,
  body.casf-checkout-page .casf-flow-number {
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    font-size: 10px !important;
  }

  /* Cart: convert table into compact product cards */
  body.casf-cart-page .casf-cart-shell,
  body.casf-cart-page .casf-cart-main,
  body.casf-cart-page .cart-collaterals,
  body.casf-cart-page .cart_totals,
  body.casf-cart-page form.woocommerce-cart-form {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
  }

  body.casf-cart-page .shop_table.cart,
  body.casf-cart-page .shop_table.cart tbody,
  body.casf-cart-page .shop_table.cart tr,
  body.casf-cart-page .shop_table.cart td,
  body.casf-cart-page .woocommerce-cart-form__contents,
  body.casf-cart-page .woocommerce-cart-form__contents tbody,
  body.casf-cart-page .woocommerce-cart-form__contents tr,
  body.casf-cart-page .woocommerce-cart-form__contents td {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.casf-cart-page .shop_table.cart thead,
  body.casf-cart-page .woocommerce-cart-form__contents thead {
    display: none !important;
  }

  body.casf-cart-page .shop_table.cart tbody {
    padding: 12px !important;
  }

  body.casf-cart-page .shop_table.cart tr.cart_item,
  body.casf-cart-page .woocommerce-cart-form__cart-item.cart_item {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 74px minmax(0, 1fr) !important;
    gap: 8px 12px !important;
    margin: 0 0 12px !important;
    padding: 12px 12px 14px !important;
    border: 1px solid var(--casf-border, #E5E7EB) !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .05) !important;
    overflow: hidden !important;
  }

  body.casf-cart-page .shop_table.cart tr.cart_item td {
    border: 0 !important;
    padding: 0 !important;
    background: transparent !important;
  }

  body.casf-cart-page .shop_table.cart td.product-remove {
    position: absolute !important;
    top: 10px !important;
    right: 10px !important;
    z-index: 3 !important;
    width: auto !important;
  }

  body.casf-cart-page .shop_table.cart td.product-thumbnail {
    grid-column: 1 !important;
    grid-row: 1 / span 5 !important;
    width: 74px !important;
  }

  body.casf-cart-page .shop_table.cart td.product-thumbnail img {
    width: 74px !important;
    height: 74px !important;
    border-radius: 16px !important;
    object-fit: contain !important;
    padding: 6px !important;
    background: linear-gradient(135deg, #ECFDF5, #FFFFFF) !important;
    border: 1px solid #D8F3EC !important;
  }

  body.casf-cart-page .shop_table.cart td.product-name {
    grid-column: 2 !important;
    padding-right: 32px !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
    overflow-wrap: anywhere !important;
  }

  body.casf-cart-page .shop_table.cart td.product-name a {
    display: block !important;
    color: var(--casf-text, #111827) !important;
    font-weight: 950 !important;
  }

  body.casf-cart-page .shop_table.cart td.product-name dl,
  body.casf-cart-page .shop_table.cart td.product-name .variation {
    margin-top: 8px !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
    color: #64748B !important;
  }

  body.casf-cart-page .shop_table.cart td.product-price,
  body.casf-cart-page .shop_table.cart td.product-quantity,
  body.casf-cart-page .shop_table.cart td.product-subtotal {
    grid-column: 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    min-height: 34px !important;
    color: var(--casf-text, #111827) !important;
    font-weight: 850 !important;
  }

  body.casf-cart-page .shop_table.cart td.product-price::before,
  body.casf-cart-page .shop_table.cart td.product-quantity::before,
  body.casf-cart-page .shop_table.cart td.product-subtotal::before {
    content: attr(data-title) !important;
    display: inline-block !important;
    color: #64748B !important;
    font-size: 12px !important;
    font-weight: 800 !important;
  }

  body.casf-cart-page .shop_table.cart td.product-subtotal {
    padding-top: 8px !important;
    border-top: 1px dashed #E5E7EB !important;
    font-size: 15px !important;
    font-weight: 950 !important;
  }

  body.casf-cart-page .quantity,
  body.casf-cart-page .quantity .qty {
    max-width: 84px !important;
    width: 84px !important;
  }

  body.casf-cart-page .shop_table.cart tr:not(.cart_item) {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.casf-cart-page .shop_table.cart td.actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    padding: 12px !important;
    background: #F9FCFA !important;
    border-top: 1px solid #E5E7EB !important;
  }

  body.casf-cart-page .shop_table.cart td.actions .coupon {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.casf-cart-page .shop_table.cart td.actions .coupon .input-text,
  body.casf-cart-page .shop_table.cart td.actions .button,
  body.casf-cart-page .shop_table.cart td.actions button.button {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  body.casf-cart-page .cart-collaterals {
    margin-top: 14px !important;
  }

  body.casf-cart-page .cart_totals {
    padding: 14px !important;
    border-radius: 18px !important;
  }

  body.casf-cart-page .cart_totals h2 {
    margin: -14px -14px 12px !important;
    padding: 14px !important;
    font-size: 18px !important;
  }

  body.casf-cart-page .cart_totals table,
  body.casf-cart-page .cart_totals tbody,
  body.casf-cart-page .cart_totals tr {
    display: block !important;
    width: 100% !important;
  }

  body.casf-cart-page .cart_totals th,
  body.casf-cart-page .cart_totals td {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    text-align: left !important;
    padding: 8px 0 !important;
  }

  body.casf-cart-page .cart_totals td {
    text-align: right !important;
    overflow-wrap: anywhere !important;
  }

  body.casf-cart-page .cart_totals .woocommerce-shipping-methods,
  body.casf-cart-page .cart_totals #shipping_method {
    padding-left: 0 !important;
    margin-left: 0 !important;
    max-width: 100% !important;
  }

  body.casf-cart-page .cart_totals .woocommerce-shipping-methods li,
  body.casf-cart-page .cart_totals #shipping_method li {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    gap: 8px !important;
    align-items: start !important;
    text-align: left !important;
  }

  body.casf-cart-page .cart_totals .woocommerce-shipping-methods label,
  body.casf-cart-page .cart_totals #shipping_method label {
    overflow-wrap: anywhere !important;
    line-height: 1.35 !important;
  }

  /* Checkout: make every section one-column and prevent gateway/field overflow */
  body.casf-checkout-page .casf-checkout-before-form,
  body.casf-checkout-page form.checkout,
  body.casf-checkout-page form.woocommerce-checkout,
  body.casf-checkout-page form.checkout.casf-checkout-shell,
  body.casf-checkout-page form.woocommerce-checkout.casf-checkout-shell,
  body.casf-checkout-page .casf-checkout-layout,
  body.casf-checkout-page .casf-checkout-layout-one-column,
  body.casf-checkout-page .casf-checkout-main,
  body.casf-checkout-page .casf-checkout-review,
  body.casf-checkout-page .casf-checkout-card,
  body.casf-checkout-page #customer_details,
  body.casf-checkout-page #order_review,
  body.casf-checkout-page .woocommerce-checkout-review-order,
  body.casf-checkout-page .woocommerce-checkout-payment {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: hidden !important;
  }

  body.casf-checkout-page .casf-checkout-layout {
    gap: 12px !important;
  }

  body.casf-checkout-page .casf-checkout-card,
  body.casf-checkout-page .casf-checkout-review {
    padding: 14px !important;
    border-radius: 18px !important;
    margin-bottom: 12px !important;
  }

  body.casf-checkout-page .woocommerce-billing-fields__field-wrapper,
  body.casf-checkout-page .woocommerce-shipping-fields__field-wrapper,
  body.casf-checkout-page .woocommerce-additional-fields__field-wrapper,
  body.casf-checkout-page .col2-set,
  body.casf-checkout-page .col2-set .col-1,
  body.casf-checkout-page .col2-set .col-2 {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  body.casf-checkout-page .form-row,
  body.casf-checkout-page .form-row-first,
  body.casf-checkout-page .form-row-last,
  body.casf-checkout-page .form-row-wide,
  body.casf-checkout-page p.form-row,
  body.casf-checkout-page .woocommerce-input-wrapper,
  body.casf-checkout-page .select2-container,
  body.casf-checkout-page .select2-container .selection,
  body.casf-checkout-page .select2-selection,
  body.casf-checkout-page .select2-selection__rendered,
  body.casf-checkout-page input.input-text,
  body.casf-checkout-page input[type="text"],
  body.casf-checkout-page input[type="email"],
  body.casf-checkout-page input[type="tel"],
  body.casf-checkout-page input[type="number"],
  body.casf-checkout-page select,
  body.casf-checkout-page textarea {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    float: none !important;
    clear: both !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  body.casf-checkout-page .select2-dropdown,
  body.casf-checkout-page .select2-container--open .select2-dropdown,
  .select2-dropdown,
  .select2-container--open .select2-dropdown {
    max-width: calc(100vw - 20px) !important;
    width: auto !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  body.casf-checkout-page .woocommerce-checkout-review-order-table {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  body.casf-checkout-page .woocommerce-checkout-review-order-table thead {
    display: none !important;
  }

  body.casf-checkout-page .woocommerce-checkout-review-order-table tbody,
  body.casf-checkout-page .woocommerce-checkout-review-order-table tfoot,
  body.casf-checkout-page .woocommerce-checkout-review-order-table tr {
    display: block !important;
    width: 100% !important;
  }

  body.casf-checkout-page .woocommerce-checkout-review-order-table tbody tr,
  body.casf-checkout-page .woocommerce-checkout-review-order-table tfoot tr {
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 12px !important;
    padding: 10px 0 !important;
    border-bottom: 1px solid #EDF2F7 !important;
  }

  body.casf-checkout-page .woocommerce-checkout-review-order-table th,
  body.casf-checkout-page .woocommerce-checkout-review-order-table td {
    display: block !important;
    width: auto !important;
    max-width: 60% !important;
    min-width: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow-wrap: anywhere !important;
    text-align: left !important;
  }

  body.casf-checkout-page .woocommerce-checkout-review-order-table td:last-child,
  body.casf-checkout-page .woocommerce-checkout-review-order-table tfoot td {
    text-align: right !important;
    font-weight: 900 !important;
  }

  body.casf-checkout-page .woocommerce-checkout-payment,
  body.casf-checkout-page .wc_payment_methods,
  body.casf-checkout-page ul.payment_methods,
  body.casf-checkout-page .wc_payment_methods > li,
  body.casf-checkout-page ul.payment_methods > li,
  body.casf-checkout-page .payment_box,
  body.casf-checkout-page div.payment_box,
  body.casf-checkout-page .place-order {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  body.casf-checkout-page .wc_payment_methods label,
  body.casf-checkout-page ul.payment_methods label,
  body.casf-checkout-page .payment_box,
  body.casf-checkout-page div.payment_box {
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  body.casf-checkout-page .payment_box iframe,
  body.casf-checkout-page .woocommerce-checkout-payment iframe,
  body.casf-checkout-page [class*="mercado"],
  body.casf-checkout-page [class*="Mercado"],
  body.casf-checkout-page [id*="mercado"],
  body.casf-checkout-page [class*="stripe"],
  body.casf-checkout-page [id*="stripe"],
  body.casf-checkout-page [class*="paypal"],
  body.casf-checkout-page [id*="paypal"] {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  body.casf-checkout-page #place_order,
  body.casf-checkout-page .place-order .button,
  body.casf-checkout-page .button.alt,
  body.casf-checkout-page .wc-forward {
    width: 100% !important;
    max-width: 100% !important;
    white-space: normal !important;
  }

  body.casf-checkout-page .casf-whatsapp-consent-card,
  body.casf-checkout-page .woocommerce-privacy-policy-text,
  body.casf-checkout-page .woocommerce-terms-and-conditions-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
  }

  .pac-container {
    left: 10px !important;
    max-width: calc(100vw - 20px) !important;
    width: calc(100vw - 20px) !important;
    box-sizing: border-box !important;
  }
}

/* v1.0.98 — mobile cart/checkout repair only. Footer intentionally untouched. */
@media (max-width: 767px) {
  body.casf-cart-page,
  body.casf-checkout-page {
    overflow-x: hidden !important;
  }

  body.casf-cart-page .entry-content > .woocommerce,
  body.casf-checkout-page .entry-content > .woocommerce,
  body.casf-cart-page article .woocommerce,
  body.casf-checkout-page article .woocommerce,
  body.casf-cart-page main .woocommerce,
  body.casf-checkout-page main .woocommerce {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  body.casf-cart-page .casf-cart-axis,
  body.casf-checkout-page .casf-checkout-axis {
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  /* Cart product cards */
  body.casf-cart-page .shop_table.cart tr.cart_item,
  body.casf-cart-page .woocommerce-cart-form__cart-item.cart_item {
    grid-template-columns: 76px minmax(0, 1fr) !important;
    gap: 10px 12px !important;
    padding: 14px 12px !important;
    overflow: hidden !important;
  }

  body.casf-cart-page .shop_table.cart td.product-remove {
    top: 12px !important;
    right: 12px !important;
    width: 30px !important;
    height: 30px !important;
  }

  body.casf-cart-page .shop_table.cart td.product-remove .remove {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    border-radius: 999px !important;
    display: grid !important;
    place-items: center !important;
    line-height: 1 !important;
    font-size: 18px !important;
  }

  body.casf-cart-page .shop_table.cart td.product-thumbnail {
    grid-column: 1 !important;
    grid-row: 1 / span 4 !important;
    width: 76px !important;
    max-width: 76px !important;
  }

  body.casf-cart-page .shop_table.cart td.product-thumbnail a,
  body.casf-cart-page .shop_table.cart td.product-thumbnail img {
    width: 76px !important;
    max-width: 76px !important;
    height: 76px !important;
  }

  body.casf-cart-page .shop_table.cart td.product-name {
    grid-column: 2 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding-right: 42px !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
    text-align: left !important;
  }

  body.casf-cart-page .shop_table.cart td.product-name::before {
    content: none !important;
    display: none !important;
  }

  body.casf-cart-page .shop_table.cart td.product-name > a,
  body.casf-cart-page .shop_table.cart td.product-name a {
    max-width: 100% !important;
    display: block !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    hyphens: auto !important;
  }

  body.casf-cart-page .shop_table.cart td.product-name dl,
  body.casf-cart-page .shop_table.cart td.product-name dl.variation,
  body.casf-cart-page .shop_table.cart td.product-name .variation {
    clear: both !important;
    float: none !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 3px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 10px 0 0 !important;
    padding: 10px 0 0 !important;
    border-top: 1px dashed #E5E7EB !important;
    text-align: left !important;
    overflow: hidden !important;
  }

  body.casf-cart-page .shop_table.cart td.product-name .variation dt,
  body.casf-cart-page .shop_table.cart td.product-name .variation dd,
  body.casf-cart-page .shop_table.cart td.product-name dl dt,
  body.casf-cart-page .shop_table.cart td.product-name dl dd {
    float: none !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }

  body.casf-cart-page .shop_table.cart td.product-name .variation dt,
  body.casf-cart-page .shop_table.cart td.product-name dl dt {
    margin-top: 6px !important;
    color: #111827 !important;
    font-size: 11px !important;
    font-weight: 900 !important;
  }

  body.casf-cart-page .shop_table.cart td.product-name .variation dd,
  body.casf-cart-page .shop_table.cart td.product-name .variation dd p,
  body.casf-cart-page .shop_table.cart td.product-name dl dd,
  body.casf-cart-page .shop_table.cart td.product-name dl dd p {
    color: #64748B !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
  }

  body.casf-cart-page .shop_table.cart td.product-price,
  body.casf-cart-page .shop_table.cart td.product-quantity,
  body.casf-cart-page .shop_table.cart td.product-subtotal {
    grid-column: 2 !important;
    width: 100% !important;
    display: grid !important;
    grid-template-columns: minmax(76px, .55fr) minmax(0, 1fr) !important;
    align-items: center !important;
    justify-items: end !important;
    gap: 10px !important;
    min-height: 36px !important;
    text-align: right !important;
  }

  body.casf-cart-page .shop_table.cart td.product-price::before,
  body.casf-cart-page .shop_table.cart td.product-quantity::before,
  body.casf-cart-page .shop_table.cart td.product-subtotal::before {
    justify-self: start !important;
    text-align: left !important;
    white-space: nowrap !important;
  }

  body.casf-cart-page .shop_table.cart td.product-price .amount,
  body.casf-cart-page .shop_table.cart td.product-subtotal .amount {
    white-space: nowrap !important;
  }

  body.casf-cart-page .shop_table.cart td.product-quantity .quantity {
    justify-self: end !important;
    width: 72px !important;
    max-width: 72px !important;
  }

  body.casf-cart-page .shop_table.cart td.product-quantity .qty {
    width: 72px !important;
    max-width: 72px !important;
    min-width: 0 !important;
    text-align: center !important;
  }

  body.casf-cart-page .shop_table.cart td.actions {
    padding: 12px !important;
    border-radius: 0 0 18px 18px !important;
  }

  body.casf-cart-page .shop_table.cart td.actions .coupon input,
  body.casf-cart-page .shop_table.cart td.actions .coupon button,
  body.casf-cart-page .shop_table.cart td.actions > button {
    width: 100% !important;
    min-width: 0 !important;
  }

  /* Cart totals + shipping methods */
  body.casf-cart-page .cart_totals,
  body.casf-cart-page .cart_totals table,
  body.casf-cart-page .cart_totals tbody,
  body.casf-cart-page .cart_totals tr,
  body.casf-cart-page .cart_totals th,
  body.casf-cart-page .cart_totals td {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }

  body.casf-cart-page .cart_totals td {
    text-align: left !important;
  }

  body.casf-cart-page .cart_totals .amount,
  body.casf-cart-page .cart_totals strong {
    overflow-wrap: anywhere !important;
  }

  body.casf-cart-page .cart_totals #shipping_method,
  body.casf-cart-page .cart_totals ul.woocommerce-shipping-methods {
    display: grid !important;
    gap: 8px !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  body.casf-cart-page .cart_totals #shipping_method li,
  body.casf-cart-page .cart_totals ul.woocommerce-shipping-methods li {
    display: grid !important;
    grid-template-columns: 22px minmax(0, 1fr) !important;
    gap: 8px !important;
    align-items: start !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 10px !important;
    border: 1px solid #E5E7EB !important;
    border-radius: 14px !important;
    background: #fff !important;
    list-style: none !important;
    overflow: hidden !important;
    text-align: left !important;
  }

  body.casf-cart-page .cart_totals #shipping_method input,
  body.casf-cart-page .cart_totals ul.woocommerce-shipping-methods input,
  body.casf-checkout-page #shipping_method input,
  body.casf-checkout-page ul.woocommerce-shipping-methods input {
    width: 16px !important;
    min-width: 16px !important;
    max-width: 16px !important;
    height: 16px !important;
    margin: 2px 0 0 !important;
  }

  body.casf-cart-page .cart_totals #shipping_method label,
  body.casf-cart-page .cart_totals ul.woocommerce-shipping-methods label {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    line-height: 1.35 !important;
    text-align: left !important;
  }

  body.casf-cart-page .woocommerce-shipping-destination,
  body.casf-cart-page .woocommerce-shipping-calculator {
    text-align: left !important;
    overflow-wrap: anywhere !important;
  }

  /* Checkout layout + cards */
  body.casf-checkout-page .casf-checkout-shell,
  body.casf-checkout-page .casf-checkout-layout,
  body.casf-checkout-page .casf-checkout-main,
  body.casf-checkout-page .casf-checkout-review,
  body.casf-checkout-page .casf-checkout-card,
  body.casf-checkout-page #customer_details,
  body.casf-checkout-page #order_review {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
  }

  body.casf-checkout-page .casf-checkout-card,
  body.casf-checkout-page .casf-checkout-review {
    padding: 14px !important;
    border-radius: 18px !important;
  }

  body.casf-checkout-page .woocommerce-checkout-review-order-table,
  body.casf-checkout-page .woocommerce-checkout-review-order-table tbody,
  body.casf-checkout-page .woocommerce-checkout-review-order-table tfoot,
  body.casf-checkout-page .woocommerce-checkout-review-order-table tr {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.casf-checkout-page .woocommerce-checkout-review-order-table tbody tr.cart_item,
  body.casf-checkout-page .woocommerce-checkout-review-order-table tfoot tr {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 10px !important;
    width: 100% !important;
    align-items: start !important;
  }

  body.casf-checkout-page .woocommerce-checkout-review-order-table th,
  body.casf-checkout-page .woocommerce-checkout-review-order-table td {
    max-width: 100% !important;
    width: auto !important;
    min-width: 0 !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }

  body.casf-checkout-page .woocommerce-checkout-review-order-table td.product-name {
    padding-right: 4px !important;
  }

  body.casf-checkout-page .woocommerce-checkout-review-order-table td.product-total,
  body.casf-checkout-page .woocommerce-checkout-review-order-table tfoot td {
    white-space: nowrap !important;
    text-align: right !important;
  }

  body.casf-checkout-page .woocommerce-checkout-review-order-table tr.shipping,
  body.casf-checkout-page .woocommerce-checkout-review-order-table tfoot tr.shipping {
    display: block !important;
  }

  body.casf-checkout-page .woocommerce-checkout-review-order-table tr.shipping th,
  body.casf-checkout-page .woocommerce-checkout-review-order-table tr.shipping td {
    display: block !important;
    width: 100% !important;
    text-align: left !important;
  }

  body.casf-checkout-page #shipping_method,
  body.casf-checkout-page ul.woocommerce-shipping-methods {
    display: grid !important;
    gap: 8px !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 8px 0 0 !important;
  }

  body.casf-checkout-page #shipping_method li,
  body.casf-checkout-page ul.woocommerce-shipping-methods li {
    display: grid !important;
    grid-template-columns: 22px minmax(0, 1fr) !important;
    gap: 8px !important;
    align-items: start !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 10px !important;
    border: 1px solid #E5E7EB !important;
    border-radius: 14px !important;
    background: #fff !important;
    overflow: hidden !important;
    text-align: left !important;
  }

  body.casf-checkout-page #shipping_method label,
  body.casf-checkout-page ul.woocommerce-shipping-methods label {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    line-height: 1.35 !important;
  }

  body.casf-checkout-page .woocommerce-checkout-payment,
  body.casf-checkout-page .wc_payment_methods,
  body.casf-checkout-page ul.payment_methods,
  body.casf-checkout-page .wc_payment_methods > li,
  body.casf-checkout-page ul.payment_methods > li,
  body.casf-checkout-page .payment_box,
  body.casf-checkout-page div.payment_box {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }

  body.casf-checkout-page ul.payment_methods > li,
  body.casf-checkout-page .wc_payment_methods > li {
    padding: 12px !important;
    border-radius: 16px !important;
  }

  body.casf-checkout-page ul.payment_methods > li > label,
  body.casf-checkout-page .wc_payment_methods > li > label {
    display: grid !important;
    grid-template-columns: 22px minmax(0, 1fr) !important;
    gap: 8px !important;
    align-items: center !important;
    width: 100% !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  body.casf-checkout-page ul.payment_methods input[type="radio"],
  body.casf-checkout-page .wc_payment_methods input[type="radio"] {
    width: 16px !important;
    min-width: 16px !important;
    max-width: 16px !important;
    height: 16px !important;
    margin: 0 !important;
  }

  body.casf-checkout-page .payment_box iframe,
  body.casf-checkout-page .woocommerce-checkout-payment iframe,
  body.casf-checkout-page [class*="mercado"],
  body.casf-checkout-page [class*="Mercado"],
  body.casf-checkout-page [id*="mercado"],
  body.casf-checkout-page [class*="stripe"],
  body.casf-checkout-page [id*="stripe"],
  body.casf-checkout-page [class*="paypal"],
  body.casf-checkout-page [id*="paypal"],
  body.casf-checkout-page [class*="flow"],
  body.casf-checkout-page [id*="flow"] {
    max-width: 100% !important;
    min-width: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }

  body.casf-checkout-page .place-order,
  body.casf-checkout-page #place_order,
  body.casf-checkout-page .button.alt {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
}

/* v1.0.99 — hard fix mobile cart/checkout text wrapping, radios and checkbox rows. */
@media (max-width: 767px) {
  body.casf-cart-page,
  body.casf-checkout-page {
    overflow-x: hidden !important;
  }

  /* Keep the flow header usable on mobile. The previous nav grid made the whole <ol>
     occupy only one third of the card, so labels wrapped letter-by-letter. */
  body.casf-cart-page .casf-flow-steps,
  body.casf-checkout-page .casf-flow-steps {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
  }

  body.casf-cart-page .casf-flow-steps ol,
  body.casf-checkout-page .casf-flow-steps ol {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 6px !important;
    margin: 0 !important;
    border-radius: 18px !important;
    overflow: hidden !important;
  }

  body.casf-cart-page .casf-flow-step,
  body.casf-checkout-page .casf-flow-step {
    display: block !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
  }

  body.casf-cart-page .casf-flow-step > a,
  body.casf-cart-page .casf-flow-step > span,
  body.casf-checkout-page .casf-flow-step > a,
  body.casf-checkout-page .casf-flow-step > span {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 32px !important;
    padding: 7px 4px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-align: center !important;
    line-height: 1.05 !important;
    font-size: 10px !important;
  }

  body.casf-cart-page .casf-flow-label,
  body.casf-checkout-page .casf-flow-label {
    display: inline-block !important;
    min-width: 0 !important;
    max-width: 100% !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
  }

  body.casf-cart-page .casf-flow-number,
  body.casf-checkout-page .casf-flow-number {
    flex: 0 0 20px !important;
  }

  /* Generic mobile inputs were forcing radios/checkboxes to 100% width. */
  body.casf-cart-page input[type='radio'],
  body.casf-cart-page input[type='checkbox'],
  body.casf-checkout-page input[type='radio'],
  body.casf-checkout-page input[type='checkbox'] {
    display: inline-block !important;
    width: 18px !important;
    min-width: 18px !important;
    max-width: 18px !important;
    height: 18px !important;
    min-height: 18px !important;
    max-height: 18px !important;
    flex: 0 0 18px !important;
    margin: 1px 0 0 !important;
    padding: 0 !important;
    float: none !important;
    clear: none !important;
    position: relative !important;
    inset: auto !important;
    transform: none !important;
    vertical-align: middle !important;
    box-sizing: border-box !important;
    accent-color: var(--casf-primary, #1B9C85) !important;
  }

  /* Account, shipping-address and terms checkboxes must stay as clean inline rows. */
  body.casf-checkout-page .woocommerce-account-fields,
  body.casf-checkout-page .woocommerce-shipping-fields,
  body.casf-checkout-page .woocommerce-terms-and-conditions-wrapper,
  body.casf-checkout-page .woocommerce-privacy-policy-text {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
  }

  body.casf-checkout-page .woocommerce-account-fields .form-row,
  body.casf-checkout-page .woocommerce-account-fields p.create-account,
  body.casf-checkout-page #ship-to-different-address,
  body.casf-checkout-page .woocommerce-terms-and-conditions-wrapper p.form-row {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
    clear: both !important;
    float: none !important;
    overflow: visible !important;
  }

  body.casf-checkout-page label.checkbox,
  body.casf-checkout-page .woocommerce-form__label-for-checkbox,
  body.casf-checkout-page #ship-to-different-address label,
  body.casf-checkout-page .woocommerce-terms-and-conditions-checkbox-text {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    hyphens: none !important;
  }

  body.casf-checkout-page label.checkbox,
  body.casf-checkout-page .woocommerce-form__label-for-checkbox,
  body.casf-checkout-page #ship-to-different-address label {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    line-height: 1.35 !important;
    text-align: left !important;
  }

  body.casf-checkout-page label.checkbox span,
  body.casf-checkout-page .woocommerce-form__label-for-checkbox span,
  body.casf-checkout-page #ship-to-different-address label span {
    display: inline !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    line-height: 1.35 !important;
    text-align: left !important;
  }

  body.casf-checkout-page .woocommerce-shipping-fields__field-wrapper,
  body.casf-checkout-page .woocommerce-account-fields .create-account {
    margin-top: 10px !important;
  }

  /* Shipping methods: radio in the first column, label in the second. No overlap. */
  body.casf-cart-page #shipping_method,
  body.casf-cart-page ul.woocommerce-shipping-methods,
  body.casf-checkout-page #shipping_method,
  body.casf-checkout-page ul.woocommerce-shipping-methods,
  body.casf-checkout-page #order_review .casf-shipping-soft-card-inner ul#shipping_method,
  body.casf-checkout-page #order_review .casf-shipping-soft-card-inner .woocommerce-shipping-methods {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: visible !important;
  }

  body.casf-cart-page #shipping_method li,
  body.casf-cart-page ul.woocommerce-shipping-methods li,
  body.casf-checkout-page #shipping_method li,
  body.casf-checkout-page ul.woocommerce-shipping-methods li,
  body.casf-checkout-page #order_review .casf-shipping-soft-card-inner ul#shipping_method li,
  body.casf-checkout-page #order_review .casf-shipping-soft-card-inner .woocommerce-shipping-methods li {
    display: grid !important;
    grid-template-columns: 22px minmax(0, 1fr) !important;
    gap: 9px !important;
    align-items: start !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 11px 12px !important;
    margin: 0 !important;
    overflow: visible !important;
    text-align: left !important;
    list-style: none !important;
  }

  body.casf-cart-page #shipping_method li > input[type='radio'],
  body.casf-cart-page ul.woocommerce-shipping-methods li > input[type='radio'],
  body.casf-checkout-page #shipping_method li > input[type='radio'],
  body.casf-checkout-page ul.woocommerce-shipping-methods li > input[type='radio'],
  body.casf-checkout-page #order_review .casf-shipping-soft-card-inner li > input[type='radio'] {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: start !important;
    align-self: start !important;
    margin-top: 2px !important;
    z-index: 2 !important;
  }

  body.casf-cart-page #shipping_method li > label,
  body.casf-cart-page ul.woocommerce-shipping-methods li > label,
  body.casf-checkout-page #shipping_method li > label,
  body.casf-checkout-page ul.woocommerce-shipping-methods li > label,
  body.casf-checkout-page #order_review .casf-shipping-soft-card-inner li > label {
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--casf-text, #111827) !important;
    font-size: 14px !important;
    font-weight: 850 !important;
    line-height: 1.35 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    hyphens: none !important;
    text-align: left !important;
  }

  body.casf-cart-page #shipping_method li > label .amount,
  body.casf-cart-page ul.woocommerce-shipping-methods li > label .amount,
  body.casf-checkout-page #shipping_method li > label .amount,
  body.casf-checkout-page ul.woocommerce-shipping-methods li > label .amount,
  body.casf-checkout-page #order_review .casf-shipping-soft-card-inner li > label .amount {
    float: none !important;
    display: inline-block !important;
    margin: 0 0 0 4px !important;
    white-space: nowrap !important;
    font-weight: 950 !important;
  }

  body.casf-checkout-page #order_review .casf-shipping-soft-head {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    align-items: start !important;
    padding: 14px !important;
  }

  body.casf-checkout-page #order_review .casf-shipping-soft-title,
  body.casf-checkout-page #order_review .casf-shipping-soft-badge,
  body.casf-checkout-page #order_review .casf-shipping-soft-card-inner .casf-shipping-soft-help,
  body.casf-checkout-page #order_review .woocommerce-shipping-destination,
  body.casf-checkout-page #order_review .woocommerce-shipping-calculator {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    hyphens: none !important;
  }

  body.casf-checkout-page #order_review .casf-shipping-soft-badge {
    justify-self: start !important;
    display: inline-flex !important;
    width: auto !important;
  }

  body.casf-checkout-page #order_review .casf-shipping-soft-card-inner .casf-shipping-soft-help {
    margin: 12px 14px !important;
    max-width: calc(100% - 28px) !important;
  }

  /* Payment gateways: WooCommerce puts the radio and label as siblings.
     The previous label grid reserved a 22px column inside the label, forcing text vertical. */
  body.casf-checkout-page .woocommerce-checkout-payment,
  body.casf-checkout-page .wc_payment_methods,
  body.casf-checkout-page ul.payment_methods {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
  }

  body.casf-checkout-page ul.payment_methods > li,
  body.casf-checkout-page .wc_payment_methods > li,
  body.casf-checkout-page #payment ul.payment_methods > li {
    display: grid !important;
    grid-template-columns: 22px minmax(0, 1fr) !important;
    grid-template-areas:
      'casfpayradio casfpaylabel'
      'casfpaybox casfpaybox' !important;
    column-gap: 10px !important;
    row-gap: 8px !important;
    align-items: start !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 0 10px !important;
    padding: 13px 14px !important;
    overflow: visible !important;
    text-align: left !important;
  }

  body.casf-checkout-page ul.payment_methods > li > input[type='radio'],
  body.casf-checkout-page .wc_payment_methods > li > input[type='radio'],
  body.casf-checkout-page #payment ul.payment_methods > li > input[type='radio'] {
    grid-area: casfpayradio !important;
    justify-self: start !important;
    align-self: start !important;
    margin-top: 2px !important;
    z-index: 2 !important;
  }

  body.casf-checkout-page ul.payment_methods > li > label,
  body.casf-checkout-page .wc_payment_methods > li > label,
  body.casf-checkout-page #payment ul.payment_methods > li > label {
    grid-area: casfpaylabel !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--casf-text, #111827) !important;
    font-size: 14px !important;
    font-weight: 850 !important;
    line-height: 1.35 !important;
    text-align: left !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    hyphens: none !important;
  }

  body.casf-checkout-page ul.payment_methods > li > label img,
  body.casf-checkout-page .wc_payment_methods > li > label img,
  body.casf-checkout-page #payment ul.payment_methods > li > label img {
    display: inline-block !important;
    width: auto !important;
    max-width: 58px !important;
    height: auto !important;
    max-height: 24px !important;
    margin: 0 0 0 4px !important;
    flex: 0 0 auto !important;
    object-fit: contain !important;
  }

  body.casf-checkout-page ul.payment_methods > li > .payment_box,
  body.casf-checkout-page .wc_payment_methods > li > .payment_box,
  body.casf-checkout-page #payment ul.payment_methods > li > .payment_box,
  body.casf-checkout-page ul.payment_methods > li > div.payment_box,
  body.casf-checkout-page .wc_payment_methods > li > div.payment_box {
    grid-area: casfpaybox !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 8px 0 0 !important;
    overflow: visible !important;
  }

  body.casf-checkout-page .payment_box,
  body.casf-checkout-page .payment_box *,
  body.casf-checkout-page div.payment_box,
  body.casf-checkout-page div.payment_box * {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
  }

  body.casf-checkout-page .place-order {
    padding-bottom: 12px !important;
  }

  /* Give content breathing room above fixed mobile bars / floating buttons. */
  body.casf-cart-page .casf-cart-axis,
  body.casf-checkout-page .casf-checkout-axis {
    padding-bottom: 110px !important;
  }
}

@media (max-width: 380px) {
  body.casf-cart-page .casf-flow-step > a,
  body.casf-cart-page .casf-flow-step > span,
  body.casf-checkout-page .casf-flow-step > a,
  body.casf-checkout-page .casf-flow-step > span {
    font-size: 9px !important;
    gap: 3px !important;
  }

  body.casf-cart-page .casf-flow-number,
  body.casf-checkout-page .casf-flow-number {
    flex-basis: 18px !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    font-size: 9px !important;
  }
}

/* v1.1.11 — fondo blanco en carrito, checkout y confirmación.
   Mantiene tarjetas/controles con UI CraftArt, pero elimina el fondo verde/degradado del flujo de compra. */
body.casf-cart-page,
body.casf-checkout-page,
body.casf-order-received-page {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  background-image: none !important;
}

body.casf-cart-page #page,
body.casf-checkout-page #page,
body.casf-order-received-page #page,
body.casf-cart-page .site,
body.casf-checkout-page .site,
body.casf-order-received-page .site,
body.casf-cart-page #content,
body.casf-checkout-page #content,
body.casf-order-received-page #content,
body.casf-cart-page .site-content,
body.casf-checkout-page .site-content,
body.casf-order-received-page .site-content,
body.casf-cart-page .content-area,
body.casf-checkout-page .content-area,
body.casf-order-received-page .content-area,
body.casf-cart-page #primary,
body.casf-checkout-page #primary,
body.casf-order-received-page #primary,
body.casf-cart-page .site-main,
body.casf-checkout-page .site-main,
body.casf-order-received-page .site-main,
body.casf-cart-page article,
body.casf-checkout-page article,
body.casf-order-received-page article,
body.casf-cart-page .entry-content,
body.casf-checkout-page .entry-content,
body.casf-order-received-page .entry-content,
body.casf-cart-page .entry-content > .woocommerce,
body.casf-checkout-page .entry-content > .woocommerce,
body.casf-order-received-page .entry-content > .woocommerce {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  background-image: none !important;
}

/* Evita que Astra/Elementor deje una franja de color detrás del contenido del flujo. */
body.casf-cart-page .ast-container,
body.casf-checkout-page .ast-container,
body.casf-order-received-page .ast-container,
body.casf-cart-page .elementor-section,
body.casf-checkout-page .elementor-section,
body.casf-order-received-page .elementor-section,
body.casf-cart-page .elementor-container,
body.casf-checkout-page .elementor-container,
body.casf-order-received-page .elementor-container,
body.casf-cart-page .elementor-widget-wrap,
body.casf-checkout-page .elementor-widget-wrap,
body.casf-order-received-page .elementor-widget-wrap,
body.casf-cart-page .elementor-shortcode,
body.casf-checkout-page .elementor-shortcode,
body.casf-order-received-page .elementor-shortcode {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  background-image: none !important;
}

/* --------------------------------------------------------------------------
 * v1.2.6 — Purchase flow configurable modules
 * -------------------------------------------------------------------------- */
.casf-purchase-free-shipping {
  width: min(1200px, calc(100vw - 32px));
  margin: 0 auto 18px;
  padding: 16px;
  border: 1px solid #D8F3EC;
  border-radius: 22px;
  background:
    radial-gradient(circle at top right, rgba(27,156,133,.13), transparent 34%),
    #fff;
  box-shadow: 0 14px 34px rgba(15,23,42,.06);
}

.casf-purchase-free-shipping-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.casf-purchase-free-shipping-top strong {
  color: var(--casf-text, #111827);
  font-size: 14px;
  font-weight: 950;
}

.casf-purchase-free-shipping-top span {
  color: var(--casf-primary-deep, #0F5F53);
  font-size: 13px;
  font-weight: 950;
  white-space: nowrap;
}

.casf-purchase-free-shipping-track {
  height: 10px;
  border-radius: 999px;
  overflow: hidden;
  background: #E5E7EB;
}

.casf-purchase-free-shipping-track span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(135deg, var(--casf-primary, #1B9C85), var(--casf-primary-dark, #147A69));
}

@media (max-width: 760px) {
  .casf-checkout-trust-config {
    grid-template-columns: 1fr;
  }

  .casf-thankyou-support-config {
    grid-template-columns: 1fr;
    text-align: center;
    justify-items: center;
  }
}

.casf-purchase-free-shipping:empty,
.casf-checkout-trust-config:empty,
.casf-thankyou-support-config:empty {
  display: none !important;
}

/* --------------------------------------------------------------------------
 * v1.2.8-rc5 — Cart/Checkout shipping selector grid hard fix
 * -------------------------------------------------------------------------- */
body.casf-cart-page #shipping_method,
body.casf-checkout-page #shipping_method,
body.woocommerce-cart #shipping_method,
body.woocommerce-checkout #shipping_method,
body.casf-cart-page .woocommerce-shipping-methods,
body.casf-checkout-page .woocommerce-shipping-methods,
body.woocommerce-cart .woocommerce-shipping-methods,
body.woocommerce-checkout .woocommerce-shipping-methods {
  display: grid !important;
  gap: 10px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.casf-cart-page #shipping_method li,
body.casf-checkout-page #shipping_method li,
body.woocommerce-cart #shipping_method li,
body.woocommerce-checkout #shipping_method li,
body.casf-cart-page .woocommerce-shipping-methods li,
body.casf-checkout-page .woocommerce-shipping-methods li,
body.woocommerce-cart .woocommerce-shipping-methods li,
body.woocommerce-checkout .woocommerce-shipping-methods li {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 22px minmax(0, 1fr) !important;
  grid-template-rows: auto !important;
  column-gap: 10px !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 48px !important;
  padding: 13px 14px !important;
  margin: 0 !important;
  list-style: none !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

body.casf-cart-page #shipping_method li input[type="radio"],
body.casf-checkout-page #shipping_method li input[type="radio"],
body.woocommerce-cart #shipping_method li input[type="radio"],
body.woocommerce-checkout #shipping_method li input[type="radio"],
body.casf-cart-page .woocommerce-shipping-methods li input[type="radio"],
body.casf-checkout-page .woocommerce-shipping-methods li input[type="radio"],
body.woocommerce-cart .woocommerce-shipping-methods li input[type="radio"],
body.woocommerce-checkout .woocommerce-shipping-methods li input[type="radio"],
body.casf-cart-page input.shipping_method,
body.casf-checkout-page input.shipping_method,
body.woocommerce-cart input.shipping_method,
body.woocommerce-checkout input.shipping_method {
  position: relative !important;
  inset: auto !important;
  left: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  grid-column: 1 !important;
  grid-row: 1 !important;
  align-self: center !important;
  justify-self: center !important;
  flex: 0 0 16px !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  min-height: 16px !important;
  max-width: 16px !important;
  max-height: 16px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  opacity: 1 !important;
  z-index: 3 !important;
  float: none !important;
  clear: none !important;
  pointer-events: auto !important;
}

body.casf-cart-page #shipping_method li label,
body.casf-checkout-page #shipping_method li label,
body.woocommerce-cart #shipping_method li label,
body.woocommerce-checkout #shipping_method li label,
body.casf-cart-page .woocommerce-shipping-methods li label,
body.casf-checkout-page .woocommerce-shipping-methods li label,
body.woocommerce-cart .woocommerce-shipping-methods li label,
body.woocommerce-checkout .woocommerce-shipping-methods li label {
  position: relative !important;
  grid-column: 2 !important;
  grid-row: 1 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  column-gap: 12px !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--casf-text, #111827) !important;
  line-height: 1.35 !important;
  text-align: left !important;
  cursor: pointer !important;
  float: none !important;
  clear: none !important;
}

body.casf-cart-page #shipping_method li label::before,
body.casf-checkout-page #shipping_method li label::before,
body.woocommerce-cart #shipping_method li label::before,
body.woocommerce-checkout #shipping_method li label::before,
body.casf-cart-page #shipping_method li label::after,
body.casf-checkout-page #shipping_method li label::after,
body.woocommerce-cart #shipping_method li label::after,
body.woocommerce-checkout #shipping_method li label::after {
  content: none !important;
  display: none !important;
}

body.casf-cart-page #shipping_method li label .amount,
body.casf-checkout-page #shipping_method li label .amount,
body.woocommerce-cart #shipping_method li label .amount,
body.woocommerce-checkout #shipping_method li label .amount,
body.casf-cart-page .woocommerce-shipping-methods li label .amount,
body.casf-checkout-page .woocommerce-shipping-methods li label .amount,
body.woocommerce-cart .woocommerce-shipping-methods li label .amount,
body.woocommerce-checkout .woocommerce-shipping-methods li label .amount,
body.casf-cart-page #shipping_method li label bdi,
body.casf-checkout-page #shipping_method li label bdi,
body.woocommerce-cart #shipping_method li label bdi,
body.woocommerce-checkout #shipping_method li label bdi {
  justify-self: end !important;
  margin-left: auto !important;
  white-space: nowrap !important;
  text-align: right !important;
}

/* --------------------------------------------------------------------------
 * v1.2.8-rc6 — Mobile cart/checkout shipping method final isolation
 * -------------------------------------------------------------------------- */
@media (max-width: 760px) {
  body.woocommerce-cart #shipping_method,
  body.woocommerce-checkout #shipping_method,
  body.casf-cart-page #shipping_method,
  body.casf-checkout-page #shipping_method,
  body.woocommerce-cart .woocommerce-shipping-methods,
  body.woocommerce-checkout .woocommerce-shipping-methods,
  body.casf-cart-page .woocommerce-shipping-methods,
  body.casf-checkout-page .woocommerce-shipping-methods {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  body.woocommerce-cart #shipping_method li,
  body.woocommerce-checkout #shipping_method li,
  body.casf-cart-page #shipping_method li,
  body.casf-checkout-page #shipping_method li,
  body.woocommerce-cart .woocommerce-shipping-methods li,
  body.woocommerce-checkout .woocommerce-shipping-methods li,
  body.casf-cart-page .woocommerce-shipping-methods li,
  body.casf-checkout-page .woocommerce-shipping-methods li {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-height: 58px !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 18px !important;
    overflow: visible !important;
    box-sizing: border-box !important;
    isolation: isolate !important;
  }

  body.woocommerce-cart #shipping_method li input[type="radio"],
  body.woocommerce-checkout #shipping_method li input[type="radio"],
  body.casf-cart-page #shipping_method li input[type="radio"],
  body.casf-checkout-page #shipping_method li input[type="radio"],
  body.woocommerce-cart .woocommerce-shipping-methods li input[type="radio"],
  body.woocommerce-checkout .woocommerce-shipping-methods li input[type="radio"],
  body.casf-cart-page .woocommerce-shipping-methods li input[type="radio"],
  body.casf-checkout-page .woocommerce-shipping-methods li input[type="radio"],
  body.woocommerce-cart input.shipping_method,
  body.woocommerce-checkout input.shipping_method,
  body.casf-cart-page input.shipping_method,
  body.casf-checkout-page input.shipping_method {
    appearance: auto !important;
    -webkit-appearance: radio !important;
    position: absolute !important;
    left: 20px !important;
    top: 50% !important;
    right: auto !important;
    bottom: auto !important;
    display: block !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;
    max-width: 18px !important;
    max-height: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: translateY(-50%) !important;
    opacity: 1 !important;
    z-index: 5 !important;
    float: none !important;
    clear: none !important;
    pointer-events: auto !important;
  }

  body.woocommerce-cart #shipping_method li label,
  body.woocommerce-checkout #shipping_method li label,
  body.casf-cart-page #shipping_method li label,
  body.casf-checkout-page #shipping_method li label,
  body.woocommerce-cart .woocommerce-shipping-methods li label,
  body.woocommerce-checkout .woocommerce-shipping-methods li label,
  body.casf-cart-page .woocommerce-shipping-methods li label,
  body.casf-checkout-page .woocommerce-shipping-methods li label {
    position: relative !important;
    z-index: 2 !important;
    display: block !important;
    width: 100% !important;
    min-height: 58px !important;
    margin: 0 !important;
    padding: 18px 18px 18px 54px !important;
    color: var(--casf-text, #111827) !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    line-height: 1.25 !important;
    text-align: left !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
    float: none !important;
    clear: none !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  body.woocommerce-cart #shipping_method li label .amount,
  body.woocommerce-checkout #shipping_method li label .amount,
  body.casf-cart-page #shipping_method li label .amount,
  body.casf-checkout-page #shipping_method li label .amount,
  body.woocommerce-cart .woocommerce-shipping-methods li label .amount,
  body.woocommerce-checkout .woocommerce-shipping-methods li label .amount,
  body.casf-cart-page .woocommerce-shipping-methods li label .amount,
  body.casf-checkout-page .woocommerce-shipping-methods li label .amount,
  body.woocommerce-cart #shipping_method li label .woocommerce-Price-amount,
  body.woocommerce-checkout #shipping_method li label .woocommerce-Price-amount,
  body.casf-cart-page #shipping_method li label .woocommerce-Price-amount,
  body.casf-checkout-page #shipping_method li label .woocommerce-Price-amount {
    display: inline-block !important;
    float: right !important;
    margin-left: 10px !important;
    padding-left: 8px !important;
    white-space: nowrap !important;
    text-align: right !important;
    font-weight: 950 !important;
  }

  body.woocommerce-cart #shipping_method li label::before,
  body.woocommerce-checkout #shipping_method li label::before,
  body.casf-cart-page #shipping_method li label::before,
  body.casf-checkout-page #shipping_method li label::before,
  body.woocommerce-cart #shipping_method li label::after,
  body.woocommerce-checkout #shipping_method li label::after,
  body.casf-cart-page #shipping_method li label::after,
  body.casf-checkout-page #shipping_method li label::after {
    content: none !important;
    display: none !important;
  }

  body.woocommerce-cart .cart_totals table,
  body.woocommerce-cart .cart_totals tbody,
  body.woocommerce-cart .cart_totals tr,
  body.woocommerce-cart .cart_totals th,
  body.woocommerce-cart .cart_totals td,
  body.casf-cart-page .cart_totals table,
  body.casf-cart-page .cart_totals tbody,
  body.casf-cart-page .cart_totals tr,
  body.casf-cart-page .cart_totals th,
  body.casf-cart-page .cart_totals td,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table tr,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table td {
    overflow: visible !important;
  }

  body.woocommerce-cart .cart_totals td,
  body.casf-cart-page .cart_totals td,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table td,
  body.casf-checkout-page .woocommerce-checkout-review-order-table td {
    min-width: 0 !important;
    width: 100% !important;
  }
}

/* --------------------------------------------------------------------------
 * v1.2.8-rc9 — Checkout/Cart shipping methods definitive mobile fix
 * --------------------------------------------------------------------------
 * Highly targeted rules for WooCommerce shipping methods inside cart totals
 * and checkout review tables. This avoids relying on broader header/mobile
 * rules and forces a stable radio + name + price layout.
 */
@media (max-width: 760px) {
  body.woocommerce-cart .cart_totals ul#shipping_method,
  body.woocommerce-cart .cart_totals .woocommerce-shipping-methods,
  body.casf-cart-page .cart_totals ul#shipping_method,
  body.casf-cart-page .cart_totals .woocommerce-shipping-methods,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table ul#shipping_method,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table .woocommerce-shipping-methods,
  body.casf-checkout-page .woocommerce-checkout-review-order-table ul#shipping_method,
  body.casf-checkout-page .woocommerce-checkout-review-order-table .woocommerce-shipping-methods {
    display: grid !important;
    gap: 12px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    width: 100% !important;
  }

  body.woocommerce-cart .cart_totals ul#shipping_method li,
  body.woocommerce-cart .cart_totals .woocommerce-shipping-methods li,
  body.casf-cart-page .cart_totals ul#shipping_method li,
  body.casf-cart-page .cart_totals .woocommerce-shipping-methods li,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table ul#shipping_method li,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table .woocommerce-shipping-methods li,
  body.casf-checkout-page .woocommerce-checkout-review-order-table ul#shipping_method li,
  body.casf-checkout-page .woocommerce-checkout-review-order-table .woocommerce-shipping-methods li {
    position: relative !important;
    display: block !important;
    min-height: 72px !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart .cart_totals ul#shipping_method li input[type="radio"],
  body.woocommerce-cart .cart_totals .woocommerce-shipping-methods li input[type="radio"],
  body.casf-cart-page .cart_totals ul#shipping_method li input[type="radio"],
  body.casf-cart-page .cart_totals .woocommerce-shipping-methods li input[type="radio"],
  body.woocommerce-checkout .woocommerce-checkout-review-order-table ul#shipping_method li input[type="radio"],
  body.woocommerce-checkout .woocommerce-checkout-review-order-table .woocommerce-shipping-methods li input[type="radio"],
  body.casf-checkout-page .woocommerce-checkout-review-order-table ul#shipping_method li input[type="radio"],
  body.casf-checkout-page .woocommerce-checkout-review-order-table .woocommerce-shipping-methods li input[type="radio"],
  body.woocommerce-cart .cart_totals ul#shipping_method li input.shipping_method,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table ul#shipping_method li input.shipping_method,
  body.casf-cart-page .cart_totals ul#shipping_method li input.shipping_method,
  body.casf-checkout-page .woocommerce-checkout-review-order-table ul#shipping_method li input.shipping_method {
    position: absolute !important;
    left: 18px !important;
    top: 50% !important;
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    min-height: 20px !important;
    max-width: 20px !important;
    max-height: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: translateY(-50%) !important;
    z-index: 3 !important;
    appearance: auto !important;
    -webkit-appearance: radio !important;
    float: none !important;
    clear: none !important;
    pointer-events: auto !important;
  }

  body.woocommerce-cart .cart_totals ul#shipping_method li label,
  body.woocommerce-cart .cart_totals .woocommerce-shipping-methods li label,
  body.casf-cart-page .cart_totals ul#shipping_method li label,
  body.casf-cart-page .cart_totals .woocommerce-shipping-methods li label,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table ul#shipping_method li label,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table .woocommerce-shipping-methods li label,
  body.casf-checkout-page .woocommerce-checkout-review-order-table ul#shipping_method li label,
  body.casf-checkout-page .woocommerce-checkout-review-order-table .woocommerce-shipping-methods li label {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    width: 100% !important;
    min-height: 72px !important;
    margin: 0 !important;
    padding: 0 18px 0 54px !important;
    box-sizing: border-box !important;
    text-align: left !important;
    line-height: 1.25 !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: anywhere !important;
    cursor: pointer !important;
    float: none !important;
    clear: none !important;
  }

  body.woocommerce-cart .cart_totals ul#shipping_method li label::before,
  body.woocommerce-cart .cart_totals .woocommerce-shipping-methods li label::before,
  body.casf-cart-page .cart_totals ul#shipping_method li label::before,
  body.casf-cart-page .cart_totals .woocommerce-shipping-methods li label::before,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table ul#shipping_method li label::before,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table .woocommerce-shipping-methods li label::before,
  body.casf-checkout-page .woocommerce-checkout-review-order-table ul#shipping_method li label::before,
  body.casf-checkout-page .woocommerce-checkout-review-order-table .woocommerce-shipping-methods li label::before,
  body.woocommerce-cart .cart_totals ul#shipping_method li label::after,
  body.woocommerce-cart .cart_totals .woocommerce-shipping-methods li label::after,
  body.casf-cart-page .cart_totals ul#shipping_method li label::after,
  body.casf-cart-page .cart_totals .woocommerce-shipping-methods li label::after,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table ul#shipping_method li label::after,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table .woocommerce-shipping-methods li label::after,
  body.casf-checkout-page .woocommerce-checkout-review-order-table ul#shipping_method li label::after,
  body.casf-checkout-page .woocommerce-checkout-review-order-table .woocommerce-shipping-methods li label::after {
    content: none !important;
    display: none !important;
  }

  body.woocommerce-cart .cart_totals ul#shipping_method li label .woocommerce-Price-amount,
  body.woocommerce-cart .cart_totals .woocommerce-shipping-methods li label .woocommerce-Price-amount,
  body.casf-cart-page .cart_totals ul#shipping_method li label .woocommerce-Price-amount,
  body.casf-cart-page .cart_totals .woocommerce-shipping-methods li label .woocommerce-Price-amount,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table ul#shipping_method li label .woocommerce-Price-amount,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table .woocommerce-shipping-methods li label .woocommerce-Price-amount,
  body.casf-checkout-page .woocommerce-checkout-review-order-table ul#shipping_method li label .woocommerce-Price-amount,
  body.casf-checkout-page .woocommerce-checkout-review-order-table .woocommerce-shipping-methods li label .woocommerce-Price-amount,
  body.woocommerce-cart .cart_totals ul#shipping_method li label .amount,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table ul#shipping_method li label .amount,
  body.casf-cart-page .cart_totals ul#shipping_method li label .amount,
  body.casf-checkout-page .woocommerce-checkout-review-order-table ul#shipping_method li label .amount {
    flex: 0 0 auto !important;
    margin-left: auto !important;
    white-space: nowrap !important;
    text-align: right !important;
    font-weight: 950 !important;
  }

  body.woocommerce-cart .cart_totals ul#shipping_method li label > span:not(.amount):not(.woocommerce-Price-amount),
  body.woocommerce-cart .cart_totals .woocommerce-shipping-methods li label > span:not(.amount):not(.woocommerce-Price-amount),
  body.casf-cart-page .cart_totals ul#shipping_method li label > span:not(.amount):not(.woocommerce-Price-amount),
  body.casf-cart-page .cart_totals .woocommerce-shipping-methods li label > span:not(.amount):not(.woocommerce-Price-amount),
  body.woocommerce-checkout .woocommerce-checkout-review-order-table ul#shipping_method li label > span:not(.amount):not(.woocommerce-Price-amount),
  body.woocommerce-checkout .woocommerce-checkout-review-order-table .woocommerce-shipping-methods li label > span:not(.amount):not(.woocommerce-Price-amount),
  body.casf-checkout-page .woocommerce-checkout-review-order-table ul#shipping_method li label > span:not(.amount):not(.woocommerce-Price-amount),
  body.casf-checkout-page .woocommerce-checkout-review-order-table .woocommerce-shipping-methods li label > span:not(.amount):not(.woocommerce-Price-amount) {
    min-width: 0 !important;
  }

  body.woocommerce-cart .cart_totals ul#shipping_method li *,
  body.casf-cart-page .cart_totals ul#shipping_method li *,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table ul#shipping_method li *,
  body.casf-checkout-page .woocommerce-checkout-review-order-table ul#shipping_method li * {
    overflow: visible !important;
    text-overflow: clip !important;
  }
}
