/*
Theme Name: BreachFin Child
Theme URI: https://breachfin.com
Description: BreachFin marketing site styles. Uses GeneratePress as the parent theme.
Author: BreachFin
Template: generatepress
Version: 1.9.1
*/

/* Parent theme handles WordPress core; BreachFin styles load from assets/css/style.css */

/* Keep everything inside .bf-wrap (1280px) — reset GP/block wrappers only */
.bf-wordpress .site-content,
.bf-wordpress #page,
.bf-wordpress .content-area,
.bf-wordpress main.site-main,
.bf-wordpress .inside-article,
.bf-wordpress .entry-content,
.bf-wordpress .wp-block-post-content,
.bf-wordpress .is-layout-constrained,
.bf-wordpress .is-layout-flow {
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.bf-wordpress .entry-content > *:first-child {
  margin-top: 0;
}

.bf-wordpress .bf-wrap .wp-block-html {
  display: block;
  max-width: none !important;
}

.bf-wordpress .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
  max-width: none !important;
}

/* Center BreachFin sections — never force width:100% (that ignores max-width caps) */
.bf-wordpress .bf-wrap .entry-content header.bf-page-hero,
.bf-wordpress .bf-wrap .entry-content section[class*="bf-"],
.bf-wordpress .bf-wrap .wp-block-html header.bf-page-hero,
.bf-wordpress .bf-wrap .wp-block-html section[class*="bf-"] {
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box;
}

.bf-wordpress .bf-wrap .bf-page-hero {
  text-align: center !important;
}

.bf-wordpress .bf-wrap .bf-page-hero .bf-hero__actions {
  justify-content: center !important;
}

.bf-wordpress .bf-wrap .bf-contact__card-icon svg {
  width: 20px !important;
  height: 20px !important;
  display: block;
}

/* GeneratePress typography overrides BreachFin heading sizes inside pages */
.bf-wordpress .bf-wrap .entry-content h1,
.bf-wordpress .bf-wrap .entry-content h2,
.bf-wordpress .bf-wrap .entry-content h3,
.bf-wordpress .bf-wrap .wp-block-post-content h1,
.bf-wordpress .bf-wrap .wp-block-post-content h2,
.bf-wordpress .bf-wrap .wp-block-post-content h3 {
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  letter-spacing: inherit;
  line-height: inherit;
  text-transform: none;
}

.bf-wordpress .bf-wrap .entry-content p,
.bf-wordpress .bf-wrap .wp-block-post-content p {
  margin-bottom: 0;
}

/* Contact form — force side-by-side names + tight spacing in WordPress */
.bf-wordpress .bf-wrap .bf-form--contact {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
}

.bf-wordpress .bf-wrap .bf-form__row-2 {
  display: flex !important;
  flex-direction: row !important;
  gap: 14px !important;
  width: 100% !important;
}

.bf-wordpress .bf-wrap .bf-form__row-2 > label {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  margin: 0 !important;
}

.bf-wordpress .bf-wrap .bf-form--contact label {
  margin: 0 !important;
  gap: 4px !important;
}

.bf-wordpress .bf-wrap .bf-form__label-text {
  display: block !important;
  margin: 0 !important;
}

.bf-wordpress .bf-wrap .bf-form label br {
  display: none !important;
}

.bf-wordpress .bf-wrap .bf-form label p {
  margin: 0 !important;
  display: none !important;
}

.bf-wordpress .bf-wrap .bf-form--contact input,
.bf-wordpress .bf-wrap .bf-form--contact textarea {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
}

@media (max-width: 640px) {
  .bf-wordpress .bf-wrap .bf-form__row-2 {
    flex-direction: column !important;
  }
}

/* Blog posts — constrain width and restore readable spacing */
.bf-wordpress.bf-single-post .bf-wrap .bf-post-content.entry-content,
.bf-wordpress.bf-single-post .bf-wrap .bf-post-content {
  text-align: left !important;
  width: 100% !important;
  max-width: 100% !important;
}

