* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;

  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
}

:root {
  --fs-10: 0.625rem;
  --fs-11: 0.6875rem;
  --fs-12: 0.75rem;
  --fs-14: 0.875rem;
  --fs-16: 1rem;
  --fs-18: 1.125rem;
  --fs-20: 1.25rem;
  --fs-22: 1.375rem;
  --fs-24: 1.5rem;
  --fs-26: 1.625rem;
  --fs-30: 1.875rem;
  --fs-32: 2em;
  --fs-34: 2.125rem;
  --fs-36: 2.25rem;

  --white: #fff;
  --black: #000;
  --gray-50: #e9edea;
  --gray-100: rgb(207, 206, 206);
  --gray-200: #d9d9d9;
  --gray-700: #4f4f4f;
  --green-300: #169345;
  --green-700: #05481f;
  --red: #ce2638;
  --red-700: rgb(156, 14, 28);
}

body {
  /* font-family: "Barlow Semi Condensed", sans-serif; */
  font-family: "Roboto", sans-serif;
  text-rendering: optimizeLegibility !important;
  -webkit-font-soothing: antialiased !important;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  background-color: var(--white);
  color: var(--blue-700);
  font-size: var(--fs-16);
  font-variation-settings: "wdth" 100;
}

dl,
ol,
ul {
  margin-top: 0;
  margin-bottom: 0;
}
ol,
ul {
  padding-left: 0;
}
a {
  text-decoration: none;
  word-break: break-word;
}
img {
  max-width: 100%;
  height: auto;
}
h1 {
  font-size: var(--fs-24);
  color: var(--white);
  font-weight: 400;
}
h2 {
  font-size: var(--fs-32);
  font-weight: 700;
  margin-bottom: 1.875rem;
}
h3 {
  font-size: var(--fs-20);
  font-weight: 700;
  margin-bottom: 1.25rem;
  color: var(--white);
}
.desktop {
  display: block;
}

.mobile {
  display: none;
}
.breadcrumb {
  margin-bottom: 0;
}
.p-geral {
  padding: 3.125rem 0;
}

.force-hidden {
  display: none !important;
}

.fade-in {
  opacity: 0;
  animation: fadeIn 2s ease-in forwards;
}

