@import url('https://fonts.googleapis.com/css2?family=Roboto+Slab:wght@700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto+Slab:wght@300&display=swap');

html{
    scroll-behavior: smooth;
    scroll-padding-top: 16vh; /* Ajuste conforme a altura do seu cabeçalho */
}

body{
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    font-family: "Roboto Slab", serif;
    gap: 16vh;
}


header{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 13vh;
    background-color: #110f0f;
    z-index: 100; /* O número pode ser ajustado conforme a necessidade */
}

.cabecalho{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
   
    gap: 4.5%;
    font-size: 115%;
   
}



.menuItem{
    text-decoration: none;
    cursor: pointer;
    color: white;
    transition: color 0.3s, text-decoration 0.3s;
}

.menuItem:hover{
    color: #007bff; /* Cor quando o mouse passa */
        text-decoration: underline; /* Sublinhado no hover */
}

.menuItem.active{
    font-weight: bold;
    color: white;
    text-decoration: underline;
}

.principal{
    margin-top: 13vh; /* Adiciona espaço abaixo do cabeçalho */
    display: flex;
    flex-direction: column;
    gap: 10vh;
    align-items: center;
}

.principal__title{
    font-size: 5vh;
}

.principal__imagens{
    width: 100vw; /* A imagem vai ocupar 100% da largura do contêiner */
    height: 60vh; /* Mantém a proporção da altura da imagem */
    object-fit: cover; /* Ajusta a imagem para cobrir a área definida, sem distorção */
    background-image: url('/img/imagemPrincipal.png'); /* Define a imagem de fundo */
    background-size: cover; /* A imagem cobrirá toda a área da div */
    background-position: center; /* Centraliza a imagem no contêiner */
    background-repeat: no-repeat; /* Impede que a imagem se repita */
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    
}

.principal__imagens h1{
    font-size: 8vh;
    color: white;
    text-align: center;

}

.principal__imagens__text{
    width: 50%;
    background-color: rgba(5, 6, 5, 0.5);
}

.principal__sobreNos{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 8vw;

}
.principal__sobreNos__text{
    
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3.5vh;

}

.principal__sobreNos__text p{
    font-size: 3vh;
    line-height: 3vh;
    width: 57vw;  /* Largura máxima de 100px */
    height: 15.05vh; /* Altura máxima de 300px */
    overflow: hidden; /* Esconde o texto que ultrapassar os limites */
    word-wrap: break-word; /* Quebra palavras longas que ultrapassam a largura */
    font-family: "Roboto Slab", system-ui;
    text-align: center;
}

.principal__sobreNos_imagem{
    height: 35vh;
    object-fit: cover; /* Ajusta a imagem para cobrir a área definida, sem distorção */
    
}

.principal__servico{
    display: flex;
    flex-direction: column;
    align-items: center;

    gap: 3vh;

}
.principal__servico__title{
    display: flex;
    flex-direction: column;
    align-items: center;
}


.principal__servico__title hr{
    border: none; 
    height: 2px;
    width: 24vw;
    background-color: black;
}

.principal__servico__tipos{
    width: 73vw;
    height: 77vh;
    display: grid;   /* Ativa o CSS Grid */
    
    background-image: url('/img/imagenServ.png'); /* Define a imagem de fundo */
 
    border-radius: 3vw;
    grid-template-columns: repeat(3, 1fr); /* Cria 3 colunas de tamanhos iguais */
    grid-template-rows: repeat(2, 1fr);    /* Cria 2 linhas de tamanhos iguais */
    background-size: cover; /* A imagem cobrirá toda a área da div */
    background-position: center; /* Centraliza a imagem no contêiner */
    background-repeat: no-repeat; /* Impede que a imagem se repita */
    
}

