/* Internal-page typography follows the approved homepage atelier treatment.
   Isolated stylesheet: no homepage, motion, layout or product-copy changes. */
body {
  --content-heading-ink: #f7f2ea;
  --content-heading-accent: #c8b799;
}

:is(.content-hero, .legal-hero) h1 {
  color: var(--content-heading-ink);
  font-weight: 550;
  font-size: clamp(54px, 7.5vw, 108px);
  letter-spacing: -.065em;
  line-height: .98;
}

:is(.content-band, .content-final-cta) h2 {
  color: var(--content-heading-ink);
  font-weight: 550;
  font-size: clamp(38px, 5.5vw, 72px);
  letter-spacing: -.065em;
  line-height: .98;
}

:is(.content-hero, .legal-hero) h1 em,
:is(.content-band, .content-final-cta) h2 em {
  color: var(--content-heading-accent);
  font-family: Georgia, serif;
  font-size: 1.02em;
  font-style: normal;
  font-weight: 400;
  letter-spacing: -.055em;
}

.content-band h2 em {
  display: block;
  margin-top: .04em;
  line-height: .94;
}

.content-page :is(.content-eyebrow, .content-step),
.legal-hero .eyebrow {
  color: #c9bda8;
  font-size: 10px;
  font-weight: 650;
  letter-spacing: .22em;
}

.content-card h3,
.legal-content h2 {
  font-weight: 550;
  letter-spacing: -.035em;
}

.content-plan-card__top p {
  margin-bottom: 40px;
  color: var(--content-heading-ink);
  font-size: 29px;
  font-weight: 500;
  letter-spacing: -.03em;
  text-transform: none;
}

.content-plan-card__top strong {
  font-weight: 550;
  letter-spacing: -.055em;
}

.content-plan-card__top strong small {
  font-weight: 600;
  letter-spacing: 0;
}

@media (max-width: 720px) {
  :is(.content-hero, .legal-hero) h1 {
    font-size: clamp(42px, 11.5vw, 70px);
  }

  :is(.content-band, .content-final-cta) h2 {
    font-size: clamp(32px, 8.5vw, 46px);
    letter-spacing: -.055em;
    line-height: 1.04;
  }
}
