/* ---- reset ---- */
html {
  box-sizing: border-box;
}

*, *:before, *:after {
  box-sizing: inherit;
}

body, ul, ol, li, figure, blockquote, dl, dd {
  margin: 0;
  padding: 0;
}

h1, h2, h3, p {
  margin: 0;
}

body {
  color: #efefef;
  background-color: #333;
  min-height: 100%;
}

/* ---- layout ---- */
.site-background {
  background-image: url("../assets/background.jpg");
  background-size: cover;
  background-position: center;
  box-sizing: border-box;
  position: fixed;
  height: 100%;
  width: 100%;
  z-index: -1;
}

@font-face {
  font-family: "Default Sans Regular";
  src: url("../assets/fonts/DefaultSans-Regular.woff2");
  font-display: swap;
}
@font-face {
  font-family: "Default Sans Bold";
  src: url("../assets/fonts/DefaultSans-Bold.woff2");
  font-display: swap;
}
/* ---- typography ---- */
body {
  font-family: "Default Sans Bold", system-ui, -apple-system, sans-serif;
  font-size: 16px;
  letter-spacing: 1px;
  line-height: 147%;
}

h1 {
  padding-top: 30px;
  text-transform: uppercase;
}

p {
  font-family: "Default Sans Regular", system-ui, -apple-system, sans-serif;
}

a {
  color: #333;
}
a.not-found-landing {
  color: #efefef;
}

.fs-landing {
  height: 100%;
  position: fixed;
  width: 100vw;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.fs-landing .logo {
  max-height: 250px;
  margin: 0 20px;
  text-align: center;
}
.fs-landing .logo img {
  max-height: 100%;
  max-width: 100%;
}
.fs-landing .title {
  text-align: center;
  margin: 0 20px;
}
.fs-landing .description {
  padding-top: 20px;
  font-weight: 400;
}

.not-found-landing a {
  color: efefef;
}