.hero-title {
  margin: 0;
  color: var(--color-dark-navy);
  font-family: var(--font-serif);
  font-weight: 400;
  letter-spacing: 0;
  text-align: center;
  text-transform: uppercase;
}

.hero-title__kicker,
.hero-title__main,
.hero-title__room,
.hero-title__subtitle {
  display: block;
}

.hero-title__kicker {
  font-size: var(--font-size-hero-kicker);
  line-height: 0.9;
}

.hero-title__main {
  font-size: var(--font-size-hero-main);
  line-height: 0.86;
}

.hero-title__room {
  margin-top: -0.05em;
  color: var(--color-burgundy);
  font-size: var(--font-size-hero-room);
  line-height: 0.84;
}

.hero-title__subtitle {
  margin-top: clamp(0.6rem, 1.4vw, 1.2rem);
  font-family: var(--font-sans);
  font-size: clamp(1rem, 2.2vw, 2.1rem);
  font-weight: 400;
  letter-spacing: 0.16em;
  line-height: 1.2;
}

.h1 {
  margin: 0 0 1rem;
  font-family: var(--font-serif);
  font-size: var(--font-size-h1);
  font-weight: 400;
  line-height: 0.92;
  letter-spacing: 0;
  text-wrap: pretty;
}

.h2 {
  margin: 0 0 1rem;
  font-family: var(--font-serif);
  font-size: var(--font-size-h2);
  font-weight: 400;
  line-height: 0.98;
  letter-spacing: 0;
  text-wrap: pretty;
}

.eyebrow {
  margin-bottom: 0.9rem;
  color: var(--color-muted);
  font: var(--font-size-body-sm) / 1.2 var(--font-sans);
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

p {
  margin: 0 0 1em;
  max-width: 66ch;
  font-size: var(--font-size-body);
  line-height: 1.65;
}

.menu-item h3,
.heritage-panel h3 {
  margin: 0;
  font-family: var(--font-serif);
  font-size: var(--font-size-h3);
  font-weight: 400;
  line-height: 1.1;
}

.menu-item p,
.heritage-panel p {
  margin: 0.35rem 0 0;
}

.menu-item strong {
  font-variant-numeric: tabular-nums;
}