.principal__servico__tipos__box{
    /*definindo borda*/
    border-right: 2px; 
    border-bottom: 2px;
    border-style: solid; 
    border-color: white; /* Define a cor da borda */
    /*fim*/
    
  
    
    text-align: center;
    display: grid;
    align-items: start;
    justify-content: center; /* Centraliza horizontalmente */
    justify-items: center;
    overflow: hidden; /* Para não exibir o conteúdo invisível fora da caixa */
   

   
}

.principal__servico__tipos__box  h1{
    color: white;
    font-size: 3.5vh;
    margin-top: 12vh;
    transition: transform 0.3s ease; /* Transição suave para o título */
}

.descricao{
    transform: translateY(10vh); /* Inicialmente posicionado abaixo */
    opacity: 0; /* Faz o texto ficar invisível */
    visibility: hidden; /* Previne que o texto seja clicável ou focado */
   
    /*tamanho/estilo*/
    font-size: 1.8vh;
    line-height: 2.4vh;
    width: 20vw;  /* Largura máxima de 100px */
    height: 15.05vh; /* Altura máxima de 300px */
    overflow: hidden; /* Esconde o texto que ultrapassar os limites */
    word-wrap: break-word; /* Quebra palavras longas que ultrapassam a largura */
    font-family: "Roboto Slab", system-ui;
    text-align: center;
    color: white;
    /*tamanho/estilo*/
  
   
}

.verMais{

    background-color: transparent; /* Fundo semi-transparente */
    transform: translateY(10vh); /* Inicialmente posicionado abaixo */
    opacity: 0; /* Faz o texto ficar invisível */
    visibility: hidden; /* Previne que o texto seja clicável ou focado */
    height: 4vh;
    width: 8vw;
    color: white;
    border: 1px solid white; /* Define a borda */
    border-radius: 5px; /* Arredonda os cantos */
    font-size: 16px; /* Tamanho da fonte */
    cursor: pointer; /* Mostra a mãozinha no hover */

}

.principal__servico__tipos__box:hover{
    background-color: rgba(5, 6, 5, 0.4);
}


.principal__servico__tipos__box:hover .verMais{
    transform: translateY(-2.7vh); /* Move o texto para sua posição original */
    opacity: 1; /* O texto se torna visível */
    visibility: visible; /* Permite que o texto seja clicável */
    transition: transform 0.7s ease, opacity 1s ease, visibility 1s linear 0s; /* Remove o atraso na visibilidade */
}

.principal__servico__tipos__box:hover .descricao{

    transform: translateY(-2.7vh); /* Move o texto para sua posição original */
    opacity: 1; /* O texto se torna visível */
    visibility: visible; /* Permite que o texto seja clicável */
    transition: transform 0.7s ease, opacity 1s ease, visibility 1s linear 0s; /* Remove o atraso na visibilidade */
}
.principal__servico__tipos__box:hover h1{
    transform: translateY(-4vh); /* Move o título para cima */
    transition: transform 0.5s ease, opacity 1s ease, visibility 1s linear 0s; /* Remove o atraso na visibilidade */

}

/* Seleciona as divs da última coluna (3, 6) */
.principal__servico__tipos div:nth-child(3n) {
    /*retirando  borda da direita*/
    border-right: none;
    
}

.principal__servico__tipos div:nth-child(1) {   
    border-radius: 3vw 0 0 0;
}
.principal__servico__tipos div:nth-child(3) {
    border-radius: 0 3vw 0 0;
}   
.principal__servico__tipos div:nth-child(4) {   
    border-radius: 0 0 0 3vw;
}
.principal__servico__tipos div:nth-child(6) {   
    border-radius: 0 0 3vw 0;
}

.principal__servico__tipos div:nth-child(4),
.principal__servico__tipos div:nth-child(5), 
.principal__servico__tipos div:nth-child(6){
    /*retirando borda da direita*/
    border-bottom: none;
}


.principal__projetos{
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 2%;
}

.principal__projetos__text{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3vh;
}



