body {
  margin: 0;
  background: #14151f;
  font: 16px "IBM Plex Sans", sans-serif;
  color: #e7e7ef;
}

button {
  padding: 8px 16px;
  border: none;
  border-radius: 3px;
  background: linear-gradient(135deg, #ff9602, #ff006a);
  color: white;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}

h2 {
  margin: 0;
  font-size: 32px;
}

input {
  box-sizing: border-box;
  padding: 8px;
  border: none;
  border-radius: 3px;
  font: inherit;
}

input:focus {
  outline: 2px solid #ff9602;
  outline-offset: 2px;
}

p {
  margin: 0;
  line-height: 1.5;
}

strong {
  font-weight: 700;
}

.heading {
  display: inline-block;
  background: linear-gradient(135deg, #ff9602, #ff006a);
  background-clip: text;
  color: transparent;
}

#logo {
  font-size: 24px;
  text-align: center;
}

#intro {
  padding: 0 24px;
  text-align: center;
}

#intro p {
  font-size: 20px;
}

#beta {
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 600px;
  padding: 0 24px;
  margin: 48px auto 0;
}

.formkit-alert {
  margin: 0;
}

.formkit-alert li {
  margin-bottom: 16px;
}

.formkit-alert-error {
  padding: 0;
  color: red;
  font-weight: 700;
  list-style: none;
}

.formkit-alert-success {
  padding: 0 24px;
  color: #64d22d;
  font-weight: 700;
  text-align: center;
}

#beta input {
  width: 100%;
  max-width: 400px;
  text-align: center;
}

#beta button {
  margin-top: 16px;
}

#beta .description {
  max-width: 600px;
  margin: 32px auto 0;
  color: #b6b6c9;
  text-align: center;
}

#features {
  padding: 48px 24px;
  background: white;
  color: #14151f;
  list-style: none;
}

#features li {
  text-align: center;
}

#features h2 {
  margin-bottom: 24px;
  font-size: 24px;
}

#dashboard {
  padding: 0 24px;
  text-align: center;
}

#dashboard h2 {
  margin-bottom: 32px;
}

img.screenshot {
  display: block;
}

@media (max-width: 999px) {
  h1 {
    margin: 20px 0 30px;
    font-size: 40px;
  }

  #logo {
    margin-top: 40px;
  }

  .formkit-alert-success {
    margin-top: 48px;
  }

  #features {
    margin: 48px 0;
  }

  #features li:not(:first-child) {
    margin-top: 40px;
  }

  img.screenshot {
    margin: 32px 24px 48px;
    max-width: calc(100% - 48px);
  }
}

@media (min-width: 1000px) {
  h1 {
    margin: 40px 0 56px;
    font-size: 56px;
  }

  #logo {
    margin-top: 64px;
  }

  #intro {
    width: 820px;
    margin: 0 auto;
  }

  .formkit-alert-success {
    margin-top: 64px;
  }

  #features {
    display: flex;
    justify-content: center;
    margin: 64px 0;
  }

  #features li {
    max-width: 330px;
  }

  #features li:not(:first-child) {
    margin-left: 56px;
  }

  #dashboard {
    width: 820px;
    margin: 0 auto;
  }

  #dashboard h2 {
    font-size: 40px;
  }

  img.screenshot {
    margin: 64px auto;
    max-width: 940px;
  }
}
