/* ===========================================================
   Full justification for body copy.
   Only targets <p> (and list/quote text) that are NOT short
   mono labels/badges/formulas — those stay as-is since forcing
   justify on a one-line label does nothing useful and can look
   odd on short fragments. Headings (h1-h4) are untouched.

   "text-justify:inter-word" + "hyphens:auto" + "text-align-last:left"
   is what keeps the right edge flush WITHOUT the ugly big gaps
   that plain justify can create between words on narrow columns:
   hyphenation lets long words break instead of forcing huge gaps,
   and the last line of each paragraph stays left-aligned instead
   of being stretched edge-to-edge.
   =========================================================== */

main p:not(.label-mono):not(.font-mono):not(.text-center),
main li,
blockquote{
  text-align:justify;
  text-align-last:left;
  text-justify:inter-word;
  hyphens:auto;
  -webkit-hyphens:auto;
  -ms-hyphens:auto;
  word-spacing:normal;
  letter-spacing:normal;
  overflow-wrap:break-word;
}

/* ===========================================================
   Balanced headings.
   Prevents the classic "title wraps to a lonely 2-word second
   line" when the container has room to distribute words more
   evenly across both lines. Scoped to headings and the pill
   nav labels only — NOT applied to justified body paragraphs,
   where "balance" isn't meant for long-form text (browsers cap
   it around ~6 lines and it can fight with justification).
   Unsupported browsers just ignore the property, no fallback
   needed.
   =========================================================== */
main h1,main h2,main h3,main h4,
.hero-nav-link,
figcaption p:not(.label-mono){
  text-wrap:balance;
}
