/* Estilos Gerais */
body {
  margin: 0;
  font-family: 'Montserrat', sans-serif;
  display: flex;
  flex-direction: column;
  min-height: 100vh;         
  overflow-x: hidden; 
  overflow-y: auto;         
}

/* Header */
.header-container {
  width: 100%;
}

.header {
  background-color: #000;
  padding: 2.0em 0;
  text-align: center;
  border-bottom: 3px solid #0b4c96; 
}

.navigation .nav-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center;
  gap: 4.5em; 
}

@media (max-width: 768px) {
  .navigation .nav-list {
    flex-direction: column;
    gap: 1em; /* Reduz espaçamento */
  }
}


.navigation .nav-list li a {
  color: white;
  text-decoration: none;
  font-size: 1.2em; 
}

/* Image Section */
.image-section {
  position: relative; 
  width: 100%; 
  height: 100vh; 
  background: url('imagens/Banner5.png') no-repeat center center; 
  background-size: cover; 
}


@media (max-width: 768px) {
  .image-section {
    min-height: 50vh; /* Metade da tela para evitar corte */
  }
}

.name-box {
  position: absolute;
  top: 25%;     
  left: 55%;    
  transform: translateY(-50%); 
  background: rgba(0, 0, 0, 0.6); 
  padding: 4em 6em;  
  border-radius: 10px;
  text-align: center;
}

@media (max-width: 768px) {
  .name-box {
    left: 50%;
    width: 80%;
    padding: 2em;
    transform: translate(-50%, -50%);
  }
}


.name-box h2 {
  color: white;
  font-size: 2.3em;
  margin: 0;
}

.name-box h3 {
  color: white;
  font-size: 1em;
  margin: 0;
}

/* Footer */
.footer-container {
  margin-top: auto;
  width: 100%;
}

.footer {
  background-color: #000;
  text-align: center;
  padding: 1em 0;
  /*border-top: 3px solid #0b4c96; */
}

.footer-text {
  color: white;
  margin: 0;
  font-size: 1em;
  font-weight: normal; 
}
.about-section {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-direction: column;
  padding: 20px;
  background-image: 
    linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)),
    url('imagens/Banner5.png');
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  min-height: 100vh;  /* Garante que a seção ocupe pelo menos 100% da altura da tela */
}

/* Box */
.bio-box {
  background-color: #000;
  padding: 1.2em 2em;
  text-align: center;
  border-radius: 10px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  max-width: 1200px;
  width: 90%;      
  margin-top: 40px; 
  border: 2px solid #0b4c96;
  box-sizing: border-box;  
}

.info-box {
  background-color: #000;
  padding: 1.2em 2em;
  text-align: center;
  border-radius: 10px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  max-width: 1200px;
  width: 90%;      
  margin-top: 20px; 
  border: 2px solid #0b4c96;
  box-sizing: border-box; 
  font-weight: normal;
}

.edu-box {
  background-color: #000;
  padding: 1.2em 2em;
  text-align: center;
  border-radius: 10px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  max-width: 1200px;
  width: 90%;      
  margin-top: 40px; 
  border: 2px solid #0b4c96;
  box-sizing: border-box;  
}

@media (max-width: 480px) {
  .bio-box, .info-box .pro-box .projeto.box {
    width: 95%;
    padding: 1.5em;
  }
}

.info-box h2 {
  font-size: 1.5em;  
  color: #fff;  
  margin-bottom: 20px;  
}


.info-box h3 {
  font-size: 1.2em;
  color: #fff; 
  font-weight: normal; 
}

.info-box h3 a:link {
  color: #fff;
  text-decoration: underline;
  text-decoration-thickness: 1px;
}

/* Cor do link já visitado */
.info-box h3 a:visited {
  color: #fff;
}

/* Cor ao passar o mouse */
.info-box h3 a:hover {
  color: #ffea7a;
  text-decoration: underline  
}

.bio-box h2 {
  font-size: 2em;  
  color: #fff;  
  margin-bottom: 1em;  
  margin-top: 0;  
}

.bio-box h3 {
  font-size: 1.2em;  
  color: #fff;  
  text-align: justify;
  line-height: 1.7;
  font-weight: normal;
}

.bio-image {
  margin-bottom: 1.5em;  
}

.profile-photo {
  width: 150px;  
  height: 150px;  
  border-radius: 50%;  
  border: 2px solid #0b4c96;  
}

/* Títulos e Listas */
.bio-box h4 {
  font-size: 1.5em; 
  font-weight: normal;  
  color: #fff;  
  margin-bottom: 20px;  
  text-align: left;
  font-weight: bold;
}

/* Estilo para a lista (ul) */
.bio-box ul {
  list-style-type: none;  
  padding-left: 0;  
  margin: 0; 
  text-align: left; 
}