.bf-wordpress.bf-single-post .bf-wrap .bf-post-content.entry-content p,
.bf-wordpress.bf-single-post .bf-wrap .bf-post-content p,
.bf-wordpress.bf-single-post .bf-wrap .bf-post-content.entry-content li,
.bf-wordpress.bf-single-post .bf-wrap .bf-post-content li {
  margin-bottom: 1.25em !important;
}

.bf-wordpress.bf-single-post .bf-wrap .bf-post-content.entry-content li:last-child,
.bf-wordpress.bf-single-post .bf-wrap .bf-post-content li:last-child {
  margin-bottom: 0 !important;
}

.bf-wordpress.bf-single-post .bf-wrap .bf-post-content.entry-content h2,
.bf-wordpress.bf-single-post .bf-wrap .bf-post-content.entry-content h3,
.bf-wordpress.bf-single-post .bf-wrap .bf-post-content.entry-content h4,
.bf-wordpress.bf-single-post .bf-wrap .bf-post-content h2,
.bf-wordpress.bf-single-post .bf-wrap .bf-post-content h3,
.bf-wordpress.bf-single-post .bf-wrap .bf-post-content h4 {
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
  letter-spacing: -0.02em !important;
  line-height: 1.3 !important;
  text-transform: none !important;
  font-weight: 700 !important;
  text-align: left !important;
  color: #0c1620 !important;
}

.bf-wordpress.bf-single-post .bf-wrap .bf-post-content.entry-content a {
  opacity: 1;
}

/* Block editor: keep wide/full blocks inside the article column */
.bf-wordpress.bf-single-post .bf-post-content .alignwide,
.bf-wordpress.bf-single-post .bf-post-content .alignfull,
.bf-wordpress.bf-single-post .bf-post-content .wp-block-group,
.bf-wordpress.bf-single-post .bf-post-content .wp-block-columns {
  max-width: 100% !important;
  width: 100% !important;
}

.bf-card__link {
  text-decoration: none;
  color: inherit;
  display: block;
}

.bf-card__link:hover .bf-card__title {
  color: #12a9b6;
}

/* AI-Generated Code - 2026-07-02 - Claude Opus 4.6
   WordPress + GeneratePress + block editor layout fixes */

