@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap");
html {
  scroll-behavior: smooth;
  transition: all ease-in-out 5000ms;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: "Montserrat", sans-serif;
  text-decoration: none;
}

.container {
  width: 90%;
  max-width: 1380px;
  margin: auto;
}

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

.container3 {
  width: 90%;
  max-width: 600px;
  margin: auto;
}

.container-mid {
  width: 95%;
  max-width: 1360px;
  margin: auto;
}

.container-full {
  width: 100%;
  max-width: 1440px;
  margin: auto;
}

header {
  padding: 0px 0px;
  background-color: #fff;
  background-color: #550004;
  margin: 0;
}
header div.conteudo {
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 9;
}
header div.conteudo img {
  width: 200px;
  margin: 10px 30px;
}
@media screen and (max-width: 1150px) {
  header div.conteudo img {
    width: 250px;
  }
}
@media screen and (max-width: 600px) {
  header div.conteudo img {
    width: 150px;
  }
}
header div.conteudo div.logo {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
}
header div.conteudo div.logo div.social {
  display: flex;
  justify-content: flex-end;
}
header div.conteudo div.logo div.social div.icones {
  display: flex;
  gap: 15px;
  padding: 8px 20px;
  border-radius: 20px;
  box-shadow: 4px 4px 8px rgba(0, 0, 0, 0.5);
  transition: all ease-in-out 0.4s;
}
header div.conteudo div.logo div.social div.icones i {
  color: #0C4A65;
  font-size: 18px;
}
header div.conteudo div.logo div.social div.icones i:hover {
  color: #333;
}
@media screen and (max-width: 1150px) {
  header div.conteudo div.logo div.social {
    display: flex;
  }
}
header div.conteudo div.menus2 {
  display: flex;
  align-items: center;
  justify-content: center;
}
header div.conteudo div.menus2 img {
  width: 25px;
  height: 20px;
  margin-top: 3px;
  cursor: pointer;
  transition: all ease-in-out 3s;
}
header div.conteudo div.menus2 img:hover {
  scale: 1.03;
}
header div.conteudo div.menus2 ul {
  display: flex;
  gap: 15px;
  list-style: none;
  position: relative;
}
header div.conteudo div.menus2 ul li {
  position: relative;
}
header div.conteudo div.menus2 ul li a {
  position: relative;
  color: #fff;
  font-family: "Mukta Malar", sans-serif;
  text-transform: uppercase;
  font-size: 12px;
  text-decoration: none;
}
header div.conteudo div.menus2 ul li a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -5px;
  width: 100%;
  height: 2px;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.3s ease-in-out;
}
header div.conteudo div.menus2 ul li a:hover::after, header div.conteudo div.menus2 ul li a.active::after {
  transform: scaleX(1);
}
header div.conteudo div.menus2 ul li .submenu {
  position: absolute;
  width: 260px;
  top: 100%;
  /* Exibe logo abaixo do menu principal */
  left: 0;
  background-color: #fff;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  border-radius: 4px;
  list-style: none;
  padding: 10px 0;
  display: none;
  z-index: 9;
}
header div.conteudo div.menus2 ul li .submenu li {
  padding: 5px 20px;
}
header div.conteudo div.menus2 ul li .submenu li a {
  color: #0C4A65;
  font-size: 14px;
  white-space: nowrap;
}
header div.conteudo div.menus2 ul li .submenu li a:hover {
  color: #007ACC;
  /* Muda a cor ao passar o mouse */
}
header div.conteudo div.menus2 ul li:hover .submenu {
  display: block;
}
@media (max-width: 768px) {
  header div.conteudo div.menus2 ul {
    flex-direction: column;
    gap: 10px;
  }
}
@media screen and (max-width: 1150px) {
  header div.conteudo div.menus2 {
    display: none;
  }
}
header div.conteudo div.btn {
  display: flex;
  padding: 10px 6px;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  display: none;
}
header div.conteudo div.btn i {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 60px;
  display: flex;
  color: #fff;
  justify-content: center;
  align-items: center;
  font-size: 36px;
  padding: 10px 5px;
  border-radius: 0px 10px 10px 0px;
  cursor: pointer;
  transition: all ease-in-out 0.4s;
}
@media screen and (max-width: 1150px) {
  header div.conteudo div.btn {
    display: block;
  }
}
header div.conteudo div.btn2 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  display: block;
  margin-left: 20px;
}
header div.conteudo div.btn2 i {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 60px;
  display: flex;
  color: #fff;
  justify-content: center;
  align-items: center;
  font-size: 36px;
  padding: 10px 5px;
  border-radius: 0px 10px 10px 0px;
  cursor: pointer;
  transition: all ease-in-out 0.4s;
}
@media screen and (max-width: 1150px) {
  header div.conteudo div.btn2 {
    display: none;
  }
}
header div.conteudo div.contatos {
  background-color: #be1522;
  display: grid;
  grid-template-columns: 2fr;
  justify-content: space-between;
  align-items: center;
  margin: 0;
  padding: 0;
}
header div.conteudo div.contatos a {
  padding: 35px 80px;
  color: #fff;
  font-size: 13px;
  transition: all ease-in-out 0.3s;
}
header div.conteudo div.contatos a:hover {
  transform: scale(1.1);
}
@media screen and (max-width: 1150px) {
  header div.conteudo div.contatos {
    display: none;
  }
}

