.demo {
  background-image: url(../images/demo-img.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  background-color: #1B1AFF99;
  background-blend-mode: overlay;
  height: 512px;
  text-align: center;
  font-family: "Plus Jakarta Sans", sans-serif;
  margin-bottom: 64px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.demo h1 {
  max-width: 800px;
  width: 100%;
  font-weight: 700;
  font-size: 48px;
  color: #fff;
  margin: 0 auto;
  margin-bottom: 91px;
}

.demo button {
  padding: 16px 48px;
  font-weight: 700;
  font-size: 18px;
  color: #0b1b35;
  background-color: #ffffff;
  border: none;
  max-width: 245px;
  width: 100%;
  margin: 0 auto;
  box-shadow: 0px 13px 35px 0px #00000040;
  border-radius: 8px;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  -ms-border-radius: 8px;
  -o-border-radius: 8px;
}

@media (max-width: 480px) {
  .demo {
    height: auto;
    margin-bottom: 50px;
    padding: 20px;
  }

  .demo h1 {
    font-size: 28px;
    margin-bottom: 20px;
  }

  .demo button {
    font-size: 16px;
    padding: 12px 32px;
    max-width: 192px;
  }
}

@media (min-width: 481px) and (max-width: 768px) {
  .demo {
    height: auto;
    margin-bottom: 60px;
    padding: 30px;
  }

  .demo h1 {
    font-size: 32px;
    max-width: 500px;
    margin-bottom: 40px;
  }

  .demo button {
    font-size: 16px;
    padding: 14px 40px;
    max-width: 210px;
  }
}

@media (min-width: 769px) and (max-width: 1024px) {
  .demo {
    height: 450px;
    margin-bottom: 80px;
  }

  .demo h1 {
    font-size: 36px;
    max-width: 500px;
    margin-bottom: 60px;
  }

  .demo button {
    font-size: 17px;
    padding: 15px 44px;
    max-width: 230px;
  }
}

@media (min-width: 1025px) and (max-width: 1200px) {
  .demo h1 {
    font-size: 42px;
    max-width: 600px;
    margin-bottom: 50px;
  }
}
