/* Estilos básicos */

/* Layout para =>1280*/
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Poppins', sans-serif;
      
}



/* Seção principal */
.sessao-principal {
    width: 100%;
    position: relative;
    
}

/* Container da interface */
.sessao-principal .interface {
    width: 100%;
    padding: 0;
    margin: 0;
}

/* Container do conteúdo */
.conteudo-secao {
    width: 100%;
    display: block;
    
}

/* Estilo para imagem em tela cheia */
.imagem-full-width {
    width: 100vw; /* 100% da largura da viewport */
    max-width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
    
}

/* Ajuste para o elemento picture */
picture {
    display: block;
    width: 100%;
}



.sessao1-container {
    position: relative;
    display:flex;
    align-items: center;  /* alinha verticalmente */
    justify-content: center; /* alinha horizontalmente */
    padding: 0 20px;
    
}

.texto-sessao1 {
    position: absolute;
    margin-top: -35%;
    text-align: left;
    color: white; /* Cor do texto (ajuste conforme necessário) */
    width: 100%;
    padding: 0 100px;
}

.texto-sessao1 h2 {
    font-size: 2rem;
    color:#FFD700;
    margin-bottom: 10px;
    justify-content: left;
    position: relative;
    width: 50%;
    
}

.texto-sessao1 p {
    font-size: 5mm;
    margin-bottom: 20px;
    justify-content: space-between;
    display: flex;
    position: relative;
    width: 45%;

}

.texto-sessao1 {
    z-index: 2; /* Garante que o texto fique acima do overlay */
}

.btn-saiba-mais {
    display: inline-block;
    padding: 10px 20px;
    background-color: #FFD700; /* Amarelo */
    color: #000;
    text-decoration: none;
    border-radius: 5px;
    font-weight: bold;
    position: relative;
    transition: background-color 0.3s ease, transform 0.2s ease;
}

.btn-saiba-mais:hover {
    background-color: #e0b000; /* tom mais escuro */
    transform: scale(1.05);    /* leve aumento */
}

.btn-flutuante{
  position: absolute;
  right: 16px;
  bottom: 16px;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 56px; height: 56px;
  border-radius: 50%;
  color: #fff;            /* ícone branco */
  background: rgba(0,0,0,.6); /* se quiser contraste */
  text-decoration: none;
  box-shadow: 0 8px 20px rgba(0,0,0,.25);
}




/* Sessao do meio */

.interface2{
    background-color: #161b1d;
    padding: 15px 100px;
    display: flex;
    max-width: 100%;
    height: 800px;
    margin: 0 auto;
    align-items:center;
    justify-content:left;
    flex-direction: row;
    gap: 5%;
}

.img-box1 {
    width: 500px;
    height: auto;
    border: 3px solid white;
    border-radius: 10px;
    
}

.img-box p {
    color: #FFFFFF;
    text-align: center;
    
}

.text-box h2 {
    color: #FFD700;
    font-size: 2rem;
    margin-bottom: 70px;
    text-align: justify;
}

.text-box p {
    color: white;
    margin-top: 20px;
    font-size: 5mm;
    text-align: justify;
}

.btn-previa {
    display: inline-block;
    margin-top: 50px;
    padding: 10px 20px;
    background-color: #FFD700; /* Amarelo */
    color: #000;
    text-decoration: none;
    border-radius: 5px;
    font-weight: bold;
    position: relative;
    transition: background-color 0.3s ease, transform 0.2s ease;
}

.btn-previa:hover {
    background-color: #e0b000; /* tom mais escuro */
    transform: scale(1.05);    /* leve aumento */
}


/* Sessão do fim */
.sessao-fim {
    background-color:  white; /* fundo escuro */
    padding: 60px 80px;
}

/* Centraliza o conteúdo na página */
.interface3 {
    max-width: 100%;
    margin: 0 auto;
    text-align: center;
    padding: 0 100px;
}

.titulo-secao {
    color: #000;
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 40px;
}

/* Container pai com layout horizontal */
.container-pai {
  display: flex;
  justify-content: center;   /* centraliza o conjunto */
  gap: 24px;
  flex-wrap: nowrap;         /* NÃO deixa quebrar no desktop */
  margin-top: 40px;
}

.container-pai h2 {
  width: 100%;
  text-align: center;
  margin-bottom: 16px;
  position: static;
}