nav {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.8s ease, visibility 0.8s ease;
  position: fixed;
  top: 0;
  width: 400px;
  height: 100%;
  background: white;
  z-index: 1000;
  background-color: #be1522;
}
nav > a {
  display: flex;
  justify-content: end;
  padding: 20px;
  color: #fff;
  font-size: 30px;
  transition: all ease-in-out 0.5s;
}
nav > a:hover {
  color: #fff;
}
nav div.logomenu {
  padding: 20px 20px;
}
nav div.logomenu img {
  width: 150px;
}
nav ul {
  display: flex;
  flex-direction: column;
  justify-content: center;
  list-style: none;
  font-size: 18px;
  text-transform: uppercase;
  color: #fff;
  font-weight: 800;
  font-family: "Mukta Malar", sans-serif;
}
nav ul li {
  padding: 5px 20px;
  text-align: left;
  font-family: "Mukta Malar", sans-serif;
  border-bottom: 1px solid #333;
  cursor: pointer;
}
nav ul li i {
  font-size: 40px;
  font-weight: 500;
  color: #fff;
  margin-top: 60px;
  transition: opacity 0.4s ease;
}
nav ul li i:hover {
  color: #333;
}
nav ul li a {
  text-decoration: none;
  color: #fff;
  transition: opacity 0.4s ease;
  font-family: "Mukta Malar", sans-serif;
  font-size: 17px;
  font-weight: 600;
}
nav ul li a:hover {
  color: #333;
}
nav div.end {
  margin-left: 20px;
}
nav div.end h2 {
  color: #fff;
  font-size: 13px;
  text-align: center;
  font-family: "Mukta Malar", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
}
nav div.end a {
  color: #fff;
}
nav div.end a:hover {
  color: #80BD41;
}
nav div.end a h3 {
  color: #FFF;
  font-size: 18px;
  font-weight: 400;
  letter-spacing: 0.8px;
  margin-bottom: 10px;
}
nav div.end p {
  color: #FFF;
  font-size: 14px;
  font-weight: 400;
  margin-bottom: 10px;
}
nav div.social {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
}
@keyframes pulsar {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
nav div.social i {
  color: #fff;
  font-size: 22px;
  border: 2px solid #fff;
  border-radius: 100%;
  padding: 5px 7px;
  transition: border-color 0.4s ease, color 0.4s ease;
}
nav div.social i:hover {
  border: 2px solid #000;
  color: #000;
  animation: pulsar 1s infinite ease-in-out;
}
@media screen and (max-width: 1150px) {
  nav {
    width: 300px;
  }
}
@media screen and (max-width: 600px) {
  nav {
    width: 100%;
  }
}

nav.mem {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.8s ease, visibility 0.8s ease;
  position: fixed;
  right: 0;
  top: 0;
  width: 400px;
  height: 100%;
  background: white;
  z-index: 1000;
  background-color: #be1522;
}
nav.mem > a {
  display: flex;
  justify-content: end;
  padding: 30px;
  color: #fff;
  font-size: 30px;
  transition: all ease-in-out 0.5s;
}
nav.mem > a:hover {
  color: #333;
}
nav.mem ul {
  display: flex;
  flex-direction: column;
  justify-content: center;
  list-style: none;
  font-size: 18px;
  text-transform: uppercase;
  color: #fff;
  font-weight: 800;
  font-family: "Mukta Malar", sans-serif;
}
nav.mem ul li {
  padding: 10px 20px;
  text-align: left;
  font-family: "Mukta Malar", sans-serif;
}
nav.mem ul li i {
  font-size: 40px;
  font-weight: bold;
  color: #fff;
  margin-top: 60px;
  transition: opacity 0.4s ease;
}
nav.mem ul li i:hover {
  color: #333;
}
nav.mem ul li a {
  text-decoration: none;
  color: #fff;
  transition: opacity 0.4s ease;
  font-family: "Mukta Malar", sans-serif;
  font-size: 18px;
}
nav.mem ul li a:hover {
  color: #333;
}
nav.mem div.end {
  margin-left: 20px;
}
nav.mem div.end h2 {
  color: #fff;
  font-size: 13px;
  text-align: center;
  font-family: "Mukta Malar", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
}
nav.mem div.end a {
  color: #fff;
}
nav.mem div.end a:hover {
  color: #80BD41;
}
nav.mem div.end a h3 {
  color: #FFF;
  font-size: 18px;
  font-weight: 400;
  letter-spacing: 0.8px;
  margin-bottom: 10px;
}
nav.mem div.end p {
  color: #FFF;
  font-size: 14px;
  font-weight: 400;
  margin-bottom: 10px;
}
nav.mem div.social {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
}
@keyframes pulsar {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
nav.mem div.social i {
  color: #fff;
  font-size: 22px;
  border: 2px solid #fff;
  border-radius: 100%;
  padding: 5px 7px;
  transition: border-color 0.4s ease, color 0.4s ease;
}
nav.mem div.social i:hover {
  border: 2px solid #000;
  color: #000;
  animation: pulsar 1s infinite ease-in-out;
}
@media screen and (max-width: 1150px) {
  nav.mem {
    width: 300px;
  }
}
@media screen and (max-width: 600px) {
  nav.mem {
    width: 100%;
  }
}

nav.show {
  opacity: 1;
  visibility: visible;
}

section.carro .carrossel {
  position: relative;
  width: 100%;
  overflow: hidden;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}
section.carro .carrossel .item {
  flex: 0 0 100%;
  /* 👈 cada item ocupa 100% da largura */
  max-width: 100%;
  /* 👈 impede mais de 1 por vez */
  position: relative;
  border-radius: 10px;
  overflow: hidden;
}
section.carro .carrossel .item img {
  width: 100%;
  display: block;
}
section.carro .carrossel .item h2 {
  position: absolute;
  bottom: 30px;
  /* distância do fundo */
  left: 50%;
  transform: translateX(-50%);
  color: #fff;
  background: rgba(0, 0, 0, 0.5);
  /* fundo semi-transparente */
  padding: 10px 15px;
  border-radius: 6px;
  font-size: 30px;
  max-width: 90%;
  text-align: center;
}
@media screen and (max-width: 600px) {
  section.carro .carrossel .item h2 {
    width: 100%;
    font-size: 14px;
  }
}
section.carro .carrossel-imagens {
  display: flex;
  transition: transform 0.5s ease-in-out;
}
section.carro .carrossel-imagens img {
  width: 100%;
  aspect-ratio: 16/6;
  object-fit: cover;
  flex-shrink: 0;
}
@media screen and (max-width: 600px) {
  section.carro .carrossel-imagens img {
    aspect-ratio: 16/12;
  }
}
section.carro .btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  color: white;
  border: none;
  padding: 15px 15px;
  cursor: pointer;
  border-radius: 10px;
  font-size: 18px;
}
section.carro .btn:hover {
  color: #fff;
  background-color: #333;
}
section.carro .prev {
  left: 10px;
  color: #000;
}
section.carro .next {
  right: 10px;
  color: #000;
}

section.not .slider {
  display: flex;
  justify-content: center;
  align-items: stretch;
  background-color: #550004;
}
section.not .slider .propaganda {
  flex: 1;
}
section.not .slider .propaganda img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
@media screen and (max-width: 600px) {
  section.not .slider .propaganda img {
    display: none;
  }
}
section.not .slider .carrossel {
  position: relative;
  flex: 5;
  width: 100%;
  overflow: hidden;
}
section.not .slider .carrossel .carrossel-imagens {
  display: flex;
  transition: transform 0.5s ease-in-out;
}
section.not .slider .carrossel .item {
  flex: 0 0 100%;
  width: 100%;
  position: relative;
  /* contexto pro título */
}
section.not .slider .carrossel .item img {
  width: 100%;
  height: 80%;
  object-fit: cover;
  display: block;
}
section.not .slider .carrossel {
  /* título com película vermelha */
}
section.not .slider .carrossel .item h2 {
  position: absolute;
  left: 50%;
  bottom: 50px;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: #fff;
  padding: 10px 40px;
  font-size: 30px;
  text-align: center;
  width: 100%;
  height: 200px;
  background: linear-gradient(180deg, rgba(42, 123, 155, 0) 10%, rgb(85, 0, 4) 30%);
}
@media screen and (max-width: 600px) {
  section.not .slider .carrossel .item h2 {
    font-size: 14px;
    height: auto;
    padding: 8px 20px;
  }
}
section.not .slider .carrossel {
  /* ✅ setas do carrossel */
}
section.not .slider .carrossel .btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  /* garante que fiquem sobre as imagens */
  color: #000;
  background: rgba(255, 255, 255, 0.7);
  border: none;
  padding: 15px;
  cursor: pointer;
  border-radius: 50%;
  font-size: 18px;
  transition: all 0.3s ease;
}
section.not .slider .carrossel .btn:hover {
  background-color: #333;
  color: #fff;
}
@media screen and (max-width: 600px) {
  section.not .slider .carrossel .btn {
    display: none;
  }
}
section.not .slider .carrossel .prev {
  left: 15px;
}
section.not .slider .carrossel .next {
  right: 15px;
}
@media screen and (max-width: 600px) {
  section.not .slider {
    flex-direction: column;
  }
}

section.inform {
  margin-top: -4px;
  background-color: #be1522;
}
section.inform div.conteudo {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
}
section.inform div.conteudo div.card1 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-color: #550004;
  padding: 10px;
}
section.inform div.conteudo div.card1 div.text {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 30px;
}
section.inform div.conteudo div.card1 div.text img {
  width: 30%;
}
section.inform div.conteudo div.card1 div.text h2 {
  color: #f6f6f6;
  text-align: center;
  text-transform: uppercase;
  font-size: 18px;
}
section.inform div.conteudo div.card1 div.boton {
  display: flex;
  justify-content: center;
  align-items: center;
}
section.inform div.conteudo div.card1 div.boton a {
  color: #550004;
  background-color: #fff;
  border-radius: 15px;
  padding: 5px 10px;
  font-size: 13px;
  text-transform: uppercase;
}
section.inform div.conteudo div.card1 div.boton a strond {
  font-weight: 700;
}
section.inform div.conteudo div.card2 {
  background-color: #be1522;
  display: flex;
  justify-content: center;
  align-items: center;
}
section.inform div.conteudo div.card2 h2 {
  color: #550004;
  text-align: center;
  text-transform: uppercase;
  font-size: 18px;
}
section.inform div.conteudo div.card3 {
  background-color: #550004;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 20px;
}
section.inform div.conteudo div.card3 h2 {
  color: #fff;
  text-align: center;
  text-transform: uppercase;
  font-size: 15px;
  font-weight: 400;
}
section.inform div.conteudo div.card3 h2 strong {
  font-weight: bold;
  font-size: 35px;
}
@media screen and (max-width: 600px) {
  section.inform div.conteudo div.card3 {
    border-radius: 0px;
  }
}
@media screen and (max-width: 600px) {
  section.inform div.conteudo {
    grid-template-columns: 1fr;
  }
}