.principal__projetos__text p{
    font-size: 3vh;
    width: 45vw;  /* Largura máxima de 100px */
    height: 28vh; /* Altura máxima de 300px */
    overflow: hidden; /* Esconde o texto que ultrapassar os limites */
    word-wrap: break-word; /* Quebra palavras longas que ultrapassam a largura */
    font-family: "Roboto Slab", system-ui;
    text-align: center;
}

.carousel_projeto__Espaco{
    width: 40vw;
    position: relative;

    overflow: hidden;
    transition: transform 0.5s ease-in-out;

}
.carousel_projeto{
    display: flex;
    gap: 5vh;
   
    transition: transform 0.5s ease-in-out;
}

.seta__projetos img{

    cursor: pointer;
    width: 100%; /* A imagem ocupará 100% da largura do contêiner */
    max-width: 10vh; /* Defina a largura máxima que a imagem pode ter */
    height: auto; /* Mantém a proporção da altura em relação à largura */
    max-height: 10vh; /* Limite de altura máxima, se necessário */
    margin: 0 auto; /* Centraliza a imagem dentro do contêiner */

}

.imagem__projeto__img{

    width: 15w;
    height: 44vh;

}

.principal__projetos__imagens{
    display: flex;
    flex-direction: row;
    align-items: center;
    height: 50vh;
    gap: 5%;
}




.principal__clientes{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.5vh;
    margin-bottom: 2vh;

}

.principal__clientes hr{
    border: none; 
    height: 2px;
    width: 20vw;
    background-color: black;
}

.principal__clientes p{
    font-size: 3vh;
    width: 50vw;  /* Largura máxima de 100px */
    height: 8vh; /* Altura máxima de 300px */
    overflow: hidden; /* Esconde o texto que ultrapassar os limites */
    word-wrap: break-word; /* Quebra palavras longas que ultrapassam a largura */
    font-family: "Roboto Slab", system-ui;
    text-align: center;
 
}

.principal__clientes__imagem{
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 68vw;
}

.carousel-wrapper{
    
    overflow: hidden;
    width: 100%;

}


.clientes-carrosel{
    display: flex;
    gap: 3vw;
    width: calc(6 * 15vh); /* Ajusta o container para mostrar exatamente 5 itens */
    transition: transform 0.5s ease-in-out;
}




.carousel-item {
    display: flex;
    align-items: center;
    text-align: center;
}

.carousel-item img{
    max-width: 15vh; /* Defina a largura máxima que a imagem pode ter */
    min-width: 13vh;
    min-height: 3vh;
    max-height: 15vh; /* Limite de altura máxima, se necessário */
 
}

.seta{
    cursor: pointer;
    user-select: none;
}

.seta img{
    cursor: pointer;
    width: 100%; /* A imagem ocupará 100% da largura do contêiner */
    max-width: 15vh; /* Defina a largura máxima que a imagem pode ter */
    height: auto; /* Mantém a proporção da altura em relação à largura */
    max-height: 15vh; /* Limite de altura máxima, se necessário */
    margin: 0 auto; /* Centraliza a imagem dentro do contêiner */
}

.img{
    transition: transform 1s ease;
}

.moving {
    transform: translateX(100px); /* Movimenta a imagem para a esquerda */
    transition: transform 1.5s ease;
}

.principal__clientes__seta{
    width: 100px;
    cursor: pointer; /* Exibe a mãozinha ao passar o mouse */
}



footer{
    width: 100%;
    height: 33vh;
    background-color: #110f0f;
}

.rodape{

    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: center; 
    gap: 12vw;
}

.rodape img{
    height: 20vh;
    width: 10vw;
    
}

.rodape h1{
    margin-top: 3vh;
    font-size: 4vh;
    color: white;
}

.rodape a{
    font-size: 2vh;
    color: white;
    text-decoration: none;
    cursor: pointer;
}

.rodape p{
    font-size: 2vh;
    color: white;  
}

.rodape__menu{
    display: flex;
    flex-direction: column;
    gap: 1.5vh;
}


