@import url("https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;700&display=swap");
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
* body {
  /* old browsers */
  background: #56CCF2;
  /* Chrome 10-25, Safari 5.1-6 */
  background: -webkit-linear-gradient(to top, #270101, #ce3507);
  /* current */
  background: linear-gradient(to top, #270101, #ce3507);
  font-family: "Source Sans Pro", sans-serif;
  height: 96vh;
}
* body .box {
  border-radius: 1rem;
  box-shadow: 0 0 0 0.75rem #FFFFFF;
  color: #FFFFFF;
  display: flex;
  flex-direction: column;
  height: 92.5vh;
  margin: 2rem;
  padding: 0.3rem 0.6rem;
}
* body .navbar {
  align-items: center;
  display: flex;
  flex-direction: row;
  width: 100%;
}
* body .menu {
  align-items: center;
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  width: 100%;
}
* body .menu .nav-item {
  color: #FFFFFF;
  font-size: 1.5rem;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  transition: 0.2s;
  width: 100%;
}
* body .menu .nav-item:hover {
  color: #000000;
  font-size: 3rem;
  transition: 0.2s;
}
* body .welcome {
  align-items: center;
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: center;
  width: 100%;
}
* body .welcome .title {
  position: relative;
  text-align: center;
  width: 100%;
}
* body .welcome .title h2 {
  display: inline-block;
  font-size: 8.5vw;
  text-decoration: underline;
}
* body .welcome .title .small {
  font-size: 3vw;
  position: absolute;
}
* body .welcome .legend {
  color: #000000;
  font-size: 4.2vw;
  font-weight: bold;
}

@media only screen and (max-width : 768px) {
  body {
    background: red;
  }
  body .nav-item {
    font-size: 1rem;
  }
  body .nav-item:hover {
    font-size: 2.6rem;
  }
}
@media only screen and (max-width : 600px) {
  body {
    background: green;
  }
}
@media only screen and (max-width : 480px) {
  body {
    background: orange;
  }
}