.rich-text {
  max-inline-size: 48rem;
}

.rich-text blockquote {
  margin-inline: 0;
  padding-inline-start: 1rem;
  border-inline-start: 4px solid var(--nnw-accent, #b5813a);
  color: var(--nnw-muted, #7e6870);
}

.rich-text h2,
.rich-text h3 {
  font-family: var(--nnw-heading-font, var(--nnw-body-font, sans-serif));
}

.rich-text a {
  color: var(--nnw-primary, #8e2035);
}

.rich-text img {
  max-inline-size: 100%;
  block-size: auto;
}

/* Tables (scores, points, fees): clear lines, a tinted header and rows that alternate. */
.rich-text table {
  inline-size: 100%;
  margin-block: 1.25rem;
  border-collapse: collapse;
  font-size: 0.95rem;
  font-variant-numeric: tabular-nums;
}

.rich-text caption {
  padding-block-end: 0.5rem;
  font-weight: 700;
  text-align: start;
}

.rich-text th,
.rich-text td {
  border: 1px solid var(--nnw-border, #e6d9dc);
  padding-block: 0.6rem;
  padding-inline: 0.8rem;
  text-align: start;
  vertical-align: top;
}

.rich-text th {
  background: color-mix(in srgb, var(--nnw-primary, #8e2035) 9%, var(--nnw-surface, #fff));
  font-weight: 700;
}

.rich-text tbody tr:nth-child(even) {
  background: color-mix(in srgb, var(--nnw-primary, #8e2035) 3%, var(--nnw-surface, #fff));
}

@media (max-width: 40rem) {
  .rich-text table {
    display: block;
    overflow-x: auto;
  }
}