section.sobre-nos {
  padding: 50px 0px;
}
section.sobre-nos div.conteudo div.grid {
  display: grid;
  grid-template-columns: 2fr 1fr;
  justify-content: center;
  align-items: center;
  gap: 15px;
}
section.sobre-nos div.conteudo div.grid div.texto h3 {
  color: #333;
  font-weight: normal;
  font-size: 25px;
}
section.sobre-nos div.conteudo div.grid div.texto h2 {
  color: #000;
  font-weight: 700;
  font-size: 35px;
  margin-bottom: 10px;
}
section.sobre-nos div.conteudo div.grid div.texto p {
  font-size: 14px;
}
section.sobre-nos div.conteudo div.grid div.foto img {
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
}
section.sobre-nos div.conteudo div.grid div.formulario {
  display: flex;
  flex-direction: column;
  justify-content: center;
  background-color: #d9d9d9;
  padding: 20px;
  border-radius: 15px;
}
section.sobre-nos div.conteudo div.grid div.formulario .wpcf7-form {
  display: flex;
  flex-direction: column;
  gap: 5px;
  max-width: 500px;
  margin: 0 auto;
}
section.sobre-nos div.conteudo div.grid div.formulario .wpcf7 input[type=text],
section.sobre-nos div.conteudo div.grid div.formulario .wpcf7 input[type=email],
section.sobre-nos div.conteudo div.grid div.formulario .wpcf7 textarea {
  width: 100%;
  padding: 8px 16px;
  border: 1px solid #ccc;
  border-radius: 8px;
  font-size: 13px;
  font-family: inherit;
  transition: border-color 0.3s;
}
section.sobre-nos div.conteudo div.grid div.formulario .wpcf7 input[type=text]:focus,
section.sobre-nos div.conteudo div.grid div.formulario .wpcf7 input[type=email]:focus,
section.sobre-nos div.conteudo div.grid div.formulario .wpcf7 textarea:focus {
  border-color: #000;
  outline: none;
}
section.sobre-nos div.conteudo div.grid div.formulario .wpcf7 textarea {
  height: 100px;
  /* antes estava 120px */
  resize: vertical;
  width: 100%;
  padding: 8px 16px;
  border: 1px solid #ccc;
  border-radius: 8px;
  font-size: 13px;
  font-family: inherit;
  transition: border-color 0.3s;
}
section.sobre-nos div.conteudo div.grid div.formulario .wpcf7 input[type=submit] {
  width: 100%;
  background-color: #000;
  color: white;
  border: none;
  padding: 14px 20px;
  font-size: 16px;
  border-radius: 8px;
  cursor: pointer;
  transition: background-color 0.3s;
}
section.sobre-nos div.conteudo div.grid div.formulario .wpcf7 input[type=submit]:hover {
  width: 100%;
  background-color: #333;
}
section.sobre-nos div.conteudo div.grid div.formulario div.info {
  display: flex;
  justify-content: space-between;
  gap: 15px;
}
section.sobre-nos div.conteudo div.grid div.formulario div.info img {
  width: 40px;
}
section.sobre-nos div.conteudo div.grid div.formulario div.info div.texto h2 {
  font-size: 17px;
}
section.sobre-nos div.conteudo div.grid div.formulario div.info div.texto p {
  font-size: 13px;
}
@media screen and (max-width: 600px) {
  section.sobre-nos div.conteudo div.grid {
    grid-template-columns: 1fr;
  }
}

section.servicos {
  background-color: #FAF5E8;
  padding: 60px 0;
}
section.servicos div.conteudo h3 {
  color: #333;
  font-weight: normal;
  font-size: 25px;
}
section.servicos div.conteudo h2 {
  color: #000;
  font-weight: 700;
  font-size: 35px;
  margin-bottom: 20px;
}
section.servicos div.botao {
  display: flex;
  justify-content: center;
  align-items: center;
}
section.servicos div.botao a {
  font-size: 25px;
  font-weight: 700;
  color: #000;
  padding: 10px 30px;
  text-align: center;
  background-color: #d9d9d9;
}
section.servicos div.grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  justify-content: center;
  align-items: center;
  gap: 40px;
}
section.servicos div.grid div.cards {
  border-radius: 10px;
  border: 2px solid #000;
  padding: 20px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
}
section.servicos div.grid div.cards h2 {
  font-size: 16px;
  text-align: center;
}
section.servicos div.grid div.cards p {
  font-size: 14px;
  text-align: center;
}
section.servicos div.grid div.cards img {
  width: 70px;
  margin-bottom: 10px;
}
section.servicos div.grid div.cards a {
  color: #000;
  margin-top: 20px;
  font-size: 13px;
}
@media screen and (max-width: 1150px) {
  section.servicos div.grid {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  }
}
@media screen and (max-width: 600px) {
  section.servicos div.grid {
    grid-template-columns: 1fr;
  }
}

section.nosso-escritorio {
  background-color: #e3eeea;
  padding: 60px 0;
}
section.nosso-escritorio div.conteudo {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 30px;
}
section.nosso-escritorio div.conteudo div.texto h3 {
  color: #333;
  font-weight: normal;
  font-size: 25px;
  text-transform: uppercase;
}
section.nosso-escritorio div.conteudo div.texto h2 {
  color: #000;
  font-weight: 700;
  font-size: 35px;
  margin-bottom: 20px;
  text-transform: uppercase;
}
section.nosso-escritorio div.conteudo div.texto p {
  font-size: 20px;
  line-height: 35px;
}
section.nosso-escritorio div.conteudo div.fotos div.imagens img {
  width: 100%;
}
section.nosso-escritorio div.conteudo div.fotos div.video {
  display: flex;
  justify-content: center;
}
section.nosso-escritorio div.conteudo div.fotos div.video img {
  width: 100%;
}
section.nosso-escritorio div.conteudo div.fotos div.video div.videobt h2 {
  color: #000;
  margin-bottom: 20px;
}
section.nosso-escritorio div.conteudo div.fotos div.video div.videobt a {
  color: #333;
  font-size: 20px;
}
section.nosso-escritorio div.conteudo div.fotos div.video .popup {
  display: none;
  position: fixed;
  z-index: 999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
}
section.nosso-escritorio div.conteudo div.fotos div.video .popup-content {
  position: relative;
  margin: 5% auto;
  padding: 0;
  width: 80%;
  max-width: 800px;
  height: 50%;
  background-color: #000;
}
section.nosso-escritorio div.conteudo div.fotos div.video .popup-content iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}
section.nosso-escritorio div.conteudo div.fotos div.video .close {
  position: absolute;
  top: -30px;
  right: 0;
  font-size: 30px;
  color: white;
  cursor: pointer;
}
@media screen and (max-width: 600px) {
  section.nosso-escritorio div.conteudo {
    grid-template-columns: 1fr;
  }
}

