* {
  margin: 0;
  padding: 0;
  font-family: Helvetica;
  box-sizing: border-box;
}

header {
  .navbar {
    display: flex;
    justify-content: space-between;
    padding: 0px 48px;
    height: 10dvh;
    background-color: #232a31;

    img {
      margin: auto 0px;
      width: 32px;
    }

    ul {
      display: flex;
      gap: 32px;
      align-items: center;
      color: white;
      list-style: none;
      text-align: center;
      cursor: pointer;
    }

    .botao-entrar {
      background-color: #2cc76a;
      padding: 8px 30px;
      color: #fff;
      cursor: pointer;
      border-radius: 6px;
    }

  }

  .banner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 80dvh;
    background: url(img/mainbanner.png) no-repeat center/100%;
    color: white;

    h1 {
      font-size: 54px;
      text-shadow: #000 3px 2px 3px;
    }

    p {
      font-size: 32px;
      text-shadow: #000 3px 2px 3px;
      text-align: center;
    }
  }
}

main {
  display: flex;
  flex-direction: column;
  gap: 48px;


  .sobre {
    display: flex;
    margin: 48px 0;
    padding: 0 48px;

    article {
      display: flex;
      flex-direction: column;
      gap: 24px;
      width: 90%;
      margin: 0 24px;
      text-align: center;

      h3 {
        color: #232a31;
      }

      p {
        color: #5f5f5f;
      }

      .fas {
        font-size: 60px;
      }

      .fa-shield-alt {
        color: #2cc76a;
      }

      .fa-rocket {
        color: #ef3f29;
      }

      .fa-comments {
        color: #ef8f29;
      }
    }
  }

  .planos-precos {
    display: flex;
    flex-direction: column;
    padding: 0 48px;

    .lista-planos {
      display: flex;
      gap: 24px;
      justify-content: center;

    }

    h2 {
      color: #232a31;
      margin: auto;
    }

    p {
      margin: auto;
      color: #5f5f5f;
    }

    .planos {
      flex: 1;
    }

    .conteudo-plano {
      display: flex;
      flex-direction: column;
      align-items: center;
      list-style: none;


      .preco-plano,
      .preco-dedicado {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100px;
        height: 100px;
        background: #2cc76a;
        color: white;
        border-radius: 100%;
        top: 50px;
        position: relative;
      }

      .titulo-plano {
        line-height: 120px;
        padding-top: 50px;
        width: 100%;
        height: 100px;
        background: #202b34;
        color: white;
        font-weight: 700;
        text-transform: uppercase;
      }

      .preco-dedicado {
        background: #ef3f29;
      }

      .botao,
      .botao-dedicado {
        background: #2cc76a;
        color: white;
        height: 75px;
        font-size: 24px;
        cursor: pointer;
        opacity: 0.8;
      }

      .botao:hover,
      .botao-dedicado:hover {
        opacity: 1;
      }

      .botao-dedicado {
        background: #ef3f29;
      }

      li {
        display: flex;
        justify-content: center;
        align-items: center;
        margin: auto;
        width: 100%;
        height: 50px;
        background: #f0f0f0;
      }
    }


  }

  .dominio {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 28px;
    background: #425564;
    padding: 48px 0;


    h2 {
      font-size: 36px;
      color: white;
    }

    p {
      font-size: 24px;
      color: #e0e0e0;
    }

    input[type="text"] {
      width: 60%;
      padding: 20px;
      font-size: 20px;
    }

    input[type="submit"] {
      background-color: #2cc76a;
      padding: 15px 30px;
      color: #fff;
      font-size: 24px;
      cursor: pointer;
      opacity: 0.8;
      border: 0;
    }

    input[type="submit"]:hover {
      opacity: 1;
    }
  }

  .mensagem {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 0 48px;
    text-align: center;

    h2 {
      font-size: 32px;
      color: #232a31;
    }

    p {
      color: #5f5f5f;
      font-size: 20px;
    }

    form {
      margin-top: 12px;

      input[type="text"] {
        width: 18%;
        padding: 12px;
        margin-right: 2px;
        border: 1px solid #cecece;
        border-radius: 4px;
        font-size: 16px;
      }

      input[type="email"] {
        width: 18%;
        padding: 12px;
        margin-left: 2px;
        border: 1px solid #cecece;
        border-radius: 4px;
        font-size: 16px;
      }

      textarea {
        display: block;
        margin: auto;
        margin-top: 12px;
        width: 470px;
        height: 150px;
        padding: 10px 20px;
        border: 1px solid #cecece;
        border-radius: 4px;
        font-size: 16px;
      }

      input[type="submit"] {
        display: block;
        margin: auto;
        margin-top: 12px;
        width: 16%;
        padding: 10px;
        color: white;
        background: #2cc76a;
        border: 0;
        border-radius: 4px;
        font-size: 16px;
        opacity: 0.8;
      }

      input[type="submit"]:hover {
        opacity: 1;
      }
    }
  }
}

footer {
  display: flex;
  justify-content: center;

  p {
    color: #5f5f5f;
    font-size: 12px;
    font-weight: 700;
    padding: 36px 0;
  }
}

@media (min-width: 320px) and (max-width: 425px) {
  body {
    max-width: 425px;
  }

  header {
    .navbar {
      padding: 0px 24px;

      li {
        display: none;
      }

      .botao-entrar {
        display: block;
        font-size: 12px;
      }
    }

    .banner {
      background-size: 100% 100%;
      padding: 0px 24px;

      h1 {
        font-size: 26px;
      }

      p {
        font-size: 16px;
      }
    }
  }

  main {
    .sobre {
      flex-direction: column;
      padding: 0 24px;
      align-items: center;
      gap: 48px;
      text-align: center;
    }

    .planos-precos {
      padding: 0 24px;

      .lista-planos {
        flex-direction: column;
      }

      p {
        text-align: center;
      }
    }

    .dominio {
      padding: 48px 24px;

      h2 {
        font-size: 24px;
      }

      p {
        font-size: 18px;
      }

      input[type="text"] {
        width: 100%;
        padding: 10px;
        font-size: 14px;
      }

      input[type="submit"] {
        padding: 10px 18px;
        font-size: 14px;
        opacity: 1;
      }
    }

    .mensagem {
      padding: 0 24px;

      h2 {
        font-size: 24px;
      }

      p {
        font-size: 14px;
      }

      form {
        display: flex;
        flex-direction: column;

        input[type="text"] {
          display: block;
          width: 100%;
          margin-top: 12px;
        }

        input[type="email"] {
          display: block;
          width: 100%;
          margin-top: 12px;
        }

        textarea {
          width: 100%;
        }

        input[type="submit"] {
          width: 100%;
          opacity: 1;
        }
      }

    }
  }
}

@media (min-width: 426px) and (max-width: 768px) {
  body {
    max-width: 768px;

    .mensagem {
      form {
        input[type="text"] {
          width: 34%;

        }
        input[type="email"] {
          width: 34%;
        }
      }

    }
  }
}