.kit.page-intro {
  color: rgba(var(--color-text));
}

/* Contained intro centres on the root; the full-bleed variant paints the band edge to edge and
   centres its content inside the inner page-width wrap (which also carries the spacing controls). */
.kit.page-intro:not(.page-intro--full-bleed),
.page-intro__inner {
  text-align: center;
}

.kit.page-intro--full-bleed {
  background-color: rgba(var(--color-background));
}

.page-intro__glyph {
  font-size: var(--page-intro-glyph-size, 44px);
  line-height: 1;
  margin-bottom: var(--page-intro-glyph-gap, 14px);
  color: rgba(var(--color-highlight));
}

.page-intro--glyph-accent .page-intro__glyph {
  color: rgba(var(--color-button-background));
}

.page-intro__eyebrow {
  font-size: var(--page-intro-eyebrow-size, 12.5px);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(var(--color-button-background));
  font-weight: 700;
  margin-bottom: var(--page-intro-eyebrow-gap, 16px);
}

.kit .page-intro__heading {
  font-family: var(--kit-font-display);
  font-weight: var(--page-intro-heading-weight, 700);
  font-size: clamp(
    var(--page-intro-heading-min, 38px),
    var(--page-intro-heading-scale, 5vw),
    var(--page-intro-heading-max, 68px)
  );
  letter-spacing: -0.03em;
  line-height: 1;
  margin: 0 0 18px;
}

.page-intro__text {
  font-size: var(--page-intro-text-size, 17px);
  line-height: var(--page-intro-text-line-height, 1.55);
  color: rgba(var(--color-light-text));
  max-width: var(--page-intro-text-max-width, 32em);
  margin: 0 auto;
}

/* Inverse tone: on a saturated band the eyebrow and copy are softened text colour, links underlined. */
.page-intro--tone-inverse .page-intro__eyebrow {
  color: rgba(var(--color-text), 0.8);
}

.page-intro--tone-inverse .page-intro__text {
  color: rgba(var(--color-text), 0.9);
}

.kit.page-intro--tone-inverse .page-intro__text a {
  color: rgba(var(--color-text));
  text-decoration: underline;
}

.page-intro__chips {
  display: flex;
  gap: 10px;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 32px;
}

/* Optional sibling chip band: the chip row renders as its own root band below the intro. */
.kit.page-intro__chip-band {
  display: flex;
  gap: 10px;
  justify-content: center;
  flex-wrap: wrap;
  color: rgba(var(--color-text));
}

.kit .page-intro__chip {
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(var(--color-entry-line), 0.1);
  border-radius: 999px;
  padding: 9px 18px;
  font-size: 13.5px;
  font-weight: 600;
  color: rgba(var(--color-light-text));
  transition:
    transform 0.22s var(--kit-ease),
    box-shadow 0.22s ease,
    border-color 0.22s ease,
    background-color 0.22s ease;
}

.kit .page-intro__chip--active {
  border: 0;
  background: rgba(var(--color-highlight));
  color: rgba(var(--color-button-text));
  font-weight: 700;
}

@media (hover: hover) and (pointer: fine) {
  .kit .page-intro__chip:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 16px -12px rgba(var(--kit-shadow-tint), 0.28);
  }
}
