@charset "UTF-8";
/* MIXINS RESPONSIVO */
@import url("https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700;900&display=swap");
.titulo-secao-home {
  color: #434343;
  font-family: titulo;
  margin-bottom: 0;
  padding-bottom: 0;
  font-size: 1.8rem;
}
@media only screen and (max-width: 900px) {
  .titulo-secao-home {
    font-size: 1.5rem;
  }
}

.titulo-secao-interno {
  background-color: #f1f1f1;
  font-family: "Lato", sans-serif;
  padding: 1rem;
  font-size: 1.2rem;
  text-transform: uppercase;
}
.titulo-secao-interno h2 {
  margin-bottom: 0;
  font-size: 0.85rem;
  color: #85ac28;
}

.header-titulo-informativo {
  display: flex;
  align-items: start;
  justify-content: start;
  gap: 10px;
  margin-top: 20px;
  margin-bottom: 10px;
}
.header-titulo-informativo div.linhas {
  margin-top: 8px;
}
.header-titulo-informativo div.linhas span {
  display: block;
  width: 30px;
  height: 2px;
  background-color: #94b649;
  margin-bottom: 3px;
  padding-top: 0;
}

.titulo-secao {
  background-color: #f1f1f1;
  font-family: titulo;
  margin-bottom: 0;
  padding-bottom: 0;
  font-size: 1.2rem;
  text-transform: uppercase;
}
.titulo-secao h2 {
  margin-bottom: 0;
  font-size: 0.85rem;
  color: #85ac28;
}

