/* fv-compat-early.css — generated, loads after elementor-frontend, BEFORE theme css.
   KIT WIDGET SPACING: legacy .elementor-widget:not(:last-child) got
   margin-block-end: var(--kit-widget-spacing, 20px) with the kit var at 20px;
   containers zero both the margin and the var (.e-con .elementor-widget…),
   which also guts the calc() inside explicit widget margins
   (margin: 52px 0 calc(var(--kit-widget-spacing,0px) + 6px) 0 — faqs -459px).
   Restore ONLY inside former columns (.fvcol, converter-tagged): native loop
   cards nested in converted trees keep container gap semantics. Theme rules
   that zero the var for specific sections still win — they load later.
   :where(:has(~ .elementor-widget)) — not :not(:last-child) — because converted
   containers can append non-widget children (background overlays) after the
   final widget, which made legacy last-children gain a phantom 20px (hero
   sections +20, 2026-08-08); zero-spec wrapper keeps the rule at (0,3,0).
   The VAR goes to every widget (explicit calc() margins consume it in legacy
   even on custom-width widgets); the standalone MARGIN skips absolute +
   custom-width widgets, whose kit margin legacy zeroes
   (.elementor-widget:not(:last-child).elementor-widget__width-initial etc). */
.fvcol.e-con > .elementor-widget:where(:has(~ .elementor-widget)) {
  --kit-widget-spacing: 20px;
}
.fvcol.e-con > .elementor-widget:where(:has(~ .elementor-widget)):where(
  :not(.elementor-absolute):not(.elementor-widget__width-auto):not(.elementor-widget__width-initial)
  ) {
  margin-block-end: var(--kit-widget-spacing, 20px);
}
