: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;
}

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

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 {
  max-width: 920px;
  width: calc(100% - 48px);
  margin: 10px auto 40px !important;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

/* Center and size any existing flow header */
body.casf-checkout-page .casf-flow-header,
body.casf-checkout-page .cacui-flow-header,
body.casf-checkout-page .cacui-native-checkout-flow-header {
  max-width: 920px;
  width: 100%;
  margin: 4px auto 4px !important;
}

/* Merge coupon + gift card into one visual card */
body.casf-checkout-page .casf-combined-promos {
  display: flex;
  flex-direction: column;
  gap: 10px;
  background: var(--casf-card);
  border: 1px solid var(--casf-border);
  border-radius: var(--casf-radius);
  box-shadow: 0 8px 22px rgba(15,23,42,.04);
  padding: 12px;
  max-width: 920px;
  width: 100%;
  margin: 0 auto !important;
}

body.casf-checkout-page .casf-combined-promos > * {
  margin: 0 !important;
}

body.casf-checkout-page .casf-combined-promos .woocommerce-info,
body.casf-checkout-page .casf-combined-promos .woocommerce-message,
body.casf-checkout-page .casf-combined-promos .woocommerce-error,
body.casf-checkout-page .casf-combined-promos .woocommerce-form-coupon-toggle,
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 .ywgc_have_code_par_form {
  border: 1px solid var(--casf-border) !important;
  border-radius: 14px !important;
  padding: 12px 14px !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.casf-checkout-page .woocommerce-form-login-toggle {
  max-width: 920px;
  width: 100%;
  margin: 0 auto !important;
}

body.casf-checkout-page .woocommerce-form-login-toggle .woocommerce-info,
body.casf-checkout-page .woocommerce-form-coupon-toggle .woocommerce-info,
body.casf-checkout-page .ywgc_have_code,
body.casf-checkout-page .ywgc_enter_code,
body.casf-checkout-page .yith-ywgc-gift-card-message {
  background: var(--casf-card) !important;
  border: 1px solid var(--casf-border) !important;
  border-left: 4px solid var(--casf-primary) !important;
  border-radius: 14px !important;
  padding: 12px 14px !important;
  box-shadow: 0 8px 22px rgba(15,23,42,.04) !important;
}

/* One-column checkout */
body.casf-checkout-page form.checkout,
body.casf-checkout-page form.woocommerce-checkout,
body.casf-checkout-page form.cacui-native-checkout-form {
  max-width: 920px;
  width: 100%;
  margin: 0 auto !important;
  display: block !important;
}

body.casf-checkout-page #customer_details,
body.casf-checkout-page .cacui-controlled-checkout-layout#customer_details {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto 18px !important;
}

body.casf-checkout-page .col2-set .col-1,
body.casf-checkout-page .col2-set .col-2,
body.casf-checkout-page .woocommerce-billing-fields,
body.casf-checkout-page .woocommerce-shipping-fields,
body.casf-checkout-page .woocommerce-additional-fields,
body.casf-checkout-page .cacui-controlled-checkout-card,
body.casf-checkout-page .casf-checkout-card {
  width: 100% !important;
  max-width: 100% !important;
  background: var(--casf-card);
  border: 1px solid var(--casf-border);
  border-radius: var(--casf-radius);
  box-shadow: var(--casf-shadow);
  padding: 18px !important;
  margin: 0 0 16px !important;
  box-sizing: border-box;
}

body.casf-checkout-page .woocommerce-additional-fields {
  padding-bottom: 10px !important;
}

body.casf-checkout-page .form-row,
body.casf-checkout-page .woocommerce-input-wrapper {
  width: 100%;
}

body.casf-checkout-page input.input-text,
body.casf-checkout-page select,
body.casf-checkout-page textarea {
  border: 1px solid var(--casf-border) !important;
  border-radius: 14px !important;
  background: #fff !important;
  min-height: 46px;
}

body.casf-checkout-page textarea {
  min-height: 94px;
}

body.casf-checkout-page input.input-text:focus,
body.casf-checkout-page select:focus,
body.casf-checkout-page textarea:focus {
  border-color: rgba(27,156,133,.45) !important;
  box-shadow: 0 0 0 4px rgba(27,156,133,.12) !important;
}

/* Order summary */
body.casf-checkout-page #order_review_heading,
body.casf-checkout-page .cacui-controlled-checkout-summary h3,
body.casf-checkout-page .woocommerce-checkout-review-order-table,
body.casf-checkout-page #order_review,
body.casf-checkout-page .woocommerce-checkout-payment {
  max-width: 920px !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.casf-checkout-page #order_review_heading,
body.casf-checkout-page .cacui-controlled-checkout-summary h3 {
  background: var(--casf-card);
  border: 1px solid var(--casf-border);
  border-bottom: 0;
  border-radius: var(--casf-radius) var(--casf-radius) 0 0;
  padding: 18px 20px !important;
  box-shadow: var(--casf-shadow);
  margin-bottom: 0 !important;
}

body.casf-checkout-page #order_review,
body.casf-checkout-page .cacui-controlled-checkout-summary,
body.casf-checkout-page .woocommerce-checkout-review-order {
  background: var(--casf-card);
  border: 1px solid var(--casf-border);
  border-radius: 0 0 var(--casf-radius) var(--casf-radius);
  box-shadow: var(--casf-shadow);
  padding: 18px !important;
  margin-top: 0 !important;
  box-sizing: border-box;
}

body.casf-checkout-page .shop_table.woocommerce-checkout-review-order-table,
body.casf-checkout-page table.shop_table {
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

body.casf-checkout-page .shop_table th,
body.casf-checkout-page .shop_table td {
  border-color: #edf2f7 !important;
  padding: 12px 0 !important;
}

body.casf-checkout-page .woocommerce-checkout-payment {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin-top: 16px !important;
}

body.casf-checkout-page .wc_payment_methods,
body.casf-checkout-page ul.payment_methods {
  border: 0 !important;
  padding: 0 !important;
  margin: 0 0 16px !important;
}

body.casf-checkout-page .wc_payment_methods > li,
body.casf-checkout-page ul.payment_methods > li {
  background: #fff;
  border: 1px solid var(--casf-border);
  border-radius: 16px;
  padding: 14px !important;
  margin: 0 0 12px !important;
}

body.casf-checkout-page .payment_box,
body.casf-checkout-page div.payment_box {
  background: #f9fcfa !important;
  border: 1px solid #dcefe8 !important;
  border-radius: 14px !important;
  padding: 16px !important;
  margin-top: 12px !important;
}

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

body.casf-checkout-page #place_order,
body.casf-checkout-page .button.alt,
body.casf-checkout-page .wc-forward {
  width: 100%;
  min-height: 50px;
  border-radius: 999px !important;
  background: linear-gradient(135deg, var(--casf-primary), var(--casf-primary-dark)) !important;
  border: 0 !important;
  box-shadow: 0 14px 28px rgba(27,156,133,.22) !important;
}

body.casf-checkout-page .casf-whatsapp-consent-card {
  border: 1px solid var(--casf-border);
  border-radius: 14px;
  padding: 12px 14px;
  background: #fff;
  margin: 14px 0 10px;
}

/* Hide blank / empty cards */
body.casf-checkout-page .casf-hidden-empty,
body.casf-checkout-page .casf-blank-card {
  display: none !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;
}

@media (max-width: 921px) {
  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-checkout-page .casf-flow-header,
  body.casf-checkout-page .cacui-flow-header,
  body.casf-checkout-page .cacui-native-checkout-flow-header,
  body.casf-checkout-page form.checkout,
  body.casf-checkout-page form.woocommerce-checkout,
  body.casf-checkout-page .casf-combined-promos,
  body.casf-checkout-page .woocommerce-form-login-toggle,
  body.casf-checkout-page #order_review_heading,
  body.casf-checkout-page #order_review {
    width: calc(100% - 24px) !important;
    max-width: calc(100% - 24px) !important;
  }
}

/* v1.0.5 — hard layout fix for checkout centering and flow header styling */
body.casf-woo-flow .entry-title,
body.casf-woo-flow h1.entry-title,
body.casf-checkout-page .page-title,
body.casf-checkout-page .entry-header,
body.casf-checkout-page .ast-archive-description,
body.casf-checkout-page .ast-single-entry-banner {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.casf-checkout-page .site-content,
body.casf-checkout-page #content,
body.casf-checkout-page #primary,
body.casf-checkout-page .site-main,
body.casf-checkout-page article,
body.casf-checkout-page .entry-content {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

body.casf-checkout-page .entry-content,
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 {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

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 {
  width: min(920px, calc(100vw - 48px)) !important;
  max-width: min(920px, calc(100vw - 48px)) !important;
  margin: 0 auto 44px !important;
  gap: 14px !important;
}

body.casf-checkout-page .casf-flow-header {
  display: block !important;
  width: min(920px, calc(100vw - 48px)) !important;
  max-width: min(920px, calc(100vw - 48px)) !important;
  margin: 8px auto 10px !important;
  padding: 16px !important;
  border-radius: 22px !important;
  background: linear-gradient(180deg, #FFFFFF 0%, #F9FCFA 100%) !important;
  border: 1px solid rgba(27, 156, 133, .16) !important;
  box-shadow: 0 14px 34px rgba(15, 23, 42, .07) !important;
  box-sizing: border-box !important;
}

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

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

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

body.casf-checkout-page .casf-flow-copy {
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
  min-width: 0 !important;
}

body.casf-checkout-page .casf-flow-copy span {
  color: var(--casf-primary) !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  line-height: 1.1 !important;
}

body.casf-checkout-page .casf-flow-copy strong {
  color: var(--casf-text) !important;
  display: block !important;
  font-size: 24px !important;
  font-weight: 900 !important;
  line-height: 1.05 !important;
  letter-spacing: -.035em !important;
}

body.casf-checkout-page .casf-flow-copy small {
  color: var(--casf-muted) !important;
  display: block !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
}

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

body.casf-checkout-page .casf-flow-badge,
body.casf-checkout-page .casf-flow-trust {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  min-height: 30px !important;
  padding: 7px 12px !important;
  border-radius: 999px !important;
  color: var(--casf-primary-deep) !important;
  background: #ECFDF5 !important;
  border: 1px solid #BDEBE3 !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}

body.casf-checkout-page .casf-flow-steps {
  display: block !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

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

body.casf-checkout-page .casf-flow-step {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  position: relative !important;
}

body.casf-checkout-page .casf-flow-step > a,
body.casf-checkout-page .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: 800 !important;
  text-decoration: none !important;
}

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

body.casf-checkout-page .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-checkout-page .casf-flow-step.is-active .casf-flow-number,
body.casf-checkout-page .casf-flow-step.is-complete .casf-flow-number {
  background: var(--casf-primary) !important;
  color: #fff !important;
}

/* Pre-checkout card: coupon + gift card together */
body.casf-checkout-page .casf-checkout-before-form {
  width: min(920px, calc(100vw - 48px)) !important;
  max-width: min(920px, calc(100vw - 48px)) !important;
  margin: 0 auto !important;
  padding: 12px !important;
  border-radius: var(--casf-radius) !important;
  background: var(--casf-card) !important;
  border: 1px solid var(--casf-border) !important;
  box-shadow: 0 8px 22px rgba(15, 23, 42, .04) !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

body.casf-checkout-page .casf-checkout-before-form:empty {
  display: none !important;
}

body.casf-checkout-page .casf-checkout-before-form > *,
body.casf-checkout-page .casf-checkout-before-form .woocommerce-info,
body.casf-checkout-page .casf-checkout-before-form .woocommerce-message,
body.casf-checkout-page .casf-checkout-before-form .woocommerce-error,
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 {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

body.casf-checkout-page .casf-checkout-before-form .woocommerce-info,
body.casf-checkout-page .casf-checkout-before-form .woocommerce-message,
body.casf-checkout-page .casf-checkout-before-form .woocommerce-error,
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 {
  border: 1px solid var(--casf-border) !important;
  border-radius: 14px !important;
  padding: 12px 14px !important;
  background: #fff !important;
  box-shadow: none !important;
}

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 {
  width: min(920px, calc(100vw - 48px)) !important;
  max-width: min(920px, calc(100vw - 48px)) !important;
  margin: 0 auto !important;
  display: block !important;
  box-sizing: border-box !important;
}

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 {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

body.casf-checkout-page .casf-checkout-review {
  background: var(--casf-card) !important;
  border: 1px solid var(--casf-border) !important;
  border-radius: var(--casf-radius) !important;
  box-shadow: var(--casf-shadow) !important;
  padding: 18px !important;
  margin-top: 18px !important;
}

body.casf-checkout-page .casf-checkout-review #order_review_heading {
  padding: 0 0 14px !important;
  margin: 0 0 16px !important;
  border: 0 !important;
  border-bottom: 1px solid #DCEFE8 !important;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

body.casf-checkout-page .casf-checkout-review #order_review,
body.casf-checkout-page .casf-checkout-review .woocommerce-checkout-review-order {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

body.casf-checkout-page .casf-checkout-review table.shop_table {
  width: 100% !important;
  table-layout: auto !important;
  border-collapse: collapse !important;
}

body.casf-checkout-page .casf-checkout-review table.shop_table th,
body.casf-checkout-page .casf-checkout-review table.shop_table td {
  text-align: left !important;
  vertical-align: top !important;
}

body.casf-checkout-page .casf-checkout-review table.shop_table th:last-child,
body.casf-checkout-page .casf-checkout-review table.shop_table td:last-child {
  text-align: right !important;
  white-space: nowrap !important;
}

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

  body.casf-checkout-page .casf-flow-main {
    flex-direction: column !important;
    align-items: flex-start !important;
  }

  body.casf-checkout-page .casf-flow-meta {
    justify-content: flex-start !important;
  }

  body.casf-checkout-page .casf-flow-steps ol {
    grid-template-columns: 1fr !important;
    border-radius: 18px !important;
  }
}

/* v1.0.6 — Google Auto Ads must not occupy layout space inside checkout flow */
body.casf-woo-flow .google-auto-placed,
body.casf-woo-flow .adsbygoogle,
body.casf-woo-flow ins.adsbygoogle,
body.casf-woo-flow .adsbygoogle-noablate,
body.casf-woo-flow [id^="aswift_"],
body.casf-woo-flow [id$="_host"][id^="aswift_"],
body.casf-woo-flow .google-aiuf,
body.casf-woo-flow .google-anno-skip,
body.casf-woo-flow .goog-rtopics {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	width: 0 !important;
	max-width: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
	max-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	clear: none !important;
	overflow: hidden !important;
	position: absolute !important;
	inset: auto !important;
	pointer-events: none !important;
}

body.casf-woo-flow .entry-content > .google-auto-placed,
body.casf-woo-flow .woocommerce > .google-auto-placed,
body.casf-woo-flow form.checkout > .google-auto-placed,
body.casf-woo-flow #customer_details + .google-auto-placed,
body.casf-woo-flow #order_review + .google-auto-placed {
	display: none !important;
}

/* v1.0.7 — keep pre-checkout options visible inside one card */
body.casf-checkout-page .casf-checkout-before-form {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !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;
}

body.casf-checkout-page .casf-checkout-before-form .checkout_coupon,
body.casf-checkout-page .casf-checkout-before-form form.checkout_coupon,
body.casf-checkout-page .casf-checkout-before-form .woocommerce-form-coupon {
  width: 100% !important;
  max-width: 100% !important;
  border: 1px solid var(--casf-border, #E5E7EB) !important;
  border-radius: 14px !important;
  background: #fff !important;
  padding: 12px !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

body.casf-checkout-page .casf-checkout-before-form .checkout_coupon[style*="display:none"],
body.casf-checkout-page .casf-checkout-before-form .checkout_coupon[style*="display: none"] {
  /* WooCommerce keeps the coupon form hidden until the coupon link is clicked. Leave that behavior intact. */
}

body.casf-checkout-page .casf-checkout-before-form .woocommerce-notices-wrapper:empty,
body.casf-checkout-page .casf-checkout-before-form #yith-par-message-reward-cart:empty,
body.casf-checkout-page .casf-checkout-before-form #yith-par-message-reward-cart:not(.casf-visible-notice),
body.casf-checkout-page .casf-checkout-before-form #yith-par-message-cart:empty,
body.casf-checkout-page .casf-checkout-before-form #yith-par-message-cart:not(.casf-visible-notice) {
  display: none !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-checkout-page .entry-content > .woocommerce,
body.casf-checkout-page article .woocommerce,
body.casf-checkout-page .site-main > .woocommerce,
body.casf-checkout-page main .woocommerce {
  width: min(920px, calc(100vw - 48px)) !important;
  max-width: min(920px, calc(100vw - 48px)) !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 .casf-cart-shell {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 360px !important;
  gap: 24px !important;
  align-items: start !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto 44px !important;
  box-sizing: border-box !important;
}

body.casf-cart-page .casf-cart-main,
body.casf-cart-page .cart-collaterals,
body.casf-cart-page .cart_totals {
  background: var(--casf-card) !important;
  border: 1px solid var(--casf-border) !important;
  border-radius: var(--casf-radius) !important;
  box-shadow: var(--casf-shadow) !important;
  box-sizing: border-box !important;
}

body.casf-cart-page .casf-cart-main {
  padding: 0 !important;
  overflow: hidden !important;
}

body.casf-cart-page .shop_table.cart {
  width: 100% !important;
  border: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border-collapse: collapse !important;
}

body.casf-cart-page .shop_table.cart thead th {
  background: #F9FCFA !important;
  color: var(--casf-muted) !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: .04em !important;
  font-weight: 900 !important;
  border-bottom: 1px solid var(--casf-border) !important;
  padding: 14px 12px !important;
}

body.casf-cart-page .shop_table.cart td {
  border-bottom: 1px solid #edf2f7 !important;
  padding: 16px 12px !important;
  vertical-align: middle !important;
}

body.casf-cart-page .product-thumbnail img {
  width: 54px !important;
  height: 54px !important;
  object-fit: cover !important;
  border-radius: 14px !important;
  border: 1px solid var(--casf-border) !important;
  background: #fff !important;
}

body.casf-cart-page .product-name a {
  color: var(--casf-primary-deep) !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}

body.casf-cart-page .product-remove a.remove {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 26px !important;
  height: 26px !important;
  border-radius: 999px !important;
  color: #DC2626 !important;
  background: #FEF2F2 !important;
  border: 1px solid #FECACA !important;
  font-size: 18px !important;
  line-height: 1 !important;
}

body.casf-cart-page .quantity .qty {
  width: 56px !important;
  min-height: 40px !important;
  border-radius: 12px !important;
  border: 1px solid var(--casf-border) !important;
  text-align: center !important;
}

body.casf-cart-page .shop_table.cart .actions {
  background: #F9FCFA !important;
  padding: 16px !important;
}

body.casf-cart-page .shop_table.cart .coupon {
  display: inline-flex !important;
  gap: 10px !important;
  align-items: center !important;
  max-width: 540px !important;
}

body.casf-cart-page .shop_table.cart .coupon .input-text {
  min-width: 220px !important;
  min-height: 44px !important;
  border: 1px solid var(--casf-border) !important;
  border-radius: 14px !important;
  padding: 0 14px !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 .cart-collaterals {
  padding: 0 !important;
  overflow: hidden !important;
}

body.casf-cart-page .cart_totals {
  border: 0 !important;
  box-shadow: none !important;
  padding: 18px !important;
}

body.casf-cart-page .cart_totals h2 {
  margin: -18px -18px 14px !important;
  padding: 18px !important;
  background: #F9FCFA !important;
  border-bottom: 1px solid var(--casf-border) !important;
  color: var(--casf-text) !important;
  font-size: 22px !important;
  font-weight: 900 !important;
}

body.casf-cart-page .cart_totals table {
  width: 100% !important;
  border: 0 !important;
  margin: 0 0 16px !important;
}

body.casf-cart-page .cart_totals th,
body.casf-cart-page .cart_totals td {
  border-bottom: 1px solid #edf2f7 !important;
  padding: 12px 0 !important;
}

body.casf-cart-page .cart_totals td {
  text-align: right !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 .woocommerce-message,
body.casf-cart-page .woocommerce-info,
body.casf-cart-page .woocommerce-error,
body.casf-cart-page .woocommerce-cart-notice,
body.casf-cart-page .free-shipping-notice,
body.casf-cart-page .woocommerce-free-shipping-notice {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 14px !important;
  border: 1px solid var(--casf-border) !important;
  border-left: 4px solid var(--casf-primary) !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: 0 8px 22px rgba(15,23,42,.04) !important;
  padding: 12px 14px !important;
}

@media (max-width: 921px) {
  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: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
  }

  body.casf-cart-page .casf-cart-shell {
    grid-template-columns: 1fr !important;
  }

  body.casf-cart-page .shop_table.cart .coupon {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    flex-direction: column !important;
    align-items: stretch !important;
  }

  body.casf-woo-flow .casf-flow-main {
    flex-direction: column !important;
    align-items: flex-start !important;
  }

  body.casf-woo-flow .casf-flow-meta {
    justify-content: flex-start !important;
  }

  body.casf-woo-flow .casf-flow-steps ol {
    grid-template-columns: 1fr !important;
    border-radius: 18px !important;
  }
}

/* v1.0.9 — cart totals width and express buttons containment */
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 {
  max-width: 1160px !important;
  width: calc(100% - 48px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.casf-cart-page .casf-cart-shell {
  grid-template-columns: minmax(0, 1fr) 390px !important;
  gap: 28px !important;
  align-items: start !important;
}

body.casf-cart-page .cart-collaterals,
body.casf-cart-page .cart_totals {
  min-width: 0 !important;
  width: 100% !important;
  max-width: 390px !important;
}

body.casf-cart-page .cart_totals {
  padding: 20px !important;
  overflow: hidden !important;
}

body.casf-cart-page .cart_totals h2 {
  margin: -20px -20px 18px !important;
  padding: 20px !important;
  font-size: 22px !important;
  line-height: 1.15 !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

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 {
  box-sizing: border-box !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

body.casf-cart-page .cart_totals th {
  width: 45% !important;
  min-width: 112px !important;
  white-space: nowrap !important;
  color: var(--casf-text) !important;
}

body.casf-cart-page .cart_totals td {
  width: 55% !important;
  text-align: right !important;
  white-space: normal !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;
}

body.casf-cart-page .cart_totals .paypal-button,
body.casf-cart-page .cart_totals .paypal-buttons,
body.casf-cart-page .cart_totals .ppc-button-wrapper,
body.casf-cart-page .cart_totals .ppc-button-wrapper * {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

@media (max-width: 921px) {
  body.casf-cart-page .casf-cart-shell {
    grid-template-columns: 1fr !important;
  }
  body.casf-cart-page .cart-collaterals,
  body.casf-cart-page .cart_totals {
    max-width: 100% !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;
}

body.casf-checkout-page .casf-flow-header,
body.casf-checkout-page .cacui-flow-header,
body.casf-checkout-page .cacui-native-checkout-flow-header,
body.casf-checkout-page .casf-combined-promos,
body.casf-checkout-page .casf-checkout-before-form,
body.casf-checkout-page .woocommerce-form-login-toggle,
body.casf-checkout-page form.checkout,
body.casf-checkout-page form.woocommerce-checkout,
body.casf-checkout-page form.cacui-native-checkout-form,
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-checkout-page #order_review_heading,
body.casf-checkout-page #order_review,
body.casf-checkout-page .woocommerce-checkout-review-order,
body.casf-checkout-page .woocommerce-checkout-payment {
  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-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 #customer_details,
body.casf-checkout-page .woocommerce-billing-fields,
body.casf-checkout-page .woocommerce-shipping-fields,
body.casf-checkout-page .woocommerce-additional-fields {
  width: 100% !important;
  max-width: 100% !important;
}

body.casf-checkout-page .casf-checkout-before-form,
body.casf-checkout-page .casf-combined-promos {
  background: #fff !important;
  border: 1px solid var(--casf-border, #E5E7EB) !important;
  border-radius: var(--casf-radius, 18px) !important;
  box-shadow: 0 8px 22px rgba(15, 23, 42, .04) !important;
  padding: 12px !important;
  gap: 10px !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 a,
body.casf-checkout-page .casf-combined-promos a {
  color: var(--casf-primary, #1B9C85) !important;
  font-weight: 700 !important;
  text-decoration: 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;
}

@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-checkout-page form.checkout.casf-checkout-shell,
  body.casf-checkout-page form.woocommerce-checkout.casf-checkout-shell,
  body.casf-checkout-page .casf-checkout-shell {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
  }
}

/* v1.0.11 — one shared visual center axis for cart, checkout and thank you */
body.casf-woo-flow #page,
body.casf-woo-flow #content,
body.casf-woo-flow .site-content,
body.casf-woo-flow .ast-container,
body.casf-woo-flow #primary,
body.casf-woo-flow .content-area,
body.casf-woo-flow .site-main,
body.casf-woo-flow article,
body.casf-woo-flow .entry-content {
  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;
  box-sizing: border-box !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;
}

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 {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

@media (min-width: 922px) {
  body.casf-checkout-page .casf-checkout-card,
  body.casf-checkout-page .casf-checkout-review,
  body.casf-checkout-page .casf-checkout-before-form,
  body.casf-checkout-page .casf-combined-promos {
    margin-left: 0 !important;
    margin-right: 0 !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.12 — single checkout axis: header, promos, billing and payment share the exact same center */
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 {
  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-checkout-page .casf-checkout-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-checkout-page .casf-checkout-axis > .casf-flow-header,
body.casf-checkout-page .casf-checkout-axis > .casf-checkout-before-form,
body.casf-checkout-page .casf-checkout-axis > .casf-combined-promos,
body.casf-checkout-page .casf-checkout-axis > form.checkout,
body.casf-checkout-page .casf-checkout-axis > form.woocommerce-checkout,
body.casf-checkout-page .casf-checkout-axis > form.checkout.casf-checkout-shell,
body.casf-checkout-page .casf-checkout-axis > form.woocommerce-checkout.casf-checkout-shell {
  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;
}

body.casf-checkout-page .casf-checkout-axis .casf-checkout-layout,
body.casf-checkout-page .casf-checkout-axis .casf-checkout-layout-one-column,
body.casf-checkout-page .casf-checkout-axis .casf-checkout-main,
body.casf-checkout-page .casf-checkout-axis .casf-checkout-review,
body.casf-checkout-page .casf-checkout-axis .casf-checkout-card,
body.casf-checkout-page .casf-checkout-axis #customer_details,
body.casf-checkout-page .casf-checkout-axis #order_review,
body.casf-checkout-page .casf-checkout-axis .woocommerce-checkout-review-order {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

body.casf-checkout-page .casf-checkout-axis .casf-checkout-card,
body.casf-checkout-page .casf-checkout-axis .casf-checkout-review {
  align-self: stretch !important;
}

/* Keep legacy promo wrapper from creating a second visual axis */
body.casf-checkout-page .casf-checkout-axis .casf-combined-promos {
  display: contents !important;
}

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

/* 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;
}

body.casf-cart-page .casf-cart-axis .casf-cart-shell {
  grid-template-columns: minmax(0, 1fr) 390px !important;
  gap: 28px !important;
  align-items: start !important;
}

body.casf-cart-page .casf-cart-axis .casf-cart-main,
body.casf-cart-page .casf-cart-axis .cart-collaterals,
body.casf-cart-page .casf-cart-axis .cart_totals {
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

body.casf-cart-page .casf-cart-axis .cart-collaterals,
body.casf-cart-page .casf-cart-axis .cart_totals {
  max-width: 390px !important;
  width: 100% !important;
}

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 .casf-thankyou-hero,
body.casf-order-received-page .casf-thankyou-axis .woocommerce-order-details,
body.casf-order-received-page .casf-thankyou-axis .woocommerce-customer-details,
body.casf-order-received-page .casf-thankyou-axis .woocommerce-bacs-bank-details,
body.casf-order-received-page .casf-thankyou-axis .woocommerce-order-overview {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

@media (max-width: 921px) {
  body.casf-cart-page .casf-cart-axis .casf-cart-shell {
    grid-template-columns: 1fr !important;
  }
  body.casf-cart-page .casf-cart-axis .cart-collaterals,
  body.casf-cart-page .casf-cart-axis .cart_totals {
    max-width: 100% !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.14 — checkout order review as one unified card */
body.casf-checkout-page .casf-checkout-axis .casf-checkout-review.casf-order-card,
body.casf-checkout-page .casf-checkout-axis .casf-checkout-review {
  background: var(--casf-card, #FFFFFF) !important;
  border: 1px solid var(--casf-border, #E5E7EB) !important;
  border-radius: var(--casf-radius-lg, 24px) !important;
  box-shadow: var(--casf-shadow, 0 14px 34px rgba(15,23,42,.08)) !important;
  padding: 22px 24px !important;
  margin: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

body.casf-checkout-page .casf-checkout-axis .casf-checkout-review #order_review_heading,
body.casf-checkout-page .casf-checkout-axis .casf-checkout-review h3#order_review_heading {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 18px !important;
  padding: 0 0 14px !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(27,156,133,.16) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--casf-text, #111827) !important;
  font-size: 22px !important;
  line-height: 1.2 !important;
  font-weight: 850 !important;
  letter-spacing: -0.02em !important;
}

body.casf-checkout-page .casf-checkout-axis .casf-checkout-review #order_review,
body.casf-checkout-page .casf-checkout-axis .casf-checkout-review .woocommerce-checkout-review-order {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

body.casf-checkout-page .casf-checkout-axis .casf-checkout-review table.shop_table,
body.casf-checkout-page .casf-checkout-axis .casf-checkout-review .woocommerce-checkout-review-order-table {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 22px !important;
  padding: 0 !important;
  border: 0 !important;
  border-collapse: collapse !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.casf-checkout-page .casf-checkout-axis .casf-checkout-review table.shop_table th,
body.casf-checkout-page .casf-checkout-axis .casf-checkout-review table.shop_table td {
  padding: 14px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid #edf2f7 !important;
  vertical-align: middle !important;
  color: var(--casf-text, #111827) !important;
}

body.casf-checkout-page .casf-checkout-axis .casf-checkout-review table.shop_table thead th {
  color: var(--casf-muted, #6B7280) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
}

body.casf-checkout-page .casf-checkout-axis .casf-checkout-review table.shop_table td:last-child,
body.casf-checkout-page .casf-checkout-axis .casf-checkout-review table.shop_table th:last-child {
  text-align: right !important;
}

body.casf-checkout-page .casf-checkout-axis .casf-checkout-review .woocommerce-checkout-payment,
body.casf-checkout-page .casf-checkout-axis .casf-checkout-review #payment {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body.casf-checkout-page .casf-checkout-axis .casf-checkout-review .wc_payment_methods,
body.casf-checkout-page .casf-checkout-axis .casf-checkout-review ul.payment_methods {
  margin: 0 0 18px !important;
  padding: 0 !important;
  border: 0 !important;
  list-style: none !important;
}

body.casf-checkout-page .casf-checkout-axis .casf-checkout-review .wc_payment_methods > li,
body.casf-checkout-page .casf-checkout-axis .casf-checkout-review ul.payment_methods > li {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 12px !important;
  padding: 14px !important;
  border: 1px solid var(--casf-border, #E5E7EB) !important;
  border-radius: 16px !important;
  background: #FFFFFF !important;
  box-sizing: border-box !important;
}

body.casf-checkout-page .casf-checkout-axis .casf-checkout-review .payment_box,
body.casf-checkout-page .casf-checkout-axis .casf-checkout-review div.payment_box {
  margin: 12px 0 0 !important;
  padding: 18px !important;
  border: 1px solid rgba(27,156,133,.16) !important;
  border-radius: 16px !important;
  background: #F9FCFA !important;
  box-shadow: none !important;
}

body.casf-checkout-page .casf-checkout-axis .casf-checkout-review .place-order {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

body.casf-checkout-page .casf-checkout-axis .casf-checkout-review #place_order {
  margin-top: 14px !important;
  width: 100% !important;
}

/* Hide empty orphan cards/pills between additional notes and order review */
body.casf-checkout-page .casf-checkout-axis .casf-checkout-card:empty,
body.casf-checkout-page .casf-checkout-axis .casf-checkout-shipping:empty,
body.casf-checkout-page .casf-checkout-axis .casf-hidden-empty,
body.casf-checkout-page .casf-checkout-axis .casf-blank-card {
  display: none !important;
}

/* v1.0.15 — gift card row behaves like coupon: collapsed until clicked */
body.casf-checkout-page .casf-checkout-before-form .casf-giftcard-toggle {
  cursor: pointer !important;
}

body.casf-checkout-page .casf-checkout-before-form .casf-giftcard-toggle::after {
  content: '+';
  float: right;
  width: 22px;
  height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: rgba(27,156,133,.10);
  color: var(--casf-primary, #1B9C85);
  font-weight: 800;
}

body.casf-checkout-page .casf-checkout-before-form.casf-giftcard-open .casf-giftcard-toggle::after {
  content: '–';
}

body.casf-checkout-page .casf-checkout-before-form .casf-giftcard-panel {
  display: none !important;
  height: 0 !important;
  overflow: hidden !important;
  visibility: hidden !important;
  margin: 0 !important;
}

body.casf-checkout-page .casf-checkout-before-form.casf-giftcard-open .casf-giftcard-panel {
  display: block !important;
  height: auto !important;
  overflow: visible !important;
  visibility: visible !important;
  margin-top: 0 !important;
}

/* v1.0.16 — Premium order received layout */
body.casf-order-received-page .casf-thankyou-axis.casf-thankyou-v2 {
  width: min(1200px, calc(100vw - 48px)) !important;
  max-width: min(1200px, calc(100vw - 48px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-thankyou-shell,
body.casf-order-received-page .casf-thankyou-v2 .casf-thankyou-premium {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  display: block !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-thankyou-hero-premium {
  background: linear-gradient(135deg, #FFFFFF 0%, #F9FCFA 100%) !important;
  border: 1px solid rgba(27, 156, 133, 0.18) !important;
  border-radius: 24px !important;
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.08) !important;
  padding: 28px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 430px) !important;
  gap: 24px !important;
  align-items: center !important;
  margin: 0 0 22px !important;
  width: 100% !important;
  max-width: 100% !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-thankyou-hero-main {
  display: flex !important;
  gap: 18px !important;
  align-items: flex-start !important;
  min-width: 0 !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-thankyou-icon {
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg, #1B9C85, #147A69) !important;
  color: #fff !important;
  display: grid !important;
  place-items: center !important;
  font-size: 30px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  box-shadow: 0 16px 30px rgba(27, 156, 133, .24) !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-thankyou-failed .casf-thankyou-icon {
  background: linear-gradient(135deg, #DC2626, #B91C1C) !important;
  box-shadow: 0 16px 30px rgba(220, 38, 38, .18) !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-status-badge {
  display: inline-flex !important;
  align-items: center !important;
  border-radius: 999px !important;
  background: #ECFDF5 !important;
  color: #0F5F53 !important;
  border: 1px solid #BDEBE3 !important;
  padding: 7px 12px !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  margin-bottom: 10px !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-status-failed {
  color: #991B1B !important;
  background: #FEF2F2 !important;
  border-color: #FECACA !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-thankyou-hero h1 {
  margin: 0 !important;
  font-size: clamp(28px, 3vw, 38px) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.05em !important;
  color: #111827 !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-thankyou-hero p {
  margin: 10px 0 0 !important;
  color: #6B7280 !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
  max-width: 680px !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-order-summary-grid-premium {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(140px, 1fr)) !important;
  gap: 10px !important;
  min-width: 0 !important;
  width: 100% !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-order-summary-grid-premium > div {
  background: #fff !important;
  border: 1px solid #E5E7EB !important;
  border-radius: 16px !important;
  padding: 14px !important;
  min-width: 0 !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-order-summary-grid-premium span {
  display: block !important;
  color: #6B7280 !important;
  font-size: 12px !important;
  margin-bottom: 4px !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-order-summary-grid-premium strong {
  display: block !important;
  font-size: 15px !important;
  color: #111827 !important;
  line-height: 1.35 !important;
  word-break: break-word !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-thankyou-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 360px !important;
  gap: 24px !important;
  align-items: start !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-card {
  background: #FFFFFF !important;
  border: 1px solid #E5E7EB !important;
  border-radius: 24px !important;
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.08) !important;
  overflow: hidden !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-card-header {
  padding: 20px 22px !important;
  border-bottom: 1px solid #E5E7EB !important;
  background: #F9FCFA !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-card-header h2,
body.casf-order-received-page .casf-thankyou-v2 .casf-card-header h3 {
  margin: 0 !important;
  font-size: 22px !important;
  letter-spacing: -0.04em !important;
  color: #111827 !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-card-body {
  padding: 22px !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-order-table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin: 0 !important;
  border: 0 !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-order-table th {
  text-align: left !important;
  font-size: 12px !important;
  color: #6B7280 !important;
  text-transform: uppercase !important;
  letter-spacing: .06em !important;
  padding: 0 0 12px !important;
  border-bottom: 1px solid #E5E7EB !important;
  background: transparent !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-order-table th:last-child,
body.casf-order-received-page .casf-thankyou-v2 .casf-order-table td:last-child {
  text-align: right !important;
  white-space: nowrap !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-order-table td {
  padding: 16px 0 !important;
  border-bottom: 1px solid #edf2f7 !important;
  font-size: 15px !important;
  vertical-align: middle !important;
  background: transparent !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-product-line {
  display: flex !important;
  gap: 12px !important;
  align-items: center !important;
  min-width: 0 !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-product-thumb,
body.casf-order-received-page .casf-thankyou-v2 .casf-product-thumb img {
  width: 54px !important;
  height: 54px !important;
  min-width: 54px !important;
  border-radius: 14px !important;
  object-fit: cover !important;
  border: 1px solid #E5E7EB !important;
  background: #fff !important;
  display: block !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-product-line strong {
  display: block !important;
  font-size: 15px !important;
  color: #111827 !important;
  line-height: 1.35 !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-product-line span,
body.casf-order-received-page .casf-thankyou-v2 .casf-item-meta {
  display: block !important;
  color: #6B7280 !important;
  font-size: 13px !important;
  margin-top: 2px !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-thankyou-totals {
  margin-top: 18px !important;
  border-top: 1px solid #E5E7EB !important;
  padding-top: 12px !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-total-row {
  display: flex !important;
  justify-content: space-between !important;
  gap: 18px !important;
  padding: 10px 0 !important;
  color: #6B7280 !important;
  font-size: 14px !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-total-row span,
body.casf-order-received-page .casf-thankyou-v2 .casf-total-row strong {
  color: inherit !important;
  font-size: inherit !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-total-row.is-final {
  color: #111827 !important;
  font-size: 18px !important;
  font-weight: 900 !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-thankyou-side-stack {
  display: grid !important;
  gap: 18px !important;
  width: 100% !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-info-list {
  display: grid !important;
  gap: 14px !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-info-item {
  background: #F9FCFA !important;
  border: 1px solid #E5E7EB !important;
  border-radius: 16px !important;
  padding: 14px !important;
  color: #111827 !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-info-item span {
  display: block !important;
  font-size: 12px !important;
  color: #6B7280 !important;
  margin-bottom: 4px !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-info-item strong,
body.casf-order-received-page .casf-thankyou-v2 .casf-info-item address {
  display: block !important;
  font-size: 14px !important;
  color: #111827 !important;
  line-height: 1.45 !important;
  font-style: normal !important;
  margin: 0 !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-notice-card {
  background: #ECFDF5 !important;
  border: 1px solid #BDEBE3 !important;
  border-radius: 18px !important;
  padding: 16px !important;
  color: #0F5F53 !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-thankyou-actions {
  display: grid !important;
  gap: 10px !important;
  margin-top: 0 !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-button {
  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;
  min-height: 48px !important;
  padding: 12px 18px !important;
  border-radius: 999px !important;
  font-weight: 900 !important;
  text-decoration: none !important;
  font-size: 14px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-button-primary {
  background: linear-gradient(135deg, #1B9C85, #147A69) !important;
  color: #fff !important;
  border: 0 !important;
  box-shadow: 0 14px 28px rgba(27, 156, 133, .22) !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-button-secondary {
  background: #fff !important;
  color: #0F5F53 !important;
  border: 1px solid #BDEBE3 !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-payment-instructions > *:first-child {
  margin-top: 0 !important;
}

body.casf-order-received-page .casf-thankyou-v2 .casf-payment-instructions > *:last-child {
  margin-bottom: 0 !important;
}

@media (max-width: 980px) {
  body.casf-order-received-page .casf-thankyou-v2 .casf-thankyou-hero-premium,
  body.casf-order-received-page .casf-thankyou-v2 .casf-thankyou-grid {
    grid-template-columns: 1fr !important;
  }

  body.casf-order-received-page .casf-thankyou-v2 .casf-order-summary-grid-premium {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  body.casf-order-received-page .casf-thankyou-axis.casf-thankyou-v2 {
    width: calc(100% - 24px) !important;
    max-width: calc(100% - 24px) !important;
  }

  body.casf-order-received-page .casf-thankyou-v2 .casf-thankyou-hero-premium,
  body.casf-order-received-page .casf-thankyou-v2 .casf-card-body {
    padding: 18px !important;
  }

  body.casf-order-received-page .casf-thankyou-v2 .casf-thankyou-hero-main {
    flex-direction: column !important;
  }

  body.casf-order-received-page .casf-thankyou-v2 .casf-order-summary-grid-premium {
    grid-template-columns: 1fr !important;
  }

  body.casf-order-received-page .casf-thankyou-v2 .casf-product-line {
    align-items: flex-start !important;
  }
}

/* v1.0.17 — Thank you layout: one column with addresses side-by-side */
body.casf-order-received-page .casf-thankyou-v3 .casf-thankyou-stack {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 22px !important;
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
}

body.casf-order-received-page .casf-thankyou-v3 .casf-thankyou-hero-premium {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 24px !important;
}

body.casf-order-received-page .casf-thankyou-v3 .casf-order-summary-card-top,
body.casf-order-received-page .casf-thankyou-v3 .casf-order-details-card,
body.casf-order-received-page .casf-thankyou-v3 .casf-payment-instructions-card,
body.casf-order-received-page .casf-thankyou-v3 .casf-notice-card,
body.casf-order-received-page .casf-thankyou-v3 .casf-thankyou-actions {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.casf-order-received-page .casf-thankyou-v3 .casf-order-summary-card-top .casf-card-header h2 {
  font-size: 22px !important;
}

body.casf-order-received-page .casf-thankyou-v3 .casf-order-summary-grid-full {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
  min-width: 0 !important;
  width: 100% !important;
}

body.casf-order-received-page .casf-thankyou-v3 .casf-order-summary-grid-full > div {
  background: #F9FCFA !important;
  border: 1px solid #E5E7EB !important;
  border-radius: 16px !important;
  padding: 15px !important;
  min-width: 0 !important;
}

body.casf-order-received-page .casf-thankyou-v3 .casf-thankyou-grid,
body.casf-order-received-page .casf-thankyou-v3 .casf-thankyou-side-stack {
  display: contents !important;
}

body.casf-order-received-page .casf-thankyou-v3 .casf-thankyou-address-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 22px !important;
  width: 100% !important;
  align-items: stretch !important;
}

body.casf-order-received-page .casf-thankyou-v3 .casf-thankyou-address-grid .casf-card {
  height: 100% !important;
  margin: 0 !important;
}

body.casf-order-received-page .casf-thankyou-v3 .casf-thankyou-address-grid .casf-card-body {
  height: calc(100% - 64px) !important;
}

body.casf-order-received-page .casf-thankyou-v3 .casf-order-details-card {
  order: 2 !important;
}

body.casf-order-received-page .casf-thankyou-v3 .casf-thankyou-address-grid {
  order: 3 !important;
}

body.casf-order-received-page .casf-thankyou-v3 .casf-payment-instructions-card {
  order: 4 !important;
}

body.casf-order-received-page .casf-thankyou-v3 .casf-notice-card {
  order: 5 !important;
}

body.casf-order-received-page .casf-thankyou-v3 .casf-thankyou-actions {
  order: 6 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
  max-width: 720px !important;
}

body.casf-order-received-page .casf-thankyou-v3 .casf-order-table td:last-child,
body.casf-order-received-page .casf-thankyou-v3 .casf-order-table th:last-child,
body.casf-order-received-page .casf-thankyou-v3 .casf-total-row strong {
  white-space: nowrap !important;
}

@media (max-width: 980px) {
  body.casf-order-received-page .casf-thankyou-v3 .casf-order-summary-grid-full,
  body.casf-order-received-page .casf-thankyou-v3 .casf-thankyou-address-grid,
  body.casf-order-received-page .casf-thankyou-v3 .casf-thankyou-actions {
    grid-template-columns: 1fr !important;
  }

  body.casf-order-received-page .casf-thankyou-v3 .casf-thankyou-hero-premium {
    align-items: flex-start !important;
  }
}

/* v1.0.18 — thank you page matches the approved HTML preview */
body.casf-order-received-page .casf-thankyou-preview,
body.casf-order-received-page .casf-thankyou-preview * {
	box-sizing: border-box;
}

body.casf-order-received-page .casf-thankyou-axis.casf-thankyou-preview {
	width: min(1200px, calc(100vw - 48px)) !important;
	max-width: min(1200px, calc(100vw - 48px)) !important;
	margin: -38px auto 72px !important;
	display: grid !important;
	gap: 22px !important;
	align-items: stretch !important;
}

body.casf-order-received-page .casf-thankyou-preview > .casf-flow-header,
body.casf-order-received-page .casf-thankyou-preview > .casf-thankyou-shell,
body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-stack,
body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-hero,
body.casf-order-received-page .casf-thankyou-preview .casf-card,
body.casf-order-received-page .casf-thankyou-preview .casf-notice-card,
body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-actions {
	width: 100% !important;
	max-width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-shell,
body.casf-order-received-page .casf-thankyou-preview .woocommerce-order {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-stack {
	display: grid !important;
	gap: 22px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-hero-premium {
	background:
		radial-gradient(circle at top right, rgba(27,156,133,.12), transparent 32%),
		linear-gradient(135deg, #fff 0%, #F9FCFA 100%) !important;
	border: 1px solid rgba(27, 156, 133, 0.18) !important;
	border-radius: var(--casf-radius-lg, 24px) !important;
	box-shadow: var(--casf-shadow, 0 14px 34px rgba(15, 23, 42, .08)) !important;
	padding: 30px !important;
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto !important;
	gap: 24px !important;
	align-items: center !important;
	margin: 0 !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-hero-main {
	display: flex !important;
	align-items: flex-start !important;
	gap: 18px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-icon {
	width: 62px !important;
	height: 62px !important;
	min-width: 62px !important;
	border-radius: 20px !important;
	background: linear-gradient(135deg, var(--casf-primary, #1B9C85), var(--casf-primary-dark, #147A69)) !important;
	color: #fff !important;
	display: grid !important;
	place-items: center !important;
	font-size: 32px !important;
	font-weight: 950 !important;
	box-shadow: 0 18px 32px rgba(27, 156, 133, .25) !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-status-badge {
	display: inline-flex !important;
	align-items: center !important;
	border-radius: 999px !important;
	background: #ECFDF5 !important;
	color: var(--casf-primary-deep, #0F5F53) !important;
	border: 1px solid #BDEBE3 !important;
	padding: 7px 12px !important;
	font-size: 12px !important;
	font-weight: 950 !important;
	margin: 0 0 10px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-hero h1 {
	margin: 0 !important;
	font-size: clamp(30px, 4vw, 42px) !important;
	line-height: 1.04 !important;
	letter-spacing: -0.06em !important;
	color: var(--casf-text, #111827) !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-hero p {
	margin: 10px 0 0 !important;
	color: var(--casf-muted, #6B7280) !important;
	font-size: 15px !important;
	max-width: 640px !important;
	line-height: 1.55 !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-hero-total {
	min-width: 240px !important;
	background: #fff !important;
	border: 1px solid var(--casf-border, #E5E7EB) !important;
	border-radius: 20px !important;
	padding: 16px !important;
	box-shadow: 0 10px 24px rgba(15,23,42,.05) !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-hero-total span {
	display: block !important;
	color: var(--casf-muted, #6B7280) !important;
	font-size: 12px !important;
	margin-bottom: 5px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-hero-total strong {
	display: block !important;
	font-size: 22px !important;
	letter-spacing: -0.04em !important;
	color: var(--casf-text, #111827) !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-card {
	background: var(--casf-card, #FFFFFF) !important;
	border: 1px solid var(--casf-border, #E5E7EB) !important;
	border-radius: var(--casf-radius-lg, 24px) !important;
	box-shadow: var(--casf-shadow, 0 14px 34px rgba(15, 23, 42, .08)) !important;
	overflow: hidden !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-card-header {
	padding: 20px 22px !important;
	border-bottom: 1px solid var(--casf-border, #E5E7EB) !important;
	background: var(--casf-card-soft, #F9FCFA) !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-card-header h2,
body.casf-order-received-page .casf-thankyou-preview .casf-card-header h3 {
	margin: 0 !important;
	font-size: 22px !important;
	line-height: 1.15 !important;
	letter-spacing: -0.04em !important;
	color: var(--casf-text, #111827) !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-card-body {
	padding: 22px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-order-summary-grid-full {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 12px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-order-summary-grid-full > div {
	background: var(--casf-card-soft, #F9FCFA) !important;
	border: 1px solid var(--casf-border, #E5E7EB) !important;
	border-radius: 17px !important;
	padding: 15px !important;
	min-height: 82px !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-order-summary-grid-full span {
	display: block !important;
	color: var(--casf-muted, #6B7280) !important;
	font-size: 12px !important;
	margin-bottom: 5px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-order-summary-grid-full strong {
	display: block !important;
	font-size: 16px !important;
	color: var(--casf-text, #111827) !important;
	line-height: 1.25 !important;
	word-break: break-word !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-order-table {
	width: 100% !important;
	border-collapse: collapse !important;
	margin: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-order-table th {
	color: var(--casf-muted, #6B7280) !important;
	font-size: 12px !important;
	text-transform: uppercase !important;
	letter-spacing: .06em !important;
	text-align: left !important;
	padding: 0 0 13px !important;
	border: 0 !important;
	border-bottom: 1px solid var(--casf-border, #E5E7EB) !important;
	background: transparent !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-order-table th:last-child,
body.casf-order-received-page .casf-thankyou-preview .casf-order-table td:last-child {
	text-align: right !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-order-table td {
	padding: 17px 0 !important;
	border: 0 !important;
	border-bottom: 1px solid #EDF2F7 !important;
	vertical-align: middle !important;
	background: transparent !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-product-line {
	display: flex !important;
	align-items: center !important;
	gap: 13px !important;
	text-align: left !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-product-thumb,
body.casf-order-received-page .casf-thankyou-preview .casf-product-thumb img,
body.casf-order-received-page .casf-thankyou-preview .casf-product-thumb-fallback {
	width: 58px !important;
	height: 58px !important;
	min-width: 58px !important;
	border-radius: 16px !important;
	object-fit: cover !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-product-thumb {
	background: linear-gradient(135deg, #ECFDF5, #fff) !important;
	border: 1px solid #D8F3EC !important;
	display: grid !important;
	place-items: center !important;
	overflow: hidden !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-product-thumb-fallback {
	color: var(--casf-primary, #1B9C85) !important;
	font-weight: 950 !important;
	font-size: 13px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-product-line strong {
	display: block !important;
	color: var(--casf-text, #111827) !important;
	font-size: 15px !important;
	line-height: 1.35 !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-product-line span,
body.casf-order-received-page .casf-thankyou-preview .casf-item-meta {
	display: block !important;
	color: var(--casf-muted, #6B7280) !important;
	font-size: 13px !important;
	margin-top: 3px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-totals {
	margin-top: 18px !important;
	border-top: 1px solid var(--casf-border, #E5E7EB) !important;
	padding-top: 12px !important;
	display: grid !important;
	gap: 4px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-total-row {
	display: flex !important;
	justify-content: space-between !important;
	gap: 18px !important;
	padding: 10px 0 !important;
	color: var(--casf-muted, #6B7280) !important;
	font-size: 14px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-total-row strong {
	color: var(--casf-text, #111827) !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-total-row.is-final {
	color: var(--casf-text, #111827) !important;
	font-size: 19px !important;
	font-weight: 950 !important;
	border-top: 1px dashed var(--casf-border, #E5E7EB) !important;
	margin-top: 4px !important;
	padding-top: 14px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-address-grid {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 18px !important;
	width: 100% !important;
	max-width: 100% !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-address-box {
	background: var(--casf-card-soft, #F9FCFA) !important;
	border: 1px solid var(--casf-border, #E5E7EB) !important;
	border-radius: 18px !important;
	padding: 18px !important;
	min-height: 170px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-address-box span {
	display: block !important;
	color: var(--casf-muted, #6B7280) !important;
	font-size: 12px !important;
	margin-bottom: 5px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-address-box strong {
	display: block !important;
	color: var(--casf-muted, #6B7280) !important;
	font-size: 14px !important;
	line-height: 1.65 !important;
	font-weight: 700 !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-notice-card {
	background: #ECFDF5 !important;
	border: 1px solid #BDEBE3 !important;
	color: var(--casf-primary-deep, #0F5F53) !important;
	border-radius: var(--casf-radius-lg, 24px) !important;
	padding: 18px 20px !important;
	line-height: 1.55 !important;
	font-size: 14px !important;
	box-shadow: none !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-actions {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 12px !important;
	justify-content: center !important;
	margin-top: 0 !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-button {
	min-height: 50px !important;
	padding: 13px 22px !important;
	border-radius: 999px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	text-decoration: none !important;
	font-weight: 950 !important;
	font-size: 14px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-button-primary {
	color: #fff !important;
	background: linear-gradient(135deg, var(--casf-primary, #1B9C85), var(--casf-primary-dark, #147A69)) !important;
	box-shadow: 0 14px 28px rgba(27,156,133,.22) !important;
	border: 0 !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-button-secondary {
	background: #fff !important;
	color: var(--casf-primary-deep, #0F5F53) !important;
	border: 1px solid #BDEBE3 !important;
}

@media (max-width: 900px) {
	body.casf-order-received-page .casf-thankyou-axis.casf-thankyou-preview {
		width: calc(100% - 24px) !important;
		max-width: calc(100% - 24px) !important;
		margin-top: -30px !important;
	}

	body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-hero-premium {
		grid-template-columns: 1fr !important;
		padding: 22px !important;
	}

	body.casf-order-received-page .casf-thankyou-preview .casf-order-summary-grid-full,
	body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-address-grid,
	body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-actions {
		grid-template-columns: 1fr !important;
	}

	body.casf-order-received-page .casf-thankyou-preview .casf-product-line {
		align-items: flex-start !important;
	}
}


/* v1.0.19 — Thank you final polish: match HTML preview proportions */
body.casf-order-received-page .casf-thankyou-preview .casf-card-header,
body.casf-order-received-page .casf-thankyou-preview .casf-order-summary-card-top .casf-card-header,
body.casf-order-received-page .casf-thankyou-preview .casf-order-details-card .casf-card-header,
body.casf-order-received-page .casf-thankyou-preview .casf-address-card .casf-card-header,
body.casf-order-received-page .casf-thankyou-preview .casf-payment-instructions-card .casf-card-header {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 20px 22px !important;
	position: static !important;
	left: auto !important;
	right: auto !important;
	top: auto !important;
	transform: none !important;
	text-align: left !important;
	justify-content: flex-start !important;
	align-items: flex-start !important;
	border-radius: 0 !important;
	border: 0 !important;
	border-bottom: 1px solid var(--casf-border, #E5E7EB) !important;
	background: var(--casf-card-soft, #F9FCFA) !important;
	box-shadow: none !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-card-header h2,
body.casf-order-received-page .casf-thankyou-preview .casf-card-header h3,
body.casf-order-received-page .casf-thankyou-preview .casf-order-summary-card-top .casf-card-header h2,
body.casf-order-received-page .casf-thankyou-preview .casf-order-details-card .casf-card-header h2,
body.casf-order-received-page .casf-thankyou-preview .casf-address-card .casf-card-header h3,
body.casf-order-received-page .casf-thankyou-preview .casf-payment-instructions-card .casf-card-header h3 {
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	text-align: left !important;
	font-size: 22px !important;
	line-height: 1.15 !important;
	letter-spacing: -0.04em !important;
	color: var(--casf-text, #111827) !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-card-body {
	width: 100% !important;
	max-width: 100% !important;
	padding: 22px !important;
	margin: 0 !important;
	box-sizing: border-box !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-card-body > * {
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	box-sizing: border-box !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-order-summary-grid-full {
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-order-summary-grid-full > div {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	text-align: left !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-hero-total strong,
body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-hero-total .woocommerce-Price-amount,
body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-hero-total .woocommerce-Price-currencySymbol,
body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-hero-total bdi {
	display: inline !important;
	white-space: nowrap !important;
	line-height: 1.2 !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-hero-total strong {
	display: block !important;
	font-size: 22px !important;
	letter-spacing: -0.04em !important;
	color: var(--casf-text, #111827) !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-order-details-card,
body.casf-order-received-page .casf-thankyou-preview .casf-order-summary-card-top,
body.casf-order-received-page .casf-thankyou-preview .casf-payment-instructions-card {
	width: 100% !important;
	max-width: 100% !important;
	align-self: stretch !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-order-table {
	width: 100% !important;
	max-width: 100% !important;
	table-layout: auto !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-order-table th,
body.casf-order-received-page .casf-thankyou-preview .casf-order-table td {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-totals {
	width: 100% !important;
	max-width: 100% !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-address-card {
	width: 100% !important;
	max-width: 100% !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-address-box,
body.casf-order-received-page .casf-thankyou-preview .casf-info-item.casf-address-box {
	width: 100% !important;
	max-width: 100% !important;
	min-height: 170px !important;
	margin: 0 !important;
	padding: 18px !important;
	text-align: left !important;
	box-sizing: border-box !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-address-box span,
body.casf-order-received-page .casf-thankyou-preview .casf-address-box strong {
	text-align: left !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-payment-instructions,
body.casf-order-received-page .casf-thankyou-preview .casf-payment-instructions * {
	max-width: 100% !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-payment-instructions table {
	width: 100% !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-actions .casf-button {
	flex: 1 1 240px !important;
}

@media (max-width: 900px) {
	body.casf-order-received-page .casf-thankyou-preview .casf-card-header,
	body.casf-order-received-page .casf-thankyou-preview .casf-card-body {
		padding-left: 18px !important;
		padding-right: 18px !important;
	}

	body.casf-order-received-page .casf-thankyou-preview .casf-order-summary-grid-full,
	body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-address-grid {
		grid-template-columns: 1fr !important;
	}
}

/* v1.0.20 — subtle shipping emphasis in checkout */
body.casf-checkout-page #order_review tr.woocommerce-shipping-totals.shipping,
body.casf-checkout-page #order_review tr.shipping {
  display: block !important;
  width: 100% !important;
  background: #FFFFFF !important;
  border: 1px solid var(--casf-border, #E5E7EB) !important;
  border-radius: 18px !important;
  margin: 16px 0 !important;
  padding: 0 !important;
  box-shadow: 0 8px 22px rgba(15, 23, 42, .04) !important;
  overflow: hidden !important;
}

body.casf-checkout-page #order_review tr.woocommerce-shipping-totals.shipping th,
body.casf-checkout-page #order_review tr.shipping th {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 16px 18px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--casf-border, #E5E7EB) !important;
  background: #FFFFFF !important;
  color: var(--casf-text, #111827) !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  letter-spacing: -0.03em !important;
  text-align: left !important;
}

body.casf-checkout-page #order_review tr.woocommerce-shipping-totals.shipping th::before,
body.casf-checkout-page #order_review tr.shipping th::before {
  content: '🚚';
  width: 36px;
  height: 36px;
  min-width: 36px;
  border-radius: 12px;
  display: inline-grid;
  place-items: center;
  background: #ECFDF5;
  border: 1px solid #BDEBE3;
  color: var(--casf-primary-deep, #0F5F53);
  font-size: 18px;
  line-height: 1;
}

body.casf-checkout-page #order_review tr.woocommerce-shipping-totals.shipping th::after,
body.casf-checkout-page #order_review tr.shipping th::after {
  content: 'Revisa antes de pagar';
  margin-left: auto;
  border-radius: 999px;
  background: #F9FAFB;
  border: 1px solid var(--casf-border, #E5E7EB);
  color: var(--casf-muted, #6B7280);
  padding: 7px 11px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0;
  white-space: nowrap;
}

body.casf-checkout-page #order_review tr.woocommerce-shipping-totals.shipping td,
body.casf-checkout-page #order_review tr.shipping td {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 16px 18px 18px !important;
  border: 0 !important;
  text-align: left !important;
  background: #FFFFFF !important;
}

body.casf-checkout-page #order_review tr.woocommerce-shipping-totals.shipping .casf-shipping-soft-help,
body.casf-checkout-page #order_review tr.shipping .casf-shipping-soft-help {
  display: block;
  margin: 0 0 12px;
  padding: 11px 13px;
  background: #F9FAFB;
  border: 1px dashed var(--casf-border, #E5E7EB);
  border-radius: 14px;
  color: var(--casf-muted, #6B7280);
  font-size: 13px;
  line-height: 1.45;
}

body.casf-checkout-page #order_review tr.woocommerce-shipping-totals.shipping ul#shipping_method,
body.casf-checkout-page #order_review tr.shipping ul#shipping_method,
body.casf-checkout-page #order_review tr.woocommerce-shipping-totals.shipping .woocommerce-shipping-methods,
body.casf-checkout-page #order_review tr.shipping .woocommerce-shipping-methods {
  display: grid !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.casf-checkout-page #order_review tr.woocommerce-shipping-totals.shipping ul#shipping_method li,
body.casf-checkout-page #order_review tr.shipping ul#shipping_method li,
body.casf-checkout-page #order_review tr.woocommerce-shipping-totals.shipping .woocommerce-shipping-methods li,
body.casf-checkout-page #order_review tr.shipping .woocommerce-shipping-methods li {
  display: flex !important;
  align-items: flex-start !important;
  gap: 11px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 13px 14px !important;
  background: #FFFFFF !important;
  border: 1px solid var(--casf-border, #E5E7EB) !important;
  border-radius: 16px !important;
  color: var(--casf-text, #111827) !important;
}

body.casf-checkout-page #order_review tr.woocommerce-shipping-totals.shipping input[type='radio'],
body.casf-checkout-page #order_review tr.shipping input[type='radio'] {
  accent-color: var(--casf-primary, #1B9C85) !important;
  margin-top: 2px !important;
  flex: 0 0 auto !important;
}

body.casf-checkout-page #order_review tr.woocommerce-shipping-totals.shipping label,
body.casf-checkout-page #order_review tr.shipping label {
  width: 100% !important;
  color: var(--casf-text, #111827) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.4 !important;
}

body.casf-checkout-page #order_review tr.woocommerce-shipping-totals.shipping label .amount,
body.casf-checkout-page #order_review tr.shipping label .amount {
  float: right;
  margin-left: 12px;
  color: var(--casf-text, #111827) !important;
  font-weight: 900 !important;
}

body.casf-checkout-page #order_review tr.woocommerce-shipping-totals.shipping .woocommerce-shipping-destination,
body.casf-checkout-page #order_review tr.shipping .woocommerce-shipping-destination,
body.casf-checkout-page #order_review tr.woocommerce-shipping-totals.shipping .woocommerce-shipping-calculator,
body.casf-checkout-page #order_review tr.shipping .woocommerce-shipping-calculator {
  margin: 12px 0 0 !important;
  padding: 11px 13px !important;
  background: #F9FCFA !important;
  border: 1px solid #D8F3EC !important;
  border-radius: 14px !important;
  color: var(--casf-muted, #6B7280) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

@media (max-width: 700px) {
  body.casf-checkout-page #order_review tr.woocommerce-shipping-totals.shipping th,
  body.casf-checkout-page #order_review tr.shipping th {
    flex-wrap: wrap !important;
  }

  body.casf-checkout-page #order_review tr.woocommerce-shipping-totals.shipping th::after,
  body.casf-checkout-page #order_review tr.shipping th::after {
    margin-left: 0;
    white-space: normal;
  }

  body.casf-checkout-page #order_review tr.woocommerce-shipping-totals.shipping label .amount,
  body.casf-checkout-page #order_review tr.shipping label .amount {
    float: none;
    display: block;
    margin: 4px 0 0;
  }
}

/* v1.0.21 — make checkout shipping span the full order card width */
body.casf-checkout-page #order_review tr.casf-shipping-full-row,
body.casf-checkout-page #order_review tr.woocommerce-shipping-totals.shipping.casf-shipping-full-row,
body.casf-checkout-page #order_review tr.shipping.casf-shipping-full-row {
  display: table-row !important;
  width: auto !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

body.casf-checkout-page #order_review tr.casf-shipping-full-row > th,
body.casf-checkout-page #order_review tr.woocommerce-shipping-totals.shipping.casf-shipping-full-row > th,
body.casf-checkout-page #order_review tr.shipping.casf-shipping-full-row > th {
  display: none !important;
  width: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

body.casf-checkout-page #order_review tr.casf-shipping-full-row > th::before,
body.casf-checkout-page #order_review tr.casf-shipping-full-row > th::after {
  display: none !important;
  content: none !important;
}

body.casf-checkout-page #order_review tr.casf-shipping-full-row > td,
body.casf-checkout-page #order_review tr.woocommerce-shipping-totals.shipping.casf-shipping-full-row > td,
body.casf-checkout-page #order_review tr.shipping.casf-shipping-full-row > td {
  display: table-cell !important;
  width: 100% !important;
  max-width: none !important;
  padding: 16px 0 !important;
  border: 0 !important;
  text-align: left !important;
  background: transparent !important;
}

body.casf-checkout-page #order_review .casf-shipping-soft-card-inner {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  background: #FFFFFF !important;
  border: 1px solid var(--casf-border, #E5E7EB) !important;
  border-radius: 18px !important;
  box-shadow: 0 8px 22px rgba(15, 23, 42, .04) !important;
  overflow: hidden !important;
}

body.casf-checkout-page #order_review .casf-shipping-soft-head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
  width: 100% !important;
  padding: 16px 18px !important;
  border-bottom: 1px solid var(--casf-border, #E5E7EB) !important;
  background: #FFFFFF !important;
}

body.casf-checkout-page #order_review .casf-shipping-soft-title {
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
  min-width: 0 !important;
  color: var(--casf-text, #111827) !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  letter-spacing: -0.03em !important;
}

body.casf-checkout-page #order_review .casf-shipping-soft-icon {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  border-radius: 12px !important;
  display: inline-grid !important;
  place-items: center !important;
  background: #ECFDF5 !important;
  border: 1px solid #BDEBE3 !important;
  color: var(--casf-primary-deep, #0F5F53) !important;
  font-size: 18px !important;
  line-height: 1 !important;
}

body.casf-checkout-page #order_review .casf-shipping-soft-badge {
  flex: 0 0 auto !important;
  border-radius: 999px !important;
  background: #F9FAFB !important;
  border: 1px solid var(--casf-border, #E5E7EB) !important;
  color: var(--casf-muted, #6B7280) !important;
  padding: 7px 11px !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

body.casf-checkout-page #order_review .casf-shipping-soft-card-inner .casf-shipping-soft-help {
  display: block !important;
  margin: 16px 18px 12px !important;
  padding: 11px 13px !important;
  background: #F9FAFB !important;
  border: 1px dashed var(--casf-border, #E5E7EB) !important;
  border-radius: 14px !important;
  color: var(--casf-muted, #6B7280) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

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;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 18px 18px !important;
  list-style: none !important;
}

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: flex !important;
  align-items: center !important;
  gap: 11px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 13px 14px !important;
  background: #FFFFFF !important;
  border: 1px solid var(--casf-border, #E5E7EB) !important;
  border-radius: 16px !important;
  color: var(--casf-text, #111827) !important;
  box-sizing: border-box !important;
}

body.casf-checkout-page #order_review .casf-shipping-soft-card-inner label {
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  color: var(--casf-text, #111827) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.4 !important;
}

body.casf-checkout-page #order_review .casf-shipping-soft-card-inner label .amount {
  float: none !important;
  margin-left: auto !important;
  color: var(--casf-text, #111827) !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

body.casf-checkout-page #order_review .casf-shipping-soft-card-inner .woocommerce-shipping-destination,
body.casf-checkout-page #order_review .casf-shipping-soft-card-inner .woocommerce-shipping-calculator {
  margin: 0 18px 18px !important;
  padding: 11px 13px !important;
  background: #F9FCFA !important;
  border: 1px solid #D8F3EC !important;
  border-radius: 14px !important;
  color: var(--casf-muted, #6B7280) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

@media (max-width: 700px) {
  body.casf-checkout-page #order_review .casf-shipping-soft-head {
    align-items: flex-start !important;
    flex-direction: column !important;
  }

  body.casf-checkout-page #order_review .casf-shipping-soft-badge {
    white-space: normal !important;
  }

  body.casf-checkout-page #order_review .casf-shipping-soft-card-inner label {
    align-items: flex-start !important;
    flex-direction: column !important;
  }

  body.casf-checkout-page #order_review .casf-shipping-soft-card-inner label .amount {
    margin-left: 0 !important;
  }
}

/* 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;
}

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 {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

body.casf-order-received-page .casf-thankyou-axis,
body.casf-order-received-page .casf-thankyou-axis.casf-thankyou-preview {
  --casf-flow-shell: min(1200px, calc(100vw - 48px));
  width: var(--casf-flow-shell) !important;
  max-width: var(--casf-flow-shell) !important;
  min-width: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  align-self: center !important;
  justify-self: center !important;
  float: none !important;
  clear: both !important;
  box-sizing: border-box !important;
  left: auto !important;
  right: auto !important;
}

body.casf-order-received-page .casf-thankyou-axis > *,
body.casf-order-received-page .casf-thankyou-preview > .casf-flow-header,
body.casf-order-received-page .casf-thankyou-preview > .casf-thankyou-shell,
body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-stack,
body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-hero,
body.casf-order-received-page .casf-thankyou-preview .casf-card,
body.casf-order-received-page .casf-thankyou-preview .casf-notice-card,
body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-actions {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

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

/* v1.0.23 — force order-received to use a viewport-centered shell */
body.woocommerce-order-received .entry-content > .woocommerce,
body.woocommerce-order-received article .woocommerce,
body.woocommerce-order-received .site-main > .woocommerce,
body.woocommerce-order-received 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,
body.casf-order-received-page .casf-thankyou-viewport-shell {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  box-sizing: border-box !important;
  float: none !important;
  clear: both !important;
  overflow-x: clip !important;
}

body.woocommerce-order-received .casf-thankyou-axis,
body.casf-order-received-page .casf-thankyou-axis,
body.woocommerce-order-received .casf-thankyou-axis.casf-thankyou-preview,
body.casf-order-received-page .casf-thankyou-axis.casf-thankyou-preview {
  width: min(1200px, calc(100vw - 48px)) !important;
  max-width: min(1200px, calc(100vw - 48px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  position: relative !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  align-self: center !important;
  justify-self: center !important;
  float: none !important;
  clear: both !important;
  box-sizing: border-box !important;
}

body.woocommerce-order-received .casf-thankyou-axis > *,
body.casf-order-received-page .casf-thankyou-axis > * {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

@media (max-width: 700px) {
  body.woocommerce-order-received .casf-thankyou-axis,
  body.casf-order-received-page .casf-thankyou-axis,
  body.woocommerce-order-received .casf-thankyou-axis.casf-thankyou-preview,
  body.casf-order-received-page .casf-thankyou-axis.casf-thankyou-preview {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
  }
}

/* v1.0.27 — empty cart premium state */
body.casf-cart-page .casf-cart-empty-axis {
  width: min(1200px, calc(100vw - 48px)) !important;
  max-width: min(1200px, calc(100vw - 48px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: grid !important;
  gap: 22px !important;
  box-sizing: border-box !important;
}

body.casf-cart-page .casf-cart-empty-axis .cart-empty,
body.casf-cart-page .casf-cart-empty-axis .return-to-shop {
  display: none !important;
}

body.casf-cart-page .casf-empty-notices:empty {
  display: none !important;
}

body.casf-cart-page .casf-empty-cart-hero {
  background: radial-gradient(circle at top right, rgba(27,156,133,.14), transparent 34%), linear-gradient(135deg, #FFFFFF 0%, #F9FCFA 100%) !important;
  border: 1px solid rgba(27, 156, 133, .18) !important;
  border-radius: 30px !important;
  box-shadow: var(--casf-shadow, 0 14px 34px rgba(15,23,42,.08)) !important;
  padding: 34px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 330px !important;
  gap: 28px !important;
  align-items: center !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

body.casf-cart-page .casf-empty-copy {
  display: flex !important;
  align-items: flex-start !important;
  gap: 20px !important;
}

body.casf-cart-page .casf-empty-icon {
  width: 68px !important;
  height: 68px !important;
  min-width: 68px !important;
  border-radius: 22px !important;
  background: linear-gradient(135deg, var(--casf-primary, #1B9C85), var(--casf-primary-dark, #147A69)) !important;
  color: #fff !important;
  display: grid !important;
  place-items: center !important;
  font-size: 32px !important;
  box-shadow: 0 18px 34px rgba(27,156,133,.25) !important;
}

body.casf-cart-page .casf-empty-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  border-radius: 999px !important;
  background: #ECFDF5 !important;
  color: var(--casf-primary-deep, #0F5F53) !important;
  border: 1px solid #BDEBE3 !important;
  padding: 7px 12px !important;
  font-size: 12px !important;
  font-weight: 950 !important;
  margin-bottom: 12px !important;
}

body.casf-cart-page .casf-empty-cart-hero h1 {
  margin: 0 !important;
  color: var(--casf-text, #111827) !important;
  font-size: clamp(34px, 4vw, 48px) !important;
  line-height: 1.02 !important;
  letter-spacing: -.065em !important;
}

body.casf-cart-page .casf-empty-cart-hero p {
  margin: 12px 0 0 !important;
  color: var(--casf-muted, #6B7280) !important;
  line-height: 1.6 !important;
  font-size: 15px !important;
  max-width: 640px !important;
}

body.casf-cart-page .casf-empty-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin-top: 24px !important;
}

body.casf-cart-page .casf-button {
  min-height: 50px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 13px 22px !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 950 !important;
  line-height: 1.2 !important;
}

body.casf-cart-page .casf-button-primary {
  color: #fff !important;
  background: linear-gradient(135deg, var(--casf-primary, #1B9C85), var(--casf-primary-dark, #147A69)) !important;
  box-shadow: 0 14px 28px rgba(27,156,133,.22) !important;
}

body.casf-cart-page .casf-button-secondary {
  background: #fff !important;
  color: var(--casf-primary-deep, #0F5F53) !important;
  border: 1px solid #BDEBE3 !important;
}

body.casf-cart-page .casf-empty-illustration {
  background: #fff !important;
  border: 1px solid var(--casf-border, #E5E7EB) !important;
  border-radius: 26px !important;
  padding: 20px !important;
  min-height: 270px !important;
  display: grid !important;
  place-items: center !important;
  box-shadow: 0 12px 28px rgba(15,23,42,.06) !important;
}

body.casf-cart-page .casf-bag-graphic {
  width: 210px !important;
  height: 210px !important;
  border-radius: 42px !important;
  background: radial-gradient(circle at 70% 22%, rgba(245,158,11,.18), transparent 18%), linear-gradient(135deg, #ECFDF5, #FFFFFF) !important;
  border: 1px solid #D8F3EC !important;
  display: grid !important;
  place-items: center !important;
  position: relative !important;
}

body.casf-cart-page .casf-bag-graphic::before {
  content: "" !important;
  width: 112px !important;
  height: 130px !important;
  border-radius: 22px 22px 28px 28px !important;
  background: linear-gradient(135deg, var(--casf-primary, #1B9C85), var(--casf-primary-dark, #147A69)) !important;
  box-shadow: 0 18px 30px rgba(27,156,133,.24) !important;
}

body.casf-cart-page .casf-bag-graphic::after {
  content: "0" !important;
  position: absolute !important;
  width: 46px !important;
  height: 46px !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: var(--casf-primary-deep, #0F5F53) !important;
  display: grid !important;
  place-items: center !important;
  font-size: 22px !important;
  font-weight: 950 !important;
  border: 1px solid #BDEBE3 !important;
  box-shadow: 0 10px 20px rgba(15,23,42,.08) !important;
}

body.casf-cart-page .casf-empty-suggestion-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 22px !important;
  align-items: start !important;
}

body.casf-cart-page .casf-card,
body.casf-cart-page .casf-recent-strip {
  background: #fff !important;
  border: 1px solid var(--casf-border, #E5E7EB) !important;
  border-radius: var(--casf-radius-lg, 24px) !important;
  box-shadow: var(--casf-shadow, 0 14px 34px rgba(15,23,42,.08)) !important;
  overflow: hidden !important;
}

body.casf-cart-page .casf-card-header,
body.casf-cart-page .casf-recent-head {
  padding: 20px 22px !important;
  border-bottom: 1px solid var(--casf-border, #E5E7EB) !important;
  background: var(--casf-card-soft, #F9FCFA) !important;
}

body.casf-cart-page .casf-card-header h2,
body.casf-cart-page .casf-recent-head h2 {
  margin: 0 !important;
  color: var(--casf-text, #111827) !important;
  font-size: 22px !important;
  letter-spacing: -.04em !important;
  line-height: 1.15 !important;
}

body.casf-cart-page .casf-card-body {
  padding: 22px !important;
}

body.casf-cart-page .casf-category-list,
body.casf-cart-page .casf-trust-list {
  display: grid !important;
  gap: 12px !important;
}

body.casf-cart-page .casf-category-link {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding: 15px !important;
  border: 1px solid var(--casf-border, #E5E7EB) !important;
  border-radius: 17px !important;
  background: #fff !important;
  text-decoration: none !important;
  color: var(--casf-text, #111827) !important;
  transition: .18s ease !important;
}

body.casf-cart-page .casf-category-link:hover {
  border-color: rgba(27,156,133,.35) !important;
  background: #FBFEFC !important;
  transform: translateY(-1px) !important;
}

body.casf-cart-page .casf-category-left {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  min-width: 0 !important;
}

body.casf-cart-page .casf-category-icon {
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  border-radius: 14px !important;
  display: grid !important;
  place-items: center !important;
  background: #ECFDF5 !important;
  color: var(--casf-primary-deep, #0F5F53) !important;
  border: 1px solid #BDEBE3 !important;
  font-size: 20px !important;
}

body.casf-cart-page .casf-category-link strong,
body.casf-cart-page .casf-trust-item strong {
  display: block !important;
  color: var(--casf-text, #111827) !important;
  font-size: 14px !important;
  line-height: 1.3 !important;
}

body.casf-cart-page .casf-category-link span span,
body.casf-cart-page .casf-trust-item span span {
  display: block !important;
  color: var(--casf-muted, #6B7280) !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
  margin-top: 2px !important;
}

body.casf-cart-page .casf-arrow {
  color: var(--casf-primary-deep, #0F5F53) !important;
  font-weight: 950 !important;
  font-size: 18px !important;
}

body.casf-cart-page .casf-trust-item {
  display: flex !important;
  gap: 12px !important;
  align-items: flex-start !important;
  padding: 15px !important;
  background: var(--casf-card-soft, #F9FCFA) !important;
  border: 1px solid var(--casf-border, #E5E7EB) !important;
  border-radius: 17px !important;
}

body.casf-cart-page .casf-trust-check {
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
  border-radius: 999px !important;
  background: #ECFDF5 !important;
  color: var(--casf-primary-deep, #0F5F53) !important;
  border: 1px solid #BDEBE3 !important;
  display: grid !important;
  place-items: center !important;
  font-size: 14px !important;
  font-weight: 950 !important;
}

body.casf-cart-page .casf-recent-strip {
  padding: 0 !important;
}

body.casf-cart-page .casf-recent-head {
  display: flex !important;
  justify-content: space-between !important;
  gap: 16px !important;
  align-items: center !important;
}

body.casf-cart-page .casf-recent-head a {
  color: var(--casf-primary-deep, #0F5F53) !important;
  text-decoration: none !important;
  font-size: 13px !important;
  font-weight: 950 !important;
}

body.casf-cart-page .casf-product-row {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
  padding: 22px !important;
}

body.casf-cart-page .casf-product-card {
  border: 1px solid var(--casf-border, #E5E7EB) !important;
  border-radius: 18px !important;
  background: var(--casf-card-soft, #F9FCFA) !important;
  padding: 14px !important;
  min-height: 190px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
}

body.casf-cart-page .casf-product-thumb {
  height: 96px !important;
  border-radius: 15px !important;
  background: linear-gradient(135deg, #ECFDF5, #FFFFFF) !important;
  border: 1px solid #D8F3EC !important;
  margin-bottom: 12px !important;
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
}

body.casf-cart-page .casf-product-thumb img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

body.casf-cart-page .casf-product-title {
  color: var(--casf-text, #111827) !important;
  text-decoration: none !important;
  font-size: 13px !important;
  line-height: 1.3 !important;
  font-weight: 850 !important;
}

body.casf-cart-page .casf-product-price {
  color: var(--casf-primary-deep, #0F5F53) !important;
  font-size: 13px !important;
  font-weight: 950 !important;
  margin-top: 5px !important;
}

@media (max-width: 900px) {
  body.casf-cart-page .casf-cart-empty-axis {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
  }

  body.casf-cart-page .casf-empty-cart-hero,
  body.casf-cart-page .casf-empty-suggestion-grid {
    grid-template-columns: 1fr !important;
  }

  body.casf-cart-page .casf-empty-copy {
    display: grid !important;
  }

  body.casf-cart-page .casf-empty-illustration {
    min-height: 220px !important;
  }

  body.casf-cart-page .casf-bag-graphic {
    width: 170px !important;
    height: 170px !important;
  }

  body.casf-cart-page .casf-product-row {
    grid-template-columns: 1fr 1fr !important;
  }
}

@media (max-width: 560px) {
  body.casf-cart-page .casf-empty-cart-hero {
    padding: 24px !important;
  }

  body.casf-cart-page .casf-empty-actions {
    display: grid !important;
  }

  body.casf-cart-page .casf-product-row {
    grid-template-columns: 1fr !important;
  }

  body.casf-cart-page .casf-recent-head {
    align-items: flex-start !important;
    flex-direction: column !important;
  }
}

/* v1.0.29 — show square product thumbnails complete in empty-cart recommendations */
body.casf-cart-page .casf-cart-empty-axis .casf-product-row {
  align-items: stretch !important;
}

body.casf-cart-page .casf-cart-empty-axis .casf-product-card {
  min-height: 0 !important;
  justify-content: flex-start !important;
}

body.casf-cart-page .casf-cart-empty-axis .casf-product-thumb {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  min-height: 0 !important;
  padding: 12px !important;
  background: #FFFFFF !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body.casf-cart-page .casf-cart-empty-axis .casf-product-thumb img,
body.casf-cart-page .casf-cart-empty-axis .casf-product-card img,
body.casf-cart-page .casf-cart-empty-axis .casf-product-thumb .attachment-woocommerce_thumbnail,
body.casf-cart-page .casf-cart-empty-axis .casf-product-thumb .woocommerce-placeholder {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
  border-radius: 12px !important;
}

body.casf-cart-page .casf-cart-empty-axis .casf-product-title {
  margin-top: 2px !important;
}


/* v1.0.74 — hide WhatsApp checkout consent unless Order Pulse has that checkbox enabled */
body.casf-checkout-page.casf-orderpulse-whatsapp-disabled #casf-orderpulse-whatsapp-consent,
body.casf-checkout-page.casf-orderpulse-whatsapp-disabled .casf-whatsapp-consent-card,
body.casf-checkout-page.casf-orderpulse-whatsapp-disabled .orderpulse-whatsapp-consent,
body.casf-checkout-page.casf-orderpulse-whatsapp-disabled .order-pulse-whatsapp-consent,
body.casf-checkout-page.casf-orderpulse-whatsapp-disabled .whatsapp-consent,
body.casf-checkout-page.casf-orderpulse-whatsapp-disabled #orderpulse_whatsapp_consent_field,
body.casf-checkout-page.casf-orderpulse-whatsapp-disabled #order_pulse_whatsapp_consent_field {
  display: none !important;
}


/* v1.0.77 — make sure the fallback consent card is visible when Order Pulse WhatsApp is detected */
body.casf-checkout-page.casf-orderpulse-whatsapp-enabled #casf-orderpulse-whatsapp-consent,
body.casf-checkout-page.casf-orderpulse-whatsapp-enabled .casf-whatsapp-consent-card {
  display: block !important;
}


/* v1.0.79 — Order Pulse v2.5.0 exact consent field support */
body.casf-checkout-page.casf-orderpulse-whatsapp-disabled #casf-orderpulse-whatsapp-consent,
body.casf-checkout-page.casf-orderpulse-whatsapp-disabled #opfw_whatsapp_consent_field,
body.casf-checkout-page.casf-orderpulse-whatsapp-disabled #opfw-checkout-fields {
  display: none !important;
}

body.casf-checkout-page.casf-orderpulse-whatsapp-enabled #casf-orderpulse-whatsapp-consent {
  display: block !important;
}


/* v1.0.92 — refine thankyou order details card */
body.casf-order-received-page .casf-thankyou-preview .casf-order-details-card .casf-card-body {
  padding-top: 18px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-order-table tbody tr:first-child td {
  padding-top: 18px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-order-table tbody tr:last-child td {
  border-bottom: 0 !important;
  padding-bottom: 12px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-product-line {
  display: grid !important;
  grid-template-columns: 58px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 14px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-product-content {
  min-width: 0 !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-product-qty {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 4px 10px !important;
  margin-top: 8px !important;
  border-radius: 999px !important;
  background: #F9FCFA !important;
  border: 1px solid #DCEEE8 !important;
  color: #40635A !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  width: fit-content !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-item-meta {
  margin-top: 10px !important;
  padding-top: 10px !important;
  border-top: 1px dashed #E2EEE9 !important;
  display: grid !important;
  gap: 6px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-item-meta > * {
  margin: 0 !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-item-meta strong,
body.casf-order-received-page .casf-thankyou-preview .casf-item-meta b,
body.casf-order-received-page .casf-thankyou-preview .casf-item-meta .wc-item-meta-label {
  color: #111827 !important;
  font-weight: 800 !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-order-table td:last-child {
  white-space: nowrap !important;
  font-weight: 900 !important;
  color: #0F172A !important;
  font-size: 15px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-totals {
  margin-top: 10px !important;
  padding-top: 14px !important;
  border-top: 1px solid #E5E7EB !important;
  background: #FBFEFC !important;
  border-radius: 16px !important;
  padding-left: 18px !important;
  padding-right: 18px !important;
  padding-bottom: 6px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-total-row {
  align-items: center !important;
  flex-wrap: wrap !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-total-row span {
  color: #64748B !important;
  font-weight: 600 !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-total-row strong {
  max-width: 60% !important;
  text-align: right !important;
  word-break: break-word !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-total-row.is-final {
  background: linear-gradient(180deg, rgba(27,156,133,.03), rgba(27,156,133,.00)) !important;
}

@media (max-width: 767px) {
  body.casf-order-received-page .casf-thankyou-preview .casf-order-table th:last-child,
  body.casf-order-received-page .casf-thankyou-preview .casf-order-table td:last-child {
    text-align: left !important;
  }

  body.casf-order-received-page .casf-thankyou-preview .casf-order-table thead {
    display: none !important;
  }

  body.casf-order-received-page .casf-thankyou-preview .casf-order-table,
  body.casf-order-received-page .casf-thankyou-preview .casf-order-table tbody,
  body.casf-order-received-page .casf-thankyou-preview .casf-order-table tr,
  body.casf-order-received-page .casf-thankyou-preview .casf-order-table td {
    display: block !important;
    width: 100% !important;
  }

  body.casf-order-received-page .casf-thankyou-preview .casf-order-table tr {
    border-bottom: 1px solid #EDF2F7 !important;
    padding: 0 0 14px !important;
    margin-bottom: 14px !important;
  }

  body.casf-order-received-page .casf-thankyou-preview .casf-order-table td {
    padding: 0 !important;
    border: 0 !important;
  }

  body.casf-order-received-page .casf-thankyou-preview .casf-order-table td:last-child {
    margin-top: 10px !important;
    padding-left: 72px !important;
  }

  body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-totals {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}


/* v1.0.92 — premium thank-you order details meta rows */
body.casf-order-received-page .casf-thankyou-preview .casf-product-line {
  display: grid !important;
  grid-template-columns: 58px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 14px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-product-content {
  min-width: 0 !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-product-qty {
  display: inline-flex !important;
  width: fit-content !important;
  align-items: center !important;
  padding: 4px 10px !important;
  margin-top: 8px !important;
  border-radius: 999px !important;
  background: #F9FCFA !important;
  border: 1px solid #DCEEE8 !important;
  color: #40635A !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 750 !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-item-meta {
  margin-top: 10px !important;
  padding-top: 10px !important;
  border-top: 1px dashed #E2EEE9 !important;
  display: grid !important;
  gap: 8px !important;
  color: #64748B !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-item-meta-row {
  display: grid !important;
  grid-template-columns: 132px minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: start !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-item-meta-row strong {
  color: #111827 !important;
  font-weight: 900 !important;
  font-size: 13px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-item-meta-row span {
  color: #64748B !important;
  font-size: 13px !important;
  margin: 0 !important;
  line-height: 1.35 !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-item-meta-row p {
  margin: 0 !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-order-table td:last-child {
  white-space: nowrap !important;
  font-weight: 950 !important;
  color: #0F172A !important;
  font-size: 15px !important;
  padding-top: 24px !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-totals {
  margin-top: 12px !important;
  padding: 14px 18px 6px !important;
  border-top: 1px solid #E5E7EB !important;
  border-radius: 16px !important;
  background: #FBFEFC !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-total-row {
  align-items: center !important;
  flex-wrap: wrap !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-total-row span {
  color: #64748B !important;
  font-weight: 650 !important;
}

body.casf-order-received-page .casf-thankyou-preview .casf-total-row strong {
  max-width: 60% !important;
  text-align: right !important;
  word-break: break-word !important;
}

@media (max-width: 767px) {
  body.casf-order-received-page .casf-thankyou-preview .casf-order-table thead {
    display: none !important;
  }

  body.casf-order-received-page .casf-thankyou-preview .casf-order-table,
  body.casf-order-received-page .casf-thankyou-preview .casf-order-table tbody,
  body.casf-order-received-page .casf-thankyou-preview .casf-order-table tr,
  body.casf-order-received-page .casf-thankyou-preview .casf-order-table td {
    display: block !important;
    width: 100% !important;
  }

  body.casf-order-received-page .casf-thankyou-preview .casf-order-table tr {
    padding-bottom: 14px !important;
    margin-bottom: 14px !important;
    border-bottom: 1px solid #EDF2F7 !important;
  }

  body.casf-order-received-page .casf-thankyou-preview .casf-order-table td {
    padding: 0 !important;
    border: 0 !important;
  }

  body.casf-order-received-page .casf-thankyou-preview .casf-order-table td:last-child {
    margin-top: 10px !important;
    padding-top: 0 !important;
    padding-left: 72px !important;
    text-align: left !important;
  }

  body.casf-order-received-page .casf-thankyou-preview .casf-item-meta-row {
    grid-template-columns: 1fr !important;
    gap: 2px !important;
  }

  body.casf-order-received-page .casf-thankyou-preview .casf-thankyou-totals {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}


/* v1.0.96 — mobile cart/checkout hardening + Google autocomplete layer */
.pac-container {
  z-index: 10000000 !important;
  border-radius: 14px !important;
  border: 1px solid #D8F3EC !important;
  box-shadow: 0 18px 42px rgba(15, 23, 42, .16) !important;
  overflow: hidden !important;
  font-family: inherit !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));
}

.casf-checkout-trust-config {
  width: min(1200px, calc(100vw - 32px));
  margin: 0 auto 18px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.casf-checkout-trust-config span {
  min-height: 54px;
  padding: 12px 14px;
  border-radius: 18px;
  border: 1px solid #D8F3EC;
  background: #ECFDF5;
  color: var(--casf-primary-deep, #0F5F53);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 950;
  text-align: center;
}

.casf-checkout-trust-config i {
  font-style: normal;
}

.casf-thankyou-support-config {
  margin: 18px 0 0;
  padding: 16px;
  border-radius: 22px;
  border: 1px solid #D8F3EC;
  background:
    radial-gradient(circle at top right, rgba(27,156,133,.12), transparent 32%),
    #F9FCFA;
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 12px;
  align-items: center;
}

.casf-thankyou-support-config > span {
  width: 42px;
  height: 42px;
  border-radius: 16px;
  display: grid;
  place-items: center;
  background: #ECFDF5;
  color: var(--casf-primary-deep, #0F5F53);
  border: 1px solid #D8F3EC;
}

.casf-thankyou-support-config p {
  margin: 0;
  color: var(--casf-text, #111827);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.45;
}

.casf-thankyou-support-config a {
  min-height: 38px;
  padding: 0 13px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--casf-primary, #1B9C85), var(--casf-primary-dark, #147A69));
  color: #fff !important;
  display: inline-flex;
  align-items: center;
  font-size: 13px;
  font-weight: 950;
  text-decoration: none !important;
}

@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;
  }
}


/* v1.2.7 — Disabled purchase modules spacing guards */
body:not(.casf-woo-flow) .casf-purchase-free-shipping,
body:not(.casf-woo-flow) .casf-checkout-trust-config {
  display: none !important;
}

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


/* --------------------------------------------------------------------------
 * v1.2.8-rc2 — Checkout shipping radio/name overlap fix
 * -------------------------------------------------------------------------- */
body.woocommerce-checkout #shipping_method li,
body.woocommerce-checkout .woocommerce-shipping-methods li,
body.woocommerce-checkout .wc-block-components-radio-control__option {
  position: relative !important;
}

body.woocommerce-checkout #shipping_method li,
body.woocommerce-checkout .woocommerce-shipping-methods li {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

body.woocommerce-checkout #shipping_method li input[type="radio"],
body.woocommerce-checkout .woocommerce-shipping-methods li input[type="radio"] {
  position: static !important;
  flex: 0 0 auto !important;
  width: 16px !important;
  height: 16px !important;
  margin: 0 !important;
  transform: none !important;
  inset: auto !important;
  opacity: 1 !important;
}

body.woocommerce-checkout #shipping_method li label,
body.woocommerce-checkout .woocommerce-shipping-methods li label {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  width: 100% !important;
  margin: 0 !important;
  padding-left: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  line-height: 1.35 !important;
}

body.woocommerce-checkout #shipping_method li label .amount,
body.woocommerce-checkout .woocommerce-shipping-methods li label .amount {
  margin-left: auto !important;
  white-space: nowrap !important;
  flex: 0 0 auto !important;
}

body.woocommerce-checkout #shipping_method li label > span:not(.amount),
body.woocommerce-checkout .woocommerce-shipping-methods li label > span:not(.amount) {
  min-width: 0 !important;
}

@media (max-width: 640px) {
  body.woocommerce-checkout #shipping_method li,
  body.woocommerce-checkout .woocommerce-shipping-methods li {
    gap: 8px !important;
  }

  body.woocommerce-checkout #shipping_method li label,
  body.woocommerce-checkout .woocommerce-shipping-methods li label {
    gap: 8px !important;
  }
}


/* --------------------------------------------------------------------------
 * v1.2.8-rc4 — Checkout shipping radio hard alignment fix
 * --------------------------------------------------------------------------
 * Some checkout/flow rules and Woo labels can leave the radio visually on top
 * of the courier name. This reserves a real left column for the selector and
 * makes the label text start after that column.
 */
body.woocommerce-checkout #shipping_method,
body.woocommerce-checkout .woocommerce-shipping-methods {
  display: grid !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-checkout #shipping_method li,
body.woocommerce-checkout .woocommerce-shipping-methods li {
  position: relative !important;
  display: block !important;
  min-height: 48px !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
  overflow: visible !important;
}

body.woocommerce-checkout #shipping_method li input[type="radio"],
body.woocommerce-checkout .woocommerce-shipping-methods li input[type="radio"] {
  position: absolute !important;
  left: 18px !important;
  top: 50% !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  min-height: 16px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: translateY(-50%) !important;
  opacity: 1 !important;
  z-index: 2 !important;
  pointer-events: auto !important;
}

body.woocommerce-checkout #shipping_method li label,
body.woocommerce-checkout .woocommerce-shipping-methods li label {
  position: relative !important;
  z-index: 1 !important;
  width: 100% !important;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 0 18px 0 44px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  column-gap: 12px !important;
  line-height: 1.35 !important;
  text-align: left !important;
  cursor: pointer !important;
}

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

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

body.woocommerce-checkout #shipping_method li label > span:not(.amount),
body.woocommerce-checkout .woocommerce-shipping-methods li label > span:not(.amount) {
  min-width: 0 !important;
}

body.woocommerce-checkout #shipping_method li label,
body.woocommerce-checkout .woocommerce-shipping-methods li label {
  word-break: normal !important;
  overflow-wrap: anywhere !important;
}

@media (max-width: 640px) {
  body.woocommerce-checkout #shipping_method li label,
  body.woocommerce-checkout .woocommerce-shipping-methods li label {
    padding-left: 42px !important;
    padding-right: 14px !important;
    column-gap: 8px !important;
  }

  body.woocommerce-checkout #shipping_method li input[type="radio"],
  body.woocommerce-checkout .woocommerce-shipping-methods li input[type="radio"] {
    left: 16px !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-rc5 — Checkout coupon mobile collapse
 * -------------------------------------------------------------------------- */
@media (max-width: 640px) {
  body.casf-checkout-page form.checkout_coupon,
  body.casf-checkout-page form.woocommerce-form-coupon,
  body.casf-checkout-page .woocommerce-form-coupon,
  body.woocommerce-checkout form.checkout_coupon,
  body.woocommerce-checkout form.woocommerce-form-coupon,
  body.woocommerce-checkout .woocommerce-form-coupon,
  body.casf-checkout-page .casf-checkout-before-form .checkout_coupon,
  body.casf-checkout-page .casf-checkout-before-form form.checkout_coupon {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 12px !important;
    box-sizing: border-box !important;
  }

  body.casf-checkout-page form.checkout_coupon p,
  body.casf-checkout-page form.woocommerce-form-coupon p,
  body.woocommerce-checkout form.checkout_coupon p,
  body.woocommerce-checkout form.woocommerce-form-coupon p,
  body.casf-checkout-page form.checkout_coupon .form-row,
  body.casf-checkout-page form.woocommerce-form-coupon .form-row,
  body.woocommerce-checkout form.checkout_coupon .form-row,
  body.woocommerce-checkout form.woocommerce-form-coupon .form-row {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    clear: both !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  body.casf-checkout-page form.checkout_coupon input,
  body.casf-checkout-page form.woocommerce-form-coupon input,
  body.woocommerce-checkout form.checkout_coupon input,
  body.woocommerce-checkout form.woocommerce-form-coupon input,
  body.casf-checkout-page form.checkout_coupon button,
  body.casf-checkout-page form.woocommerce-form-coupon button,
  body.woocommerce-checkout form.checkout_coupon button,
  body.woocommerce-checkout form.woocommerce-form-coupon button {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 44px !important;
    box-sizing: border-box !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-rc6 — Mobile checkout coupon forced collapse
 * -------------------------------------------------------------------------- */
@media (max-width: 760px) {
  body.woocommerce-checkout .woocommerce-form-coupon-toggle,
  body.casf-checkout-page .woocommerce-form-coupon-toggle {
    width: 100% !important;
    max-width: 100% !important;
  }

  body.woocommerce-checkout form.checkout_coupon,
  body.woocommerce-checkout form.woocommerce-form-coupon,
  body.casf-checkout-page form.checkout_coupon,
  body.casf-checkout-page form.woocommerce-form-coupon,
  body.casf-checkout-page .casf-checkout-before-form .checkout_coupon,
  body.casf-checkout-page .casf-checkout-before-form form.checkout_coupon {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.woocommerce-checkout form.checkout_coupon p,
  body.woocommerce-checkout form.woocommerce-form-coupon p,
  body.casf-checkout-page form.checkout_coupon p,
  body.casf-checkout-page form.woocommerce-form-coupon p,
  body.woocommerce-checkout form.checkout_coupon .form-row,
  body.woocommerce-checkout form.woocommerce-form-coupon .form-row,
  body.casf-checkout-page form.checkout_coupon .form-row,
  body.casf-checkout-page form.woocommerce-form-coupon .form-row {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    clear: both !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.woocommerce-checkout form.checkout_coupon input.input-text,
  body.woocommerce-checkout form.woocommerce-form-coupon input.input-text,
  body.casf-checkout-page form.checkout_coupon input.input-text,
  body.casf-checkout-page form.woocommerce-form-coupon input.input-text,
  body.woocommerce-checkout form.checkout_coupon button,
  body.woocommerce-checkout form.woocommerce-form-coupon button,
  body.casf-checkout-page form.checkout_coupon button,
  body.casf-checkout-page form.woocommerce-form-coupon button {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 48px !important;
    margin: 0 !important;
    box-sizing: border-box !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;
  }
}
