body {
  font-family: 'Open Sans', sans-serif;
  margin: 0;
  padding: 0;
}

/* HEADER 1 */
.header-1 {
  background-color: #ffffff;
  min-height: 50px;
  width: 100%;
  border-bottom: 1px solid #eaeaea;
}

.social-icons {
  height: 50px; /* mesma altura do header */
  display: flex;
  align-items: center;
}

/* Ícones sociais */
.social-icons .social-link img {
  width: 15px;
  height: 15px;
  display: block;
  filter: brightness(0) saturate(100%) invert(72%) sepia(0%) saturate(0%) hue-rotate(0deg); /* aproximação de #b3b3b3 */
  transition: filter 0.3s ease;
}




.social-icons .social-link:hover img {
  filter: grayscale(0%) brightness(1);
}

/* Informações de contato */
.contact-info .info-item {
  display: flex;
  align-items: center;
  gap: 5px;
  color: #787a7a;
  text-decoration: none;
  font-size: 14px;
  transition: color 0.3s ease;
}

.contact-info .info-item img {
  height: 12px;
  filter: brightness(0) saturate(100%) invert(76%) sepia(78%) saturate(1000%) hue-rotate(0deg);
}

.contact-info .info-item:hover {
  color: #fab915;
}
/*==== END HEADER 1 ====*/


/* HEADER 2 */
.header-2 {
  background-color: rgba(33, 35, 36, 0.95);
  height: 80px;
  width: 100%;
}

.logo {
  display: flex;
  align-items: center;
  height: 100%;
}

.logo img {
  max-height: 60px; /* ou ajuste conforme necessário */
  height: auto;
}


.main-menu .nav-link {
  color: #ffffff;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 600;
  padding: 30px 15px;
}

.main-menu .nav-link:hover {
  color: #fab915;
}

.dropdown-menu {
  background-color: #2f3233;
  border-bottom: 4px solid #fab915;
}

.dropdown-item {
  color: #ffffff;
  height: 40px;
  line-height: 40px;
}

.dropdown-item:hover {
  background-color: #212324;
  color: #fab915;
}

.quote-box .quote-title {
  font-size: 12px;
  text-transform: uppercase;
  font-weight: 300;
  color: #ffffff;
}

.quote-box {}

.quote-phone{ 
  background-color:  #25d366; 
  text-align: center;
  color: #ffffff; 
  font-size: 18px;
  font-weight: 400;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
  -moz-border-radius: 10px; 
  padding: 5px 15px ;
}

.quote-box .quote-phone a {
  color: inherit;  
   text-decoration: none;
}

.quote-box .quote-phone a img{ width: 20px; height: 20px; }


/* ===== END HEADER 2 ==== */

/* BANNER */
.banner-slide {
  background-size: cover;
  background-position: center;
  min-height: 600px; /* altura mínima mais realista */
  display: flex;
  align-items: center;
  justify-content: start;
  position: relative;
  padding: 60px 0; /* margens superior e inferior */
}


.banner-slide .container {
  position: relative;
  z-index: 2;
}


.slide-description {
  max-width: 550px;
  color: #ffffff;
  padding-left: 15px; /* Adiciona espaço interno à esquerda */
  padding-right: 15px;
  z-index: 5;
}

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
  background-color: #212324; /* ou #2f3233 para combinar com o botão */
}

.carousel-item {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 0.6s ease;
  z-index: 0;
}


.carousel-item.active {
  opacity: 1;
  position: relative;
  z-index: 1;
}


.carousel-item.active.banner-slide {
  display: flex;
  align-items: center;
  justify-content: start;
}



.overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(33, 35, 36, 0.8); /* leve escurecimento */
  z-index: 1;
}


.slide-description h5 {
  font-size: 16px;
  text-transform: uppercase;
  color: #fab915;
}

.slide-description h1 {
  font-size: 64px;
  text-transform: capitalize;
  color: #ffffff;
}

.slide-description p {
  font-size: 20px;
  margin-bottom: 30px;
}

.banner-btn {
  position: relative;
  font-size: 14px;
  text-transform: uppercase;
  font-weight: 700;
  padding: 23px 35px;
  line-height: 1;
  display: inline-block;
  text-align: center;
  color: #000000;
  background-color: #f4a300; /* amarelo-alaranjado */
  border-radius: 30px;
  border: none;
  transition: all 0.4s linear 0s;
  z-index: 1;
  text-decoration: none;
}

.banner-btn:hover {
  color: #ffffff;
  background-color: #e08e00; /* tom mais escuro no hover */

}
/*==== END BANNER === */


