/* Urban Web heading refinement — preserves semantic SEO hierarchy while reducing visual aggression */

/* The homepage's primary SEO headline remains the strongest heading. */
h1.hero-title-option-one {
  text-wrap: balance;
}

/* Inner-page H1s remain H1s for SEO, but are visually calmer and easier to scan. */
h1:not(.hero-title-option-one) {
  font-size: clamp(2rem, 4vw, 3.5rem) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.035em !important;
  max-width: 19ch;
  text-wrap: balance;
}

/* Long article titles need a slightly tighter ceiling. */
article h1:not(.hero-title-option-one),
.blog-post h1:not(.hero-title-option-one),
.post-hero h1:not(.hero-title-option-one) {
  font-size: clamp(1.9rem, 3.5vw, 3.15rem) !important;
  max-width: 24ch;
}

/* Major supporting section headings should support the page, not compete with its H1. */
main section > header > h2,
main section > h2,
main .split-band h2,
main .content-section h2 {
  font-size: clamp(1.65rem, 2.8vw, 2.65rem) !important;
  line-height: 1.12 !important;
  letter-spacing: -0.025em !important;
  text-wrap: balance;
}

/* Specifically calm the technology/platform statement on the homepage. */
main h2[data-uw-platform-heading],
main .uw-platform-heading {
  font-size: clamp(1.45rem, 2.25vw, 2.15rem) !important;
  line-height: 1.2 !important;
  max-width: 28ch;
}

@media (max-width: 700px) {
  h1:not(.hero-title-option-one) {
    font-size: clamp(1.85rem, 9vw, 2.55rem) !important;
    line-height: 1.1 !important;
    letter-spacing: -0.025em !important;
  }

  main section > header > h2,
  main section > h2,
  main .split-band h2,
  main .content-section h2 {
    font-size: clamp(1.45rem, 7vw, 2rem) !important;
  }

  main h2[data-uw-platform-heading],
  main .uw-platform-heading {
    font-size: clamp(1.25rem, 6vw, 1.65rem) !important;
  }
}