section.excelencia div.conteudo {
  display: grid;
  grid-template-columns: 1fr 1fr;
}
section.excelencia div.conteudo div.texto {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
section.excelencia div.conteudo div.texto h3 {
  color: #333;
  font-weight: normal;
  font-size: 25px;
  text-transform: uppercase;
  text-align: right;
}
section.excelencia div.conteudo div.texto h2 {
  color: #000;
  font-weight: 700;
  font-size: 35px;
  margin-bottom: 20px;
  text-transform: uppercase;
  text-align: right;
}
section.excelencia div.conteudo div.texto p {
  font-size: 17px;
  line-height: 25px;
  text-align: right;
  margin-bottom: 10px;
}
section.excelencia div.conteudo div.foto img {
  width: 100%;
  aspect-ratio: 11/13;
  object-fit: cover;
}
@media screen and (max-width: 600px) {
  section.excelencia div.conteudo {
    grid-template-columns: 1fr;
  }
}

section.proficionais {
  padding: 60px 0;
  background-color: #e3eeea;
}
section.proficionais div.conteudo h3 {
  color: #333;
  font-weight: normal;
  font-size: 25px;
  text-transform: uppercase;
}
section.proficionais div.conteudo h2 {
  color: #000;
  font-weight: 700;
  font-size: 35px;
  margin-bottom: 20px;
  text-transform: uppercase;
}
section.proficionais div.conteudo .cards {
  position: relative;
  width: 100%;
  overflow: hidden;
}
section.proficionais div.conteudo .cards img {
  width: 100%;
  aspect-ratio: 9/16;
  object-fit: cover;
  display: block;
}
section.proficionais div.conteudo .cards .titulo {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100px;
  padding: 10px;
  background-color: #000;
  color: #fff;
  text-align: center;
  padding: 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
section.proficionais div.conteudo .cards .titulo h2 {
  margin: 0;
  font-size: 13px;
  color: #333;
}
section.proficionais div.conteudo .cards .titulo h3 {
  margin: 0;
  font-size: 12px;
  color: #fff;
}
section.proficionais div.conteudo .cards .titulo h4 {
  margin: 0;
  font-size: 12px;
  color: #fff;
  font-weight: 400;
}

section.blog {
  padding: 60px 0;
}
section.blog div.conteudo div.titulo {
  display: flex;
  justify-content: center;
}
section.blog div.conteudo div.titulo h2 {
  color: #550004;
  font-weight: 700;
  font-size: 25px;
  margin-bottom: 20px;
  text-transform: uppercase;
  text-align: center;
  position: relative;
  display: inline-block;
}
section.blog div.conteudo div.titulo h2::after {
  content: "";
  display: block;
  width: 80px;
  height: 3px;
  background: #be1522;
  margin: 8px auto 0;
}
section.blog div.conteudo div.vermais {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
section.blog div.conteudo div.vermais button {
  background-color: #333;
  border: 0;
  border-radius: 10px;
  padding: 10px 15px;
  color: #ccc;
  cursor: pointer;
  transition: all ease-in-out 0.2s;
}
section.blog div.conteudo div.vermais button:hover {
  color: #fff;
  background-color: #555;
}
section.blog div.conteudo div.grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  justify-content: center;
  gap: 30px;
}
section.blog div.conteudo div.grid div.card {
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  display: flex;
  flex-direction: column;
  gap: 8px;
  height: 100%;
}
section.blog div.conteudo div.grid div.card img {
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
  border-radius: 10px 10px 0px 0;
}
section.blog div.conteudo div.grid div.card h3 {
  color: #333;
  font-weight: normal;
  font-size: 12px;
  padding-left: 10px;
}
section.blog div.conteudo div.grid div.card h2 {
  color: #000;
  font-weight: 700;
  font-size: 14px;
  padding-left: 10px;
  line-height: 20px;
}
section.blog div.conteudo div.grid div.card h4 {
  color: #adadad;
  font-weight: 700;
  font-size: 10px;
  padding-left: 10px;
  padding-bottom: 10px;
  margin-bottom: 5px;
}
@media screen and (max-width: 1150px) {
  section.blog div.conteudo div.grid {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media screen and (max-width: 600px) {
  section.blog div.conteudo div.grid {
    grid-template-columns: 1fr;
  }
}

section.detalhe div.conteudo div.titulo {
  display: flex;
  justify-content: center;
  margin-bottom: 40px;
}
section.detalhe div.conteudo div.titulo h3 {
  width: fit-content;
  text-align: center;
  color: #333;
  padding: 10px 15px;
  border-radius: 15px;
  border: 1px solid #333;
}
section.detalhe div.conteudo div.tituloss {
  display: grid;
  grid-template-columns: 2fr 1fr;
  justify-content: center;
  align-items: center;
  gap: 15px;
}
section.detalhe div.conteudo div.tituloss div.caixa1 {
  display: flex;
  flex-direction: column;
  align-items: left;
  justify-content: left;
}
section.detalhe div.conteudo div.tituloss div.caixa1 p {
  text-align: center;
}
section.detalhe div.conteudo div.tituloss div.caixa1 h1 {
  color: #000;
  font-weight: 700;
  font-size: 35px;
  margin-bottom: 20px;
  text-transform: uppercase;
  text-align: center;
}
section.detalhe div.conteudo div.tituloss img {
  width: 100%;
}
@media screen and (max-width: 600px) {
  section.detalhe div.conteudo div.tituloss {
    grid-template-columns: 1fr;
  }
}
section.detalhe div.conteudo div.card {
  display: grid;
  grid-template-columns: 3fr 1fr;
  gap: 30px;
}
section.detalhe div.conteudo div.card div.texto pre {
  margin: 30px 0;
  display: flex;
  justify-content: center;
}
section.detalhe div.conteudo div.card div.texto pre a {
  background-color: #333;
  color: #fff;
  padding: 10px 15px;
  border-radius: 25px;
  text-align: center;
  font-size: 25px;
  font-weight: 600;
}
section.detalhe div.conteudo div.card div.texto pre a:hover {
  background-color: #000;
}
section.detalhe div.conteudo div.card div.texto ul,
section.detalhe div.conteudo div.card div.texto li {
  margin-left: 20px;
  margin-bottom: 10px;
  font-size: 13px;
}
section.detalhe div.conteudo div.card div.texto > h2,
section.detalhe div.conteudo div.card div.texto h3,
section.detalhe div.conteudo div.card div.texto h4,
section.detalhe div.conteudo div.card div.texto h5 {
  font-size: 13px;
  color: #000;
  font-weight: 700;
  margin-bottom: 10px;
}
section.detalhe div.conteudo div.card div.texto strong {
  font-size: 14px;
  color: #000;
  font-weight: 700;
}
section.detalhe div.conteudo div.card div.texto p {
  padding-bottom: 14px;
  line-height: 25px;
  font-size: 13px;
}
section.detalhe div.conteudo div.card div.texto p button {
  width: fit-content;
  display: flex;
  justify-content: center !important;
  align-items: center;
}
section.detalhe div.conteudo div.card div.texto p a {
  color: #000;
}
section.detalhe div.conteudo div.card div.texto p a:hover {
  color: #333;
}
section.detalhe div.conteudo div.card div.promo img {
  width: 80%;
  margin-bottom: 30px;
}
@media screen and (max-width: 600px) {
  section.detalhe div.conteudo div.card {
    grid-template-columns: 1fr;
  }
}

section.homes {
  background-image: url(../img/lp/bg1.png);
  background-size: cover;
  background-position: top;
  background-repeat: no-repeat;
  background-attachment: scroll;
  padding: 60px 0;
}
section.homes div.conteudo {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px;
}
section.homes div.conteudo div.texto img {
  width: 70%;
}
section.homes div.conteudo div.texto h2 {
  color: #fff;
  font-size: 35px;
}
section.homes div.conteudo div.texto p {
  color: #fff;
  font-size: 18px;
  line-height: 28px;
}
@media screen and (max-width: 600px) {
  section.homes div.conteudo div.texto h2 {
    font-size: 23px;
  }
}
section.homes div.conteudo div.formulario h2 {
  color: #fff;
  font-size: 25px;
}
section.homes div.conteudo div.formulario h3 {
  color: #fff;
  font-size: 18px;
  font-weight: 400;
}
section.homes div.conteudo div.formulario div.fom label {
  color: #fff;
}
section.homes div.conteudo div.formulario div.fom {
  /* Estilo geral do formulário */
}
section.homes div.conteudo div.formulario div.fom .wpcf7 form {
  background-color: transparent;
  border-radius: 10px;
  width: 100%;
}
section.homes div.conteudo div.formulario div.fom {
  /* Estilo dos campos de entrada e textarea */
}
section.homes div.conteudo div.formulario div.fom .wpcf7 input[type=text],
section.homes div.conteudo div.formulario div.fom .wpcf7 input[type=email],
section.homes div.conteudo div.formulario div.fom .wpcf7 input[type=tel],
section.homes div.conteudo div.formulario div.fom .wpcf7 textarea,
section.homes div.conteudo div.formulario div.fom .wpcf7 select {
  width: 100%;
  padding: 8px;
  border: 2px solid #ccc;
  border-top: 0;
  border-right: 0;
  background-color: transparent;
  color: #333;
  font-size: 16px;
  margin-bottom: 15px;
  margin-top: 10px;
  box-sizing: border-box;
  transition: border-color 0.3s ease;
  color: #fff;
}
section.homes div.conteudo div.formulario div.fom .wpcf7 input:focus,
section.homes div.conteudo div.formulario div.fom .wpcf7 textarea:focus,
section.homes div.conteudo div.formulario div.fom .wpcf7 select:focus {
  border-color: #fff;
  border-top: 0;
  border-right: 0;
  outline: none;
}
section.homes div.conteudo div.formulario div.fom {
  /* Botão de envio */
}
section.homes div.conteudo div.formulario div.fom .wpcf7 input[type=submit] {
  background-color: #333;
  color: #fff;
  border: none;
  padding: 12px 20px;
  font-size: 16px;
  border-radius: 6px;
  cursor: pointer;
  transition: background-color 0.3s ease;
  border-radius: 15px;
}
@media screen and (max-width: 600px) {
  section.homes div.conteudo div.formulario div.fom .wpcf7 input[type=submit] {
    width: 300px;
    font-size: 12px;
  }
}
section.homes div.conteudo div.formulario div.fom .wpcf7 input[type=submit]:hover {
  border-radius: 15px;
  background-color: #000;
}
section.homes div.conteudo div.formulario div.fom {
  /* Mensagens de validação e sucesso */
}
section.homes div.conteudo div.formulario div.fom .wpcf7-response-output {
  margin-top: 10px;
  padding: 10px;
  border: 1px solid #ccc;
}
@media screen and (max-width: 600px) {
  section.homes div.conteudo div.formulario div.fom {
    width: 300px;
  }
}
@media screen and (max-width: 600px) {
  section.homes div.conteudo {
    grid-template-columns: 1fr;
  }
}

section.sabe {
  background-color: #054737;
  padding: 60px 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
section.sabe div.conteudo h2 {
  color: #333;
  font-size: 35px;
  text-align: center;
  margin-bottom: 60px;
}
section.sabe div.conteudo div.gride {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px;
}
section.sabe div.conteudo div.gride div.imagem {
  display: flex;
  justify-content: center;
}
section.sabe div.conteudo div.gride div.imagem img {
  width: 452px;
  max-width: 100%;
  height: auto;
}
section.sabe div.conteudo div.gride div.texto {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
section.sabe div.conteudo div.gride div.texto p {
  color: rgb(255, 255, 255);
  font-family: Montserrat, sans-serif;
  font-size: 20px;
  line-height: 30px;
  text-align: center;
}
section.sabe div.conteudo div.gride div.texto p span {
  font-weight: 600;
}
section.sabe div.conteudo div.gride div.texto h3 {
  color: rgb(176, 154, 111);
  font-family: Montserrat, sans-serif;
  font-size: 24px;
  text-align: center;
  margin: 20px 0;
}
@media screen and (max-width: 600px) {
  section.sabe div.conteudo div.gride {
    grid-template-columns: 1fr;
  }
}

section.compartilhe {
  background-image: url(../img/lp/bg3.png);
  background-size: cover;
  background-position: top;
  background-repeat: no-repeat;
  background-attachment: scroll;
  padding: 80px 0;
}
section.compartilhe div.conteudo {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 30px;
}
section.compartilhe div.conteudo h2 {
  font-size: 30px;
  text-align: center;
}
section.compartilhe div.conteudo p {
  font-size: 20px;
  line-height: 28px;
  text-align: center;
}
section.compartilhe div.conteudo a {
  background-color: #054737;
  padding: 15px 22px;
  font-size: 22px;
  color: #fff;
  border-radius: 25px;
  transition: all ease-in-out 0.3s;
  text-align: center;
}
section.compartilhe div.conteudo a:hover {
  background-color: #333;
}

section.foo {
  background-color: #054737;
  padding: 30px 0;
}
section.foo div.conteudo {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 30px;
}
section.foo div.conteudo img {
  width: 100px;
}
section.foo div.conteudo p {
  color: #fff;
  font-size: 14px;
  text-align: center;
}

section.equipes div.conteudo {
  padding: 30px 0;
  gap: 20px;
}
section.equipes div.conteudo div.cards {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 20px;
}
section.equipes div.conteudo div.cards a {
  padding: 5px 10px;
  background-color: #550004;
  border-radius: 5px;
  transition: all ease-in-out 0.3s;
  color: #fff;
}
section.equipes div.conteudo div.cards a:hover {
  scale: 1.05px;
  background-color: #be1522;
}
section.equipes div.conteudo div.cards img {
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
}
@media screen and (max-width: 600px) {
  section.equipes div.conteudo div.cards img {
    width: auto;
    max-width: 100%;
    aspect-ratio: 1/1;
    object-fit: cover;
    margin: 0 auto;
  }
}
section.equipes div.conteudo div.cards div.titulo {
  border: 1px solid #333;
  border-radius: 15px;
  height: 100%;
  padding: 20px;
}
section.equipes div.conteudo div.cards div.titulo iframe {
  width: 100%;
  height: 300px;
}
section.equipes div.conteudo div.cards div.titulo h2 {
  font-size: 20px;
}
section.equipes div.conteudo div.cards div.titulo h4 {
  font-size: 16px;
  font-weight: 400;
  margin-bottom: 10px;
}
section.equipes div.conteudo div.cards div.titulo p {
  font-size: 13px;
  font-weight: 400;
  margin-bottom: 10px;
}
@media screen and (max-width: 600px) {
  section.equipes div.conteudo div.cards {
    grid-template-columns: 1fr;
  }
}
@media screen and (max-width: 600px) {
  section.equipes div.conteudo {
    grid-template-columns: 1fr;
  }
}

section.gestor {
  background-color: #d7e5e0;
}
section.gestor div.conteudo h3 {
  color: #333;
  font-weight: normal;
  font-size: 25px;
}
section.gestor div.conteudo h2 {
  color: #000;
  font-weight: 700;
  font-size: 35px;
  margin-bottom: 20px;
}
section.gestor div.conteudo div.texto {
  height: 800px;
}
section.gestor div.conteudo div.texto div.conteudo h2 {
  font-size: 20px;
}
section.gestor div.conteudo div.texto div.conteudo p {
  font-size: 18px;
  padding-bottom: 20px;
  text-align: justify;
}
section.gestor div.conteudo div.texto img {
  float: right;
  width: 60%;
  margin-bottom: 10px;
  margin-left: 20px;
}

section.beneficios div.titulo {
  display: flex;
  justify-content: center;
}
section.beneficios div.titulo h2 {
  color: #550004;
  font-weight: 700;
  font-size: 25px;
  margin-bottom: 20px;
  text-transform: uppercase;
  text-align: center;
  position: relative;
  display: inline-block;
}
section.beneficios div.titulo h2::after {
  content: "";
  display: block;
  width: 80px;
  height: 3px;
  background: #be1522;
  margin: 8px auto 0;
}
section.beneficios div.conteudo {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  justify-content: center;
  align-items: center;
  gap: 30px;
}
section.beneficios div.conteudo div.cardes {
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: start;
  justify-content: center;
  gap: 10px;
  border-radius: 10px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  padding: 20px;
}
section.beneficios div.conteudo div.cardes img {
  width: 60px;
}
section.beneficios div.conteudo div.cardes h2 {
  font-size: 18px;
}
section.beneficios div.conteudo div.cardes p {
  color: #333;
  font-size: 14px;
}
@media screen and (max-width: 600px) {
  section.beneficios div.conteudo {
    grid-template-columns: 1fr;
  }
}

section.imagem {
  margin: 60px 0;
}
section.imagem div.conteudo {
  display: flex;
  justify-content: center;
  align-items: center;
}
section.imagem div.conteudo img {
  width: 80%;
}

section.depoimentos {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-color: #be1522;
  padding: 30px 0;
}
section.depoimentos div.titulo {
  display: flex;
  justify-content: center;
}
section.depoimentos div.titulo h2 {
  color: #fff;
  font-weight: 700;
  font-size: 25px;
  margin-bottom: 20px;
  text-transform: uppercase;
  text-align: center;
  position: relative;
  display: inline-block;
}
section.depoimentos div.titulo h2::after {
  content: "";
  display: block;
  width: 80px;
  height: 3px;
  background: #fff;
  margin: 8px auto 0;
}
section.depoimentos div.conteudo {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
section.depoimentos div.conteudo div.carrossel-destaque {
  max-width: 800px;
  padding: 0 30px;
  margin-top: 20px;
  margin-bottom: 60px;
}
section.depoimentos div.conteudo div.carrossel-destaque .item {
  position: relative;
  overflow: hidden;
}
section.depoimentos div.conteudo div.carrossel-destaque div.card {
  background-color: #fff;
  padding: 20px 30px;
  border-radius: 5px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
section.depoimentos div.conteudo div.carrossel-destaque div.card img {
  width: 40px;
}
section.depoimentos div.conteudo div.carrossel-destaque div.card p {
  font-size: 16px;
  color: #333;
  text-align: left;
}
section.depoimentos div.conteudo div.carrossel-destaque div.card div.depoente img {
  width: 60px;
}
section.depoimentos div.conteudo div.carrossel-destaque div.card div.depoente h2 {
  color: #550004;
  font-size: 14px;
}
section.depoimentos div.conteudo div.carrossel-destaque div.card div.depoente h3 {
  color: #333;
  font-size: 14px;
}
section.depoimentos div.conteudo div.carrossel-destaque .item img {
  display: block;
  width: 100%;
  height: auto;
}
section.depoimentos div.conteudo div.carrossel-destaque div.item img {
  width: 100%;
  aspect-ratio: 16/7;
  object-fit: cover;
}
section.depoimentos div.conteudo div.carrossel-destaque .owl-nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 740px;
}
section.depoimentos div.conteudo div.carrossel-destaque .owl-nav .owl-prev,
section.depoimentos div.conteudo div.carrossel-destaque .owl-nav .owl-next {
  width: 50px;
  height: 50px;
  background-color: #fff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  color: #333;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 500ms;
  cursor: pointer;
}
section.depoimentos div.conteudo div.carrossel-destaque .owl-nav .owl-prev:hover,
section.depoimentos div.conteudo div.carrossel-destaque .owl-nav .owl-next:hover {
  background-color: #be1522;
}
section.depoimentos div.conteudo div.carrossel-destaque .owl-nav span {
  font-size: 50px;
  margin-top: -8px;
}
section.depoimentos div.conteudo div.carrossel-destaque .owl-nav .owl-prev {
  left: 0;
  margin-left: -30px;
}
section.depoimentos div.conteudo div.carrossel-destaque .owl-nav .owl-next {
  right: 0;
  margin-right: -30px;
}
@media screen and (max-width: 1150px) {
  section.depoimentos div.conteudo div.carrossel-destaque .owl-nav {
    display: none;
  }
}
section.depoimentos div.conteudo div.carrossel-destaque div.owl-dots {
  position: absolute;
  bottom: -30px;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
}
section.depoimentos div.conteudo div.carrossel-destaque div.owl-dots button {
  width: 20px;
  height: 20px;
  border-radius: 25px;
  background-color: transparent;
  border: 1px solid #074A83;
}
section.depoimentos div.conteudo div.carrossel-destaque div.owl-dots button.active {
  background-color: #074A83;
}
@media screen and (max-width: 600px) {
  section.depoimentos div.conteudo div.carrossel-destaque div.owl-dots button {
    width: 10px;
    height: 10px;
  }
}
@media screen and (max-width: 1150px) {
  section.depoimentos div.conteudo div.carrossel-destaque .overlay {
    padding: 10px 10px;
  }
  section.depoimentos div.conteudo div.carrossel-destaque .overlay h2 {
    font-size: 25px;
  }
  section.depoimentos div.conteudo div.carrossel-destaque p {
    font-size: 16px;
    line-height: 25px;
  }
}
@media screen and (max-width: 600px) {
  section.depoimentos div.conteudo div.carrossel-destaque .overlay {
    padding: 10px 10px;
  }
  section.depoimentos div.conteudo div.carrossel-destaque .overlay h2 {
    font-size: 18px;
  }
  section.depoimentos div.conteudo div.carrossel-destaque p {
    font-size: 13px;
    line-height: 15px;
  }
}

section.convenio {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 30px 0;
}
section.convenio div.conteudo {
  display: flex;
  gap: 30px;
  background-color: #fff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  padding: 20px 20px;
  position: relative;
}
section.convenio div.conteudo div.carrossel-convenio {
  width: 100%;
  margin: 0 20px;
  display: flex;
  justify-content: center;
  position: relative;
  overflow: hidden;
}
section.convenio div.conteudo div.carrossel-convenio .owl-stage-outer {
  border-radius: 10px;
}
section.convenio div.conteudo div.carrossel-convenio .card {
  background-color: #fff;
  border-radius: 5px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
}
section.convenio div.conteudo div.carrossel-convenio .card img {
  width: 70%;
  height: auto;
  object-fit: contain;
}
section.convenio div.conteudo div.carrossel-convenio .owl-nav {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  transform: translateY(-50%);
  display: flex;
  justify-content: space-between;
  padding: 0 20px;
  pointer-events: none;
}
section.convenio div.conteudo div.carrossel-convenio .owl-nav .owl-prev,
section.convenio div.conteudo div.carrossel-convenio .owl-nav .owl-next {
  pointer-events: all;
  width: 45px;
  height: 45px;
  background-color: #fff;
  border-radius: 50%;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  cursor: pointer;
}
section.convenio div.conteudo div.carrossel-convenio .owl-nav .owl-prev:hover,
section.convenio div.conteudo div.carrossel-convenio .owl-nav .owl-next:hover {
  background-color: #be1522;
  color: #fff;
}
section.convenio div.conteudo div.carrossel-convenio .owl-dots {
  position: absolute;
  bottom: 10px;
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 8px;
}
section.convenio div.conteudo div.carrossel-convenio .owl-dots button {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: 1px solid #074A83;
  background: transparent;
}
section.convenio div.conteudo div.carrossel-convenio .owl-dots button.active {
  background-color: #074A83;
}
@media screen and (max-width: 600px) {
  section.convenio div.conteudo {
    flex-direction: column;
  }
}

section.convenios div.filtro1 {
  display: flex;
  justify-content: center;
  align-items: center;
}
section.convenios #filtro-categorias {
  appearance: none;
  /* remove o estilo padrão */
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: #fff;
  border: 2px solid #ccc;
  border-radius: 8px;
  padding: 10px 40px 10px 15px;
  font-size: 16px;
  font-weight: 500;
  color: #333;
  display: flex;
  justify-content: center;
  cursor: pointer;
  outline: none;
  transition: all 0.3s ease;
  background-image: url("data:image/svg+xml;utf8,<svg fill='black' height='16' viewBox='0 0 24 24' width='16' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 16px;
}
section.convenios #filtro-categorias:hover {
  border-color: #888;
}
section.convenios #filtro-categorias:focus {
  border-color: #0073e6;
  box-shadow: 0 0 6px rgba(0, 115, 230, 0.4);
}
section.convenios #filtro-categorias option {
  padding: 10px;
}
section.convenios div.conteudo {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 30px;
}
section.convenios div.conteudo div.card {
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
  padding: 10px;
  border-radius: 10px;
  transition: 0.8s ease-in-out;
}
section.convenios div.conteudo div.card:hover {
  scale: 1.05;
}
section.convenios div.conteudo div.card img {
  width: 100%;
}
section.convenios div.conteudo div.card h2 {
  font-size: 16px;
  color: #550004;
  padding: 10px;
}
@media screen and (max-width: 600px) {
  section.convenios div.conteudo {
    grid-template-columns: 1fr;
  }
}

section.banner-sobre div.imagem img {
  width: 100%;
}
@media screen and (max-width: 600px) {
  section.banner-sobre div.imagem img {
    aspect-ratio: 12/10;
    object-fit: cover;
    align-self: flex-start;
  }
}

section.sobre div.conteudo {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 30px;
  padding: 60px 0;
}
section.sobre div.conteudo div.texto {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 15px;
}
section.sobre div.conteudo div.texto h2 {
  font-size: 30px;
  color: #550004;
}
section.sobre div.conteudo div.texto p {
  color: #555;
  font-size: 14px;
  text-align: justify;
}
section.sobre div.conteudo div.texto div.botao {
  display: flex;
  justify-content: center;
  gap: 30px;
}
section.sobre div.conteudo div.texto div.botao a {
  padding: 8px 15px;
  background-color: #fff;
  border: 1px solid #550004;
  font-size: 13px;
  color: #550004;
  border-radius: 8px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
  transition: all ease-in-out 0.5s;
}
section.sobre div.conteudo div.texto div.botao a:hover {
  background-color: #be1522;
  border: 1px solid #be1522;
  color: #fff;
}
section.sobre div.conteudo div.foto {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
section.sobre div.conteudo div.foto img {
  width: 80%;
  margin-left: 0;
  margin: auto;
}
section.sobre div.conteudo div.foto h2 {
  color: #550004;
  text-align: center;
  font-size: 16px;
}
section.sobre div.conteudo div.foto p {
  color: #555;
  text-align: center;
  font-size: 14px;
}
@media screen and (max-width: 600px) {
  section.sobre div.conteudo {
    grid-template-columns: 1fr;
  }
}

.timeline {
  position: relative;
  margin: 50px auto;
  padding: 20px 0;
  width: 90%;
  max-width: 800px;
}

/* Linha vertical no centro */
.timeline::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 4px;
  background: #ccc;
  transform: translateX(-50%);
}

.timeline-item {
  position: relative;
  width: 50%;
  padding: 20px;
  box-sizing: border-box;
}

.timeline-item:nth-child(odd) {
  left: 0;
  text-align: right;
}

.timeline-item:nth-child(even) {
  left: 50%;
  text-align: left;
}

.timeline-content {
  position: relative;
  background: #fff;
  padding: 15px 20px;
  border-radius: 8px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}
.timeline-content img {
  width: 100%;
}
.timeline-content h3 {
  font-size: 15px;
  color: #be1522;
  margin-bottom: 15px;
  text-transform: uppercase;
}
.timeline-content p {
  font-size: 13px;
  color: #555;
  margin-bottom: 15px;
  text-align: justify;
}

/* Bolinha de cada item */
.timeline-content::before {
  content: "";
  position: absolute;
  top: 20px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #be1522;
  border: 3px solid #fff;
  box-shadow: 0 0 0 3px #ccc;
}

.timeline-item:nth-child(odd) .timeline-content::before {
  right: -35px;
}

.timeline-item:nth-child(even) .timeline-content::before {
  left: -35px;
}

section.videos-lista div.conteudo div.videos {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 15px;
}
section.videos-lista div.conteudo div.videos div.video-item iframe {
  width: 100%;
  height: 350px;
  border: 0;
}
@media screen and (max-width: 600px) {
  section.videos-lista div.conteudo div.videos div.video-item iframe {
    height: 200px;
  }
}

section.jornais div.conteudo {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 30px;
}
section.jornais div.conteudo div.card {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  cursor: pointer;
  transition: all ease-in-out 0.3s;
}
section.jornais div.conteudo div.card:hover {
  scale: 1.02;
}
section.jornais div.conteudo div.card img {
  width: 100%;
}
section.jornais div.conteudo div.card h2 {
  text-align: center;
  font-size: 16px;
  color: #555;
  padding: 10px 0;
}
section.jornais div.conteudo div.card h3 {
  text-align: right;
  font-size: 18px;
  padding: 10px 0;
  color: #be1522;
}

section.balancete div.filtro1 {
  display: flex;
  justify-content: center;
  align-items: center;
}
section.balancete #filtro-categorias {
  appearance: none;
  /* remove o estilo padrão */
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: #fff;
  border: 2px solid #ccc;
  border-radius: 8px;
  padding: 10px 40px 10px 15px;
  font-size: 16px;
  font-weight: 500;
  color: #333;
  display: flex;
  justify-content: center;
  cursor: pointer;
  outline: none;
  transition: all 0.3s ease;
  background-image: url("data:image/svg+xml;utf8,<svg fill='black' height='16' viewBox='0 0 24 24' width='16' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 16px;
}
section.balancete #filtro-categorias:hover {
  border-color: #888;
}
section.balancete #filtro-categorias:focus {
  border-color: #0073e6;
  box-shadow: 0 0 6px rgba(0, 115, 230, 0.4);
}
section.balancete #filtro-categorias option {
  padding: 10px;
}
section.balancete div.conteudo {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  gap: 20px;
  justify-content: center;
}
section.balancete div.conteudo div.card {
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
  padding: 10px;
  border-radius: 10px;
  transition: 0.8s ease-in-out;
}
section.balancete div.conteudo div.card a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 20px;
}
section.balancete div.conteudo div.card:hover {
  scale: 1.05;
}
section.balancete div.conteudo div.card img {
  width: 80%;
}
section.balancete div.conteudo div.card h2 {
  font-size: 16px;
  color: #550004;
  padding: 10px;
  text-align: center;
}
@media screen and (max-width: 600px) {
  section.balancete div.conteudo {
    grid-template-columns: 1fr 1fr;
  }
}

