/* ==========================================================================
   Become a Partner — Elementor-editable content (post 17). IDs pinned at
   build time; see who-we-are.css for rationale. .cbcc-pricing-* / .cbcc-card
   / .cbcc-btn rules are already global/unscoped and apply unchanged.
   ========================================================================== */

.elementor-element-3e7b693 { background: var(--c-dark); padding: 64px 0; border-bottom: 1px solid rgba(255,255,255,0.07); }
.elementor-element-3e7b693 .cbcc-eyebrow { color: var(--c-gold); margin-bottom: 12px; }
.elementor-element-3e7b693 .elementor-heading-title { font-family: var(--font-heading); font-size: 2.8rem; font-weight: 700; color: #fff; margin-bottom: 14px; line-height: 1.15; }
.elementor-element-3e7b693 .elementor-widget-text-editor:last-child p { font-size: 1.05rem; color: rgba(255,255,255,0.6); max-width: 600px; line-height: 1.8; margin: 0; }

.elementor-element-356b8f1 { background: #fff; padding: var(--section-pad) 0 0; }
.elementor-element-356b8f1 .elementor-heading-title {
  font-family: var(--font-heading); font-size: 2.4rem; font-weight: 700; color: var(--c-text); line-height: 1.2; margin: 0 0 52px;
}

.elementor-element-760e0c5 { background: #fff; padding: 8px 0 var(--section-pad); }
.elementor-element-760e0c5 > .elementor-container > .elementor-column > .elementor-widget-wrap { height: 100%; }
.elementor-element-760e0c5 .cbcc-pricing-card { height: 100%; }

.elementor-element-aa0bffe { background: var(--c-bg-alt); padding: var(--section-pad) 0 0; }
.elementor-element-aa0bffe .elementor-heading-title {
  font-family: var(--font-heading); font-size: 2.4rem; font-weight: 700; color: var(--c-text); line-height: 1.2; margin: 0 0 16px;
}
.elementor-element-aa0bffe .elementor-widget-text-editor:last-child p {
  font-size: 1.05rem; color: var(--c-muted); max-width: 620px; margin: 0 auto; line-height: 1.8;
}

.elementor-element-b23c4b8 { background: var(--c-bg-alt); padding: 8px 0 var(--section-pad); }
.elementor-element-b23c4b8 > .elementor-container > .elementor-column > .elementor-widget-wrap { height: 100%; }
.elementor-element-b23c4b8 .cbcc-pricing-card { height: 100%; }

.elementor-element-119f0db { background: var(--c-bg-alt); padding: 0 0 var(--section-pad); }

@media (max-width: 900px) {
  .elementor-element-760e0c5 > .elementor-container,
  .elementor-element-b23c4b8 > .elementor-container { flex-wrap: wrap; }
}

/* ---- Pricing cards: now native heading/text-editor/icon-list/button widgets per card (rebuilt Sep 17 2026) ---- */
.elementor-element-760e0c5 > .elementor-container > .elementor-column > .elementor-widget-wrap,
.elementor-element-b23c4b8 > .elementor-container > .elementor-column > .elementor-widget-wrap {
  height: 100%;
  background: var(--c-card);
  border: 1px solid var(--c-border);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-card);
  padding: 36px 28px 32px;
  position: relative;
  overflow: visible;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.elementor-element-cd112b4 > .elementor-widget-wrap,
.elementor-element-e29bd9d > .elementor-widget-wrap {
  background: var(--c-dark) !important;
  border-color: var(--c-primary) !important;
}
.elementor-element-cd112b4 .elementor-heading-title,
.elementor-element-e29bd9d .elementor-heading-title,
.elementor-element-cd112b4 .cbcc-pricing-card__amount,
.elementor-element-e29bd9d .cbcc-pricing-card__amount { color: #fff !important; }
.elementor-element-cd112b4 .elementor-widget-text-editor p,
.elementor-element-e29bd9d .elementor-widget-text-editor p,
.elementor-element-cd112b4 .cbcc-pricing-card__period,
.elementor-element-e29bd9d .cbcc-pricing-card__period { color: rgba(255,255,255,0.7) !important; }
.elementor-element-cd112b4 .elementor-icon-list-item,
.elementor-element-e29bd9d .elementor-icon-list-item { color: rgba(255,255,255,0.92) !important; }
/* The above sets color on the <li>, but Elementor's sitewide kit style
   (.elementor-widget-icon-list .elementor-icon-list-text { color: var(--e-global-color-secondary); })
   sets its OWN explicit color directly on the nested <span class="elementor-icon-list-text">
   that actually wraps the visible text -- a child's own explicit color always wins over
   an ancestor's, !important or not, since inheritance never applies once a value is set
   directly on the element. That's why the li-level override above never visibly changed
   anything. Overriding the actual text span here instead. */
.elementor-element-cd112b4 .elementor-icon-list-text,
.elementor-element-e29bd9d .elementor-icon-list-text { color: rgba(255,255,255,0.92) !important; }
.elementor-element-cd112b4 .elementor-icon-list-icon i,
.elementor-element-e29bd9d .elementor-icon-list-icon i,
.elementor-element-cd112b4 .elementor-icon-list-icon svg,
.elementor-element-e29bd9d .elementor-icon-list-icon svg { color: var(--c-gold) !important; fill: var(--c-gold) !important; }

.elementor-element-760e0c5 .cbcc-pricing-card__badge,
.elementor-element-b23c4b8 .cbcc-pricing-card__badge {
  position: absolute; top: -14px; left: 50%; transform: translateX(-50%);
  background: var(--c-primary); color: #fff; font-size: .6rem; font-weight: 700; letter-spacing: .1em;
  text-transform: uppercase; padding: 5px 16px; border-radius: var(--radius-pill); white-space: nowrap; z-index: 1;
}

.elementor-element-760e0c5 .elementor-heading-title,
.elementor-element-b23c4b8 .elementor-heading-title {
  font-size: 1.15rem; color: var(--c-text); margin: 0 0 6px;
}
.elementor-element-760e0c5 .elementor-widget-text-editor p,
.elementor-element-b23c4b8 .elementor-widget-text-editor p {
  font-size: .88rem; color: var(--c-muted); line-height: 1.6; margin: 0;
}
.elementor-element-760e0c5 .cbcc-pricing-card__price,
.elementor-element-b23c4b8 .cbcc-pricing-card__price {
  display: flex; align-items: baseline; gap: 4px; margin: 10px 0 4px;
}
.elementor-element-760e0c5 .cbcc-pricing-card__amount,
.elementor-element-b23c4b8 .cbcc-pricing-card__amount {
  font-family: var(--font-heading); font-size: 2.6rem; font-weight: 700; color: var(--c-text); line-height: 1;
}
.elementor-element-760e0c5 .cbcc-pricing-card__period,
.elementor-element-b23c4b8 .cbcc-pricing-card__period { font-size: .9rem; color: var(--c-muted); }

.elementor-element-760e0c5 .elementor-icon-list-items,
.elementor-element-b23c4b8 .elementor-icon-list-items { display: flex; flex-direction: column; gap: 10px; flex: 1; margin: 4px 0 20px; }
.elementor-element-760e0c5 .elementor-icon-list-item,
.elementor-element-b23c4b8 .elementor-icon-list-item { font-size: .88rem; color: var(--c-muted); align-items: flex-start; gap: 8px; line-height: 1.5; }
.elementor-element-760e0c5 .elementor-icon-list-icon,
.elementor-element-b23c4b8 .elementor-icon-list-icon { margin-top: 3px; }
.elementor-element-760e0c5 .elementor-icon-list-icon i,
.elementor-element-b23c4b8 .elementor-icon-list-icon i,
.elementor-element-760e0c5 .elementor-icon-list-icon svg,
.elementor-element-b23c4b8 .elementor-icon-list-icon svg { color: var(--c-green) !important; fill: var(--c-green) !important; font-size: .75rem; }

.elementor-element-760e0c5 .elementor-widget-button,
.elementor-element-b23c4b8 .elementor-widget-button { margin-top: auto; padding-top: 8px !important; }
.elementor-element-760e0c5 .elementor-button,
.elementor-element-b23c4b8 .elementor-button { font-weight: 600; padding: 14px 20px; border-radius: 5px; font-size: .95rem; width: 100%; }

.elementor-element-c4e1cb2 .elementor-button, .elementor-element-3aff703 .elementor-button,
.elementor-element-fca62a7 .elementor-button, .elementor-element-94104c5 .elementor-button {
  background: transparent; color: var(--c-primary); border: 1.5px solid var(--c-primary);
}
.elementor-element-c4e1cb2 .elementor-button:hover, .elementor-element-3aff703 .elementor-button:hover,
.elementor-element-fca62a7 .elementor-button:hover, .elementor-element-94104c5 .elementor-button:hover { background: var(--c-primary); color: #fff; }

.elementor-element-3769e06 .elementor-button, .elementor-element-9757415 .elementor-button {
  background: var(--c-primary); color: #fff; border: 1.5px solid var(--c-primary);
}
.elementor-element-3769e06 .elementor-button:hover, .elementor-element-9757415 .elementor-button:hover {
  background: var(--c-primary-dark); border-color: var(--c-primary-dark); color: #fff;
}

/* ---- "Featured card" staggered prominence: side cards ~10% smaller, middle card larger + elevated (added per client request Sep 17 2026) ---- */
.elementor-element-1a9af5a > .elementor-widget-wrap,
.elementor-element-0e13a9f > .elementor-widget-wrap,
.elementor-element-d17fb2c > .elementor-widget-wrap,
.elementor-element-2ac571c > .elementor-widget-wrap {
  transform: scale(0.9);
}
.elementor-element-cd112b4 > .elementor-widget-wrap,
.elementor-element-e29bd9d > .elementor-widget-wrap {
  transform: scale(1.08);
  position: relative;
  z-index: 2;
  box-shadow: 0 24px 48px rgba(0,0,0,0.28);
}