.header-imagem-interno {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.header-imagem-interno2 {
  display: grid;
  grid-template-columns: 1fr;
}
.header-imagem-interno img {
  height: 350px;
  width: 100%;
  object-fit: cover;
}
@media only screen and (max-width: 900px) {
  .header-imagem-interno img {
    grid-template-columns: 1fr;
  }
}
@media only screen and (max-width: 600px) {
  .header-imagem-interno img {
    height: 135px;
  }
}

.header-imagem-interno2 img {
  height: 350px;
  width: 100%;
  object-fit: cover;
}
@media only screen and (max-width: 900px) {
  .header-imagem-interno2 img {
    grid-template-columns: 1fr;
  }
}
@media only screen and (max-width: 600px) {
  .header-imagem-interno2 img {
    height: 135px;
  }
}

.dropbtn {
  text-decoration: none;
  text-transform: uppercase;
  color: #2f2f2f;
  font-size: 0.75rem;
  transition: all ease-in-out 0.5s;
  font-family: "Lato", sans-serif;
  cursor: pointer;
  background: none;
  border: none;
}

.dropdown {
  position: relative;
  display: inline-block;
}

.dropdown-content {
  display: none;
  position: absolute;
  background-color: #f1f1f1;
  min-width: 200px;
  overflow: auto;
  box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
  z-index: 100;
}

.dropdown-content a {
  color: black;
  padding: 12px 16px;
  text-decoration: none;
  display: block;
}

.dropdown a:hover {
  background-color: #ddd;
}

.show {
  display: block;
}

.title-header-iterno {
  font-family: texto;
  font-weight: 600;
  font-size: 16px;
  color: #434343;
  text-align: center;
  max-width: 860px;
  margin: 2rem auto;
}
.title-header-iterno strong {
  font-weight: 900;
}

section.atuacoes {
  background-color: #efefef;
}
section.atuacoes div.conteudo {
  display: grid;
  grid-template-columns: 1fr 1fr;
}
section.atuacoes div.conteudo div.texto div.txt {
  height: 60%;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
section.atuacoes div.conteudo div.texto div.txt h3 {
  font-family: titulo;
  width: 75%;
  font-size: 1.7rem;
  font-weight: bold;
  color: #434343;
}
section.atuacoes div.conteudo div.texto div.txt h3 strong {
  font-weight: 900;
}
section.atuacoes div.conteudo div.texto .atuacao-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
section.atuacoes div.conteudo div.texto .atuacao-container h2 {
  color: #87ac45;
  font-size: 24px;
  font-weight: 700;
}
section.atuacoes div.conteudo div.texto .atuacao-container .lines {
  display: flex;
  gap: 5px;
  /* Espaçamento entre as linhas */
  margin-bottom: 5px;
  /* Espaço entre as linhas e o texto */
  align-self: flex-start;
}
section.atuacoes div.conteudo div.texto .atuacao-container .lines span {
  width: 5px;
  /* Espessura da linha */
  height: 40px;
  /* Altura da linha */
  background-color: #d7d7d7;
  /* Cor da linha */
}
@media only screen and (max-width: 600px) {
  section.atuacoes div.conteudo div.texto div.txt h3 {
    font-size: 18px;
    width: 100%;
  }
}
section.atuacoes div.conteudo div.foto {
  display: flex;
  justify-content: center;
  align-items: center;
}
section.atuacoes div.conteudo div.foto img {
  width: 90%;
  transition: all ease-in-out 0.4s;
  cursor: pointer;
}
section.atuacoes div.conteudo div.foto img:hover {
  scale: 1.04;
}
@media only screen and (max-width: 900px) {
  section.atuacoes div.conteudo {
    grid-template-columns: 1fr;
  }
}

section.serv div.conteudo {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px;
  padding: 100px 0;
}
section.serv div.conteudo .cards {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
}
section.serv div.conteudo .cards h2 {
  text-transform: uppercase;
  font-size: 1.7rem;
  font-weight: 700;
  margin-bottom: 0px;
  color: #434343;
}
section.serv div.conteudo .cards p {
  color: #434343;
  font-size: 16px;
  font-family: texto;
  font-weight: 600;
  width: 80%;
}
section.serv div.conteudo .cards img {
  width: 150px;
  transition: all ease-in-out 0.5s;
  cursor: pointer;
}
section.serv div.conteudo .cards img:hover {
  transform: scale(1.05);
}
@media only screen and (max-width: 900px) {
  section.serv div.conteudo .cards {
    padding: 0 10px;
  }
  section.serv div.conteudo .cards p {
    width: 100%;
    font-size: 14px;
  }
}
@media only screen and (max-width: 900px) {
  section.serv div.conteudo {
    grid-template-columns: 1fr;
  }
}

section.banner-diferencial {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding-bottom: 30px;
}
section.banner-diferencial div.conteudo {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px;
}
section.banner-diferencial div.conteudo div.logo img {
  width: 80%;
}
section.banner-diferencial div.conteudo div.texto {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
section.banner-diferencial div.conteudo div.texto h2 {
  color: #fff;
  position: relative;
  /* Necessário para que o ::after seja posicionado em relação ao h2 */
  margin-bottom: 30px;
  padding-top: 30px;
}
section.banner-diferencial div.conteudo div.texto h2::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -20px;
  width: 30%;
  height: 2px;
  background-color: #8fb350;
}
section.banner-diferencial div.conteudo div.texto p {
  color: #fff;
  width: 80%;
}
@media only screen and (max-width: 600px) {
  section.banner-diferencial div.conteudo {
    grid-template-columns: 1fr;
  }
}

section.btn {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 30px 0;
}
section.btn a {
  display: inline-block;
  text-transform: uppercase;
  text-decoration: none;
  font-family: texto;
  font-weight: 600;
  color: #434343;
  font-size: 0.6rem;
  letter-spacing: 2px;
  border: solid 1px #94b649;
  padding: 1rem;
  text-align: center;
  cursor: pointer;
  transition: all ease-in-out 0.5s;
}
@media only screen and (max-width: 900px) {
  section.btn a {
    padding: 0.5rem 0.3rem;
    font-size: 0.6rem;
  }
}
section.btn a:hover {
  background-color: #94b649;
  color: #fff;
}

section.text {
  display: flex;
  justify-content: center;
  padding-top: 40px;
}
section.text p {
  font-family: texto;
  font-weight: 600;
  max-width: 900px;
  color: #544141;
  font-size: 16px;
  text-align: justify;
}
section.text p strong {
  font-weight: 900;
}

section.servicoss {
  padding: 50px 0;
}
section.servicoss div.conteudo {
  width: 70%;
  max-width: 1280px;
  margin: auto;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 30px;
  justify-content: center;
  align-items: center;
}
section.servicoss div.conteudo div.cards {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  border: 1px solid #595959;
  border-radius: 25px;
  padding: 15px;
}
section.servicoss div.conteudo div.cards img {
  width: 100px;
  position: relative;
}
section.servicoss div.conteudo div.cards div.linha {
  display: flex;
  gap: 5px;
  margin-bottom: 5px;
}
section.servicoss div.conteudo div.cards div.linha span {
  width: 100px;
  height: 3px;
  background-color: #85ac28;
}
section.servicoss div.conteudo div.cards h2 {
  font-size: 20px;
  text-align: center;
}
@media only screen and (max-width: 900px) {
  section.servicoss div.conteudo {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only screen and (max-width: 900px) {
  section.servicoss div.conteudo {
    grid-template-columns: 1fr 1fr;
  }
}

section.modalidade {
  background-color: #efefef;
}
section.modalidade div.conteudo div.texto div.txt {
  height: 60%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
section.modalidade div.conteudo div.texto div.txt h3 {
  width: 90%;
  position: relative; /* Necessário para posicionar o ::before */
  padding-top: 30px; /* Espaço para a linha */
}
section.modalidade div.conteudo div.texto div.txt h3 p {
  font-size: 16px;
  font-weight: 600;
  color: #434343;
}
section.modalidade div.conteudo div.texto div.txt h3::before {
  content: "";
  position: absolute;
  top: 10px;
  left: 0;
  width: 10%;
  height: 2px; /* Espessura da linha */
  background-color: #85ac28; /* Cor da linha */
}
section.modalidade div.conteudo div.texto .atuacao-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
section.modalidade div.conteudo div.texto .atuacao-container h2 {
  color: #87ac45;
  font-size: 24px;
  font-weight: 700;
}
section.modalidade div.conteudo div.texto .atuacao-container .lines {
  display: flex;
  gap: 5px;
  /* Espaçamento entre as linhas */
  margin-bottom: 5px;
  /* Espaço entre as linhas e o texto */
  align-self: flex-start;
}
section.modalidade div.conteudo div.texto .atuacao-container .lines span {
  width: 5px;
  /* Espessura da linha */
  height: 40px;
  /* Altura da linha */
  background-color: #d7d7d7;
  /* Cor da linha */
}
@media only screen and (max-width: 600px) {
  section.modalidade div.conteudo div.texto div.txt h3 {
    font-size: 18px;
    width: 100%;
  }
}
section.modalidade div.conteudo div.foto {
  display: flex;
  justify-content: center;
  align-items: center;
}
section.modalidade div.conteudo div.foto img {
  width: 90%;
  transition: all ease-in-out 0.4s;
  cursor: pointer;
}
section.modalidade div.conteudo div.foto img:hover {
  scale: 1.04;
}
@media only screen and (max-width: 900px) {
  section.modalidade div.conteudo {
    grid-template-columns: 1fr;
  }
}

section.serv-modalidade div.conteudo {
  padding: 60px 0;
}
section.serv-modalidade div.conteudo div.cards {
  display: flex;
  gap: 20px;
  margin-bottom: 30px;
}
section.serv-modalidade div.conteudo div.cards h2 {
  font-size: 20px;
  padding: 10px;
  text-decoration: underline;
  text-decoration-color: #85ac28;
  text-underline-offset: 15px;
}
section.serv-modalidade div.conteudo div.cards p {
  font-family: texto;
  font-size: 16px;
  text-align: justify;
  padding: 10px;
}
section.serv-modalidade div.conteudo div.cards img {
  width: 120px;
  height: 120px;
}
@media only screen and (max-width: 600px) {
  section.serv-modalidade div.conteudo div.cards {
    flex-direction: column;
    align-items: center;
  }
  section.serv-modalidade div.conteudo div.cards h2 {
    text-align: center;
  }
}

section.visao div.conteudo {
  display: flex;
  flex-direction: column;
  gap: 30px;
  margin-bottom: 60px;
}
section.visao div.conteudo div.cards {
  background-color: #fff;
  box-shadow: 2px 2px 8px 6px rgba(0, 0, 0, 0.1);
  padding: 20px 20px;
  transition: all ease-in-out 0.5s;
  cursor: pointer;
}
section.visao div.conteudo div.cards:hover {
  scale: 1.08;
}
section.visao div.conteudo div.cards p {
  font-family: texto;
  font-weight: 600;
  font-size: 16px;
  margin-bottom: 0px;
}
section.visao div.conteudo div.cards div.header-historia {
  margin-bottom: 1rem;
  display: flex;
  gap: 10px;
  align-items: center;
}
section.visao div.conteudo div.cards div.header-historia h3 {
  font-family: titulo;
  font-weight: 800;
  font-size: 25px;
  text-transform: uppercase;
}
section.visao div.conteudo div.cards div.header-historia span {
  display: block;
  width: 30px;
  height: 2px;
  background-color: #94b649;
  margin-bottom: 3px;
}
@media only screen and (max-width: 600px) {
  section.visao div.conteudo {
    grid-template-columns: 1fr;
  }
}

footer {
  background-color: #dedede;
  padding: 1.5rem 0 0 0;
  border-top: solid 2px #cdcdcd;
}
footer .content-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 1.5rem;
}
@media only screen and (max-width: 900px) {
  footer .content-footer {
    flex-direction: column;
  }
}
footer .content-footer .marca {
  width: 30%;
}
@media only screen and (max-width: 900px) {
  footer .content-footer .marca {
    width: 100%;
  }
}
footer .content-footer .marca img {
  width: 160px;
}
footer .content-footer .endereco {
  width: 30%;
}
@media only screen and (max-width: 900px) {
  footer .content-footer .endereco {
    width: 100%;
    margin-top: 2rem;
  }
}
footer .content-footer .endereco h4 {
  text-transform: uppercase;
  font-size: 0.85rem;
  font-weight: 800;
  color: #434343;
  font-family: texto;
  font-weight: bold;
}
footer .content-footer .endereco ul {
  margin-bottom: 0;
}
footer .content-footer .endereco li {
  text-transform: uppercase;
  font-size: 0.75rem;
  color: #434343;
  font-family: texto;
  font-weight: 300;
  font-weight: bold;
}
footer .content-footer .endereco .mapa {
  text-transform: uppercase;
  font-size: 0.7rem;
  color: #85ac28;
  font-family: texto;
  font-weight: 900;
  text-decoration: none;
}
footer .content-footer .endereco .contatos {
  display: flex;
  flex-direction: column;
}
footer .content-footer .endereco .contatos a {
  text-transform: uppercase;
  font-size: 0.7rem;
  color: #434343;
  text-decoration: none;
  margin-bottom: 0.3rem;
  font-family: texto;
  font-weight: bold;
}
footer .content-footer .endereco .contatos a span {
  font-weight: bold;
  font-size: 0.9rem;
}
footer .content-footer .endereco .contatos a:nth-child(1) {
  color: #85ac28;
  text-transform: uppercase;
  text-decoration: none;
  font-size: 0.75rem;
  font-family: texto;
  font-weight: bold;
}
footer .copy {
  background-color: #bababa;
  padding: 1rem 0;
}
footer .copy .content-copy {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
footer .copy .content-copy .social-footer {
  display: flex;
  align-items: center;
  margin-bottom: 0;
}
footer .copy .content-copy .social-footer li {
  margin: 0 0.5rem;
}
footer .copy .content-copy .social-footer li img {
  width: 22px;
}
footer .copy .content-copy .social-footer li a {
  color: #777;
  transition: all ease-in-out 0.5s;
  font-size: 1.2rem;
}
footer .copy .content-copy .social-footer li a:hover {
  color: #85ac28;
}
footer .copy .content-copy p {
  font-size: 0.55rem;
  margin-bottom: 0;
  color: #777;
  text-transform: uppercase;
  font-family: texto;
  font-weight: 300;
}
@media only screen and (max-width: 600px) {
  footer .copy .content-copy p {
    display: none;
  }
}

.header-site {
  padding: 1.2rem 0;
  background-color: #fff;
  border-bottom: solid 1px #85ac28;
}
.header-site .content-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media only screen and (max-width: 1190px) {
  .header-site .content-header .nav-desktop {
    display: none;
  }
}
.header-site .content-header .nav-desktop ul {
  width: 100%;
  display: flex;
  margin-bottom: 0;
  position: relative;
}
.header-site .content-header .nav-desktop ul li {
  margin: 0 0.5rem;
  position: relative;
}
.header-site .content-header .nav-desktop ul li ul {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background-color: #fff;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  padding: 0px 0;
  list-style: none;
  display: none;
  position: absolute;
  background-color: #f1f1f1;
  min-width: 200px;
  overflow: auto;
  box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
  z-index: 100;
}
.header-site .content-header .nav-desktop ul li ul li {
  margin: 0;
}
.header-site .content-header .nav-desktop ul li ul a {
  text-decoration: none;
  text-transform: uppercase;
  color: black;
  padding: 12px 16px;
  text-decoration: none;
  display: block;
  font-size: 0.75rem;
  font-family: "Lato", sans-serif;
}
.header-site .content-header .nav-desktop ul li ul a:hover {
  background-color: #ddd;
}
.header-site .content-header .nav-desktop ul li:hover > ul {
  display: block;
}
.header-site .content-header .nav-desktop ul a {
  text-decoration: none;
  text-transform: uppercase;
  color: #2f2f2f;
  font-size: 0.75rem;
  transition: all ease-in-out 0.5s;
  font-family: "Lato", sans-serif;
}
.header-site .content-header .nav-desktop ul a:hover {
  color: #85ac28;
}
.header-site .content-header .social-header {
  display: flex;
  align-items: center;
  margin-bottom: 0;
}
@media only screen and (max-width: 1190px) {
  .header-site .content-header .social-header {
    display: none;
  }
}
.header-site .content-header .social-header li {
  margin: 0 0.5rem;
}
.header-site .content-header .social-header li a {
  color: #777;
  transition: all ease-in-out 0.5s;
  font-size: 1.2rem;
}
.header-site .content-header .social-header li a:hover {
  color: #85ac28;
}

.home .hero {
  padding: 4rem 0;
  background-color: #f1f1f1;
}
@media only screen and (max-width: 900px) {
  .home .hero {
    padding: 2rem 0;
  }
}
.home .hero .carrosel-hero .item .content-carrosel-hero {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.home .hero .carrosel-hero .item .content-carrosel-hero .col-info {
  width: 50%;
}
.home .hero .carrosel-hero .item .content-carrosel-hero .col-info p {
  text-align: justify;
}
@media only screen and (max-width: 900px) {
  .home .hero .carrosel-hero .item .content-carrosel-hero .col-info {
    width: 100%;
  }
}
.home .hero .carrosel-hero .item .content-carrosel-hero .col-info h1 {
  color: #434343;
  margin-bottom: 1rem;
  padding-bottom: 0.7rem;
  font-family: titulo;
  font-size: 1.7rem;
  max-width: 420px;
}
@media only screen and (max-width: 600px) {
  .home .hero .carrosel-hero .item .content-carrosel-hero .col-info h1 {
    font-size: 1.5rem;
  }
}
.home .hero .carrosel-hero .item .content-carrosel-hero .col-info .chamada {
  font-family: titulo;
  font-size: 1.1rem;
  color: #434343;
  margin-bottom: 0.4rem;
}
.home .hero .carrosel-hero .item .content-carrosel-hero .col-info p {
  font-family: texto;
  font-weight: 600;
  font-size: 16px;
  color: #434343;
}
.home .hero .carrosel-hero .item .content-carrosel-hero .col-info .legendas {
  padding: 0;
  padding-right: 3rem;
}
@media only screen and (max-width: 900px) {
  .home .hero .carrosel-hero .item .content-carrosel-hero .col-info .legendas {
    padding: 0 1rem;
  }
}
.home .hero .carrosel-hero .item .content-carrosel-hero .col-info .btn-legendas {
  padding-left: 0;
  display: flex;
  align-items: center;
  margin-top: 3rem;
}
@media only screen and (max-width: 900px) {
  .home .hero .carrosel-hero .item .content-carrosel-hero .col-info .btn-legendas {
    padding: 0 1rem;
    margin: 3rem 0;
    padding-right: 0;
  }
}
.home .hero .carrosel-hero .item .content-carrosel-hero .col-info .btn-legendas a {
  display: inline-block;
  text-transform: uppercase;
  text-decoration: none;
  font-family: texto;
  font-weight: 600;
  color: #434343;
  font-size: 0.6rem;
  letter-spacing: 2px;
  border: solid 1px #94b649;
  padding: 1rem;
  text-align: center;
  cursor: pointer;
  transition: all ease-in-out 0.5s;
}
@media only screen and (max-width: 900px) {
  .home .hero .carrosel-hero .item .content-carrosel-hero .col-info .btn-legendas a {
    padding: 0.5rem 0.3rem;
    font-size: 0.6rem;
  }
}
.home .hero .carrosel-hero .item .content-carrosel-hero .col-info .btn-legendas a:hover {
  background-color: #94b649;
  color: #fff;
}
.home .hero .carrosel-hero .item .content-carrosel-hero .col-info .btn-legendas hr {
  width: 62%;
  background: #94b649;
  height: 1px;
  opacity: 1;
}
.home .hero .carrosel-hero .item .content-carrosel-hero .col-img {
  width: 50%;
}
@media only screen and (max-width: 900px) {
  .home .hero .carrosel-hero .item .content-carrosel-hero .col-img {
    width: 100%;
    padding: 0 1rem;
  }
}
.home .hero .carrosel-hero .item .content-carrosel-hero .col-img img {
  width: 100%;
  height: 400px;
  object-fit: cover;
}
.home .hero .carrosel-hero .item .content-carrosel-hero .col-vid {
  position: relative;
  width: 640px;
  height: 360px;
}
.home .hero .carrosel-hero .item .content-carrosel-hero .col-vid #play-button {
  width: 80px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  cursor: pointer;
  z-index: 10;
}
.home .pre-tecnologia {
  padding: 2.5rem 0;
  background-color: #fff;
}
.home .pre-tecnologia .content-pre-tecnologia {
  display: flex;
  justify-content: center;
  align-items: center;
}
.home .pre-tecnologia .content-pre-tecnologia .col-vid2 {
  position: relative;
  width: 640px;
  height: 360px;
}
.home .pre-tecnologia .content-pre-tecnologia .col-vid2 #play-button {
  width: 80px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  cursor: pointer;
  z-index: 10;
}
@media only screen and (max-width: 900px) {
  .home .pre-tecnologia .content-pre-tecnologia {
    flex-direction: column-reverse;
  }
}
.home .pre-tecnologia .content-pre-tecnologia .col-carrosel {
  width: 50%;
}
@media only screen and (max-width: 900px) {
  .home .pre-tecnologia .content-pre-tecnologia .col-carrosel {
    width: 100%;
  }
}
.home .pre-tecnologia .content-pre-tecnologia .col-carrosel .carrosel-tecnologia .item {
  width: 100%;
}
@media only screen and (max-width: 900px) {
  .home .pre-tecnologia .content-pre-tecnologia .col-carrosel .carrosel-tecnologia .item {
    width: 100%;
  }
}
.home .pre-tecnologia .content-pre-tecnologia .col-carrosel .carrosel-tecnologia .item img {
  width: 100%;
}
.home .pre-tecnologia .content-pre-tecnologia .col-informativo {
  text-align: justify;
  width: 50%;
  padding: 0.85rem 4rem 2.5rem 2.5rem;
}
@media only screen and (max-width: 900px) {
  .home .pre-tecnologia .content-pre-tecnologia .col-informativo {
    width: 100%;
    padding: 1rem;
  }
}
.home .pre-tecnologia .content-pre-tecnologia .col-informativo .titulo-secao-home {
  font-family: titulo;
  margin-bottom: 0;
  padding-bottom: 0;
}
@media only screen and (max-width: 900px) {
  .home .pre-tecnologia .content-pre-tecnologia .col-informativo .titulo-secao-home {
    max-width: inherit;
  }
}
.home .pre-tecnologia .content-pre-tecnologia .col-informativo p {
  font-family: texto;
  font-weight: 600;
  font-size: 16px;
  color: #434343;
}
.home .pre-tecnologia .content-pre-tecnologia .col-informativo .btn-legendas {
  padding-left: 0;
  display: flex;
  align-items: center;
  margin-top: 3rem;
}
@media only screen and (max-width: 900px) {
  .home .pre-tecnologia .content-pre-tecnologia .col-informativo .btn-legendas {
    padding: 0 1rem;
    margin: 3rem 0;
    padding-right: 0;
  }
}
.home .pre-tecnologia .content-pre-tecnologia .col-informativo .btn-legendas a {
  display: inline-block;
  text-transform: uppercase;
  text-decoration: none;
  font-family: texto;
  font-weight: 600;
  color: #434343;
  font-size: 0.6rem;
  letter-spacing: 2px;
  border: solid 1px #94b649;
  padding: 1rem;
  text-align: center;
  cursor: pointer;
  transition: all ease-in-out 0.5s;
}
@media only screen and (max-width: 900px) {
  .home .pre-tecnologia .content-pre-tecnologia .col-informativo .btn-legendas a {
    padding: 0.5rem 0.3rem;
    font-size: 0.6rem;
  }
}
.home .pre-tecnologia .content-pre-tecnologia .col-informativo .btn-legendas a:hover {
  background-color: #94b649;
  color: #fff;
}
.home .pre-tecnologia .content-pre-tecnologia .col-informativo .btn-legendas hr {
  width: 62%;
  background: #94b649;
  height: 1px;
  opacity: 1;
}
.home .pre-tecnologia .owl-dots {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  height: 30px;
}
.home .pre-tecnologia .owl-dots .owl-dot {
  width: 7px;
  background-color: #c7c7c7;
  height: 7px;
  border-radius: 30px;
  margin: 0 3px;
}
.home .pre-tecnologia .owl-dots .active {
  background-color: #464646;
}
.home .lista-obra-recente {
  padding: 3.5rem 0 4rem 0;
  background-color: #8f8f8f;
}
.home .lista-obra-recente .titulo-secao-home {
  color: #fff;
  margin-bottom: 0;
  padding-bottom: 0;
  font-family: titulo;
}
.home .lista-obra-recente .carrosel-obras {
  margin-top: 1.5rem;
}
.home .lista-obra-recente .carrosel-obras .item a {
  position: relative;
  width: 100%;
  height: 100%;
  text-decoration: none;
}
.home .lista-obra-recente .carrosel-obras .item a .infos {
  width: 100%;
  height: 100%;
  position: relative;
}
.home .lista-obra-recente .carrosel-obras .item a .infos img {
  width: 100%;
  height: 350px;
  object-fit: cover;
}
.home .lista-obra-recente .carrosel-obras .item a .infos .legendas {
  position: absolute;
  padding-left: 0.5rem;
  color: #fff;
  display: flex;
  flex-direction: column;
  font-family: texto;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5294117647);
  width: 100%;
  padding: 0;
  height: 100%;
  justify-content: flex-end;
}
.home .lista-obra-recente .carrosel-obras .item a .infos .legendas .tag-obra {
  font-weight: bolder;
  font-size: 0.85rem;
}
.home .lista-obra-recente .carrosel-obras .item a .infos .legendas .localizacao {
  font-weight: 300;
  text-transform: uppercase;
  font-size: 0.75rem;
  letter-spacing: 2px;
}
.home .lista-obra-recente .carrosel-obras .item a .infos .legendas h3 {
  font-size: 1.2rem;
  text-transform: uppercase;
  font-weight: bold;
  margin-bottom: 0.2rem;
}
.home .lista-obra-recente .carrosel-obras .item a .infos .legendas .divider {
  position: relative;
  display: flex;
  flex-direction: column;
  margin-left: 0;
  padding: 1rem;
  background-color: rgba(0, 0, 0, 0.4196078431);
  margin-bottom: 0;
  width: 100%;
  overflow: hidden;
}
.home .lista-obra-recente .carrosel-obras .item a .infos .legendas .divider::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  /* Inicialmente com largura 0 */
  height: 5px;
  background-color: #94b649;
  /* Cor da borda */
  transition: width 0.5s ease-in-out;
  /* Efeito de transição */
}
.home .lista-obra-recente .carrosel-obras .item a .infos .legendas:hover .divider::before {
  width: 100%;
  /* Quando passar o mouse, a largura vai para 100% */
}
.home .lista-obra-recente .owl-dots {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  width: 100%;
  height: 30px;
  margin-top: 3rem;
}
.home .lista-obra-recente .owl-dots .owl-dot {
  width: 57px;
  background-color: #adadad;
  height: 3px;
  margin: 0 3px;
}
.home .lista-obra-recente .owl-dots .active {
  background-color: #fff;
}
.home .lista-clientes-home {
  padding: 2.5rem 0;
  background-color: #fff;
}
.home .lista-clientes-home .owl-dots {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  width: 100%;
  height: 30px;
}
.home .lista-clientes-home .owl-dots .owl-dot {
  width: 7px;
  background-color: #c7c7c7;
  height: 7px;
  border-radius: 30px;
  margin: 0 3px;
}
.home .lista-clientes-home .owl-dots .active {
  background-color: #464646;
}
.home .lista-artigo-home {
  padding: 2.5rem 0;
  background-color: #ebebeb;
}
.home .lista-artigo-home .content-artigo {
  display: flex;
}
.home .lista-artigo-home .content-artigo article {
  width: 33%;
  margin: 0 0.3rem;
  transition: all ease-in-out 0.4s;
}
.home .lista-artigo-home .content-artigo article:hover {
  scale: 1.02;
}
@media only screen and (max-width: 900px) {
  .home .lista-artigo-home .content-artigo article {
    width: 100%;
  }
}
.home .lista-artigo-home .content-artigo article a {
  cursor: pointer;
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
}
.home .lista-artigo-home .content-artigo article .thumb {
  width: 100%;
  position: relative;
}
.home .lista-artigo-home .content-artigo article .thumb img {
  width: 100%;
  height: 350px;
  object-fit: cover;
}
.home .lista-artigo-home .content-artigo article .thumb .data {
  background-color: #007a18;
  width: 60px;
  height: 50px;
  padding: 0.8rem;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-content: center;
  text-align: center;
  text-transform: uppercase;
  font-size: 0.75rem;
  position: absolute;
  bottom: 15px;
  left: 15px;
  font-family: texto;
}
.home .lista-artigo-home .content-artigo article .thumb .data span:nth-child(1) {
  font-weight: bold;
  margin-bottom: 0;
  line-height: 10px;
}
.home .lista-artigo-home .content-artigo article .titulos {
  position: relative;
  padding: 1.2rem;
  background: rgb(142, 142, 142);
  background: linear-gradient(153deg, rgb(142, 142, 142) 0%, rgb(62, 62, 62) 100%);
}
.home .lista-artigo-home .content-artigo article .titulos:hover {
  background: rgb(142, 142, 142);
  background: linear-gradient(100deg, rgb(142, 142, 142) 0%, rgb(62, 62, 62) 100%);
}
.home .lista-artigo-home .content-artigo article .titulos h3 {
  color: #fff;
  font-size: 1.1rem;
  max-width: 300px;
  font-family: texto;
  font-weight: bold;
  height: 45px;
}
.home .lista-artigo-home .content-artigo article .titulos span {
  text-transform: uppercase;
  color: #fff;
  font-size: 0.65rem;
  font-family: texto;
}
.home .lista-artigo-home .content-artigo article:nth-child(1) {
  margin-left: 0;
}
.home .lista-artigo-home .content-artigo article:nth-child(3) {
  margin-right: 0;
}
.home .lista-artigo-home aside {
  text-align: center;
  padding: 2rem 0;
}
.home .lista-artigo-home aside a {
  text-transform: uppercase;
  color: #434343;
  font-size: 0.85rem;
  font-family: texto;
  text-decoration: none;
}

.main-content {
  padding: 3rem 0 0 0;
}
.main-content h3 {
  color: #434343;
  margin-bottom: 1rem;
  padding-bottom: 0.7rem;
  font-family: titulo;
  font-size: 1.7rem;
}
@media only screen and (max-width: 900px) {
  .main-content h3 {
    font-size: 1.5rem;
  }
}
.main-content h3::after {
  content: "";
  display: block;
  width: 155px;
  height: 2px;
  background-color: #94b649;
  margin-top: 0.85rem;
}
.main-content .item-add {
  margin-bottom: 2.5rem;
}
.main-content .item-add a {
  text-decoration: none;
}
.main-content .item-add a address {
  margin-bottom: 0;
}
.main-content .item-add a ul {
  margin-bottom: 0.5rem;
}
.main-content .item-add a li:nth-child(1) {
  font-family: texto;
  font-size: 16px;
  font-weight: 600;
  color: #434343;
}
.main-content .item-add a li {
  font-family: texto;
  font-weight: 600;
  color: #434343;
  font-size: 0.95rem;
}
.main-content .item-add .email a {
  font-family: texto;
  font-weight: 600;
  font-size: 16px;
  color: #94b649;
  font-size: 0.8rem;
}
.main-content .item-add .telefone a {
  font-family: "Lato", sans-serif;
  color: #434343;
  font-size: 0.8rem;
}
@media only screen and (max-width: 900px) {
  .main-content .col-md-6:nth-child(2) {
    margin-top: 2rem;
  }
}
.main-content .form-content {
  display: flex;
  flex-direction: column;
  max-width: 410px;
}
.main-content .form-content input {
  padding: 0.5rem 1rem;
  border: solid 1px #c6c6c6;
  height: 45px;
  font-size: 16px;
  font-weight: 600;
  font-family: texto;
  color: #434343;
  margin-bottom: 0.9rem;
  width: 100%;
}
.main-content .form-content select {
  padding: 0.5rem 1rem;
  border: solid 1px #c6c6c6;
  height: 45px;
  font-size: 0.7rem;
  font-family: texto;
  font-weight: 600;
  color: #434343;
  margin-bottom: 0.9rem;
  width: 100%;
  background-color: #fff;
}
.main-content .form-content textarea {
  padding: 0.5rem 1rem;
  border: solid 1px #c6c6c6;
  height: 45px;
  font-size: 16px;
  font-family: texto;
  font-weight: 600;
  color: #434343;
  margin-bottom: 0.9rem;
  width: 100%;
  height: 150px;
}
.main-content .form-content .btn-button {
  display: flex;
  justify-content: flex-end;
}
.main-content .form-content .btn-button button {
  display: inline-block;
  text-transform: uppercase;
  text-decoration: none;
  font-family: "Lato", sans-serif;
  font-weight: 600;
  color: #434343;
  font-size: 0.7rem;
  letter-spacing: 2px;
  border: solid 1px #94b649;
  padding: 0.85rem 1rem;
  text-align: center;
  cursor: pointer;
  transition: all ease-in-out 0.5s;
  background-color: #fff;
}
.main-content .form-content .btn-button button:hover {
  background-color: #94b649;
  color: #fff;
}

.mapa .content-mapa {
  display: flex;
}
.mapa .content-mapa .col-mapa {
  width: 50%;
}
.mapa .content-mapa .col-mapa iframe {
  width: 100%;
}

.proposta {
  padding-bottom: 3rem;
}
@media only screen and (max-width: 900px) {
  .proposta {
    padding: 2rem 1rem;
  }
}
.proposta .content-form {
  display: flex;
  justify-content: center;
}
.proposta .content-form .col-form {
  width: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (max-width: 900px) {
  .proposta .content-form .col-form {
    width: 100%;
  }
}
.proposta .content-form .col-form .form-content {
  max-width: inherit;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (max-width: 900px) {
  .proposta .content-form .col-form .form-content {
    width: 100%;
  }
}
.proposta h3 {
  color: #434343;
  margin-bottom: 1rem;
  padding-bottom: 0.7rem;
  font-family: titulo;
  font-size: 1.7rem;
}
@media only screen and (max-width: 900px) {
  .proposta h3 {
    font-size: 1.5rem;
  }
}
.proposta h3::after {
  content: "";
  display: block;
  max-width: 155px;
  height: 2px;
  background-color: #94b649;
  margin: 0.85rem auto;
}

#wpcf7-f101-o1 {
  width: 100%;
}

#wpcf7-f189-o1 {
  width: 100%;
}
#wpcf7-f189-o1 .mensagem {
  width: 100%;
  margin-bottom: 0.5rem;
}
#wpcf7-f189-o1 .mensagem span {
  font-weight: 600;
  font-family: texto;
  color: #434343;
  font-size: 16px;
}
#wpcf7-f189-o1 .wpcf7-file {
  width: 560px;
  border: none;
  padding: 0.5rem 0;
}

