/*
 * OFI Builder Integration - WordPress hardening CSS v1.0.0
 * Scoped safeguards against common WordPress/theme conflicts.
 */

.entry-content .ofi-b2-clean-export,
.wp-block-post-content .ofi-b2-clean-export,
.wp-site-blocks .ofi-b2-clean-export,
.is-layout-constrained .ofi-b2-clean-export,
.is-layout-flow .ofi-b2-clean-export {
  max-width: 100% !important;
  width: 100% !important;
}

.ofi-b2-clean-export :where(h1,h2,h3,h4,h5,h6,p,figure,blockquote) {
  margin-top: 0;
}

.ofi-b2-clean-export :where(p) {
  margin-bottom: 0;
}

.ofi-b2-clean-export :where(ul,ol) {
  margin-top: 0;
  margin-bottom: 0;
}

.ofi-b2-clean-export :where(.ofi-b2-icon-list-preview ul,
.ofi-b2-offer-checklist,
.ofi-b2-faq-list,
.ofi-b2-pricing-features) {
  list-style: none;
  padding-left: 0;
}

.ofi-b2-clean-export :where(.ofi-b2-preview-btn,
.ofi-b2-preview-btn:visited,
.ofi-b2-preview-btn:hover,
.ofi-b2-preview-btn:focus) {
  box-shadow: none;
}

.ofi-b2-clean-export :where(.ofi-b2-card-preview,
.ofi-b2-feature,
.ofi-b2-testimonial,
.ofi-b2-pricing,
.ofi-b2-faq,
.ofi-b2-cta,
.ofi-b2-offer,
.ofi-b2-bonus,
.ofi-b2-guarantee,
.ofi-b2-offer-box-preview,
.ofi-b2-bonus-block-preview,
.ofi-b2-guarantee-block-preview) {
  overflow-wrap: anywhere;
}

.ofi-b2-clean-export :where(.alignwide,.alignfull) {
  max-width: 100%;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

body .ofi-b2-clean-export :where(.ofi-b2-row,.ofi-b2-column,.ofi-b2-block) {
  float: none;
}

.ofi-b2-clean-export :where(input,button,textarea,select) {
  font: inherit;
}

.ofi-b2-clean-export :where(button) {
  cursor: pointer;
}

@media (max-width: 720px) {
  .ofi-b2-clean-export :where(h1,h2,h3) {
    overflow-wrap: anywhere;
  }

  .ofi-b2-clean-export :where(.ofi-b2-preview-btn) {
    max-width: 100%;
  }
}


/* OFI Builder Integration 1.2.4 — WordPress auto-paragraph CSS protection */
body .ofi-b2-clean-export .ofi-b2-comparison-block {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}
body .ofi-b2-clean-export .ofi-b2-comparison-labels {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) 54px minmax(0,1fr) !important;
  gap: var(--ofi-core-gap) !important;
  width: 100% !important;
  min-width: 0 !important;
}
body .ofi-b2-clean-export .ofi-b2-comparison-list {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) !important;
  gap: 12px !important;
  width: 100% !important;
  min-width: 0 !important;
}
body .ofi-b2-clean-export .ofi-b2-comparison-pair {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) 54px minmax(0,1fr) !important;
  gap: var(--ofi-core-gap) !important;
  align-items: stretch !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
}
body .ofi-b2-clean-export .ofi-b2-comparison-side {
  display: grid !important;
  grid-template-columns: 46px minmax(0,1fr) !important;
  grid-auto-flow: row !important;
  gap: 14px !important;
  align-items: start !important;
  align-content: start !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
}
body .ofi-b2-clean-export .ofi-b2-comparison-icon {
  display: grid !important;
  place-items: center !important;
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  max-width: 42px !important;
}
body .ofi-b2-clean-export .ofi-b2-comparison-side > div {
  display: block !important;
  grid-column: 2 !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  justify-self: stretch !important;
  align-self: start !important;
  float: none !important;
  position: static !important;
  columns: auto !important;
}
body .ofi-b2-clean-export .ofi-b2-comparison-side > div > strong,
body .ofi-b2-clean-export .ofi-b2-comparison-side > div > p {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
  writing-mode: horizontal-tb !important;
  float: none !important;
  position: static !important;
}
body .ofi-b2-clean-export .ofi-b2-comparison-arrow {
  display: grid !important;
  place-items: center !important;
  width: 54px !important;
  min-width: 54px !important;
  max-width: 54px !important;
}