.g-content ul li {
  /* display: inline-block; */
  margin: 0 0 0 18px;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.g-background {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.navbar-collapse {
  align-items: normal;
}

header {
  border-top: 5px solid var(--green-300);
}
header .menu {
  background-color: var(--green-300);
  border-bottom: 5px solid var(--red);
  color: var(--white);
}
header .navbar {
  padding: 0;
}
header .menu .nav-link {
  color: var(--white);
  font-weight: 700;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  transition: color 0.3s;
}
header .menu .nav-link:hover {
  color: var(--gray-100);
}
.slogan {
  color: var(--green-300);
  font-size: var(--fs-20);
  font-weight: bold;
  margin-top: 0.5rem;
  text-align: center;
}
.banner_principal {
  height: 400px;
}
.banner_principal .owl-theme .owl-dots .owl-dot span {
  background: #fff;
  width: 12px;
  height: 12px;
  border: 1px solid rgb(177, 168, 168);
}

.banner_principal .owl-theme .owl-dots .owl-dot.active span,
.banner_principal .owl-theme .owl-dots .owl-dot:hover span {
  background: rgb(156, 14, 28);
}
.banner_principal .owl-theme .owl-dots {
  position: relative;
  bottom: 50px;
  display: block;
}

.pesquisa {
  background: rgb(141, 24, 37);
  background: linear-gradient(
    0deg,
    rgba(141, 24, 37, 1) 0%,
    rgba(206, 38, 56, 1) 100%
  );
  padding: 1.5rem 0;
}
.pesquisa h1 span {
  font-weight: 700;
  font-size: var(--fs-26);
}
.pesquisa .pesquisa-box {
  width: 384px;
}
.pesquisa .pesquisa_tipo {
  font-size: var(--fs-18);
  font-weight: 500;
  color: var(--white);
}
.pesquisa .btn-pesquisar {
  color: var(--white);
  background-color: var(--red);
}
.pesquisa .select2-container--default .select2-selection--single {
  border: none;
  height: 38px;
  display: flex;
  align-items: center;
}
.select2-container--default.select2-container--open
  .select2-selection--single
  .select2-selection__arrow
  b {
  border-color: transparent transparent #fff transparent;
  border-width: 0 4px 5px 4px;
}
.select2-container--default
  .select2-selection--single
  .select2-selection__arrow
  b {
  border-color: #fff transparent transparent transparent;
}
.owl-theme .owl-nav {
  display: none;
}
.home_title_geral {
  font-size: var(--fs-26);
  font-weight: 300;
}

.faca-parte {
  background-color: var(--gray-50);
  padding: 60px 0;
}
.faca-parte h2 {
  font-size: var(--fs-26);
  color: var(--green-300);
}

.conteudo {
  display: flex;
  align-items: center; /* centraliza verticalmente */
  justify-content: center; /* centraliza horizontalmente */
  gap: 70px; /* espaço entre o grupo (título+bandeira) e o botão */
  flex-wrap: wrap; /* para quebrar no mobile */
}

/* bloco do título + bandeira */
.titulo-bandeira {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

/* bandeira */
.bandeira {
  display: flex;
  margin-top: 5px;
}

.faixa {
  width: 50px;
  height: 3px;
}

.faixa1 {
  background-color: #169345;
}
.faixa2 {
  background-color: #ffffff;
}
.faixa3 {
  background-color: #d52b1e;
}

/* botão */
.btn-comunidade {
  background-color: var(--green-300);
  color: #fff;
  border: none;
  padding: 8px 52px;
  cursor: pointer;
  font-weight: bold;
  transition: background-color 0.3s;
}

.btn-comunidade:hover {
  background-color: #117a38;
}

.instagram h2 {
  color: var(--green-300);
}
.card-instagram {
  width: 100%; /* largura fixa */
  height: 300px; /* altura fixa */
  overflow: hidden;
  background-color: #ccc;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto; /* centraliza dentro da coluna */
}

.card-instagram img {
  width: 310px; /* largura fixa */
  height: 300px; /* altura fixa */
  object-fit: cover; /* preenche todo o card sem distorcer */
  object-position: center; /* centraliza o corte da imagem */
  display: block;
  transition: transform 0.3s ease;
}

.card-instagram:hover img {
  transform: scale(1.05);
}
.btn-redes-sociais {
  display: block;
  background-color: var(--red);
  color: var(--white);
  width: 19.25rem;
  padding: 0.75rem 0;
  text-align: center;
  margin-top: 3.125rem;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  transition: background 0.3s;
}
.btn-redes-sociais:hover,
.instagram_btn_anuncio:hover {
  background-color: var(--red-700);
}
.instagram_btn_post:hover {
  background-color: var(--green-700);
}
.noticia-header {
  font-size: var(--fs-12);
  color: var(--black);
  margin-bottom: 0.5rem;
}
.noticia-titulo {
  font-size: var(--fs-18);
  color: var(--black);
  font-weight: 700;
}
.noticia-subtitulo {
  text-transform: uppercase;
}
.btn-noticia {
  font-size: var(--fs-14);
  color: var(--black);
  font-weight: 700;
}
.card-noticia:hover .btn-noticia {
  color: var(--green-300);
}
.lista-noticias hr {
  color: var(--black);
  opacity: 1;
}
footer .footer-top {
  background-color: var(--gray-700);
  color: var(--white);
  padding: 3.125rem 0;
}
footer .nav-link {
  padding: 0 0 0.5rem 0;
  color: var(--white);
}
footer .nav-link:hover {
  color: var(--green-300);
}
footer .footer_facebook,
footer .footer_instagram {
  color: var(--white);
  background-color: var(--green-300);
  padding: 6px 10px;
  border-radius: 15%;
  border: 1px solid var(--white);
  font-size: var(--fs-20);
}
footer .footer_facebook:hover,
footer .footer_instagram:hover {
  background-color: var(--green-700);
}
footer .btn-newsletter {
  background-color: var(--green-300);
  color: var(--white);
  padding: 0.525rem 0;
  text-align: center;
  width: 40%;
  display: block;
  margin-top: 1.25rem;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  transition: background 0.3s;
  border: 1px solid var(--white);
  border-radius: 0;
}
footer .btn-newsletter:hover {
  background-color: var(--green-700);
  border: 1px solid var(--white);
}
footer {
  background-color: var(--green-300);
  color: var(--white);
  padding: 0.625rem 0;
  text-align: center;
  font-size: var(--fs-14);
}
.breadcrumb-all {
  background-color: var(--gray-200);
  color: var(--black);
  padding: 0.625rem 0 2rem 0;
  font-size: var(--fs-14);
}
.breadcrumb-all h1 {
  font-size: var(--fs-32);
  color: var(--black);
  font-weight: 300;
  margin-bottom: 0;
  line-height: 24px;
}
.breadcrumb_linha {
  background-color: var(--black);
  height: 2px;
  width: 100%;
  margin-top: 11px;
}
.breadcrumb-all .bandeira {
  height: 48px;
  width: 38px;
}
.btn-enviar {
  background-color: var(--green-300);
  color: var(--white);
  padding: 0.525rem 0;
  text-align: center;
  width: 40%;
  display: block;
  margin-top: 1.25rem;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  transition: background 0.3s;
  border: 1px solid var(--white);
  border-radius: 0;
}
.btn-enviar:hover {
  background-color: var(--green-700);
}
.header_redes_sociais {
  color: var(--green-300);
  margin-top: 1rem;
  font-size: var(--fs-20);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  transition: color 0.3s;
}
.header_redes_sociais:hover {
  color: var(--green-700);
}
.noticia-pg-titulo {
  font-weight: 700;
  margin-bottom: 1rem;
  color: var(--black);
  font-size: var(--fs-20);
}
.filtro-localidade .btn-pesquisar {
  background-color: var(--red);
}
.filtro-localidade .filtro-pesquisa-localidade {
  width: 300px;
}

.filtro-localidade .select2-container--default .select2-selection--single {
  border: none;
  height: 38px;
  display: flex;
  align-items: center;
}
.filtro-localidade
  .select2-container--default.select2-container--open
  .select2-selection--single
  .select2-selection__arrow
  b {
  border-color: transparent transparent #fff transparent;
  border-width: 0 4px 5px 4px;
}
.filtro-localidade
  .select2-container--default
  .select2-selection--single
  .select2-selection__arrow
  b {
  border-color: #fff transparent transparent transparent;
}
.icone-redes {
  color: var(--green-300);
  transition: color 0.3s;
}
.icone-redes:hover {
  color: var(--green-700);
}
.text_descendente_pesquisa {
  font-size: var(--fs-14);
}

/* aplica apenas ao select2 da localidade */
#js-serach-localidade-select + .select2 .select2-selection--single {
  border: 1px solid #000 !important;
  border-radius: none !important;
}

/* mantém preta também quando está em foco ou aberto */
#js-serach-localidade-select + .select2 .select2-selection--single:focus,
#js-serach-localidade-select
  + .select2.select2-container--open
  .select2-selection--single {
  border: 1px solid #000 !important;
  box-shadow: 0 0 0 0.1rem rgba(0, 0, 0, 0.25);
}

@media (max-width: 1025px) {
  .p-geral {
    padding: 3rem 0.375rem;
  }

  .header .header-content {
    padding: 2.625rem 0;
  }
  .header .logo img {
    width: 148px;
    max-width: 100%;
  }
  .banner_secondary-img a {
    height: 160px;
  }
}

@media (max-width: 900px) {
  .desktop {
    display: none;
  }

  .mobile {
    display: block;
  }

  .navbar-expand-lg .navbar-nav .dropdown-menu {
    flex-direction: column;
    position: sticky !important;
    width: 100% !important;
    margin-left: -196px !important;
    margin-top: 36px !important;
  }
  .navbar-expand-lg .navbar-nav .dropdown-menu li {
    margin-bottom: 10px;
  }
  .all-header .logo img {
    width: 150px;
    max-width: 100%;
  }
  header .menu {
    background-color: var(--white);
  }
  header .menu .nav-link {
    color: var(--green-700);
  }
  .owl-carousel-principal .owl-carousel__item {
    height: 200px;
    background-size: cover;
  }
  h1 {
    font-size: var(--fs-20);
  }
  h2 {
    font-size: var(--fs-20);
  }
}

@media (max-width: 600px) {
  .home_title_geral {
    font-size: var(--fs-22);
  }

  h1 {
    font-size: var(--fs-20);
  }
  h2 {
    font-size: var(--fs-20);
  }
  h3 {
    margin-bottom: 0.875rem;
  }
  .card-instagram,
  .card-instagram img {
    height: 200px;
  }
  .btn-redes-sociais {
    margin-top: 0;
    margin-bottom: 1.5rem;
  }
  .footer_newsletter {
    margin-top: 2rem;
  }
  .pesquisa h1 span {
    font-weight: 700;
    font-size: var(--fs-24);
  }
  .breadcrumb-all h1 {
    font-size: var(--fs-24);
    line-height: 22px;
  }
  .card-instagram p {
    font-size: var(--fs-16);
  }
  .instagram_btn_anuncio,
  .instagram_btn_post {
    font-size: var(--fs-14);
  }

  .comunidade .comunidade_text {
    padding: 0;
  }
  .historia .foto_historia {
    margin-left: 0;
  }
}