/* cada bloco */
.tag-container {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px;
  background: #000;
  border-radius: 18px;
  overflow: hidden;
}

   
.tag1 {
    max-width: 96%;
    height: auto;
    border-radius: 8px;
}

.tag2 {
    max-width: 96%;
    height: auto;
    border-radius: 8px;
}

.tag3 {
    max-width: 96%;
    height: auto;
    border-radius: 8px;
}




/* Resposividade */

@media (max-width: 1366px) {

    /*sessao-principal*/
    .imagem-full-width{
        margin-left: 0%;
    }
    .texto-sessao1::before {
        width: 100%;
        height: 110%;
    }
    
    .texto-sessao1 {
        position: absolute;
        margin-top: -35%;
        text-align: center;
        color: white; /* Cor do texto (ajuste conforme necessário) */
        width: 100%;
        
    }

    .texto-sessao1 h2 {
        font-size: 2rem;
        justify-content: space-between;
        position: relative;
        width: 100%;
        
    }

    .texto-sessao1 p {
        font-size: 5mm;    
        justify-content: space-between;
        position: relative;
        width: 95%;
    }

    .btn-saiba-mais {
        padding: 10px 10px;
        font-size: 4mm;
        
    }

    /*sessao-meio*/

    .img-box p {
        color: #FFFFFF;
        text-align: center;
        
    }
    
    .text-box h2 {
        margin-top: -5px;
        color: #FFD700;
        font-size: 2rem;
        margin-bottom: 40px;
        text-align: justify;
    }
    
    .text-box p {
        color: white;
        font-size: 5mm;
        margin-bottom: 30px;
        word-break: break-word; /* Quebra palavras longas quando necessário */
        hyphens: auto; /* Adiciona hífens em quebras de palavras (suporte variável) */
        line-height: 1.3;
        text-align: justify;
    }

    .btn-previa{
        margin-top: 0px;
    }


    /*sessa-final*/
    .container-pai {
        display: flex;
        margin-top: 40px;
        justify-content:space-between;
        gap: 10px; /* espaço entre os blocos */
        flex-wrap: wrap;
    }
    
    .container-pai h2{
        position: absolute;
        align-items: center;
        justify-content: center;
    }
    
    /* Estilo de cada bloco */
    .tag-container {
        width: 300px;
        height: 300px;
    }


}

@media (max-width: 768px) {

/*sessao-principal*/
    .texto-sessao1::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 110%;
    }
    
    .texto-sessao1 {
        position: absolute;
        text-align: center;
        color: white; /* Cor do texto (ajuste conforme necessário) */
        width: 100%;
        padding: 0 20px;
        
    }

    .texto-sessao1 h2 {
        font-size: 1rem;
        color:#FFD700;
        margin-bottom: 10px;
        justify-content: space-between;
        position: relative;
        width: 100%;
        
    }

    .texto-sessao1 p {
        font-size: 4mm;
        margin-bottom: 20px;
        justify-content: space-between;
        display: flex;
        position: relative;
        width: 100%;
    
    }

    .btn-saiba-mais {
        padding: 10px 10px;
        font-size: 4mm;
        
    }

    /*sessao-meio*/

    .interface2{
        height:auto;
        align-items: center;
        text-align: center;
        flex-direction: column;
    }
    
    .img-box1 {
        margin-top: 40px;
        border: 3px solid white;
        border-radius: 10px;
        max-width: 80%;
        max-height: 80%;
        object-fit: contain;
        
      }
    
    .img-box p {
        color: #FFFFFF;
        text-align: center;
        font-size: 0.9rem;
        
    }
    
    .text-box h2 {
        margin-top: 40px;
        color: #FFD700;
        font-size: 1rem;
        margin-bottom: 40px;
        text-align: center;
    }
    
    .text-box p {
        color: white;
        font-size: 5mm;
        word-break: break-word; /* Quebra palavras longas quando necessário */
        hyphens: auto; /* Adiciona hífens em quebras de palavras (suporte variável) */
        line-height: 1.5;
        padding: 10px;
        text-align: center;
    }

    .btn-previa{
        margin-bottom: 10px;
    }


    /*sessa-final*/
    .container-pai {
        display: flex;
        margin-top: 40px;
        justify-content:space-around;
        gap: 20px; /* espaço entre os blocos */
        flex-wrap: wrap;
    }
    
    .container-pai h2{
        position: absolute;
        align-items: center;
        justify-content: center;
    }
    
    /* Estilo de cada bloco */
    .tag-container {
        width: 300px;
        height: 300px;
    }