.bio-box ul ul {
  margin-left: 30px; /* ou outro valor desejado */
}

/* Estilo para os itens da lista (li) */
.bio-box ul li {
  color: #fff;  
  margin-bottom: 1em;  
  font-size: 1.05em;  
  line-height: 1.5;
  text-align: justify;
}

.bio-box strong {
  color: #0b4c96;  
  font-size: 1.2em;  
}

.edu-box strong {
  color: #0b4c96;  
  font-size: 1.1em;  
}

/* Títulos e Listas */
.edu-box h4 {
  font-size: 1.5em; 
  font-weight: normal;  
  color: #fff;  
  margin-bottom: 20px;  
  text-align: left;
  font-weight: bold;
}

/* Estilo para a lista (ul) */
.edu-box ul {
  list-style-type: none;  
  padding-left: 0;  
  margin: 0; 
  text-align: left; 
}

.edu-box ul ul {
  margin-left: 30px; /* ou outro valor desejado */
}

/* Estilo para os itens da lista (li) */
.edu-box ul li {
  color: #fff;  
  margin-bottom: 1em;  
  font-size: 1.2em;  
  line-height: 1.5;
  text-align: justify;
}

.pro-box {
  background-color: #000;
  padding: 1.2em;
  text-align: center;
  border-radius: 10px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  max-width: 1200px;
  width: 90%;      
  margin-top: 20px;
  border: 2px solid #0b4c96;
  box-sizing: border-box; 
  font-weight: normal;
}

.pro-box h5 {
  font-size: 1.6em;  
  color: #fff;  
  margin-bottom: 1em;  
  margin-top: 0;  
}

.pro-box h5 a:link {
  color: #fff;
  text-decoration: underline;
  text-decoration-thickness: 1px;
}

.pro-box h5 a:visited {
  color: #fff;  
}

.pro-box h5 a:hover {
  color: #ffea7a; 
  text-decoration: underline; 
}

.pro-box h6 {
  font-size: 1.1em;  
  color: #fff;  
  line-height: 1.5;  
  text-align: justify;
  font-weight: normal;
  margin-bottom: 1em;  
  margin-top: 0;  
}
.projeto-box {
  background-color: #000;
  padding: 1.5em;  text-align: center;
  border-radius: 10px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  width: 1200px; /* Largura fixa */
  margin-top: 20px; 
  border: 2px solid #0b4c96;
  box-sizing: border-box; 
  font-weight: normal;
  height: auto; /* Altura automática conforme o conteúdo */
}


.projeto-box h5 {
  font-size: 1.7em;  
  color: #fff;  
  margin-bottom: 1em;  
  margin-top: 0;
  font-weight: bold;  
}

.projeto-box h6{
  font-size: 1.2em;  
  color: #fff;  
  line-height: 1.8;  
  text-align: justify;
  font-weight: normal;
  margin-bottom: 2em;  
  margin-top: 20px;  
}

.projeto-box h3 {
  font-size: 1.2em;
  color: #fff; 
  font-weight: bold; 
}

.projeto-box h3 a:link {
  color: #fff;  
  text-decoration: underline;
  text-decoration-thickness: 1px;
}

.projeto-box h3 a:visited {
  color: #fff;   
}

.projeto-box h3 a:hover {
  color: #ffea7a; 
  text-decoration: underline; 
}

.projeto-box h6 a:link {
  color: #fff;  
  text-decoration: underline;
  text-decoration-thickness: 1px;
}

.projeto-box h6 a:visited {
  color: #fff;  
}

.projeto-box h6 a:hover {
  color: #ffea7a; 
  text-decoration: underline; 
}

.imagem-box {
  background-color: #000;
  padding: 1em;
  border-radius: 10px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  width: 1200px; 
  margin-top: 20px;
  border: 2px solid #0b4c96;
  box-sizing: border-box;
  text-align: center;
}

.imagem-box h6{
  font-size: 1em;  
  color: #fff;  
  line-height: 1.5;  
  text-align: justify;
  font-weight: normal;
  margin-bottom: 2em;  
  margin-top: 20px;  
}

.imagem-box h6 a:link {
  color: #fff;  
  text-decoration: underline;
  text-decoration-thickness: 1px;;
}

.imagem-box h6 a:visited {
  color: #fff;  
}

.imagem-box h6 a:hover {
  color: #ffea7a; 
  text-decoration: underline; 
}

.projeto-imagem {
  max-width: 100%; 
  height: auto; 
  display: block;
  margin: 0 auto; 
  border-radius: 8px; 
}

/* Responsividade para telas menores */
@media (max-width: 768px) {
  .about-section {
    flex-direction: column;
    align-items: center;
  }

  .projeto-box,
  .imagem-box {
    max-width: 90%;
  }
}