section.denuncia div.conteudo div.formulario .campos {
  display: flex;
  gap: 20px;
}
@media screen and (max-width: 600px) {
  section.denuncia div.conteudo div.formulario .campos {
    flex-direction: column;
  }
}
section.denuncia div.conteudo div.formulario .texte {
  gap: 20px;
}
section.denuncia div.conteudo div.formulario .texte .textarea {
  width: 100%;
}
section.denuncia div.conteudo div.formulario .campos input,
section.denuncia div.conteudo div.formulario .campos textarea,
section.denuncia div.conteudo div.formulario .campos select {
  width: 100%;
  padding: 12px;
  border: 1px solid #ccc;
  border-radius: 8px;
  font-size: 16px;
  margin-bottom: 15px;
}
section.denuncia div.conteudo div.formulario .campos input[type=submit] {
  background-color: #007bff;
  color: #fff;
  border: none;
  cursor: pointer;
  transition: 0.3s;
}
section.denuncia div.conteudo div.formulario .campos input[type=submit]:hover {
  background-color: #0056b3;
}

section.detal {
  padding-top: 60px;
}
section.detal div.conteudo {
  display: flex;
  justify-content: center;
}
section.detal div.conteudo div.titulo h2 {
  color: #550004;
  font-weight: 700;
  font-size: 25px;
  margin-bottom: 20px;
  text-transform: uppercase;
  text-align: center;
  position: relative;
  display: inline-block;
}
section.detal div.conteudo div.titulo h2::after {
  content: "";
  display: block;
  width: 80px;
  height: 3px;
  background: #be1522;
  margin: 8px auto 0;
}

