body {
  font-family: Lacuna-Book;
  font-size: 30px;
  font-weight: 400;
  line-height: 1.2;
  margin: 0;
  padding: 0;
}

::-webkit-scrollbar {
    display: none;
}

.nav {
  position: fixed;
  background-color: #fff;
  top: 0;
  left: 0;
  width: calc(100% - 30px);
  padding: 20px 15px 8px 15px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  z-index: 3;
}

.nav a:hover {
  color: #000;
}

.nav-titles {
  font-family: Furniture-Bold;
  font-size: 72px;
  font-weight: 400;
  line-height: 1;
  padding: 0;
  margin: 0;
  text-transform: uppercase;
}

h1 {
  font-weight: 400;
  line-height: 1;
}

a {
  text-decoration: none;
  color: #000;
}

a:visited {
  text-decoration: none;
  color: #000;
}

a:active {
  text-decoration: none;
  color: #000;
}

a:hover {
  text-decoration: none;
  color: rgb(0,0,255);
}

.container {
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 100px);
  margin: 0;
  padding: 100px 0 100px 5px;
  overflow-y: scroll;
  display: flex;
  flex-wrap: wrap;
  transition: all 0.25s ease-in-out;
}

.container-font-page {
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 100px);
  margin: 0;
  padding: 100px 0 100px 0;
  overflow-y: scroll;
  display: flex;
  flex-wrap: wrap;
  transition: all 0.25s ease-in-out;
}

.container-about-page {
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 100px);
  margin: 0;
  padding: 100px 0 100px 0;
  overflow-y: scroll;
  display: flex;
  flex-wrap: wrap;
  transition: all 0.25s ease-in-out;
}

.menu {
  font-family: Lacuna-Book;
  font-size: 60px;
  text-align: right;
  padding: 100px 20px 20px 20px;
  position: fixed;
  top: 0;
  right: 0;
  width: 33vw;
  height: 100vh;
  background-color: #fff;
  z-index: 2;
  transform: translateX(100%);
  transition: transform 0.25s ease-in-out;
  box-sizing: border-box;
}

.menu a {
  display: block;
  padding: 0;
  margin: 0;
}

.menu .active {
  color: rgb(0,0,255);
}

.menu-toggle {
  margin-left: 10px;
}

.menu-toggle:hover {
  cursor: pointer;
}

.menu-open {
  transform: translateX(0%);
}

.font-block {
  background-color: rgb(255,210,0);
  color: #000;
  width: calc(50% - 7.5px);
  height: 60%;
  margin: 0 5px 5px 0;
  padding: 40px 20px 20px 20px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
}

.font-block h2 {
  font-size: 148px;
  line-height: 1;
  font-weight: 400;
  width: 100%;
  text-align: center;
}

.font-block:hover {
  color: rgb(0,0,255);
  cursor: pointer;
}

.typer {
  color: #000;
  height: 75vh;
  width: calc(100%);
  margin: 0;
  padding: 120px 60px 100px 60px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
}

.supreme .specimen {
  padding: 240px 120px 60px 120px;
}

.specimen {
  color: #000;
  width: 100%;
  margin: 0;
  padding: 160px 120px 60px 120px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 80px;
  flex-wrap: wrap;
}

.description {
  color: #000;
  width: 100%;
  margin: 0;
  padding: 60px 120px 100px 120px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 80px;
  flex-wrap: wrap;
}

.font-info {
  color: #000;
  background-color: rgb(255,210,0);
  width: 100%;
  margin: 0;
  padding: 20px 20px 100px 20px;
  box-sizing: border-box;
  display: flex;
  font-size: 36px;
}

.font-info div {
  width: 50%;
  margin-right: 20px;
}

.font-info a {
  display: block;
}

.font-info a:hover {
  color: rgb(0,0,255);
}

.font-info p {
  margin: 0 0 20px 0;
  padding: 0;
}

.grey {
  background-color: rgb(245,245,245);
}

.yellow {
  background-color: rgb(255,210,0);
}

.yellow-background {
  background-color: rgb(255,210,0);
}

.black {
  background-color: #000;
}

.input {
  color: #fff;
  background-color: rgb(0,0,255);
  width: 300px;
  font-size: 28px;
  font-family: sans-serif;
  font-weight: 100;
  text-align: center;
  border: none;
  border-radius: 500px;
  outline: none;
  height: 75px;
  margin-right: 10px;
}

.controls {
  position: absolute;
  left: 50%;
  transform: translate(-50%, -200%);
  bottom: 20px;
  display: flex;
  align-items: center;
}

.controls button {
  font-family: sans-serif;
  font-size: 28px;
  font-weight: 100;
  color: #fff;
  background-color: rgb(0,0,255);
  outline: none;
  height: 75px;
  width: 75px;
  border: none;
  border-radius: 500px;
  margin-right: 5px;
  cursor: pointer;
}

