:root {
  --highlight: #ffe10b;
  --highlight-hover: #ffe10b;
  --background: #ffffff;
  --background-1: #ededed;
  --background-2: #ececec;
  --background-3: #fafafa;
  --background-4: #666666;
  --foreground: #141414;
  --foreground-1: #444444;
  --foreground-2: #9f9f9f;
  --main-width: 80em;
  --content-width: 32em;
  --square-margin: 1em;
  --square-margins: calc(var(--square-margin) * 2);
}

* {
  box-sizing: border-box;
}

body {
  font-family: avec, serif;
  background-color: var(--background);
  color: var(--foreground-1);
  padding: 0;
  margin: 0;
}

a {
  color: var(--foreground-1);
  text-decoration: none;
}

a:hover {
  color: var(--foreground);
}

a:visited {
  color: var(--foreground-1);
}

a.active {
  color: var(--foreground) !important;
  font-weight: bold;
}

h1 {
  font-weight: normal;
  font-size: 3em;
  text-transform: uppercase;
  text-align: center;
  margin: 0.5em auto;
}

h2 {
  font-weight: normal;
  font-size: 1.8em;
  text-align: center;
  margin: auto;
}

section {
  padding: 3em  0;
}

section main {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  width: var(--main-width);
  margin: 1em auto;
  align-items: normal;
}

/* desktop specifics */
@media (min-width: 80em) {
}

/* mobile specifics */
@media (max-width: 80em) {
  main {
    width: 100% !important;
  }

  header {
    padding: 4em 1em;
  }
}