/* SOBRE NÓS */
.sobre-nos {
  background-color: #ffffff;
  padding: 80px 0;
}

.sobre-nos .container {
  max-width: 1250px;
}

.sobre-texto h5.subtitulo {
  text-transform: uppercase;
  font-size: 16px;
  font-weight: 700;
  font-family: 'Open Sans', sans-serif;
  color: #fab915;
  margin-bottom: 0px;
}

.sobre-texto h2.titulo {
  font-size: 40px;
  color: #2f3233;
  font-family: 'Open Sans', sans-serif;
  font-weight: 700;  
  margin-bottom: 30px;
}

.linha-destaque {
  width: 60px;
  height: 2px;
  background-color: #fab915;
  margin: 30px auto 30px 0
}

.sobre-texto .destaque {
  font-size: 16px;
  font-weight: 700;
  font-family: 'Open Sans', sans-serif;
  color: #2f3233;
  margin-bottom: 20px;
}

.sobre-texto p {
  color: #787a7a;
  font-family: 'Open Sans', sans-serif;
  font-weight: 300;
  line-height: 1.625rem;
  font-size: 16px;
  margin-bottom: 15px;
}

/* Bloco da Imagem */
.sobre-imagem .imagem-container {
  width: 555px;
  height: 370px;
  overflow: hidden;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: transparent;
}

.sobre-imagem .imagem-container img {
  max-width: 100%;
  max-height: 100%;
  object-fit: cover;
}
/* === END SOBRE NÓS ==== */



/* EQUIPE TÉCNICA */
.equipe-tecnica {
  background-color: #2e3233;
  padding: 100px 0;
  color: #ffffff;
}

.equipe-tecnica .container {
  max-width: 1250px;
}

/* Bloco Esquerdo */
.equipe-texto .subtitulo {
  text-transform: uppercase;
  color: #fab915;
  font-size: 16px;
  font-weight: 700;
  font-family: 'Open Sans', sans-serif;
  margin-bottom: 10px;
}

.equipe-texto .titulo {
  font-size: 40px;
  font-weight: 700;
  color: #ffffff;
  word-break: break-word;
  font-family: 'Open Sans', sans-serif;
  margin-bottom: 30px;
}

.linha-destaque {
  width: 60px;
  height: 2px;
  background-color: #fab915;
  margin: 30px auto 30px 0
}

/* Bloco Direito */
.equipe-descricao {
  margin-top: 30px;
}

.equipe-descricao p {
  color: #bfbfbf;
  font-family: 'Open Sans', sans-serif;
  font-weight: 300;
  line-height: 1.625rem;
  font-size: 16px;
}

/* Divider */
.divider {
  width: calc(100% - 30px);
  margin: 50px auto;
  height: 2px;
  background-color: #565959;
}

/* Blocos de Serviços */
.bloco-servico {
  margin-bottom: 30px;
}

.icone-texto {
  display: flex;
  align-items: center;
  transition: color 0.3s ease;
}

.icone-wrapper {
  width: 60px;
  height: 60px;
  border: 2px solid #fab915;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  /*padding-right: 20px;*/
  margin-right: 20px;
}

.icone-wrapper img {
  width: 36px;
  height: 36px;
  filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(93deg) brightness(103%) contrast(103%);
  transition: filter 0.3s ease;
}

.icone-texto:hover img {
  filter: invert(82%) sepia(10%) saturate(5883%) hue-rotate(338deg) brightness(105%) contrast(102%);
}


.bloco-servico h5 {
  color: #ffffff;
  font-weight: 600;
  text-transform: uppercase;
  font-family: 'Open Sans', sans-serif;
  font-size: 20px;
  word-break: break-word;
  box-sizing: border-box;
  margin: 0;
  
}

.bloco-servico h5 small {
  font-size: 80%;
  display: block;
  line-height: 1;
}

.bloco-servico h5 a {
  color: #ffffff;
  text-decoration: none;
  
}

.icone-texto:hover h5 a{
  color: #fab915;
}
/*=== END equipe TÉCNICA === */







/* ==== PRODUTOS === */
/* Seção Produtos */
.secao-produtos .container {
  max-width: 1250px;
}


.secao-produtos .container {
  max-width: 1250px;
  padding: 100px 0;
}


.flex-row2 {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}

/* Bloco Esquerdo */
.bloco-esquerdo h5.subtitulo {
  text-transform: uppercase;
  font-size: 16px;
  font-weight: 700;
  font-family: 'Open Sans', sans-serif;
  color: #fab915;
  margin-bottom: 10px;
  margin-top: 60px;
}