.large {
  font-size: 228px;
}

.medium {
  font-size: 160px;
}

.small {
  font-size: 100px;
}

.white-text {
  color: #fff;
}

::placeholder {
  color: white;
  opacity: 1;
}

.about a {
  display: inline-block;
}

.type-checker {
  text-transform: none;
  text-align: center;
  width: 75vw;
  transition: font-size 0.25s ease;
}

.lacuna-book {
  font-family: Lacuna-Book;
}

.lacuna-book-italic {
  font-family: Lacuna-Book-Italic;
}

.lacuna-regular {
  font-family: Lacuna-Regular;
}

.lacuna-sans {
  font-family: Lacuna-Sans;
}

.beach-goth-neue {
  font-family: Beach-Goth-Neue;
}

.beach-goth-regular {
  font-family: Beach-Goth-Regular;
}

.supreme-value {
  font-family: Supreme-Value;
  padding-top: 0px;
}

.do-you-dance {
  font-family: Do-You-Dance;
}

.zonophone-regular {
  font-family: Zonophone-Regular;
}

.mother-grotesk {
  font-family: Mother-Grotesk;
}

.mother-grotesk-italic {
  font-family: Mother-GroteskItalic;
}

.zetkin-regular {
  font-family: Zetkin-Regular;
}

.civic-room-regular {
  font-family: Civic-Room-Regular;
}

.doves-flare {
  font-family: Doves-Flare;
}

.gray-display {
  font-family: Gray-Display;
}

.venice-italic {
  font-family: Venice-Italic;
}

.venice-medium {
  font-family: Venice-Medium;
}

.furniture-bold {
  font-family: Furniture-Bold;
}

.furniture-bold-italic {
  font-family: Furniture-Bold-Italic;
}


@media (max-width: 1850px) {

  .font-block h2 {
    font-size: 120px;
  }

}

@media (max-width: 1550px) {

  .font-block h2 {
    font-size: 108px;
  }

  .specimen {
    padding: 160px 60px 60px 60px;
  }

  .description {
    padding: 60px 60px 100px 60px;
  }

  .menu {
    font-size: 60px;
  }

  .large {
    font-size: 168px;
  }

  .medium {
    font-size: 100px;
  }

  .small {
    font-size: 60px;
  }

  .font-info {
    font-size: 30px;
  }

  .controls {
    transform: translate(-50%, -200%);
  }

  .specimen {
    font-size: 60px;
  }

  .description {
    font-size: 60px;
  }

  .input {
    width: 250px;
    height: 50px;
  }

  .controls button {
    height: 50px;
    width: 50px;
  }


}

@media (max-width: 1350px) {

  .font-block h2 {
    font-size: 96px;
  }

  .menu {
    font-size: 48px;
  }

}

@media (max-width: 1250px) {

  .font-block h2 {
    font-size: 84px;
  }

}

@media (max-width: 1150px) {

  .font-block h2 {
    font-size: 84px;
  }

  .menu {
    font-size: 60px;
    width: 50vw;
  }

  .input {
    width: 400px;
  }

  .controls button {
    display: none;
  }

  .font-block {
    padding: 20px 20px 20px 20px;
    display: block;
    height: 350px;
  }

}

@media (max-width: 1020px) {

  .container {
    flex-direction: column;
    flex-wrap: nowrap;
  }

  .font-block {
    width: calc(100% - 10px);
    height: 500px;
    padding: 10px 20px 10px 20px;
  }

  .font-block h2 {
    font-size: 120px;
  }

  .container-half {
    width: 0vw;
    flex-direction: column;
    flex-wrap: nowrap;
  }

  .large {
    font-size: 120px;
  }

  .medium {
    font-size: 84px;
  }

  .small {
    font-size: 48px;
  }

  .specimen {
    padding: 160px 30px 30px 30px;
    font-size: 48px;
  }

  .description {
    padding: 30px 30px 100px 30px;
    font-size: 48px;
  }

}

@media (max-width: 700px) {

  .font-block h2 {
    font-size: 96px;
  }

  .menu {
    width: 100vw;
  }

}

@media (max-width: 500px) {

  .container {
    padding-top: 76px;
  }

  .nav-titles {
    font-size: 48px;
  }

  .font-block h2 {
    font-size: 60px;
  }

  .menu {
    font-size: 48px;
    padding: 80px 20px 20px 20px;
  }

  .large {
    font-size: 60px;
  }

  .medium {
    font-size: 48px;
  }

  .small {
    font-size: 28px;
  }

  .specimen {
    padding: 80px 20px 30px 20px;
    font-size: 28px;
  }

  .description {
    padding: 20px 20px 60px 20px;
    font-size: 28px;
  }

  .input {
    width: 250px;
    font-size: 14px;
    height: 40px;
    margin-right: 5px;
  }

  .controls {
    bottom: 40px;
  }

  .controls button {
    font-size: 28px;
    height: 40px;
    width: 40px;
    margin-right: 2.5px;
  }

  .font-info {
    width: 100%;
    padding: 20px 20px 100px 20px;
    flex-direction: column;
    font-size: 24px;
  }

  .font-info div {
    width: 100%;
  }

  .container-about-page {
    padding: 75px 0 100px 0;
  }

  .typer {
    padding: 0px 60px 100px 60px;
  }

}


