.header-title {
  margin: 0;
  font: var(--font-title);
  letter-spacing: var(--font-title-spacing);
  display: flex;
  flex-wrap: wrap;
  column-gap: 1rem;
  row-gap: 0.5rem;
}
.header-description {
  display: block;
  margin: 0.5rem 0;
  font: var(--font-ui);
  color: var(--color-dim);

  &:empty {
    display: none;
  }

  & p {
    margin: 0;
  }
  & p:not(:first-child) {
    margin-top: 0.5rem;
  }

  a {
    color: var(--color-dim);

    & svg {
      width: 1em;
      height: 1em;
      vertical-align: middle;
    }

    &:hover {
      text-decoration: none;
    }
  }
}

.subheader {
  border-bottom: solid 1px var(--color-line);
  padding: 0.5rem 0;
  margin-top: var(--row-gap-normal);

  & h2 {
    margin: 0;
    font: var(--font-body-bold);
  }
}

/* Todo: move to other file? */
.body {
  padding: min(2rem, 5vw);
  color: var(--color-dim);
  font: var(--font-ui);
  border-radius: var(--border-radius);
  background-color: var(--color-input-bg);

  :is(h1, h2, h3, h4, h5, h6, strong) {
    font-weight: 600;
    color: var(--color-text);
  }
  :is(h1, h2) {
    border-bottom: solid 1px var(--color-line);
    padding-bottom: 0.25em;
  }

  > :first-child {
    margin-top: 0;
  }
  > :last-child {
    margin-bottom: 0;
  }
}
