/* =========================================================================
   FunLida Rhythm Layer — Stage 2
   Loads after funlida-system.css. Vertical rhythm + alignment rule.

   Measured baseline before this file: inner containers carried 72px top and
   bottom on most bands, but fl-cta ran 16/8 and fl-hiw ran 32/72. The bands
   themselves are flush (0px gaps) and content-height driven — there are no
   fixed heights to unwind, so this is additive and safe.
   ========================================================================= */

/* --- 1. ONE RHYTHM ------------------------------------------------------- */
.fl-section > .e-con-inner,
.fl-section > .e-con,
.elementor-element.fl-section > .e-con-inner {
  padding-top:    var(--fl-space-section-y);
  padding-bottom: var(--fl-space-section-y);
}

/* "Ready to Start?" was the outlier at 16px/8px — the reason that band read
   as unfinished. It now sits on the same rhythm as everything else. */
.fl-section.fl-cta > .e-con-inner,
.elementor-element.fl-cta > .e-con-inner {
  padding-top:    var(--fl-space-section-y);
  padding-bottom: var(--fl-space-section-y);
}


/* --- 2. ALIGNMENT RULE ---------------------------------------------------
   Section headers are centred. The two intentional two-column splits
   (fl-why, fl-class) keep their left-aligned headers — that asymmetry is
   deliberate composition, not drift. Everything else was arbitrary.      */
.fl-section:not(.fl-why):not(.fl-class) .fl-h2,
.fl-section:not(.fl-why):not(.fl-class) .fl-eyebrow,
.fl-section.fl-explore .fl-explore-h2,
.fl-section.fl-cta .fl-cta-h2 {
  text-align: center;
}

.fl-section.fl-explore .fl-explore-intro,
.fl-section.fl-cta .fl-cta-sub {
  text-align: center;
  margin-inline: auto;
}


/* --- 3. TINT BANDING -----------------------------------------------------
   With the ground now off-white, alternating bands do the work the flat
   pink field used to fail at: separating sections without borders.       */
.fl-section.fl-hiw,
.fl-section.fl-packages,
.fl-section.fl-contact {
  background-color: var(--fl-tint-50);
}


/* --- 4. DEAD CONTAINERS --------------------------------------------------
   Three empty boxes (400x456, 400x416, 400x400) held open space with no
   content. Collapsed rather than deleted, so the builders stay untouched
   and this is reversible from CSS alone. */
.fl-ri:empty,
.fl-li:empty {
  display: none;
}


/* --- 5. BODY TYPE NORMALISATION ------------------------------------------
   Deferred here from Stage 1 because it moves layout. Six live body sizes
   (13 / 13.5 / 14 / 15 / 16 / 25px) collapse to three tokens.            */
.fl-section p,
.fl-section li {
  line-height: var(--fl-leading-body);
}

.fl-meta, .fl-caption, .fl-badge, .fl-pack-note, .fl-tst-role {
  font-size: var(--fl-text-sm);
}
