:root {
  --primary-hue: 130deg;
  --primary-colour: oklch(80% 50% var(--primary-hue));
}

body {
  margin: 0;
  padding: 0;
  font-family: Roboto, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif, sans-serif;
  background-color: var(--primary-colour);
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: column;
}

* {
  box-sizing: border-box;
}

header {
  height: 8rem;
  align-self: stretch;
}

main {
  /* twice to be backwards compatible */
  min-height: calc(100vh - 16rem);
  min-height: calc(100dvh - 16rem);
  display: flex;
  align-items: center;
}

nav {
  height: 8rem;
  display: flex;
  align-items: center;
}

nav a {
  color: black;
}

nav a:hover {
  color: rgba(0, 0, 0, 0.75);
}

footer {
  /*min-height: 10rem;*/
  padding-bottom: 0.5rem;
}

footer p {
  margin: 0;
  text-align: center;
  padding-bottom: 1rem;
}

header h1 {
  font-size: 1rem;
  text-align: left;
  width: 100%;
  padding-left: 1em;
}

header h1 a {
  color: black;
  text-decoration: none;
}

header h1 a:hover {
  text-decoration: underline;
}


main dl {
  padding: 2em 3em;
  background-color: #ffffff;
  border-radius: 0.5em;
  text-align: center;
  min-width: min(calc(100vw - 4em), 20em);
  max-width: calc(100vw - 4em);
  word-break: break-all;
}

dd {
  font-size: 3rem;
  font-weight: bold;
  margin: 0;
}

dt {
  padding-top: 0.5rem;
  padding-bottom: 2rem;
  font-size: 1.33rem;
  color: var(--primary-colour);
}

dt:last-of-type {
  padding-bottom: 0;
}

dd.serial {
  font-size: 2rem;
}