body .ofi-b2-clean-export .ofi-b2-cta-box-v2 {
  display: grid !important;
  gap: 18px !important;
  align-items: center !important;
  align-content: center !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: auto !important;
}
body .ofi-b2-clean-export .ofi-b2-cta-box-v2.variant-horizontal,
body .ofi-b2-clean-export .ofi-b2-cta-box-v2.variant-price,
body .ofi-b2-clean-export .ofi-b2-cta-box-v2.variant-dual {
  grid-template-columns: minmax(0,1fr) auto !important;
}
body .ofi-b2-clean-export .ofi-b2-cta-box-copy {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) !important;
  grid-auto-rows: max-content !important;
  gap: 8px !important;
  align-content: start !important;
  justify-content: start !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 0 !important;
  height: auto !important;
  align-self: center !important;
  float: none !important;
  position: static !important;
}
body .ofi-b2-clean-export .ofi-b2-cta-box-copy > em,
body .ofi-b2-clean-export .ofi-b2-cta-box-copy > strong,
body .ofi-b2-clean-export .ofi-b2-cta-box-copy > p,
body .ofi-b2-clean-export .ofi-b2-cta-box-copy > b,
body .ofi-b2-clean-export .ofi-b2-cta-box-copy > small {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
  float: none !important;
  position: static !important;
}
body .ofi-b2-clean-export .ofi-b2-cta-box-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  align-content: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  float: none !important;
  position: static !important;
}
body .ofi-b2-clean-export .ofi-b2-cta-box-actions > a {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: 100% !important;
  white-space: nowrap !important;
  float: none !important;
  position: static !important;
}

body .ofi-b2-clean-export .ofi-b2-cta-box-secondary,
body .ofi-b2-clean-export .ofi-b2-cta-box-secondary:link,
body .ofi-b2-clean-export .ofi-b2-cta-box-secondary:visited,
body .ofi-b2-clean-export .ofi-b2-cta-box-secondary:hover,
body .ofi-b2-clean-export .ofi-b2-cta-box-secondary:focus,
body .ofi-b2-clean-export .ofi-b2-cta-box-secondary:active {
  color: var(--ofi-cta-secondary-color, var(--ofi-card-icon-color, #2563eb)) !important;
  text-decoration: none !important;
}
body .ofi-b2-clean-export .ofi-b2-cta-box-secondary.style-outline,
body .ofi-b2-clean-export .ofi-b2-cta-box-secondary.style-outline:link,
body .ofi-b2-clean-export .ofi-b2-cta-box-secondary.style-outline:visited,
body .ofi-b2-clean-export .ofi-b2-cta-box-secondary.style-outline:hover,
body .ofi-b2-clean-export .ofi-b2-cta-box-secondary.style-outline:focus,
body .ofi-b2-clean-export .ofi-b2-cta-box-secondary.style-outline:active {
  background: var(--ofi-cta-secondary-bg, transparent) !important;
  border-color: var(--ofi-cta-secondary-border, var(--ofi-cta-secondary-color, #2563eb)) !important;
}
body .ofi-b2-clean-export .ofi-b2-cta-box-secondary.style-solid,
body .ofi-b2-clean-export .ofi-b2-cta-box-secondary.style-solid:link,
body .ofi-b2-clean-export .ofi-b2-cta-box-secondary.style-solid:visited,
body .ofi-b2-clean-export .ofi-b2-cta-box-secondary.style-solid:hover,
body .ofi-b2-clean-export .ofi-b2-cta-box-secondary.style-solid:focus,
body .ofi-b2-clean-export .ofi-b2-cta-box-secondary.style-solid:active {
  color: var(--ofi-cta-secondary-solid-color, #ffffff) !important;
  background: var(--ofi-cta-secondary-bg, var(--ofi-cta-secondary-color, #2563eb)) !important;
  border-color: var(--ofi-cta-secondary-border, var(--ofi-cta-secondary-bg, #2563eb)) !important;
}

@media (max-width: 720px) {
  body .ofi-b2-clean-export .ofi-b2-comparison-labels { display: none !important; }
  body .ofi-b2-clean-export .ofi-b2-comparison-pair {
    grid-template-columns: minmax(0,1fr) !important;
    gap: var(--ofi-core-mobile-gap) !important;
  }
  body .ofi-b2-clean-export .ofi-b2-comparison-arrow {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 28px !important;
    transform: rotate(90deg) !important;
  }
  body .ofi-b2-clean-export .ofi-b2-cta-box-v2,
  body .ofi-b2-clean-export .ofi-b2-cta-box-v2.variant-horizontal,
  body .ofi-b2-clean-export .ofi-b2-cta-box-v2.variant-price,
  body .ofi-b2-clean-export .ofi-b2-cta-box-v2.variant-dual,
  body .ofi-b2-clean-export .ofi-b2-cta-box-v2.variant-image {
    grid-template-columns: minmax(0,1fr) !important;
    align-content: start !important;
  }
  body .ofi-b2-clean-export .ofi-b2-cta-box-actions {
    width: 100% !important;
    align-items: stretch !important;
    flex-direction: column !important;
  }
  body .ofi-b2-clean-export .ofi-b2-cta-box-actions > a {
    width: 100% !important;
    white-space: normal !important;
  }
}