section.banner-convenio {
  position: relative;
  overflow: hidden;
}

.banner-convenio .slider {
  position: relative;
  transition: opacity 1s ease;
  width: 100%;
}

.banner-convenio .slide {
  position: relative;
  width: 100%;
  display: none;
}

.banner-convenio .slide.active {
  display: block;
}

.banner-convenio img {
  width: 100%;
  height: auto;
  display: block;
}
@media screen and (max-width: 600px) {
  .banner-convenio img {
    aspect-ratio: 16/11;
    object-fit: cover;
  }
}

.banner-convenio .texto {
  position: absolute;
  bottom: 30px;
  left: 50px;
  color: #fff;
  text-align: left;
  max-width: 600px;
  background-color: rgba(0, 0, 0, 0.4);
  padding: 20px;
  border-radius: 10px;
}
@media screen and (max-width: 600px) {
  .banner-convenio .texto {
    left: 0px;
    bottom: 5px;
  }
}

.banner-convenio .texto h2 {
  margin: 0;
  font-size: 14px;
}
@media screen and (max-width: 600px) {
  .banner-convenio .texto h2 {
    font-size: 13px;
  }
}

.banner-convenio .texto a {
  color: #ffd700;
  text-decoration: none;
}

.banner-convenio .texto p {
  color: #fff;
  text-decoration: none;
  font-size: 30px;
  font-weight: 800;
}
@media screen and (max-width: 600px) {
  .banner-convenio .texto p {
    font-size: 16px;
  }
}

