/* components/smbs.css — page-scope CSS for /smbs (Who we serve · SMBs, Figma 17032:165970).
   Loaded page-gated via inc/kadence-smbs.php (template page-smbs, EN 8648 / AR 8649).

   REUSE NOTE: /smbs is the same "Who we serve" layout as /enterprise, so its sections reuse the
   Enterprise frame-scoped kit classes directly (enterprise.css is also enqueued here):
   .rp-ent-intro (pain), .rp-ent-feature/.rp-ent-expertise (feature rows), .rp-ent-features
   (bordered tile 6-grid), .rp-ent-cta (icon-bar CTA). This file therefore only carries the
   2-col HERO, which on Enterprise lived in enterprise-hero.css scoped under .rp-enterprise — here
   it's frame-scoped under .rp-smbs (same .rp-ent-hero markup/component, no Enterprise risk).
   (Future cleanup: promote .rp-ent-hero + .rp-ent-* to a shared "who-we-serve" namespace.)
   Wrapper: .rp-smbs (parts/smbs-body.html). */

/* ── HERO — 2-col: pills + h1 + sub + 2 CTAs LEFT, UI-mock RIGHT (mirrors enterprise-hero.css).
   Gradient matched to the canonical lavender so the cropped hero-onboarding tile blends edge-free
   (tile corners sampled #F5F7FF top → #E4EBFE bottom). */
.rp-smbs .rp-ent-hero { background: linear-gradient(180deg, #F6F8FF 0%, #E6EDFE 100%); padding: 72px 24px 80px; overflow: hidden; }
/* Feature-2 light band = canonical #F0F4FE (not the kit --blue #EEF3FF) so the feat-onboarding-time
   tile (corners #F0F4FE) blends edge-free. */
.rp-smbs .rp-feature-split--blue { background: #F0F4FE; }
.rp-smbs .rp-ent-hero__inner { max-width: 1340px; margin: 0 auto; display: flex; align-items: center; gap: 48px; }
.rp-smbs .rp-ent-hero__text { flex: 1 0 560px; max-width: 624px; min-width: 0; }
.rp-smbs .rp-ent-hero__media { flex: 0 1 560px; min-width: 0; display: flex; justify-content: flex-end; }
.rp-smbs .rp-ent-hero__img { width: 560px; max-width: 100%; height: auto; }

.rp-smbs .rp-ent-hero__pills { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 24px; }
.rp-smbs .rp-ent-hero__pill { display: inline-flex; align-items: center; gap: 8px; background: #fff; border-radius: 40px; padding: 8px 12px; font-family: Mulish, sans-serif; font-weight: 700; font-size: 12px; line-height: 20px; color: #044d80; box-shadow: 0 1px 3px rgba(2,17,67,0.06); }
.rp-smbs .rp-ent-hero__pill img { width: 20px; height: 20px; display: block; }

.rp-smbs .rp-ent-hero__h1 { font-family: Mulish, sans-serif; font-weight: 700; font-size: 56px; line-height: 64px; color: #021143; margin: 0 0 24px; }
.rp-smbs .rp-ent-hero__h1 span { color: #114ef7; }
.rp-smbs .rp-ent-hero__sub { font-family: Mulish, sans-serif; font-weight: 400; font-size: 18px; line-height: 27.9px; color: #4a5878; margin: 0 0 32px; max-width: 560px; }

.rp-smbs .rp-ent-hero__ctas { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; }
.rp-smbs .rp-ent-hero__cta { display: inline-flex; align-items: center; justify-content: center; height: 56px; padding: 16px 24px; font-family: Mulish, sans-serif; font-weight: 700; font-size: 14px; line-height: 22px; text-decoration: none; white-space: nowrap; }
.rp-smbs .rp-ent-hero__cta--primary { background: #114ef7; color: #fff; border-radius: 4px; }
.rp-smbs .rp-ent-hero__cta--primary:hover { background: #0d3fd0; }
.rp-smbs .rp-ent-hero__cta--ghost { background: #fff; color: #0e1e36; border: 1px solid #e3e8f2; border-radius: 10px; font-size: 15px; }
.rp-smbs .rp-ent-hero__cta--ghost:hover { border-color: #114ef7; color: #114ef7; }

@media (max-width: 991px) {
  .rp-smbs .rp-ent-hero__inner { flex-direction: column; text-align: center; gap: 40px; }
  .rp-smbs .rp-ent-hero__text { flex: 1 1 auto; max-width: 640px; }
  .rp-smbs .rp-ent-hero__media { flex: 1 1 auto; justify-content: center; }
  .rp-smbs .rp-ent-hero__img { width: 480px; }
  .rp-smbs .rp-ent-hero__pills, .rp-smbs .rp-ent-hero__ctas { justify-content: center; }
  .rp-smbs .rp-ent-hero__sub { margin-left: auto; margin-right: auto; }
}
@media (max-width: 560px) {
  .rp-smbs .rp-ent-hero__h1 { font-size: 38px; line-height: 46px; }
  .rp-smbs .rp-ent-hero__img { width: 100%; }
  /* Adil QA (2026-07-15): the 2 hero CTAs must be HORIZONTAL (side-by-side) on mobile — the earlier
     column stack was the inverse of the ticket. Put them on ONE row of two equal halves that fit 342px.
     figma-fixes-b.css sets `.rp-smbs .rp-ent-hero__cta{padding:15px 32px!important;font-size:16.25px
     !important;height:57px!important}` UNCONDITIONALLY, so we must beat it with higher specificity
     (`.rp-ent-hero__ctas .rp-ent-hero__cta`, 0-3-0) + !important, and shrink padding/font so the longest
     label ("Book A 15-Min Demo") fits a ~166px half without overflow. Explicit width (not flex-grow) is
     used so the sizing is deterministic. */
  .rp-smbs .rp-ent-hero__ctas { flex-direction: row; flex-wrap: nowrap; align-items: stretch; justify-content: center; gap: 10px; }
  .rp-smbs .rp-ent-hero__ctas .rp-ent-hero__cta { flex: 0 0 auto !important; width: calc(50% - 5px) !important; min-width: 0 !important; max-width: none !important; padding: 12px 6px !important; font-size: 13px !important; }
}

/* RTL: mirror the 2-col hero — natural RTL row puts media on the LEFT, text on the RIGHT
   (Mohamed 2026-07-11: EN = image right, AR = image left). Do NOT force row-reverse. */
[dir="rtl"] .rp-smbs .rp-ent-hero__inner { flex-direction: row; } /* desktop only; the ≤991 media rule below re-stacks to column */
[dir="rtl"] .rp-smbs .rp-ent-hero__media { justify-content: flex-start; }
[dir="rtl"] .rp-smbs .rp-ent-hero__text { text-align: right; } /* AR hero text was left-aligned (A-K1) */
@media (max-width: 991px) { [dir="rtl"] .rp-smbs .rp-ent-hero__inner { flex-direction: column; } }