/* ── GeneratePress shell: full-width, no sidebar squeeze ── */
.bf-wordpress .site.grid-container,
.bf-wordpress .site-content.grid-container,
.bf-wordpress #content,
.bf-wordpress #primary,
.bf-wordpress #main,
.bf-wordpress .grid-container,
.bf-wordpress .one-container .site-content,
.bf-wordpress .separate-containers .inside-article {
  max-width: none !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.bf-wordpress #right-sidebar,
.bf-wordpress #left-sidebar,
.bf-wordpress .sidebar {
  display: none !important;
}

.bf-wordpress .page-header,
.bf-wordpress .entry-header,
.bf-wordpress .generate-page-header {
  display: none !important;
}

.bf-wordpress .bf-wrap {
  width: 100% !important;
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.bf-wordpress .bf-wrap > .entry-content,
.bf-wordpress .bf-wrap > .wp-block-post-content,
.bf-wordpress .bf-wrap article.page,
.bf-wordpress .bf-wrap article.post:not(.bf-blog-card):not(.bf-blog-featured) {
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* Custom HTML blocks must not shrink BreachFin sections */
.bf-wordpress .bf-wrap .wp-block-html,
.bf-wordpress .bf-wrap .wp-block-group,
.bf-wordpress .bf-wrap .wp-block-group__inner-container {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.bf-wordpress .bf-wrap .entry-content > .wp-block-html + .wp-block-html,
.bf-wordpress .bf-wrap .entry-content > section + section {
  margin-top: 0 !important;
}

/* ── Typography: undo GeneratePress heading defaults on marketing pages ── */
.bf-wordpress .bf-wrap .bf-hero__title {
  font-size: 62px !important;
  line-height: 1.01 !important;
  letter-spacing: -0.035em !important;
  font-weight: 700 !important;
  margin: 0 0 22px !important;
  color: #0c1620 !important;
}

.bf-wordpress .bf-wrap .bf-page-hero__title {
  font-size: 48px !important;
  line-height: 1.06 !important;
  letter-spacing: -0.03em !important;
  font-weight: 700 !important;
  margin: 0 0 16px !important;
  color: #0c1620 !important;
}

.bf-wordpress .bf-wrap .bf-section-title,
.bf-wordpress .bf-wrap .bf-showcase__title {
  font-size: 40px !important;
  line-height: 1.08 !important;
  letter-spacing: -0.03em !important;
  font-weight: 700 !important;
  color: #0c1620 !important;
}

.bf-wordpress .bf-wrap .bf-cta__title {
  font-size: 40px !important;
  line-height: 1.08 !important;
  letter-spacing: -0.03em !important;
  font-weight: 700 !important;
  color: #fff !important;
}

.bf-wordpress .bf-wrap .bf-cta__desc {
  color: #a9b6c1 !important;
}

.bf-wordpress .bf-wrap .bf-post-cta__title {
  color: #fff !important;
}

.bf-wordpress .bf-wrap .bf-post-cta__desc {
  color: rgba(255, 255, 255, 0.82) !important;
}

.bf-wordpress .bf-wrap .bf-hero__desc,
.bf-wordpress .bf-wrap .bf-page-hero__desc,
.bf-wordpress .bf-wrap .bf-section-desc {
  font-size: 19px !important;
  line-height: 1.55 !important;
  color: #51606e !important;
}

.bf-wordpress .bf-wrap .bf-hero__desc {
  margin: 0 0 32px !important;
  max-width: 520px !important;
}

.bf-wordpress .bf-wrap .bf-hero__note {
  font-size: 13px !important;
  color: #8a96a1 !important;
  margin: 22px 0 0 !important;
}

/* ── Layout grids (force inside WordPress wrappers) ── */
.bf-wordpress .bf-wrap .bf-hero {
  display: grid !important;
  grid-template-columns: 1.05fr 0.95fr !important;
  gap: 48px !important;
  align-items: center !important;
  padding: 72px 40px 64px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.bf-wordpress .bf-wrap .bf-hero__actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 13px !important;
  align-items: center !important;
}

.bf-wordpress .bf-wrap .bf-stats__grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 24px !important;
}

.bf-wordpress .bf-wrap .bf-steps__grid,
.bf-wordpress .bf-wrap .bf-features__grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 24px !important;
}

.bf-wordpress .bf-wrap .bf-showcase__inner {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 48px !important;
  align-items: center !important;
}

.bf-wordpress .bf-wrap .bf-about-split {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 48px !important;
  align-items: center !important;
}

.bf-wordpress .bf-wrap .bf-pricing {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 22px !important;
  align-items: stretch !important;
}

.bf-wordpress .bf-wrap .bf-platform-caps__grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 22px !important;
}

.bf-wordpress .bf-wrap .bf-product-module__cols {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 32px !important;
}

.bf-wordpress .bf-wrap .bf-principles {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 24px !important;
}

.bf-wordpress .bf-wrap .bf-mock__stats {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 10px !important;
}

.bf-wordpress .bf-wrap .bf-cta__actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 13px !important;
  justify-content: center !important;
}

/* Buttons — GP sometimes strips padding on links */
.bf-wordpress .bf-wrap .bf-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  text-decoration: none !important;
}

