/* Váriavel para controlar a altura da barra de navegação de forma centralizada */
:root {
  --navbar-height: 92px;
}

* {
  box-sizing: border-box;
}

html, body {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  font-family:'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif;
}

nav {
  background-color: black;
  position: fixed;
  z-index: 2;
  width: 100%;
  /* Altura controlada pela variável e conteúdo centralizado verticalmente */
  height: var(--navbar-height);
  display: flex;
  align-items: center;
  padding: 0;
}

.divnav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%; /* Ocupa toda a largura da nav */
  max-width: 1200px;
  margin: auto;
  padding: 0 20px; /* Adiciona o espaçamento lateral aqui */
}

.navbutton, .form_enviar_button {
   background-color: #333;
  border-radius: 12px;
  border: none;
  padding: 10px 20px;
  color: white;
  font-weight: bold;
  cursor: pointer;
  transition: background 0.9s ease;
  text-decoration: none;
  align-content: center;
}

.navbutton:hover, .form_enviar_button:hover {
  background-color: blue;
}

main {
  width: 100%;
  margin: 0;
  padding: 0;
  padding-top: var(--navbar-height); 
}

.figureponte {
  margin: 0;
  padding: 0;
  width: 100%;
  height: auto;
  overflow: hidden;
}

.imgponte {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}


article {
  width: 100%;
  margin: 0;
  padding: 0;
  background-color: rgb(34, 34, 34);
  overflow: auto;
}

.p_projeto, .p_sobre_autor { 
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 45vh;
  color: white;
  text-align: center;
  padding: 0px;
  box-sizing: border-box;
}

.p_participe, .form_participe {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 15vh;
  color: white;
  text-align: center;
  padding: 0px;
  box-sizing: border-box;
}

.form_participe {
  padding-bottom: 10vh;
}

footer {
  background-color: black;
  color: white;
  text-align: center;
  padding: 15px;
  position: relative;
  bottom: 0px;
  width: 100%;
}

.figuresobre_autor {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 10vh 0 0 0;
  padding: 0;
  width: 100%;
  height: auto;
  overflow: hidden;
}

.imgsobre_autor {
  width: 20%;
  height: auto;
  margin-bottom: 20px;
}

  /*Ajustes especificos de exibicao dos campos do formulario*/
  #nome, #email, #sugestao {
    width: 60%;
  }

  .form_participe label {
    width: 60%;
    text-align: left;
    margin-bottom: 5px;
  }

/* --- Responsividade --- */
@media (max-width: 768px) {
  :root {
    --navbar-height: 65px; 
  }

  .p_projeto {
    padding: 15px;
  }

  .navbutton {
    height: auto;
    padding: 8px 12px;
  }

}

@media (max-width: 480px) {
  .p_projeto{
    padding: 10px;
    min-height: 62vh  
  }

  .p_sobre_autor {
    padding: 10px;
    min-height: 39vh;
  }

  .imgsobre_autor {
    width: 40%;
    height: auto;
    margin-bottom: 20px;
  }

  .p_participe {
    min-height: 20vh;
  }

  .form_participe {
    padding-bottom: 10vh;
  }

  .form_participe label {
    width: 80%;
  }

  #nome, #email, #sugestao {
    width: 80%;
  }

  .figureponte {
    height: 20vh;
  }
  .imgponte {
    height: 100%;
    object-fit: cover;
  }

}