.prev, .next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: rgba(0, 0, 0, 0.5);
  color: #fff;
  border: none;
  padding: 10px 15px;
  cursor: pointer;
  font-size: 24px;
  border-radius: 50%;
  z-index: 10;
}

.prev {
  left: 10px;
}

.next {
  right: 10px;
}

.prev:hover, .next:hover {
  background-color: rgba(0, 0, 0, 0.8);
}

section.banner-geral {
  position: relative;
  overflow: hidden;
}
section.banner-geral::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
section.banner-geral div.conteudo {
  position: relative;
}
section.banner-geral div.conteudo img {
  width: 100%;
  z-index: 0;
}
@media screen and (max-width: 600px) {
  section.banner-geral div.conteudo img {
    aspect-ratio: 16/11;
    object-fit: cover;
  }
}
section.banner-geral div.conteudo div.texto {
  position: absolute;
  bottom: 30px;
  left: 50px;
  width: 650px;
  background-color: rgba(0, 0, 0, 0.4);
  padding: 20px;
  border-radius: 10px;
  z-index: 3;
  color: #fff;
}
@media screen and (max-width: 600px) {
  section.banner-geral div.conteudo div.texto {
    left: 5px;
    width: 350px;
  }
}
section.banner-geral div.conteudo div.texto h2 {
  font-size: 25px;
  text-transform: uppercase;
}
@media screen and (max-width: 600px) {
  section.banner-geral div.conteudo div.texto h2 {
    font-size: 16px;
  }
}
section.banner-geral div.conteudo div.texto p {
  font-size: 25px;
  text-transform: uppercase;
}
@media screen and (max-width: 600px) {
  section.banner-geral div.conteudo div.texto p {
    font-size: 13px;
    text-transform: none;
  }
}