@font-face {
  font-family: 'Beach-Goth-Neue';
  src:  url('fonts/BeachGoth-Neue.woff2') format('woff2'),
        url('fonts/BeachGoth-Neue.woff') format('woff');
}

@font-face {
  font-family: 'Beach-Goth-Regular';
  src:  url('fonts/BeachGoth-Regular.woff2') format('woff2'),
        url('fonts/BeachGoth-Regular.woff') format('woff');
}

@font-face {
  font-family: 'Do-You-Dance';
  src:  url('fonts/DoYouDance-1.0.woff2') format('woff2'),
        url('fonts/DoYouDance-1.0.woff') format('woff');
}

@font-face {
  font-family: 'Furniture-Bold';
  src:  url('fonts/Furniture-Bold.woff2') format('woff2'),
        url('fonts/Furniture-Bold.woff') format('woff');
}

@font-face {
  font-family: 'Lacuna-Book';
  src:  url('fonts/Lacuna-Book.woff2') format('woff2'),
        url('fonts/Lacuna-Book.woff') format('woff');
}

@font-face {
  font-family: 'Lacuna-Regular';
  src:  url('fonts/Lacuna-Regular.woff2') format('woff2'),
        url('fonts/Lacuna-Regular.woff') format('woff');
}

@font-face {
  font-family: 'Lacuna-Sans';
  src:  url('fonts/Lacuna-Sans.woff2') format('woff2'),
        url('fonts/Lacuna-Sans.woff') format('woff');
}

@font-face {
  font-family: 'Supreme-Value';
  src:  url('fonts/SupremeValue-1.0.woff2') format('woff2'),
        url('fonts/SupremeValue-1.0.woff') format('woff');
}

@font-face {
  font-family: 'Zetkin-Regular';
  src:  url('fonts/Zetkin-Regular.woff2') format('woff2'),
        url('fonts/Zetkin-Regular.woff') format('woff');
}

@font-face {
  font-family: 'Zonophone-Regular';
  src:  url('fonts/Zonophone-Regular.woff2') format('woff2'),
        url('fonts/Zonophone-Regular.woff') format('woff');
}

@font-face {
  font-family: 'Lacuna-Book-Italic';
  src:  url('fonts/Lacuna-BookItalic.woff2') format('woff2'),
        url('fonts/Lacuna-BookItalic.woff') format('woff');
}

@font-face {
  font-family: 'Civic-Room-Regular';
  src:  url('fonts/CivicRoom-Regular.woff2') format('woff2'),
        url('fonts/CivicRoom-Regular.woff') format('woff');
}

@font-face {
  font-family: 'Doves-Flare';
  src:  url('fonts/Doves-Flare.woff2') format('woff2'),
        url('fonts/Doves-Flare.woff') format('woff');
}

@font-face {
  font-family: 'Gray-Display';
  src:  url('fonts/Gray-Display.woff2') format('woff2'),
        url('fonts/Gray-Display.woff') format('woff');
}

@font-face {
  font-family: 'Venice-Italic';
  src:  url('fonts/Venice-Italic.woff2') format('woff2'),
        url('fonts/Venice-Italic.woff') format('woff');
}

@font-face {
  font-family: 'Venice-Medium';
  src:  url('fonts/Venice-Medium.woff2') format('woff2'),
        url('fonts/Venice-Medium.woff') format('woff');
}

@font-face {
  font-family: 'Furniture-Bold-Italic';
  src:  url('fonts/Furniture-Bold-Italic.woff2') format('woff2'),
        url('fonts/Furniture-Bold-Italic.woff') format('woff');
}

@font-face {
  font-family: 'Furniture-Bold';
  src:  url('fonts/Furniture-Bold.woff2') format('woff2'),
        url('fonts/Furniture-Bold.woff') format('woff');
}

@font-face {
  font-family: 'Mother-Grotesk';
  src:  url('fonts/Mother-Grotesk.woff2') format('woff2'),
        url('fonts/Mother-Grotesk.woff') format('woff');
}

@font-face {
  font-family: 'Mother-GroteskItalic';
  src:  url('fonts/Mother-GroteskItalic.woff2') format('woff2'),
        url('fonts/Mother-GroteskItalic.woff') format('woff');
}
