:root {
  --font-family: 'Lucida Sans Typewriter', 'Lucida Console', monospace;
  --font-size: 12pt;
  --line-height: calc(var(--font-size) * 1.25);
}

.Root {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  min-height: 100%;
  font-size: var(--font-size);
  font-family: var(--font-family);
  line-height: var(--line-height);
  background: no-repeat url('texture.svg'), var(--bg0);
  color: var(--fg0);
}

.Root__inner {
  margin: 0;
  min-height: 100vh;
}

.Main {
  display: flex;
  margin: auto;
  max-width: 72ch;
  flex-flow: column;
  min-height: 100vh;
}

.Header {
  margin: calc(var(--line-height) * 3) 0 var(--line-height);
}

.Article {
  flex: 1;
}

.Footer {
  margin: var(--line-height) 0 calc(var(--line-height) * 2);
  color: var(--fg4);
}

.Header__title {
  font: inherit;
  color: var(--green);
  margin: 0;
  padding: 0;
}

a {
  color: var(--blue);
}
a:visited {
  color: var(--purple);
}

p {
  margin: 0;
}

.Terms {
  display: flex;
  flex-flow: row wrap;
  padding: 0;
}
.Terms__item {
  list-style: none inside;
  margin-right: 1ch;
}
.Terms__item ~ .Terms__item::before {
  content: "|";
  margin-right: 1ch;
}
