/* Interior-page hero rhythm.
   The homepage remains its own editorial/live composition. Interior routes share
   a restrained opening cadence even when their content model differs. */
:root {
  --interior-hero-title: clamp(2rem, 3.6vw, 3rem);
  --interior-hero-pad-top: 1.15rem;
  --interior-hero-pad-bottom: 1.15rem;
}

/* Standard SOR hero family: Playoff and SOR vs Polls. Preserve the existing
   gold/blue rule while giving both pages the same footprint and title scale. */
.rankings-hero:not(.rankings-hero-compact) {
  padding-top: var(--interior-hero-pad-top);
  padding-bottom: var(--interior-hero-pad-bottom);
}

.rankings-hero:not(.rankings-hero-compact) h1 {
  font-size: var(--interior-hero-title);
  line-height: 1.04;
}

.poll-bias-hero.rankings-hero:not(.rankings-hero-compact),
.poll-bias-hero.rankings-hero:not(.rankings-hero-compact) h1 {
  /* Deliberately inherit the shared interior rhythm rather than introducing
     a separate utility-page scale. */
}

/* Rooting Guide is rendered by the fan-tool surface rather than rankings-hero.
   Match the same opening cadence and remove the former oversized/loose feel. */
.fan-tool-heading {
  padding-top: var(--interior-hero-pad-top);
  padding-bottom: var(--interior-hero-pad-bottom);
}

.fan-tool-heading h1 {
  font-size: var(--interior-hero-title);
  line-height: 1.04;
  margin-block: .35rem .65rem;
}

.fan-tool-heading .fan-tool-lede {
  margin-bottom: .75rem;
}

/* Methodology uses the generic page-heading component. Scope this only to the
   methodology route so ordinary page headings elsewhere keep their behavior. */
.methodology > .page-heading {
  padding-top: var(--interior-hero-pad-top);
  padding-bottom: var(--interior-hero-pad-bottom);
}

.methodology > .page-heading h1 {
  font-size: var(--interior-hero-title);
  line-height: 1.04;
}

.methodology > .page-heading p {
  margin-bottom: 0;
}

/* Intelligence has a richer two-column hero, but it should enter and exit on
   the same cadence as the other interior routes. Its copy can wrap naturally. */
.si-hero {
  padding-top: var(--interior-hero-pad-top);
  padding-bottom: var(--interior-hero-pad-bottom);
}

.si-hero h1 {
  font-size: var(--interior-hero-title);
  line-height: 1.02;
}

@media (max-width: 760px) {
  :root {
    --interior-hero-title: clamp(1.85rem, 8vw, 2.4rem);
    --interior-hero-pad-top: .85rem;
    --interior-hero-pad-bottom: .9rem;
  }

  .fan-tool-heading h1,
  .methodology > .page-heading h1,
  .rankings-hero:not(.rankings-hero-compact) h1,
  .si-hero h1 {
    font-size: var(--interior-hero-title);
  }
}