footer {
  background-color: #550004;
  padding: 60px 0;
}
footer div.conteudo div.menus {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 30px;
}
footer div.conteudo div.menus img {
  width: 200px;
}
footer div.conteudo div.menus div.menus2 ul {
  display: flex;
  text-decoration: none;
  list-style: none;
  gap: 20px;
}
footer div.conteudo div.menus div.menus2 ul li a {
  text-transform: uppercase;
  color: #fff;
  font-size: 14px;
}
@media screen and (max-width: 600px) {
  footer div.conteudo div.menus div.menus2 ul {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (max-width: 600px) {
  footer div.conteudo div.menus {
    flex-direction: column;
  }
}
footer div.conteudo div.rodape {
  display: grid;
  grid-template-columns: 1fr 2fr 1fr;
  margin-top: 40px;
}
footer div.conteudo div.rodape div.form h2 {
  color: #fff;
  font-size: 14px;
  margin-bottom: 10px;
}
footer div.conteudo div.rodape div.form {
  /* Container flex */
}
footer div.conteudo div.rodape div.form .email-botao {
  display: flex !important;
  /* alinha na horizontal */
  /* verticalmente alinhado */
  /* espaço entre campo e botão */
  flex-wrap: nowrap !important;
  /* impede que quebre linha */
}
footer div.conteudo div.rodape div.form {
  /* Remove largura padrão do span do CF7 */
}
footer div.conteudo div.rodape div.form .email-botao .wpcf7-form-control-wrap {
  flex: 1;
  /* faz o input ocupar o máximo possível */
  display: flex;
  /* garante que o input dentro use 100% do span */
}
footer div.conteudo div.rodape div.form {
  /* Campo de email */
}
footer div.conteudo div.rodape div.form .email-botao .wpcf7-form-control-wrap input[type=email] {
  width: 100%;
  /* ocupa todo o espaço do span */
  padding: 10px;
  box-sizing: border-box;
  border-radius: 25px 0px 0px 25px;
  border: 0;
}
footer div.conteudo div.rodape div.form {
  /* Botão */
}
footer div.conteudo div.rodape div.form .email-botao input[type=submit] {
  padding: 10px 20px;
  cursor: pointer;
  white-space: nowrap;
  border-radius: 0px 25px 25px 0px;
  border: 0;
  background-color: #be1522;
  color: #fff;
  /* evita quebra de linha */
}
footer div.conteudo div.rodape div.endereco {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
footer div.conteudo div.rodape div.endereco span > h2 {
  font-size: 16px;
  color: #fff;
  margin-left: -17px;
  margin-bottom: 8px;
  text-align: left;
}
footer div.conteudo div.rodape div.endereco span p {
  display: flex;
  margin-left: -17px;
  gap: 10px;
  font-size: 14px;
  color: #fff;
}
footer div.conteudo div.rodape div.endereco span p i {
  font-size: 16px;
}
footer div.conteudo div.rodape div.endereco div.contatos {
  display: flex;
  gap: 30px;
}
footer div.conteudo div.rodape div.endereco div.contatos div.telefones > h2 {
  font-size: 16px;
  color: #fff;
  margin-bottom: 8px;
}
footer div.conteudo div.rodape div.endereco div.contatos div.telefones ul {
  list-style: none;
}
footer div.conteudo div.rodape div.endereco div.contatos div.telefones ul li {
  margin: 10px 0;
}
footer div.conteudo div.rodape div.endereco div.contatos div.telefones ul li a {
  color: #fff;
  font-size: 14px;
}
footer div.conteudo div.rodape div.endereco div.contatos div.email > h2 {
  font-size: 16px;
  color: #fff;
  margin-bottom: 8px;
}
footer div.conteudo div.rodape div.endereco div.contatos div.email ul {
  list-style: none;
  color: #fff;
}
footer div.conteudo div.rodape div.endereco div.contatos div.email ul li {
  margin: 10px 0;
  color: #fff;
  font-size: 14px;
}
footer div.conteudo div.rodape div.midia {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 30px;
}
footer div.conteudo div.rodape div.midia a i {
  color: #be1522;
  font-size: 40px;
}
@media screen and (max-width: 600px) {
  footer div.conteudo div.rodape {
    grid-template-columns: 1fr;
  }
}

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