/* Lists inside product/pricing cards */
.bf-wordpress .bf-wrap .bf-pricing-card__features,
.bf-wordpress .bf-wrap .bf-product-module__list,
.bf-wordpress .bf-wrap .bf-platform-cap__list {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.bf-wordpress .bf-wrap .bf-compare__wrap {
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch;
}

/* ── Responsive (match main stylesheet) ── */
@media (max-width: 1024px) {
  .bf-wordpress .bf-wrap .bf-hero {
    grid-template-columns: 1fr !important;
    padding: 48px 32px !important;
  }

  .bf-wordpress .bf-wrap .bf-hero__title {
    font-size: 48px !important;
  }

  .bf-wordpress .bf-wrap .bf-showcase__inner,
  .bf-wordpress .bf-wrap .bf-about-split {
    grid-template-columns: 1fr !important;
  }

  .bf-wordpress .bf-wrap .bf-stats__grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  .bf-wordpress .bf-wrap .bf-pricing {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 768px) {
  .bf-wordpress .bf-wrap .bf-hero {
    padding: 40px 20px !important;
  }

  .bf-wordpress .bf-wrap .bf-hero__title {
    font-size: 38px !important;
  }

  .bf-wordpress .bf-wrap .bf-page-hero__title {
    font-size: 34px !important;
  }

  .bf-wordpress .bf-wrap .bf-steps__grid,
  .bf-wordpress .bf-wrap .bf-features__grid,
  .bf-wordpress .bf-wrap .bf-principles,
  .bf-wordpress .bf-wrap .bf-product-module__cols,
  .bf-wordpress .bf-wrap .bf-platform-caps__grid {
    grid-template-columns: 1fr !important;
  }

  .bf-wordpress .bf-wrap .bf-stats__grid {
    grid-template-columns: 1fr 1fr !important;
  }
}

/* ── About page (match about.html) ── */
.bf-wordpress .bf-wrap .bf-page-hero {
  padding: 64px 40px 48px !important;
  text-align: center !important;
  max-width: 720px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.bf-wordpress .bf-wrap .bf-page-hero .bf-hero__actions {
  justify-content: center !important;
  margin-top: 28px !important;
}

.bf-wordpress .bf-wrap .bf-about-split {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 48px !important;
  max-width: 960px !important;
  margin: 0 auto !important;
  align-items: center !important;
  padding: 0 40px 84px !important;
  box-sizing: border-box !important;
}

.bf-wordpress .bf-wrap .bf-about-split__title {
  font-size: 32px !important;
  line-height: 1.1 !important;
  letter-spacing: -0.03em !important;
  font-weight: 700 !important;
  margin: 0 0 18px !important;
  color: #0c1620 !important;
}

.bf-wordpress .bf-wrap .bf-about-split__label,
.bf-wordpress .bf-wrap .bf-eyebrow {
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: #12a9b6 !important;
  margin-bottom: 14px !important;
}

.bf-wordpress .bf-wrap .bf-about-split__text p {
  font-size: 17px !important;
  line-height: 1.6 !important;
  color: #51606e !important;
  margin: 0 0 16px !important;
}

.bf-wordpress .bf-wrap .bf-about-split__text p:last-child {
  margin-bottom: 0 !important;
}

.bf-wordpress .bf-wrap .bf-about-cards {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

.bf-wordpress .bf-wrap .bf-about-cards__item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  background: #f8fafb !important;
  border: 1px solid #eef2f3 !important;
  border-radius: 12px !important;
  padding: 14px 16px !important;
  font-size: 14.5px !important;
  line-height: 1.45 !important;
  color: #5a6873 !important;
}

.bf-wordpress .bf-wrap .bf-about-cards__icon {
  width: 22px !important;
  height: 22px !important;
  min-width: 22px !important;
  border-radius: 6px !important;
  background: #eafafb !important;
  color: #12a9b6 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  flex-shrink: 0 !important;
  margin-top: 1px !important;
}

.bf-wordpress .bf-wrap .bf-stats {
  background: #f5f9fa !important;
  border-top: 1px solid #eef2f3 !important;
  border-bottom: 1px solid #eef2f3 !important;
  padding: 44px 40px !important;
}

.bf-wordpress .bf-wrap .bf-section-header {
  max-width: 640px !important;
  margin: 0 auto 48px !important;
  text-align: center !important;
}

.bf-wordpress .bf-wrap .bf-section-title {
  font-size: 42px !important;
  line-height: 1.06 !important;
  letter-spacing: -0.03em !important;
  font-weight: 700 !important;
  margin: 0 !important;
  color: #0c1620 !important;
}

.bf-wordpress .bf-wrap .bf-section-desc {
  font-size: 17px !important;
  line-height: 1.55 !important;
  color: #51606e !important;
  margin: 16px 0 0 !important;
}

.bf-wordpress .bf-wrap .bf-features {
  padding: 84px 40px 20px !important;
}

.bf-wordpress .bf-wrap .bf-feature {
  background: #fff !important;
  border: 1px solid #e7ecee !important;
  border-radius: 16px !important;
  padding: 28px !important;
}

.bf-wordpress .bf-wrap .bf-feature__icon {
  width: 46px !important;
  height: 46px !important;
  border-radius: 12px !important;
  background: #eafafb !important;
  border: 1px solid #d3eff2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 18px !important;
}

.bf-wordpress .bf-wrap .bf-feature__title {
  font-size: 19px !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  margin: 0 0 9px !important;
  color: #0c1620 !important;
}

.bf-wordpress .bf-wrap .bf-feature__desc {
  font-size: 14.5px !important;
  line-height: 1.55 !important;
  color: #5a6873 !important;
  margin: 0 !important;
}

.bf-wordpress .bf-wrap .bf-showcase {
  padding: 80px 40px !important;
}

.bf-wordpress .bf-wrap .bf-showcase__inner {
  background: #0c1620 !important;
  border-radius: 24px !important;
  padding: 56px !important;
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 48px !important;
  align-items: center !important;
  position: relative !important;
  overflow: hidden !important;
}

.bf-wordpress .bf-wrap .bf-showcase__title {
  color: #fff !important;
  font-size: 38px !important;
}

.bf-wordpress .bf-wrap .bf-showcase__desc {
  font-size: 16.5px !important;
  line-height: 1.6 !important;
  color: #a9b6c1 !important;
  margin: 0 0 28px !important;
}

.bf-wordpress .bf-wrap .bf-eyebrow--light {
  color: #3fd0db !important;
}

.bf-wordpress .bf-wrap .bf-checklist {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
}

.bf-wordpress .bf-wrap .bf-checklist__item {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  font-size: 15px !important;
  color: #d5dde4 !important;
}

.bf-wordpress .bf-wrap .bf-steps {
  padding: 20px 40px 84px !important;
}

.bf-wordpress .bf-wrap .bf-principle {
  border: 1px solid #e7ecee !important;
  border-radius: 16px !important;
  padding: 28px !important;
}

.bf-wordpress .bf-wrap .bf-principle__title {
  font-size: 19px !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  margin: 0 0 9px !important;
  color: #0c1620 !important;
}

.bf-wordpress .bf-wrap .bf-principle p {
  font-size: 14.5px !important;
  line-height: 1.55 !important;
  color: #5a6873 !important;
  margin: 0 !important;
}

.bf-wordpress .bf-wrap .bf-cta {
  padding: 0 40px 84px !important;
}

/* ── Home page hero: badge pill + dashboard mock (match index.html) ── */
.bf-wordpress .bf-wrap .bf-hero > div {
  min-width: 0 !important;
}

.bf-wordpress .bf-wrap .bf-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 9px !important;
  width: auto !important;
  max-width: max-content !important;
  background: #eafafb !important;
  border: 1px solid #cdeef1 !important;
  color: #0e8a96 !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
  padding: 6px 12px !important;
  border-radius: 100px !important;
  margin-bottom: 24px !important;
  line-height: 1.4 !important;
  text-transform: none !important;
}

.bf-wordpress .bf-wrap .bf-badge__dot {
  width: 7px !important;
  height: 7px !important;
  min-width: 7px !important;
  border-radius: 50% !important;
  background: #15b9c5 !important;
  display: inline-block !important;
  flex-shrink: 0 !important;
}

.bf-wordpress .bf-wrap .bf-mock {
  position: relative !important;
  width: 100% !important;
  min-width: 0 !important;
}

.bf-wordpress .bf-wrap .bf-mock__glow {
  position: absolute !important;
  inset: -12% -8% -8% 6% !important;
  background: radial-gradient(60% 60% at 70% 30%, rgba(31, 200, 210, 0.2), rgba(31, 200, 210, 0) 70%) !important;
  filter: blur(6px) !important;
  pointer-events: none !important;
}

.bf-wordpress .bf-wrap .bf-mock__card {
  position: relative !important;
  background: #fff !important;
  border: 1px solid #e7ecee !important;
  border-radius: 18px !important;
  box-shadow: 0 30px 60px -28px rgba(12, 22, 32, 0.32) !important;
  padding: 18px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.bf-wordpress .bf-wrap .bf-mock__header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-bottom: 16px !important;
}

.bf-wordpress .bf-wrap .bf-mock__title {
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  color: #0c1620 !important;
}

.bf-wordpress .bf-wrap .bf-mock__live {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 11.5px !important;
  font-weight: 600 !important;
  color: #13a36b !important;
  background: #e7f7ef !important;
  padding: 4px 9px !important;
  border-radius: 100px !important;
  white-space: nowrap !important;
}

.bf-wordpress .bf-wrap .bf-mock__live-dot {
  width: 6px !important;
  height: 6px !important;
  border-radius: 50% !important;
  background: #1fbf7e !important;
  display: inline-block !important;
}

.bf-wordpress .bf-wrap .bf-stat-box {
  background: #f6f9fa !important;
  border: 1px solid #edf1f3 !important;
  border-radius: 11px !important;
  padding: 11px 12px !important;
}

.bf-wordpress .bf-wrap .bf-stat-box--warn {
  background: #fff4ee !important;
  border-color: #f6dccd !important;
}

.bf-wordpress .bf-wrap .bf-stat-box__label {
  font-size: 11px !important;
  color: #8a96a1 !important;
  font-weight: 500 !important;
  margin-bottom: 5px !important;
}

.bf-wordpress .bf-wrap .bf-stat-box__value {
  font-size: 20px !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  color: #0c1620 !important;
}

.bf-wordpress .bf-wrap .bf-stat-box__value--teal {
  color: #12a9b6 !important;
}

.bf-wordpress .bf-wrap .bf-stat-box__value--orange {
  color: #d9743c !important;
}

.bf-wordpress .bf-wrap .bf-mock__chart {
  display: flex !important;
  align-items: flex-end !important;
  gap: 6px !important;
  height: 64px !important;
  margin-bottom: 16px !important;
  padding: 0 2px !important;
}

.bf-wordpress .bf-wrap .bf-mock__bar {
  flex: 1 !important;
  border-radius: 4px 4px 0 0 !important;
  min-height: 8px !important;
}

.bf-wordpress .bf-wrap .bf-mock__scripts {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
}

.bf-wordpress .bf-wrap .bf-script-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  background: #f8fafb !important;
  border: 1px solid #eef2f3 !important;
  border-radius: 9px !important;
  padding: 9px 11px !important;
}

.bf-wordpress .bf-wrap .bf-script-row--warn {
  background: #fff6f1 !important;
  border-color: #f6ddcf !important;
}

.bf-wordpress .bf-wrap .bf-script-row__name {
  font: 500 12px ui-monospace, SFMono-Regular, Menlo, monospace !important;
  color: #41505d !important;
}

.bf-wordpress .bf-wrap .bf-tag {
  font-size: 10.5px !important;
  font-weight: 600 !important;
  padding: 3px 8px !important;
  border-radius: 100px !important;
  white-space: nowrap !important;
}

.bf-wordpress .bf-wrap .bf-tag--ok {
  color: #12a9b6 !important;
  background: #e3f6f7 !important;
}

.bf-wordpress .bf-wrap .bf-tag--warn {
  color: #d9743c !important;
  background: #fbe7da !important;
}

.bf-wordpress .bf-wrap .bf-btn--dark {
  background: #0c1620 !important;
  color: #fff !important;
}

.bf-wordpress .bf-wrap .bf-btn--outline {
  background: #fff !important;
  color: #0c1620 !important;
  border: 1px solid #d7dee2 !important;
}

.bf-wordpress .bf-wrap .bf-btn--lg {
  font-size: 15.5px !important;
  padding: 15px 26px !important;
  border-radius: 10px !important;
}

/* Keep hero side-by-side on desktop */
@media (min-width: 901px) {
  .bf-wordpress .bf-wrap .bf-hero {
    display: grid !important;
    grid-template-columns: 1.05fr 0.95fr !important;
    gap: 48px !important;
    align-items: center !important;
  }
}

/* AI-Generated Code - 2026-07-02 - Claude Opus 4.6
   Blog archive cards — restore borders GP strips from article.post */
.bf-wordpress .bf-wrap .bf-blog-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 20px !important;
}

