body {
  color: white;

  position: relative;

  min-width: 100%;
  height: 100%;

  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;

  display: flex;
  flex-direction: column;
}

:root {
  color-scheme: only dark;
}

body {
  background-color: #0A0A0A;
  color-scheme: only dark;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Helvetica Neue", Arial, sans-serif;
}

body > :not(header):not(footer) {
  flex: 1 0 auto;
}

/* input elements are weird about their font */
input {
  font-family: inherit;
  font-size: inherit;
  color: white;
}

.b3 {
  color: #333335;
}

.b2 {
  color: #222224;
}

.b {
  color: #111113;
}

/* If element to scroll to is selected by id in URL, add offset to account for nav bar */
:target:before {
  content: "";
  display: block;
  height: calc(90px + 0.6em); /* fixed header height*/
  margin-top: calc(-90px - 0.6em); /* negative fixed header height */
}