@media (max-width: 480px) {

/*sessao-principal*/
    .texto-sessao1::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
    
    .texto-sessao1 {
        position: absolute;
        text-align: center;
        color: white; /* Cor do texto (ajuste conforme necessário) */
        margin-top: -110%;
        padding: 10px;
        background: rgba(0, 0, 0, 0.4); /* Overlay preto com 40% de opacidade */
    }

    .texto-sessao1 h2 {
        font-size: 1rem;
        color:#FFD700;
        margin-bottom: 10px;
        justify-content: space-between;
        position: relative;
        width: 100%;
        
    }

    .texto-sessao1 p {
        font-size: 4mm;
        margin-bottom: 20px;
        text-align: center;
        display: flex;
        position: relative;
        width: 100%;
    
    }

    .btn-saiba-mais {
        padding: 10px 10px;
        font-size: 4mm;
        
    }

    /*sessao-meio*/

    .interface2{
        height:auto;
        align-items: center;
        text-align: center;
        flex-direction: column;
    }
    
    .img-box1 {
        margin-top: 40px;
        border: 3px solid white;
        border-radius: 10px;
        max-width: 80%;
        max-height: 80%;
        object-fit: contain;
        
      }
    
    .img-box p {
        color: #FFFFFF;
        text-align: center;
        font-size: 0.9rem;
        
    }
    
    .text-box h2 {
        margin-top: 40px;
        color: #FFD700;
        font-size: 1rem;
        margin-bottom: 40px;
        text-align: center;
    }
    
    .text-box p {
        color: white;
        font-size: 4mm;
        width: 360px;
        line-height: 1.5;
        padding: 10px;
        text-align:justify;
    }

    .btn-previa{
        margin-bottom: 10px;
    }


    /*sessa-final*/

    .interface3 {
        padding: 0 20px;
    }
    .container-pai {
        display: flex;
        margin-top: 40px;
        justify-content:space-around;
        gap: 20px; /* espaço entre os blocos */
        flex-wrap: wrap;
    }
    
    .container-pai h2{
        position: absolute;
        align-items: center;
        justify-content: center;
    }
    
    /* Estilo de cada bloco */
    .tag-container {
        width: auto;
        height: auto;
    }

}

}

.sessao-materiais{
  background: var(--card, #161b1d);
  color: var(--text, #fff);
  padding: 56px 16px;
}
.sessao-materiais h2{
    color: #FFD700;
}
.sessao-materiais .interface4{
  max-width: 1100px; margin: 0 auto;
}
.sessao-materiais .titulo-sessao{
  text-align: center; margin: 0 0 28px; font-size: 1.8rem;
}
.material-grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin-bottom: 24px;
}
.card-mat{
  background: rgba(255,255,255,0.04);
  border: 1px solid var(--border, rgba(255,255,255,.18));
  border-radius: 16px;
  padding: 18px;
  box-shadow: var(--shadow, 0 15px 35px rgba(0,0,0,0.3));
}
.card-mat h3{ margin: 0 0 8px; font-size: 1.05rem; }
.card-mat ul{ margin: 0; padding-left: 18px; line-height: 1.5; }

.tabela-tecnica{
  background: rgba(255,255,255,0.04);
  border: 1px solid var(--border, rgba(255,255,255,.18));
  border-radius: 16px;
  overflow: hidden;
}
.tabela-tecnica .linha{
  display: grid; grid-template-columns: 180px 1fr;
  gap: 12px; padding: 12px 16px; border-bottom: 1px solid rgba(255,255,255,0.08);
}
.tabela-tecnica .linha:last-child{ border-bottom: 0; }
.tabela-tecnica .linha span:first-child{
  color: var(--muted, #a8b0b6); font-weight: 600;
}
.nota{ margin-top: 10px; color: var(--muted, #a8b0b6); font-size: .95rem; }

/* Responsivo */
@media (max-width: 900px){
  .material-grid{ grid-template-columns: 1fr; }
  .tabela-tecnica .linha{ grid-template-columns: 1fr; }
}
