html {
  line-height: 1.35;
  -webkit-text-size-adjust: 100%;
  height: 100%;
  /* background: url("bg.svg"), linear-gradient(#212338, #4c4f74); */
  background: url("bg.svg"), linear-gradient(#212338, #573664);
  background-attachment: fixed;
  background-size: cover;
}

body {
  display: flex;
  align-items: center;
  min-height: 100%;
  margin: 0;
  font-family: Inter, Arial, Helvetica, sans-serif;
}

.root {
  max-width: 800px;
  margin: 0 auto;
  padding-top: 30px;
  padding-right: 11vw;
  padding-bottom: 30px;
  padding-left: 11vw;
  font-weight: 400;
  font-size: 17px;
  color: white;
}

.root::before {
  content: "";
  display: block;
  width: 80px;
  height: 5px;
  background: white;
  margin: 10px auto 20px;
}

p {
  margin: 0 0 26px;
}

a {
  color: #FFE476;
  text-decoration: none;
  transition: color 0.2s;
}

a:focus,
a:hover {
  color: #FFAD00;
  outline: none;
  transition: color 0.2s;
}

.copy {
  color: #DADADA;
  font-size: .8em;
}

@media (min-width: 360px) {
  .root {
    padding-top: 40px;
    padding-bottom: 40px;
    font-size: 18px;
  }
}

@media (min-width: 600px) {
  .root {
    padding-top: 60px;
    padding-bottom: 60px;
    font-size: 20px;
  }

  .root::before {
    width: 90px;
    margin-bottom: 25px;
  }
}

@media (min-width: 900px) {
  .root {
    padding-top: 80px;
    padding-bottom: 80px;
    font-size: 22px;
  }

  .root::before {
    width: 100px;
    margin-bottom: 30px;
  }
}

@media (min-width: 1200px) {
  .root {
    padding-top: 110px;
    padding-bottom: 110px;
    font-size: 24px;
  }

  .root::before {
    width: 120px;
    margin-bottom: 35px;
  }
}