#wpcf7-f193-o1 {
  width: 100%;
}
#wpcf7-f193-o1 .mensagem {
  width: 100%;
  margin-bottom: 0.5rem;
}
#wpcf7-f193-o1 .mensagem span {
  font-weight: 600;
  font-family: texto;
  color: #434343;
  font-size: 16px;
}
#wpcf7-f193-o1 .wpcf7-file {
  width: 560px;
  border: none;
  padding: 0.5rem 0;
}

#wpcf7-f101-o1 .mensagem {
  width: 100%;
  margin-bottom: 0.5rem;
}
#wpcf7-f101-o1 .mensagem span {
  font-family: texto;
  font-size: 16px;
  font-weight: 600;
  color: #434343;
}
#wpcf7-f101-o1 .wpcf7-file {
  width: 560px;
  border: none;
  padding: 0.5rem 0;
}

.menu {
  width: 55px;
  height: 55px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.hamburger {
  display: block;
  background: #85ac28;
  height: 2px;
  width: 25px;
  position: relative;
  transition: 0.5s ease-in-out;
  cursor: pointer;
}

.menu-icon {
  background: #fff;
  display: none;
}
@media only screen and (max-width: 1190px) {
  .menu-icon {
    display: flex;
  }
}

.hamburger::before, .hamburger::after {
  background: #85ac28;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  transition: 0.5s ease-in-out;
}

.hamburger::before {
  top: -7px;
}

.hamburger::after {
  bottom: -7px;
}

#menu-hamburger {
  display: none;
  margin-bottom: 0 !important;
}

