.form-privacy {
  margin: 22px 0 0;
  padding-top: 16px;
  border-top: 1px solid #cad2d9;
  color: #546272;
  font-size: .82rem;
}
.form-privacy a { font-weight: 700; text-underline-offset: 3px; }

/* Let grid/flex children shrink to the viewport instead of their longest word.
   Wrap real content; do not conceal layout defects with overflow-x:hidden. */
:where(.split, .contact-grid, .leadership, .feature-grid, .category-grid,
       .footer-grid, .credential-grid, .leadership-scale, .field-panel,
       .cards, .steps li, .result-note) > * { min-width: 0; }
:where(h1, h2, h3, p, a, label, summary) { overflow-wrap: anywhere; }

/* Preserve desktop typography while making long headings legible on phones. */
@media (max-width: 640px) {
  .hero {
    display: block;
    height: auto;
    min-height: 0;
    padding-top: 150px;
  }
  .hero .signal { position: relative; margin-top: 48px; }
  .hero h1 { font-size: clamp(3.3rem, 13vw, 4.25rem); }
  .page-hero h1 { font-size: clamp(2rem, 8.2vw, 3.3rem); line-height: 1.06; }
  h2, .page-section h2, .field-panel h2, .leadership h2 {
    font-size: clamp(2rem, 9.5vw, 3.2rem);
    line-height: 1.06;
  }
}