.bf-wordpress .bf-wrap .bf-blog-grid--related {
  grid-template-columns: repeat(3, 1fr) !important;
}

@media (max-width: 1024px) {
  .bf-wordpress .bf-wrap .bf-blog-grid,
  .bf-wordpress .bf-wrap .bf-blog-grid--related {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 768px) {
  .bf-wordpress .bf-wrap .bf-blog-grid,
  .bf-wordpress .bf-wrap .bf-blog-grid--related {
    grid-template-columns: 1fr !important;
  }
}

.bf-wordpress .bf-wrap .bf-blog-hero--center {
  text-align: center !important;
}

.bf-wordpress .bf-wrap .bf-blog-list {
  background: #f8fafb !important;
  border-top: 1px solid #eef2f3 !important;
  border-bottom: 1px solid #eef2f3 !important;
  padding: 36px 0 44px !important;
}

.bf-wordpress .bf-wrap .bf-blog-hero__count {
  color: #12a9b6 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  margin: 18px 0 0 !important;
}

.bf-wordpress .bf-wrap article.bf-blog-card.post {
  border: 1px solid #e7ecee !important;
  border-radius: 18px !important;
  background: #fff !important;
  overflow: hidden !important;
  box-shadow: none !important;
  transition: border-color 0.15s ease, box-shadow 0.15s ease !important;
}

.bf-wordpress .bf-wrap article.bf-blog-card.post:hover {
  border-color: #cdeef1 !important;
  box-shadow: 0 12px 36px -20px rgba(18, 169, 182, 0.25) !important;
}

.bf-wordpress .bf-wrap article.bf-blog-featured.post {
  border: 1px solid #cdeef1 !important;
  background: linear-gradient(135deg, #f5feff 0%, #ffffff 50%, #f8fafb 100%) !important;
  box-shadow: 0 16px 44px -28px rgba(18, 169, 182, 0.22) !important;
}

.bf-wordpress .bf-wrap .bf-blog-card .bf-blog-card__title {
  font-size: 18px !important;
  line-height: 1.25 !important;
  font-weight: 700 !important;
  color: #0c1620 !important;
  margin: 0 0 10px !important;
}

.bf-wordpress .bf-wrap .bf-blog-card .bf-blog-card__desc {
  font-size: 14.5px !important;
  line-height: 1.55 !important;
  color: #5a6873 !important;
  margin: 0 !important;
}

.bf-wordpress .bf-wrap .bf-blog-card .bf-blog-card__desc,
.bf-wordpress .bf-wrap .bf-blog-featured .bf-blog-featured__desc {
  margin-bottom: 0 !important;
}

.bf-wordpress .bf-wrap .bf-blog-featured .bf-blog-featured__title {
  font-size: clamp(26px, 3.5vw, 34px) !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;
  color: #0c1620 !important;
  margin: 0 0 12px !important;
}

.bf-wordpress .bf-wrap .bf-blog-hero__title {
  font-size: clamp(36px, 5vw, 52px) !important;
  line-height: 1.08 !important;
  font-weight: 700 !important;
  color: #0c1620 !important;
}

.bf-wordpress .bf-wrap .bf-blog-hero__desc {
  font-size: 17px !important;
  line-height: 1.6 !important;
  color: #51606e !important;
  margin: 14px auto 0 !important;
  max-width: 640px !important;
}