.menu-icon label {
  margin-bottom: 0 !important;
}

.overlay {
  height: 100%;
  width: 0%;
  position: fixed;
  z-index: 88;
  top: 0;
  left: 0;
  background-color: #fff;
  overflow-y: hidden;
  transition: 0.5s;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.overlay ul {
  list-style: none;
  padding: 0;
}
.overlay li {
  position: relative;
}
.overlay li ul {
  display: none;
  flex-direction: column;
  margin-top: 10px;
}
.overlay li ul li {
  margin: 0;
}
.overlay li ul a {
  font-size: 1.5rem;
  color: #666;
  text-transform: none;
  padding: 5px 0;
}
.overlay li.has-submenu > a::after {
  content: "▼";
  font-size: 1rem;
  margin-left: 10px;
}
.overlay li.has-submenu.active ul {
  display: flex;
}

.overlay-content {
  position: relative;
  top: 0;
  width: 100%;
  text-align: center;
  margin-top: 0;
}
@media only screen and (max-width: 1190px) {
  .overlay-content {
    top: -50px;
  }
}
.overlay-content .social-mobile {
  display: none;
}
@media only screen and (max-width: 1190px) {
  .overlay-content .social-mobile {
    display: flex;
  }
}

.overlay a {
  padding: 8px;
  text-decoration: none;
  font-size: 2rem;
  text-align: center;
  text-transform: uppercase;
  font-weight: 300;
  color: #2f2f2f;
  display: block;
  font-family: "Lato", sans-serif;
}
@media only screen and (max-width: 1190px) {
  .overlay a {
    font-size: 1.3rem;
  }
}

.social-mobile {
  display: none;
}
@media only screen and (max-width: 1190px) {
  .social-mobile {
    display: flex;
  }
}

@media screen and (max-height: 450px) {
  .overlay {
    overflow-y: auto;
  }
  .overlay a {
    font-size: 20px;
  }
  .overlay .closebtn {
    font-size: 40px;
    top: 15px;
    right: 35px;
  }
}
.close-btn {
  position: absolute;
  top: -90px;
  right: 15px;
}

.main-content-noticias {
  padding: 2rem 0 4rem 0;
}
.main-content-noticias article {
  max-width: 700px;
  margin: 1rem auto;
}
.main-content-noticias article h1 {
  font-family: titulo;
  color: #434343;
  font-size: 2rem;
  margin-bottom: 0.8rem;
}
.main-content-noticias article h2 {
  font-family: "Lato", sans-serif;
  color: #434343;
  font-size: 1.5rem;
  font-weight: 600;
}
.main-content-noticias article h3 {
  font-family: titulo;
  color: #434343;
  font-size: 1.7rem;
}
.main-content-noticias article h4 {
  font-family: "Lato", sans-serif;
  color: #434343;
  font-size: 1.1rem;
}
.main-content-noticias article h5 {
  font-family: "Lato", sans-serif;
  color: #434343;
  font-size: 0.9rem;
}
.main-content-noticias article img {
  width: 100%;
  margin-bottom: 1rem;
}
.main-content-noticias article p {
  font-size: 1.1rem;
  font-family: "Lato", sans-serif;
  color: #434343;
}
.main-content-noticias article a {
  font-family: "Lato", sans-serif;
  color: #94b649;
}
.main-content-noticias article ul li {
  font-family: "Lato", sans-serif;
  color: #434343;
}

.lista-noticia {
  padding: 3rem 0;
}
.lista-noticia article {
  margin-bottom: 2rem;
}
.lista-noticia .img-destaque img {
  height: 330px;
  object-fit: cover;
  width: 100%;
}
.lista-noticia .data {
  font-family: "Lato", sans-serif;
  color: #434343;
  font-size: 0.85rem;
}
.lista-noticia h3 {
  font-family: titulo;
  color: #434343;
  font-size: 1.7rem;
  max-width: 450px;
}
.lista-noticia p {
  font-family: texto;
  font-weight: 600;
  font-size: 16px;
  color: #434343;
  max-width: 450px;
}
.lista-noticia a {
  font-family: "Lato", sans-serif;
  color: #94b649;
}
.lista-noticia .content-info-noticia {
  padding: 1rem;
}

.clientes .chamada {
  padding: 2rem 0;
}
.clientes .chamada p {
  font-family: texto;
  font-weight: 600;
  font-size: 16px;
  color: #434343;
  text-align: center;
  max-width: 650px;
  margin: 0 auto;
}
.clientes .cliente-item {
  text-align: center;
  border: solid 1px #f1f1f1;
  width: 20%;
}
@media only screen and (max-width: 900px) {
  .clientes .cliente-item {
    width: 50%;
  }
}
.clientes .cliente-item img {
  width: 100%;
}

.chamada-quem-somos {
  padding: 4rem 0 2.5rem 0;
}
@media only screen and (max-width: 900px) {
  .chamada-quem-somos {
    padding: 2rem 0;
  }
}
.chamada-quem-somos h2 {
  color: #434343;
  text-align: center;
  font-family: titulo;
  font-size: 1.7rem;
  max-width: 950px;
  margin: 0 auto 1rem auto;
}
@media only screen and (max-width: 900px) {
  .chamada-quem-somos h2 {
    font-size: 1.7rem;
    max-width: inherit;
  }
}
@media only screen and (max-width: 600px) {
  .chamada-quem-somos h2 {
    font-size: 1.4rem;
  }
}
.chamada-quem-somos p {
  font-family: texto;
  font-weight: 600;
  font-size: 16px;
  color: #434343;
  text-align: center;
  max-width: 850px;
  margin: 0 auto;
  line-height: 24px;
}
@media only screen and (max-width: 600px) {
  .chamada-quem-somos p {
    font-size: 1rem;
    max-width: inherit;
  }
}

.time-line .item {
  margin: 2rem 1rem;
}
.time-line .item .info {
  padding: 2rem;
  box-shadow: 0px 3px 15px -10px rgba(0, 0, 0, 0.51);
}
.time-line .item .info h3 {
  color: #434343;
  font-family: titulo;
  margin-bottom: 0;
  font-size: 1.15rem;
  font-size: 1.7rem;
}
.time-line .item .info .header-historia {
  display: flex;
  gap: 10px;
  margin-bottom: 1.5rem;
}
.time-line .item .info .header-historia span {
  display: block;
  width: 30px;
  height: 2px;
  background-color: #94b649;
  margin-bottom: 2px;
}
.time-line .item .info p {
  font-family: texto;
  font-weight: 400;
  font-size: 1rem;
  color: #434343;
  text-align: justify;
}

.chamada-aleatoria {
  color: #94b649;
  font-weight: 400;
  text-align: center;
  padding: 2.5rem 0;
}
.chamada-aleatoria h4 {
  font-size: 1.7rem;
  max-width: 920px;
  margin: 0 auto;
  font-weight: bold;
  font-family: texto;
}
@media only screen and (max-width: 600px) {
  .chamada-aleatoria h4 {
    font-size: 0.9rem;
    max-width: inherit;
  }
}

.galeria-quem-somos {
  padding-bottom: 3.5rem;
}
.galeria-quem-somos .content-galeria {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.galeria-quem-somos .item {
  display: flex;
  flex-wrap: wrap;
}
.galeria-quem-somos .col-img {
  position: relative;
}
.galeria-quem-somos .col-img .img-destacada {
  width: 100%;
  height: 335px;
  object-fit: cover;
  filter: brightness(0.6);
  transition: all ease-in-out 0.5s;
}
.galeria-quem-somos .col-img .img-destacada:hover {
  filter: brightness(1);
}
.galeria-quem-somos .col-img .loopa {
  position: absolute;
  bottom: 20px;
  right: 20px;
  width: 30px;
}
.galeria-quem-somos .col-img:nth-child(1) {
  width: 65%;
  margin-bottom: 2rem;
  margin-right: 1rem;
}
@media only screen and (max-width: 900px) {
  .galeria-quem-somos .col-img:nth-child(1) {
    width: 100%;
    margin-right: 0;
  }
}
.galeria-quem-somos .col-img:nth-child(2) {
  width: 32%;
  margin-bottom: 2rem;
  margin-left: 1rem;
}
@media only screen and (max-width: 900px) {
  .galeria-quem-somos .col-img:nth-child(2) {
    width: 100%;
    margin-left: 0;
  }
}
.galeria-quem-somos .col-img:nth-child(3) {
  width: 32%;
  margin-bottom: 2rem;
  margin-right: 1rem;
}
@media only screen and (max-width: 900px) {
  .galeria-quem-somos .col-img:nth-child(3) {
    width: 100%;
    margin-right: 0;
  }
}
.galeria-quem-somos .col-img:nth-child(4) {
  width: 65%;
  margin-bottom: 2rem;
  margin-left: 1rem;
}
@media only screen and (max-width: 900px) {
  .galeria-quem-somos .col-img:nth-child(4) {
    width: 100%;
    margin-left: 0;
  }
}
.galeria-quem-somos .owl-dots {
  display: flex;
  justify-content: center;
  align-items: center;
}
.galeria-quem-somos .owl-dots .owl-dot {
  width: 7px;
  height: 7px;
  margin: 0 0.3rem;
  background: #efefef;
  border-radius: 30px;
}
.galeria-quem-somos .owl-dots .active {
  background: #94b649;
}

.depoimentos {
  padding-bottom: 3rem;
}
.depoimentos .row {
  justify-content: space-between;
}
.depoimentos .col-md-6 article {
  padding: 1.3rem 2rem 2rem 2rem;
  background-color: #efefef;
}
@media only screen and (max-width: 900px) {
  .depoimentos .col-md-6 article {
    margin-bottom: 1rem;
    padding: 2rem 1rem;
  }
}
.depoimentos .col-md-6 .header-depoimento {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 1.3rem;
}
.depoimentos .col-md-6 .header-depoimento .img {
  margin-right: 1rem;
}
.depoimentos .col-md-6 .header-depoimento .img img {
  width: 90px;
  height: 90px;
  border-radius: 50%;
}
.depoimentos .col-md-6 .header-depoimento h4 {
  font-family: titulo;
  font-weight: bold;
  font-size: 1rem;
  color: #434343;
  margin-bottom: 0;
}
.depoimentos .col-md-6 .header-depoimento span {
  font-family: texto;
  font-size: 0.75rem;
  font-weight: 400;
  color: #434343;
  margin-bottom: 0.3rem;
  text-transform: uppercase;
}
.depoimentos .col-md-6 .header-depoimento ul {
  display: flex;
  justify-content: flex-end;
  width: 40%;
}
@media only screen and (max-width: 900px) {
  .depoimentos .col-md-6 .header-depoimento ul {
    display: none;
  }
}
.depoimentos .col-md-6 .conteudo p {
  font-family: texto;
  color: #434343;
  text-align: justify;
  font-weight: 600;
  font-size: 0.95rem;
  font-style: italic;
}

.historia {
  padding: 2.4rem 0;
}
.historia .content-historia {
  display: flex;
  align-items: center;
}
@media only screen and (max-width: 900px) {
  .historia .content-historia {
    flex-direction: column;
  }
}
.historia .content-historia .col-img {
  width: 50%;
}
@media only screen and (max-width: 900px) {
  .historia .content-historia .col-img {
    width: 100%;
  }
}
.historia .content-historia .col-img img {
  width: 100%;
}
.historia .content-historia .col-historia {
  width: 50%;
  padding: 3rem;
  background-color: #efefef;
}
@media only screen and (max-width: 900px) {
  .historia .content-historia .col-historia {
    width: 100%;
    padding: 2rem 1rem;
  }
}
.historia .content-historia .col-historia h3 {
  color: #434343;
  font-family: titulo;
  margin-bottom: 0;
  font-size: 1.7rem;
}
.historia .content-historia .col-historia .header-historia {
  margin-bottom: 1.5rem;
  display: flex;
  gap: 10px;
  align-items: center;
}
.historia .content-historia .col-historia .header-historia span {
  display: block;
  width: 30px;
  height: 2px;
  background-color: #94b649;
  margin-bottom: 2px;
}
.historia .content-historia .col-historia p {
  font-family: texto;
  font-weight: 600;
  font-size: 16px;
  color: #434343;
  text-align: justify;
}

.chamada-obra {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px;
  padding: 3rem 0;
}
.chamada-obra .side h1 {
  color: #434343;
  margin-bottom: 0.8rem;
  font-family: titulo;
  font-size: 2.1rem;
  padding: 0 10px;
  text-transform: uppercase;
}
@media only screen and (max-width: 900px) {
  .chamada-obra .side h1 {
    font-size: 1.5rem;
  }
}
.chamada-obra .side p {
  font-family: texto;
  text-align: justify;
  font-weight: 300;
  font-size: 18px;
  padding: 0 10px;
  color: #434343;
  max-width: 890px;
  margin: 0 auto;
}
@media only screen and (max-width: 900px) {
  .chamada-obra .side p {
    font-size: 1rem;
    padding: 0 1rem;
  }
}
.chamada-obra .content-ficha {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (max-width: 900px) {
  .chamada-obra .content-ficha {
    flex-direction: column;
    align-items: center;
  }
}
.chamada-obra .content-ficha .col-info {
  padding: 2rem 3rem;
  max-width: 390px;
  box-shadow: 0px 5px 19px -5px rgba(0, 0, 0, 0.51);
}
.chamada-obra .content-ficha .col-info .header-obra-destaque {
  margin-bottom: 1.3rem;
  display: flex;
  align-items: center;
  gap: 10px;
}
.chamada-obra .content-ficha .col-info .header-obra-destaque h3 {
  font-family: titulo;
  color: #434343;
  font-size: 1.3rem;
  margin-bottom: 0;
}
.chamada-obra .content-ficha .col-info .header-obra-destaque span {
  display: block;
  width: 30px;
  height: 2px;
  background-color: #94b649;
  margin-bottom: 2px;
}
.chamada-obra .content-ficha .col-info li {
  font-family: texto;
  font-weight: 300;
  color: #434343;
  font-size: 0.9rem;
  margin-bottom: 0.5rem;
}
.chamada-obra .content-ficha .col-info li strong {
  font-weight: bold;
}
@media only screen and (max-width: 600px) {
  .chamada-obra {
    grid-template-columns: 1fr;
  }
}

.sobre-obra .content-sobre-obra {
  display: flex;
  align-items: center;
}
@media only screen and (max-width: 900px) {
  .sobre-obra .content-sobre-obra {
    flex-direction: column;
  }
}
.sobre-obra .content-sobre-obra .col-img {
  width: 50%;
  position: relative;
}
@media only screen and (max-width: 900px) {
  .sobre-obra .content-sobre-obra .col-img {
    width: 100%;
    padding: 0 1rem;
  }
}
.sobre-obra .content-sobre-obra .col-img img {
  width: 100%;
  height: 400px;
  object-fit: cover;
}
@media only screen and (max-width: 900px) {
  .sobre-obra .content-sobre-obra .col-img img {
    position: inherit;
    top: 0;
    left: 0;
  }
}
.sobre-obra .content-sobre-obra .col-info {
  width: 100%;
  background-color: #efefef;
  padding: 2rem 2rem 2rem 5rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media only screen and (max-width: 900px) {
  .sobre-obra .content-sobre-obra .col-info {
    width: 100%;
    height: inherit;
    padding: 2rem 1rem;
  }
}
.sobre-obra .content-sobre-obra .col-info .header-obra-destaque {
  margin-bottom: 1.3rem;
  display: flex;
  align-items: center;
  gap: 10px;
}
.sobre-obra .content-sobre-obra .col-info .header-obra-destaque h3 {
  font-family: titulo;
  color: #434343;
  font-size: 1.5rem;
  margin-bottom: 0;
  padding-bottom: 0;
}
.sobre-obra .content-sobre-obra .col-info .header-obra-destaque span {
  display: block;
  width: 30px;
  height: 2px;
  background-color: #94b649;
  margin-bottom: 2px;
}
.sobre-obra .content-sobre-obra .col-info p {
  font-family: texto;
  font-weight: 400;
  color: #434343;
  font-size: 1.03rem;
  margin-bottom: 1rem;
  text-align: justify;
}

.ficha {
  margin: 2.5rem 0 4rem 0;
}
.ficha .content-ficha {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 900px) {
  .ficha .content-ficha {
    flex-direction: column;
    align-items: center;
  }
}
.ficha .content-ficha .col-info {
  padding: 2rem 3rem;
  max-width: 390px;
  box-shadow: 0px 5px 19px -5px rgba(0, 0, 0, 0.51);
}
.ficha .content-ficha .col-info .header-obra-destaque {
  margin-bottom: 1.3rem;
  display: flex;
  align-items: center;
  gap: 10px;
}
.ficha .content-ficha .col-info .header-obra-destaque h3 {
  font-family: titulo;
  color: #434343;
  font-size: 1.3rem;
  margin-bottom: 0;
}
.ficha .content-ficha .col-info .header-obra-destaque span {
  display: block;
  width: 30px;
  height: 2px;
  background-color: #94b649;
  margin-bottom: 2px;
}
.ficha .content-ficha .col-info li {
  font-family: texto;
  font-weight: 300;
  color: #434343;
  font-size: 0.9rem;
  margin-bottom: 0.5rem;
}
.ficha .content-ficha .col-info li strong {
  font-weight: bold;
}
.ficha .content-ficha .col-video {
  width: 50%;
}
@media only screen and (max-width: 900px) {
  .ficha .content-ficha .col-video {
    width: 100%;
    margin-top: 2.5rem;
  }
}
.ficha .content-ficha .col-video iframe {
  width: 100%;
}

.galeria-copa .header-obra-destaque {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  margin-bottom: 1.3rem;
}
.galeria-copa .header-obra-destaque h3 {
  font-family: titulo;
  color: #434343;
  font-size: 1.3rem;
  margin-bottom: 0;
  text-align: center;
}
.galeria-copa .header-obra-destaque span {
  display: block;
  width: 30px;
  height: 2px;
  background-color: #94b649;
  margin-bottom: 2px;
}
.galeria-copa .content-fotos {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 2.5rem;
}
.galeria-copa .content-fotos article {
  margin: 0 0.5rem 1rem 0.5rem;
  position: relative;
}
@media only screen and (max-width: 900px) {
  .galeria-copa .content-fotos article {
    width: 100%;
  }
}
.galeria-copa .content-fotos article .img-destacada {
  width: 100%;
  filter: brightness(0.75);
}
.galeria-copa .content-fotos article .loopa {
  position: absolute;
  bottom: 10px;
  z-index: 9;
  right: 10px;
  width: 30px;
}

.lista-obras .chamada-obra-lista {
  padding: 2rem 0;
}
.lista-obras .chamada-obra-lista h3 {
  color: #434343;
  text-align: center;
  font-family: titulo;
  font-size: 1.7rem;
  margin: 0 auto 1rem auto;
}
@media only screen and (max-width: 900px) {
  .lista-obras .chamada-obra-lista h3 {
    font-size: 1.5rem;
  }
}
.lista-obras .chamada-obra-lista p {
  font-family: texto;
  font-weight: 600;
  font-size: 16px;
  color: #434343;
  text-align: center;
  max-width: 850px;
  margin: 0 auto;
  line-height: 24px;
}
@media only screen and (max-width: 900px) {
  .lista-obras .chamada-obra-lista p {
    font-size: 1rem;
  }
}

.lista-obras .content-obras {
  display: flex;
  flex-wrap: wrap;
}
.lista-obras .item {
  width: 30%;
  margin: 1rem 1rem 2.5rem 1rem;
}
@media only screen and (max-width: 900px) {
  .lista-obras .item {
    width: 100%;
  }
}
.lista-obras .item a {
  position: relative;
  width: 100%;
  height: 100%;
  text-decoration: none;
}
.lista-obras .item a .infos {
  width: 100%;
  height: 100%;
  position: relative;
}
.lista-obras .item a .infos img {
  width: 100%;
  height: 350px;
  object-fit: cover;
}
.lista-obras .item a .infos .legendas {
  position: absolute;
  padding-left: 0.5rem;
  color: #fff;
  display: flex;
  flex-direction: column;
  font-family: texto;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5294117647);
  width: 100%;
  padding: 0;
  height: 100%;
  justify-content: flex-end;
}
.lista-obras .item a .infos .legendas .tag-obra {
  font-weight: bolder;
  font-size: 0.85rem;
}
.lista-obras .item a .infos .legendas .localizacao {
  font-weight: 300;
  text-transform: uppercase;
  font-size: 0.75rem;
  letter-spacing: 2px;
}
.lista-obras .item a .infos .legendas h3 {
  font-size: 1.2rem;
  text-transform: uppercase;
  font-weight: bold;
  margin-bottom: 0.2rem;
}
.lista-obras .item a .infos .legendas .divider {
  position: relative;
  display: flex;
  flex-direction: column;
  margin-left: 0;
  padding: 1rem;
  background-color: rgba(0, 0, 0, 0.4196078431);
  margin-bottom: 0;
  width: 100%;
  /* Largura sempre 100% */
  overflow: hidden;
}
.lista-obras .item a .infos .legendas .divider::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  /* Inicialmente com largura 0 */
  height: 5px;
  background-color: #94b649;
  /* Cor da borda */
  transition: width 0.5s ease-in-out;
  /* Efeito de transição */
}
.lista-obras .item a .infos .legendas:hover .divider::before {
  width: 100%;
  /* Quando passar o mouse, a largura vai para 100% */
}

.area-atuacao {
  padding: 1.5rem 0;
}
.area-atuacao .content-servico {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.area-atuacao .content-servico .item {
  width: 48.3%;
  margin: 0 0 1.5rem 0;
}
@media only screen and (max-width: 900px) {
  .area-atuacao .content-servico .item {
    width: 100%;
  }
}
.area-atuacao .content-servico .item img {
  width: 100%;
  height: 350px;
  object-fit: cover;
  margin-bottom: 1.3rem;
}
@media only screen and (max-width: 600px) {
  .area-atuacao .content-servico .item img {
    height: 270px;
  }
}
.area-atuacao .content-servico .item h3 {
  color: #444;
  margin-bottom: 0.5rem;
  padding-bottom: 0.5rem;
  font-family: titulo;
  font-size: 1.6rem;
  width: max-content;
}
@media only screen and (max-width: 900px) {
  .area-atuacao .content-servico .item h3 {
    font-size: 1.5rem;
  }
}
.area-atuacao .content-servico .item p {
  font-family: texto;
  font-weight: 400;
  font-size: 1rem;
  color: #434343;
}
.area-atuacao .content-servico .item:nth-child(odd) {
  margin-left: 0;
}
.area-atuacao .content-servico .item:nth-child(even) {
  margin-right: 0;
}

.chamada-tec {
  padding: 4rem 0 2.5rem 0;
}
@media only screen and (max-width: 900px) {
  .chamada-tec {
    padding: 2rem 0;
  }
}
.chamada-tec h2 {
  color: #434343;
  text-align: center;
  font-family: keep;
  font-size: 2rem;
  max-width: 840px;
  margin: 0 auto 1rem auto;
}
@media only screen and (max-width: 900px) {
  .chamada-tec h2 {
    font-size: 1.7rem;
    max-width: inherit;
  }
}
@media only screen and (max-width: 600px) {
  .chamada-tec h2 {
    font-size: 1.3rem;
  }
}
.chamada-tec p {
  font-family: texto;
  text-align: justify;
  font-weight: 600;
  font-size: 16px;
  color: #434343;
  max-width: 1050px;
  margin: 0 auto;
  line-height: 24px;
}
@media only screen and (max-width: 600px) {
  .chamada-tec p {
    max-width: inherit;
    font-size: 0.9rem;
    padding: 0 1rem;
    line-height: inherit;
  }
}

.tecnologia .item {
  display: flex;
  justify-content: space-between;
  margin-bottom: 2rem;
}
@media only screen and (max-width: 900px) {
  .tecnologia .item {
    flex-direction: column;
    margin-bottom: 1rem;
  }
}
.tecnologia .item .img-destaque {
  width: 46%;
}
@media only screen and (max-width: 900px) {
  .tecnologia .item .img-destaque {
    width: 100%;
  }
}
.tecnologia .item .img-destaque img {
  width: 100%;
  object-fit: cover;
}
.tecnologia .item .legendas {
  width: 50%;
  padding: 1rem 3rem 0 0;
}
@media only screen and (max-width: 900px) {
  .tecnologia .item .legendas {
    width: 100%;
    padding: 1rem 0;
  }
}
.tecnologia .item .legendas > h3 {
  color: #444;
  margin-bottom: 0.5rem;
  font-family: keep;
  font-size: 1.6rem;
  width: max-content;
  font-family: "Lato", sans-serif;
}
@media only screen and (max-width: 900px) {
  .tecnologia .item .legendas > h3 {
    font-size: 1.5rem;
  }
}
.tecnologia .item .legendas > h3::after {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background-color: #94b649;
  margin-top: 0.5rem;
}
.tecnologia .item .legendas p {
  font-family: "Lato", sans-serif;
  font-weight: 400;
  font-size: 0.95rem;
  color: #434343;
  text-align: justify;
}

.infos-tecnologia .content-tec {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.infos-tecnologia .content-tec .item-tec {
  width: 50%;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-bottom: 3.3rem;
}
.infos-tecnologia .content-tec .item-tec .legenda > h3 {
  color: #434343;
  font-family: titulo;
  font-weight: 900;
  text-align: center;
  text-transform: uppercase;
  font-size: 1.7rem;
  margin: 1.3rem 0;
}
.infos-tecnologia .content-tec .item-tec .legenda p {
  font-family: texto;
  font-weight: 600;
  font-size: 16px;
  color: #434343;
  text-align: center;
  max-width: 470px;
  margin: 0 auto;
  line-height: 24px;
  letter-spacing: 1px;
  line-height: 24px;
}

html {
  scroll-behavior: smooth;
}

body {
  overflow-x: hidden;
}

@font-face {
  font-family: titulo;
  src: url("fonts/GothamBold.ttf");
}
@font-face {
  font-family: texto;
  src: url("fonts/GothamLight.ttf");
}
.container1 {
  width: 90%;
  max-width: 1280px;
  margin: auto;
}

.container2 {
  width: 90%;
  max-width: 880px;
  margin: auto;
}

/*# sourceMappingURL=main.css.map */