.bloco-esquerdo h2.titulo {
  font-size: 44px;
  color: #2f3233;
  font-family: 'Open Sans', sans-serif;
  font-weight: 800;
  margin-bottom: 30px;
}


.linha-destaque {
  width: 60px;
  height: 2px;
  background-color: #fab915;
  margin: 30px auto 30px 0
}

/* Slider */
.slider-produtos {
  display: none; /* Slick vai transformar isso em carrossel */
  /*
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  */
}



.item-produto {
  box-sizing: border-box;
  width: 220px;
  margin-right: 50px;
  padding: 10px;
}


.imagem-container {
  width: 260px;
  height: 260px;
  background-color: #f2f2f2;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}



.imagem-container img {
  width: 100%;
  /*height: auto;*/
  border-radius: 6px;
}


.legenda {
  width: 260px;
  height: 100px;
  border-bottom: 3px solid #fab915;
  margin-top: 00px;
  background: #e9e9e9;
  padding: 20px;

}

.titulo-legenda {
  color: #2f3233;
  font-size: 20px;
  line-height: 20px;
  font-weight: 700;
  font-family: 'Open Sans', sans-serif;
  word-break: break-word;
}

.sub-legenda {
  font-weight: 400;
  font-size: 12px;
  text-transform: uppercase;
  margin-top:10px;
  font-family: 'Open Sans', sans-serif;
  color: #fab915;
}

/*setas navegação*/
.slick-prev, .slick-next {
  background: none;
  border: none;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  cursor: pointer;
  background-attachment: fixed;
}

.slick-prev {
  left: -20px;
  width: 40px;
  height: 40px;
  z-index; 20;
  background-color: #fab915;
}

.slick-next {
  right: 20px;
  width: 40px;
  height: 40px;
  z-index; 20;
  background-color: #fab915;
}

.slick-prev img,
.slick-next img {
  width: 30px;
  height: 30px;
}

.slick-dots{ display: inline-flex; list-style: none; }
.slick-dots li{ 
  display: inline-flex;
  list-style: none; margin:0 2px;
  align-items: center;
  justify-content: center;
}
.slick-dots li button{ 
 border: solid 2px #fab915;
 background-color: #fab915;
 border-radius: 50%;
 width: 18px;
 height: 18px;
}


.slick-dots li.slick-active button{
 background-color: #ffffff; 
 border: solid 2px #fab915;
}

.slick-dots li.slick-active button:before {
  content: '' !important;   /* remove conteúdo padrão*/
}

/*==== end produtos */





/*==== contato FORM ===== */
/* Seção de contato */
.secao-contato {
  background-color: #2e3233;
  padding: 100px 0;
  width: 100%;
}

.secao-contato .container {
  max-width: 1250px;
}

/* Títulos */
.secao-contato .subtitulo {
  text-transform: uppercase;
  color: #fab915;
  font-size: 16px;
  font-weight: 700;
  font-family: 'Open Sans', sans-serif;
  margin-bottom: 10px;
}

.secao-contato .titulo {
  color: #ffffff;
  font-size: 40px;
  font-weight: 700;
  word-wrap: break-word;
  font-family: 'Open Sans', sans-serif;
  margin-bottom: 20px;
}

/* Linha destaque */
.linha-destaque {
  width: 60px;
  height: 2px;
  background-color: #fab915;
  margin: 30px auto 30px 0
}

/* Formulário */
.formulario-contato input,
.formulario-contato textarea {
  width: 100%;
  padding: 15px 20px;
  background-color: #3a3f41;
  border: none;
  border-radius: 4px;
  color: #ffffff;
  font-size: 16px;
  font-family: 'Open Sans', sans-serif;
}

.formulario-contato input::placeholder,
.formulario-contato textarea::placeholder {
  color: #bfbfbf;
}

/* Botão enviar */
.btn-enviar {
  width: 200px;
  height: 63px;
  background-color: #fab915;
  color: #ffffff;
  font-size: 16px;
  font-weight: 600;
  text-transform: uppercase;
  border: none;
  border-radius: 4px;
  transition: color 0.3s ease, background-color 0.3s ease;
}

.btn-enviar:hover {
  color: #474c4e;
  background-color: #e0a000;
}
/*==== END contato FORM ===== */



/*=== barra amarela  ====*/
.secao-slider-destaque {
  background-color: #fab915;
  height: 120px;
  width: 100%;
  display: flex;
  align-items: center;
}

.secao-slider-destaque .container {
  max-width: 1250px;
  margin: 0 auto;
  width: 100%;
}
/*=== barra amarela  ====*/


/* === estilos footer ==== */
/* Rodapé */
.rodape {
  background-color: #2e3233;
  padding: 80px 0;
  color: #ffffff;
  font-family: 'Open Sans', sans-serif;
}

.rodape .container {
  max-width: 1250px;
}

/* Coluna 1: Logo */
.logo-footer {
  max-width: 180px;
  margin-bottom: 20px;
}

.descricao-footer {
  font-size: 14px;
  color: #bfbfbf;
  line-height: 1.6;
}

/* Títulos das colunas */
.titulo-coluna {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 20px;
  text-transform: uppercase;
}

/* Lista de contato */
.lista-contato {
  list-style: none;
  padding: 0;
}

.lista-contato li {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
  font-size: 14px;
  color: #bfbfbf;
}

.lista-contato img {
  width: 16px;
  margin-right: 10px;
  filter: brightness(0) saturate(100%) invert(76%) sepia(78%) saturate(1000%) hue-rotate(0deg); /* amarelo suave */
}

/* Redes sociais */
.icones-redes {
  display: flex;
  gap: 15px;
  margin-bottom: 20px;
}

.icone-social img {
  width: 24px;
  height: 24px;
  filter: brightness(0) saturate(100%) invert(100%);
  transition: filter 0.3s ease;
}

.icone-social:hover img {
  filter: brightness(0) saturate(100%) invert(76%) sepia(78%) saturate(1000%) hue-rotate(0deg); /* hover amarelo */
}

/* Botão WhatsApp */
.btn-whatsapp {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background-color: #25D366;
  color: #ffffff;
  font-weight: 600;
  font-size: 14px;
  padding: 12px 20px;
  border-radius: 4px;
  text-decoration: none;
  transition: background-color 0.3s ease;
}

.btn-whatsapp img {
  width: 20px;
  height: 20px;
}

.btn-whatsapp:hover {
  background-color: #1ebe5d;
}
/* ==== end estilos footer === */



/* Responsivo */
@media (max-width: 768px) {

/* Contact info: largura total e centralizado */
  .contact-info {
    width: 100%;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0px !important; /* reduzido de gap-4 (~1.5rem) para 8px */
    text-align: center;
  }
/*header 1*/

.contact-info.d-flex{display: inline-block !important; }

  .header-1-inner {
    flex-direction: column;
    align-items: center;
    gap: 10px;
    text-align: center;
  }

  .social-icons {
    justify-content: center;
    gap: 12px;
  }


  .contact-info .info-item {
    justify-content: center;
    font-size: 15px;
    gap: 4px !important; /* reduz ainda mais o espaçamento interno */
  }


  .contact-info .info-item span {
    display: block;
    max-width: 90vw;
    word-wrap: break-word;
  }


/* end header 1*/  


  .flex-row2 {
    flex-direction: column;
  }

  .slider-produtos {
    grid-template-columns: repeat(2, 1fr);
    justify-content: center;
  }

  .item-produto {
    width: 100%;
  }

  .imagem-container,
  .legenda {
    width: 100%;
  }

/*melhora responsividade header 2*/
  .header-2 {
    height: auto;
    padding: 10px 0;
  }

  .header-2 .container {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 15px;
  }

  .logo {
    justify-content: center;
    margin-bottom: 10px;
  }

  .main-menu {
    width: 100%;
  }

  .main-menu .nav {
    flex-direction: column;
    align-items: center;
    padding: 0;
  }

  .main-menu .nav-link {
    padding: 10px 0;
    font-size: 16px;
  }

  .quote-box {
    width: 100%;
    text-align: center;
  }

  .quote-box .quote-title {
    font-size: 14px;
    margin-bottom: 5px;
  }

  .quote-phone {
    display: inline-block;
    font-size: 16px;
    padding: 8px 12px;
  }

  .quote-phone a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
  }
      /* ====   QUATE ==== */
      .quote-box {
          width: 100%;
          text-align: center;
          display: flex;
          flex-direction: column;
          align-items: center;
          gap: 8px;
        }

        .quote-box .quote-title {
          font-size: 14px;
          text-align: center;
        }

        .quote-phone {
          display: inline-block;
          font-size: 16px;
          padding: 8px 12px;
          text-align: center;
        }

        .quote-phone a {
          display: inline-flex;
          align-items: center;
          justify-content: center;
          gap: 8px;
        }

      /* === END QUOTE === */
/*end melhora responsividade header 2*/ 

}
/* ==== END PRODUTOS === */