/* Terms of Service (21467) — same velp-lg-content chunking as Privacy
   Policy (3). Rule order matters: the intro rule must come after the
   margin-zero rule (equal specificity, later wins). */

/* Baseline reality (probed on the original render): body paragraphs are
   16px #757575/1.75 — keydesign's global p rule won there too. Our widget
   wrappers would inherit the container's 14.5px instead, so force the
   baseline size via the theme's responsive variable (16/15/14 by
   breakpoint); keydesign's wrapper color/line-height already match. */
.e-con.velp-lg-content .elementor-widget-text-editor { font-size: var(--font-size-paragraphs); }
.e-con.velp-lg-content .elementor-widget-text-editor a { color: var(--vel-navy); font-weight: 700; }

/* Widgets are flex items, so a widget's trailing <p> bottom margin (14px)
   no longer collapses into the next widget's <h2> top margin (34px) the
   way adjacent siblings collapsed in the original block flow; drop it. */
.e-con.velp-lg-content .elementor-widget p:last-child { margin-bottom: 0; }

/* ...but the very last paragraph of the body keeps its 14px in the
   baseline (the class rule outranks the global p:last-child there). */
.e-con.velp-lg-content > .elementor-widget:last-child p:last-child { margin-bottom: 14px; }


/* Intro paragraph (was `.velp-lg-content > p:first-child`, which cannot
   match across the widget wrapper). */
.e-con.velp-lg-content > .elementor-widget:first-child p {
	font-size: 15.5px;
	line-height: 1.75;
	color: var(--vel-navy);
	margin-bottom: 32px; /* margin reaches the next paragraph widget as in the original flow */
}

/* Every section widget's <h2> is now :first-child of its own wrapper and
   would wrongly match the original `h2:first-child { margin-top: 0 }`.
   No real h2 was first in the original flow (intro <p>s precede them all),
   so restore the standard 34px. */
.e-con.velp-lg-content h2:first-child { margin-top: 34px; }
